First, a quick definition: A (deterministic) Lindenmayer system (L-system) over an alphabet $\mathcal{A}$ is essentially specified by a function $f:\mathcal{A}\mapsto\mathcal{A}^*$ (where $\mathcal{A}^*$ is the set of strings over $\mathcal{A}$; that is, finite sequences of elements of $\mathcal{A}$). This extends to a function $f^*: \mathcal{A}^*\mapsto\mathcal{A}^*$ by concatenation: $f^*(a_1a_2\cdots a_n)=f(a_1)f(a_2)\cdots f(a_n)$. The L-system 'operates' by iterating $f^*$ starting from an initial word $w_0\in\mathcal{A}^*$, producing the sequence of words $w_1=f^*(w_0)$, $w_2=f^*(w_1)$, etc. For instance, the Fibonacci word can be obtained by taking $\mathcal{A}=\{a,b\}$, defining $f$ via $f(a)=ab$, $f(b)=a$, and taking the initial word $w_0$ to be $a$; then the sequence is $w_1=ab$, $w_2=aba$, $w_3=abaab$, $w_4=abaababa$, etc; it can be shown tha $w_n$ is of length $F_{n+1}$ with $F_n$ $a$s in it and $F_{n-1}$ $b$s. The Wikipedia link there shows how to get several 'classic' iterated curves such as the dragon curve, Koch snowflake, etc. by generating words in an L-system and then mapping them to 'turtle-like' motions in the plane by interpreting each letter in the word as a command (i.e., a transformation in the plane): move forwards, turn $90^\circ$ left or right, etc.
This interpretation prompts my question: suppose we're given a deterministic L-system over some (finite) alphabet $\mathcal{A}$, an initial word $w\in \mathcal{A}^*$, and a function $M: \mathcal{A}\mapsto G$ from the alphabet to elements of some automatic group $G$ (for instance, the 'square grid' group generated by translations of the plane by one unit in the $x$ direction and rotations by $90^\circ$). Then can it be decided whether some iterate of $w$ maps via $M^*$ (here of course $M^*$ is the extension of $M$ to a function from $\mathcal{A}^*$ to $G$ via $M^*(a_1a_2\ldots a_n)=M(a_1)\circ M(a_2)\cdots\circ M(a_n)$ where $\circ$ is the group operator in $G$) to the identity in $G$? If so, what's known about the algorithmic complexity of the problem?
It's clear that the problem is semi-decidable: since $G$ is automatic it has solvable word problem (in fact, a given word in the generators can be tested for identity in time at worst quadratic in its size), and so we can simply to apply the L-system over and over to generate the sequence of words $w_0=w, w_1=L(w_0), w_2=L(w_1), \ldots$, testing each of the elements $M^*(w_0), M^*(w_1), \ldots$ of $G$ to see if it's the identity. Solvability seems to be essentially equivalent to asking if there is some algorithmic bound $b=b(|w|)$ (presumably also depending on the size of the L-system and the group presentation) such that if none of the iterates through $w_b$ is the identity, then none after will be; for instance, there may be some sort of integer 'charge' definable on words such that an iteration of the L-system increases the charge and the charge of the identity is zero.
Solving this problem would also solve a simple generalization where instead of checking for the identity, we check for membership in some finite subgroup $H$ of $G$ (for instance, in the 'square grid' example above, we could check whether the element is in the $C_4$ subgroup of only rotations): simply add a new symbol to the L-system, mapping to itself under iterates of the system; prepend it to the initial word, and then for each element $h\in H$, generate a function $M_h$ that extends $M$ by taking the new symbol to $h$; then for each $h$ just run the decision algorithm with the slightly larger L-system and the mapping $M_h$. It may also be possible to test for membership in a finite-index (normal?) subgroup of $G$ through similar means, but I haven't quite worked out all the details there; that may actually be a 'proper' generalization of the problem.