Computing & Digital Craft
Conway's Game of Life, Built as a Hand-Wired Board of LEDs and Switches
A cellular automaton normally lives inside a screen. This one lives on a PCB: 289 real toggle switches, 289 LEDs, and a single microcontroller that multiplexes them row by row.
- 289 physical cells in a 17×17 grid — every switch is a live cell, every LED shows the state.
- The whole "display" runs on just 34 GPIO pins from one tiny AVR microcontroller.
- Row-and-column multiplexing means each LED is lit only 1 of 17 times per cycle — kept bright by a faster flash rate and a 150 mA drive.
Conway's Game of Life is not a game in any usual sense. You draw a starting pattern on a grid of square cells and then watch the rules take over. A live cell survives only with two or three live neighbours; a dead cell is born only with exactly three. Cells with too few neighbours starve. Cells with too many die of crowding. That is the whole rule set, and from it the grid produces a surprising range of behaviour: still lifes that never change, oscillators that flicker between states, and even "gliders" and self-replicating structures that move or grow across the board.
Most people meet the Game of Life as pixels on a monitor, where the grid is free and infinite and the screen redraws every few milliseconds. A recent build brought it into physical reality. The constructor laid out a 17×17 matrix of tactile toggle switches, each with an integrated LED. Behind the panel sits a custom PCB dominated by one Microchip AVR128DA64 microcontroller, small MOSFET driver transistors, and a grid of current-limiting resistors. The user flips switches to set the initial pattern, then watches the board evolve, step by step, in glowing light.
The wiring trick is the part most people miss. Lighting 289 LEDs individually would need 289 wires. Instead, the board uses multiplexing. The first 17 output pins drive the rows: at any instant only one row is pulled to ground. The next 17 pins drive the columns with positive voltage. A switch plus LED sits at each intersection, and it lights only when its row is selected and its column is energised. Because each row is on for just 1⁄17 of a cycle — a duty cycle of about 6% — the designer compensates with fast switching so the eye sees steady brightness, and with MOSFETs that the tiny microcontroller cannot directly drive at the required current.
Reading the board back uses the same lines in reverse. The microcontroller reuses each row-select signal to pull the corresponding bank of switches to ground, then checks 17 input pins to see which switches have been pressed. One set of lines does double duty for output and input, which is why 34 pins are enough for the whole square.
Why build it at all? A cellular automaton on a screen is already fascinating. The physical version adds friction, intention, and a sense of scale that pixels cannot: every live cell is a deliberate flick of a switch, every oscillation is real light cycling on a real circuit. It also demonstrates, in hardware you can hold, one of the oldest lessons in digital electronics — that you can compress a large address space into far fewer wires by scanning it line by line.
Knowledge takeaway: the Game of Life runs on a four-rule set (survive with 2–3 neighbours, be born with exactly 3); a 17×17 LED grid can be driven by 34 pins using row-and-column multiplexing at a 1⁄17 duty cycle; the same GPIO lines double as inputs by pulling switch banks to ground one row at a time.