I've been interested in self-replicating machines since I first read about the idea many years ago.
Often when people talk about the idea of a self-replicating machine what they have in mind is a system that can be programmed to construct other machines, and which is capable of making a duplicate of itself. A system that can only make a duplicate of itself, but nothing else, is a much simpler proposition - examples of this kind of system include fire and a growing crystal.
Making a self-replicating programmable constructing machine is a very difficult problem. The machine must be capable of carrying out all of the materials processing, fabrication and assembly operations required for its own construction, and it must contain all of the information needed to direct these operations.
In the RepRap project, a pragmatic compromise is made whereby the machine can make some of its own parts from plastic feed-stock, but other parts (so-called vitamin parts) are externally supplied. A RepRap depends upon its human operator to assemble all of the parts and calibrate the machine. The RepRap project has been spectacularly successful : low-cost, practical 3D printers now exist in abundance.
It is interesting to consider whether the range and complexity of the vitamin parts that a RepRap requires can be reduced. (So far as the mechanical parts of the machine are concerned, the RepRap Snappy goes a long towards doing this). The most complex of the vitamin parts is the microcontroller. The process of making a microcontroller is very complex. A large number of materials and processing steps are involved. Is it possible to make a RepRap controller using alternative, simple to construct, computing technology?
Some discussions about this took place on the RepRap developer forums a few years ago:
The RelayRepRap project is about trying to do this using relays. I don't expect that this will result in a machine that will be useful in any way - not in the immediate future at any rate. This project is motivated by curiosity about the scientific question: how close can we get to making a fully self-replicating programmable constructing machine? Trying to make a microcontroller-less RepRap is one way of exploring this question.
By the end of the Hackaday 2016 prize period (October 10 2016), I plan to make a working prototype 2D plotter (i.e. the X and Y axes of a 3D printer) using only the following materials (see project images): enameled copper wire, copper nails, iron nails, solder, aluminium foil, PLA, water, and bicarbonate of soda. I might add other materials to this list if I discover during prototyping/experimenting that they are necessary.
RelayRepRap is covered by the GNU General Public Licence version 3: http://www.gnu.org/licenses/gpl-3.0.en.html. You are free to change and share this work, but in doing so you must make sure that others are free to do the same under the same terms as this license.