T-Rex Successful, Slightly Famous, Autistic Adult

Open Source Assistive Devices and Possibly Inspirational Stories.

Arduino UNO Q · DigiKey Dream Lab · #UNOQDreamLab

T-Rex Talker Gets Eyes

My DigiKey #UNOQDreamLab entry — read the full project on Maker.io →

Adding camera eye tracking to an open-source sip-and-puff communication device on an Arduino UNO Q — then taking it to Bay Area Maker Faire for three days to find out whether it actually works.

The eye-tracking station at Bay Area Maker Faire 2026: a 15-inch screen running Bunny Feeding Frenzy, a webcam on top, and an Arduino UNO Q in a yellow 3D-printed case on the table
125
Maker Faire visitors sat down and trained it — 2,413 throws, nobody briefed
87%
of visitors reached a median of 10° or better
3.2×
steadier gaze with a cheap red LED lamp
$0
extra — an ordinary webcam on a board with no NPU

The problem

A sip-and-puff switch is a good way to click. Breathe in, breathe out, and a person with almost no voluntary movement has a reliable, repeatable, fatigue-resistant button. That has been solved for decades.

What a sip-and-puff switch can’t do is point. Scanning interfaces — where a highlight steps through the options and you puff when it arrives — work, but they are slow in a way that is hard to convey unless you’ve watched someone use one. The waiting is the interface. A person with a full inner life spends it waiting for a cursor.

Commercial eye trackers solve pointing, and the good ones are excellent. They are also priced for institutions. So: can an Arduino UNO Q, a webcam and a breath sensor do enough of this to be useful? Not as good as a $5,000 appliance — enough to be useful.

What it is

Two halves that deliberately don’t trust each other:

The camera is the part most likely to fail — bad light, a head turn, a laughing child — and when it does, the breath switch still works. Nothing in the fast path depends on the camera being happy.

You sit 50–70 cm from the camera, keep your head still, and follow nine calibration dots. Then the screen is a 4×2 grid of big cells, and whichever one you’re looking at lights up. No twitchy cursor — highlighting the whole cell is calmer and more honest about what the system actually knows. The same tracker drives Bunny Feeding Frenzy (aim with your eyes; at the Faire the carrots auto-threw, and sip-and-puff or rubber-chicken throwing comes next) and the T-Rex Talker communication board, with speech generated on the UNO Q itself using Piper — no cloud, no account, no network. The user’s words never leave the box.

Bunny Feeding Frenzy at the Maker Faire booth — aim with your eyes (auto-throw on for the Faire).
My daughter Nova training the eye tracker for the first time (T-Rex Talker Gets Vision #2)
Bunny Feeding Frenzy played by eye on the UNO Q (T-Rex Talker Gets Vision #1)
What you look like using it (T-Rex Talker Gets Vision #3)

My daughter Nova, like many first-timers, moved her head too much on her first training run — which turned out to be the whole story.

Three days at Maker Faire

Bench numbers are hypotheses. A queue of strangers is the experiment.

T-Rex in the crowd at Bay Area Maker Faire 2026 on Mare Island, with other visitors blurred
The Faire on Mare Island. Bystanders blurred.

At Bay Area Maker Faire (Sep 25–27, 2026), 125 people sat down at the eye-tracking station, trained the tracker and made 2,413 throws — and many more played at the booth’s other stations. Most of the eye-tracking testers were children; none were briefed.

Those last two numbers belong together. A pooled average is dominated by whoever stayed longest, and it can’t show you the person who got nothing. So why did that 10% fail?

Head turn is a cliff, not a slope

Head turnThrowsValidMedian error
0–5°95578%5.69°
5–10°53271%6.22°
10–15°31358%7.08°
15–20°19963%10.41°
20°+5915%12.84°

Past about 20° the camera has one eye to work with, and the tracker doesn’t degrade — it stops. Every failed session sat beyond that line. Distance from the screen, which I’d suspected, turned out not to be the cause of total failure. And nothing on screen told those visitors their head was the problem, even though the software was computing head turn the whole time. That’s fixable.

The moment that reframed the project. One father held his daughter’s head still while she played. The gaze went steady — 2.11° median, half the jitter of a typical visitor, and she fed four bunnies in a row. That’s better than any run I ever recorded on myself, with the same camera, same model, same calibration. The only difference was a second person holding the head.

We are not losing the eye. We are losing the head. And that isn’t a fairground workaround: powered wheelchairs very often already have a headrest. The excited, unsupported child at a faire is the hard case, not the typical one.
One failure was mine. The zoom in Bunny Feeding Frenzy was meant to enlarge the targets while the gaze mapping stayed across the full screen. It only zoomed, so gaze and targets stopped agreeing — and I didn’t find it until the last day. Lesson, stated plainly so I don’t do it again: gaze input space and display scale must stay decoupled.

Light mattered more than anything else I changed

The eye-tracking station at Maker Faire: a ring light and a red LED lamp mounted above the screen, webcam on top
The red LED lamp (right) next to the ring light, above the screen at the Faire.

Sixteen red LEDs (~625 nm) were tested against no lamp in four runs, alternating on, off, on, off, so that a tired subject couldn’t be mistaken for an effect of the light.

ConditionMedian scatter
Lamp on82.5 px (1.65°)
Lamp off267.5 px (5.35°)

3.2× steadier, and it reproduced independently in the game on a different night. Just as important: the two lamp-on runs differed by 5%, the two lamp-off runs by 86%. Without light the tracker isn’t merely worse, it’s unpredictable — the more damaging property for a device someone depends on. Red, because it passes a webcam’s IR-cut filter freely, and the pupil-to-iris edge is higher-contrast in red light. (Claim kept narrow on purpose: the lamp makes gaze steadier; whether it’s more accurate is unproven.)

Getting it running on the UNO Q

Everything runs on the UNO Q itself, with no PC and no cloud. Its QRB2210 has no NPU, so the face and iris models run on the four Cortex-A53 cores. We were able to do all this running on top of two of our existing apps, Bunny Feeding Frenzy and T-Rex Talker 3.0, which demonstrates the power of the device to be the sole device, or to be a mouse, a keyboard, or things we haven’t even thought of.

A note on acceleration. Every number on this page was measured with inference on the four Cortex-A53 cores only. The QRB2210 has no NPU; its accelerator is the Adreno 702 GPU. Our only GPU-capable pipeline, MediaPipe, crashed on this board in testing, and with the Maker Faire and contest deadlines we ran inference on the CPU. We expect to bring up the GPU through LiteRT’s GPU delegate shortly and will post updated results.

Faster inference won’t fix the main failure, though: no amount of compute lets a single camera follow the head turning real users did. The answer is two cameras, and with GPU acceleration in place we expect the UNO Q to process both.

Written down because I couldn’t find it anywhere, and anyone doing vision on this board will hit all of it:

Bench result on me: 3.27° mean error over 26 held-out targets.

What I built for the people it excluded

On the last day of the Faire (Sep 27), for fun: head pointing. A small printed tag on a pair of glasses drives the same communication board through the same dwell selection — no face mesh, no neural network at all.

People turn their heads far more than they nod, so a denser head-driven board should add columns, not rows.

Where it goes next

None of the hardware ideas above has been tested yet.

Everything is open

Code, measurement scripts and the anonymised study data (gaze coordinates, head angles, distances and timings — no names, faces, images or audio) are public on GitHub under the MIT license, so every number on this page can be checked.

👍 Please give it a thumbs up on Maker.io — click the like button next to the title (free DigiKey login). Every like helps more people find it.

Not a medical device. This is an open research and hobby project, not certified assistive technology. Anyone using it to communicate should have another way to communicate available.

Thanks to the Maker Faire organisers, everyone who sat down and tried it — and especially the father who held his daughter’s head still and, without meaning to, ran the control condition for the whole project.