Building An Electronic Enigma

Skip to content
Navigation
The Enigma-E

A while ago some friends gave me a kit for an Enigma-E. This is a PIC-based (Programmable Interrupt Controller) build-it-yourself electronics project (website: www.xat.nl/enigma-e/.
I've now built Enigma-E serial number E-0158 and have tried to document the process below. Apologies for the converging verticals on the photos!


Building the Enigma-E
I started off by soldering the first bank of diodes.

The PCB (Printed Circuit Board) is a dual-layer board 23cm x 17cm in size (approx 9" x 6"). It needed no other preparation to get going although I inspected it for any damage in transit and then wiped both sides with a cloth damped with a solvent to remove any grease that might still be on there.

The board has 4 main sections although only three are labelled. The labels correspond to the real Enigma: Lampen (indicator lamps), Tastatur (keys) and Steckerbrett (patch-board).
At the top, 4 LED displays simulate the 4 wheels (for Americans: rotors) used to set todays code. Below that 26 LEDs simulate the 26 lamps, one for each letter of the alphabet, which lights to reveal a decoded letter. Push-button switches replace the mechanical typewriter keys. Finally the Steckerbrett is used to re-map input letters to different output letters.
The Steckerbrett can be snapped off if one wishes to mount the Enigma-E in a proper box.

The Enigma-E website has PDF's of the manual which include a description of Enigma operations.
PCB with one bank of diodes.


Several hours (and cups of tea) later and all diodes, all resistors and several IC's have been soldered.  There are four 8-bit shift registers and eight 8-stage Shift-to-Store registers.
Several hours (and cups of tea) later and all diodes, all resistors and several IC's (Integrated Circuits) have been soldered. There are four HEF4021's (8-bit shift registers) and eight HEF4094's (8-stage Shift-to-Store registers, or alternately, 8-bit shift register and output latch).

The yellow/orange block which looks like an IC (bottom, middle) and the slimmer yellow/orange blocks are resistor networks (8 resistors packaged together).

I've also mounted the IC socket for the PIC ; to ensure the board looked neat, I made sure that all diodes and resistors were mounted in the same direction. For example, if you examine the board you will note that all resistors are mounted such that the variance stripe (the gold one) is either on the "right" or on the "top".
Doing this also assists in fault finding: often similar resistors are soldered in one area, a wrong one can thus be spotted more easily.

Populating The PCB
After many more cups of caffeine the easy but tedious work of mounting the sockets, the keys and other discrete electronics (LEDs, transistors and capacitors) was nearly complete. One row of sockets remain to be mounted. The piezo buzzer still has the white protective cover on it (middle right).

The sockets for the plugs on the Steckerbrett are not soldered, they are simply screwed onto the PCB. I've made sure they are tight (but not so tight as to damage the PCB!) and will dab a spot of glue or varnish onto each nut & bolt to help hold it in place.

Missing are the LED displays, two large electrolytic capacitors for the power regulator (top left, the regulator is the 7805 5V solid-state regulator), several connecting wires and the PIC itself.
The PCB is largely populated now!
Close-up of plugs
A close-up of the sockets. They are not soldered, simply bolted in firmly ; a drop of clear lacquer will be applied later to prevent slipage.

The cross-shaped marks on the PCB are alignment marks. In PCBs where componenents are fitted in the factory by automated machinery these marks allow the robotic arms to sense their position.

Power Regulation Detail
The 5V power regulator (LM7805) with the ground 
tab bolted to the board. Also visible (bottom to top) the 5 status LEDs, the Mode button and the 	bridge rectifier
Top right: the 5V power regulator (LM7805) with the ground tab bolted to the board. This also assists with any heat dissipation (power take-up Also visible (bottom to top) the 5 status LEDs, the "Mode" button and the bridge rectifier (the disk-shaped object above the Mode button). To its right are two pairs of unfilled solder holes which will be filled with the electrolytic capacitors. To their right are (top to bottom) solder holes for a power socket, battery leads and a 2-way switch.


Another view of the power regulator area a little later in construction. The two electrolytic capacitors have been mounted underneath the PCB. Due to their size they would otherwise stand proud of the board and make mounting it in a box or case more complicated. The enlarged image shows the edge of the left-most LED display on the far right.
Another view of the power regulator area a little later in construction with the two electrolytic capacitors mounted underneath the PCB.
Close-up of the power caps



Close-up of the power capacitors (470µF/35V). I tried to insulate the legs with heat-shrink tubing but the available tubing was probably too large to shrink sufficiently.

To ensure all components are mounted properly I tend to bend the legs with a pair of tweezers which ensures proper right-angles and thus neater mounting on the PCB.

PIC Area Detail
Detail of the PIC socket. The PIC (see later!) is a 16F873A (Microchip info page here), a newer revision of the 16F873. It provides the following in this 28-pin Dual Inline Package (DIP):
  • 7168 bytes of program memory, 192 bytes of RAM and 128 bytes of data EEPROM
  • 3 ports (A,B,C) / 14 interrupts / 5 10-bit A/D channels and two analog comparators
More info on the website or the PICMicro Mid-Range reference manual DS33023.

To the left of the socket is the top of the letter "O" silkscreened on the PCB. This is where the letter "O" LED will be mounted.
Also visible is the green watchdog LED ; this blicks once per second if the PIC is functional.


LED Area Detail
Four 17-segment LED displays provide a wide range of output characters. Apart from the welcome message, mode selection and other dialogs, the other important function of these displays is to select the rotor settings. The bush buttons above and below each LED display are used to achieve this by cycling through all available settings.

When this photo was taken the 4th display was still mounted upside down!

Inter-board Wiring
The Steckerbrett and the main board were linked up by flexible wire links. There is a wire pair and one 5-wire link ; the wires on the far right (click to see the full image) are for the battery connector and switch.
I actually wired these in before all the plugs were mounted which explains why there are 7 empty holes.
Detail view of the 5-way link
Detail view of the 5-way link. I left a lot of slack to ensure maximum flexibility if the board is fitted into an enclosure. Should that happen, the PCBs can be separated at the break in the copper.
I used some ribbon cable I had lying around rather than the supplied black wire.

The Enigma Works!
23 January 2005: having just completed the project, here are a couple of photos proving it works!

When the Enigma is started it displays a pattern of spinning characters on the displays. This is a snapshot.
Once the device has booted it displays the current configuration. Here we see the display for the Grundstellung.