Robot Face Expression Engine / guide

Animated robot eyes for two round GC9A01 displays

Two 1.28 inch GC9A01 round screens are the most popular way to give a desk robot eyes: cheap, bright and the right shape. Most eye sketches for them loop a blink and swap between a handful of moods. Above, the same pair is driven by the Robot Face Expression Engine: the eyes look up and aside while it thinks, dart away just before it speaks, and land each reaction with a wind-up and a settle.

How it runs on an ESP32

The engine runs where your agent runs, on a computer or a Raspberry Pi, and streams a 24-byte frame per update over USB serial at 230400 baud. The included Arduino sketch reads the frames and draws the Capsule style on both screens with TFT_eSPI, one 8-bit sprite per eye so it fits without PSRAM. Both screens share MOSI, SCLK, DC and reset; each has its own chip-select pin.

The sketch is written and the frame format is tested, but it has not been compiled or run on hardware yet; its README says exactly what to check. The Iris style shown here runs in a browser, for example on a Raspberry Pi driving a screen.

Get the engine, £29 Compare it with a mood swap

More guides