Self-reconfigurable robots are built from modules, which are autonomously able to change the way they are connected. Such a robot can, through this self-reconfiguration process, change its shape. The process has proved to be difficult to control, because it involves control of a distributed system of mechanically coupled modules connected in time-varying ways. In this paper we present an approach to the control problem where the desired configuration is grown from an initial seed module. Seeds produce growth by creating a gradient in the system, using local communication, which spare modules descend to locate the seed. The growth is guided by a cellular automaton, which is automatically generated on the basis of a three-dimensional CAD model or a mathematical description of the desired configuration. The approach is evaluated in simulation and we find that the self-reconfiguration process always converges and the time to complete a configuration scales approximately linearly with the ...