I know that the only continuous solutions to the equations $f(x)=f(\lambda x)$ for $x\in[0,1],\lambda\in(0,1)$ where $\lambda$ is given - are the constant functions.
Are there non trivial solutions which are not equivalent to some constant function in $L^2[0,1]$?
Yes. The orbits of the map $x\mapsto \lambda x$ are the countable sets $$C_x=\{y\in [0,1]\,:\, \exists n\in\Bbb Z, \lambda^nx=y\}$$
Therefore you can assign freely to each $C_x$ a different real value $c_x$, and set $f$ equal to that value on $C_x$: if you do so, every constant function $M$ can only be equal to $f$ on a countable set (and therefore $f\ne M$ almost everywhere), while of course $f(x)=f(\lambda x)$ for all $x$ by the function being constant on the orbits of $x\mapsto \lambda x$.
For a concrete instance of such a function, you can consider \begin{align}f(x)&=\max C_x=\max\{y\in[0,1]\,:\, \exists n\in\Bbb Z,\ \lambda^nx=y\}=\\&=\begin{cases}0&\text{if }x=0\\ x^{\left\lceil -\log_\lambda x\right\rceil}&\text{if }x>0\end{cases}\end{align}