T-Rex Successful, Slightly Famous, Autistic Adult

Open Source Assistive Devices and Possibly Inspirational Stories.

Open-source sip-and-puff switch

Sip-N-Puff

One build, many purposes — configurable via a plain text file.

A breath-controlled switch interface built as an input for the T-Rex Talker AAC devices. Working alpha/beta in hand — already used to operate the T-Rex Talker V3. Open hardware, open firmware, reconfigurable without reflashing.

Sip-and-Puff alpha/beta prototype on the bench with live sensor readouts

What it is

A working sip-and-puff switch, born as an interface to the T-Rex Talker, designed to be useful far beyond it.

The Sip-and-Puff Rubber Chicken Edition is a functional, low-cost ($25–$50) breath-controlled switch that started life as an input for the T-Rex Talker AAC devices and grew into a general-purpose assistive interface. The "rubber chicken" name comes from how we demo it at maker events — an engaging way to introduce normally-abled visitors to the technology — but the device itself is a serious accessibility tool with a real working prototype in hand.

It's been used to operate the T-Rex Talker V3 directly. The build is open hardware, the firmware is open source, and the configuration model is the key design choice that sets it apart.

Primary claim to fame

One build, many purposes — reconfigured by editing a text file.

Most open-source sip-and-puff devices are purpose-built for a single output: a USB mouse, a keyboard emulator, or a specific AT protocol. Changing what the device does means reflashing firmware or editing code.

This project takes a different approach: a single hardware build and a single firmware image that will reconfigure for completely different tasks by editing a plain text configuration file — no compiler, no IDE, no programmer required. A clinician, caregiver, or technically capable user opens the config file (accessible as a USB drive when the device is plugged in) and changes everything from key mappings to sensitivity thresholds to operating mode.

Working today:

  • Breath input for the T-Rex Talker V3 (driving the rubber chicken game)
  • The rubber-chicken demonstration mode for maker events

Planned — same hardware, no reflashing:

  • USB mouse (head tracking + sip/puff clicks)
  • Two-switch keyboard input (sip = one key, puff = another)
  • Xbox Adaptive Controller input (via the onboard TRRS jacks)
  • Research data collection (with optional microSD logging)

Where it’s at

Working alpha/beta — built, breathing, talking to the T-Rex Talker.

Sip-and-Puff in use driving the T-Rex Talker V3 with the rubber chicken game (Thai language)
In use with the T-Rex Talker V3. The mouthpiece in hand, the T-Rex Talker showing the rubber chicken game with Thai language icons.
Sip-and-Puff alpha/beta prototype with live sensor readouts on a color LCD
The alpha/beta prototype. Pressure sensors live on the screen, sip/puff/up/down buttons under that. Pi RP2350 dev board on the right.

Hardware

Off-the-shelf parts, intentional choices.

MCU

Raspberry Pi RP2040 / Pico W

Cheap (~$4), dual-core Cortex-M0+, more than enough headroom for the signal conditioning, classification, USB HID, and on-screen HUD that the firmware needs to do at once. CircuitPython firmware so the config file works the way it does.

Pressure sensor

LPS28DFWTR (default)

STMicro 24-bit digital sensor over I²C. Water-resistant package (tolerates condensation), 0.32 Pa noise floor, factory calibrated. PCB also supports the through-hole MPX5010DP for hand-built early prototypes that don’t want SMD reflow.

Outputs

USB HID + Xbox Adaptive Controller

Optocoupler-isolated TRRS jacks for the XAC; USB HID for keyboard, mouse, joystick, and consumer-control output. STEMMA QT expansion for future add-ons (IMU, displays).

Optional displays

OLED or color LCD

Unpopulated PCB footprints for a 1″ SSD1306 OLED on I²C and a 2–4″ color SPI LCD — built-in hardware support, no board redesign needed if you want a HUD or a rubber chicken animation later.

What it costs to build

Comparable commercial AT devices: $175–$325+.

BuildCost (single unit)What it gets you
Base build~$21–$45Functional sip/puff device with XAC output and ESD protection
+ through-hole pressure sensor option+~$3–$5MPX5010DP, hand-solderable, no SMD tools required
+ display+~$5–$15SSD1306 OLED or color LCD via the unpopulated footprints
+ BNO055 IMU (future head-tracking)+~$30–$35Head-tracked mouse cursor and/or tongue-joystick mode
Full build with IMU + display~$56–$95Still well below comparable commercial AT devices

Who it’s for

Potential users

  • Spinal-cord injury
  • Cerebral palsy
  • ALS
  • Stroke recovery
  • Anyone needing an alternative to a hand-driven switch

What we think it might integrate with

  • The T-Rex Talker AAC devices (working today)
  • Environmental control (home automation, lighting)
  • Wheelchair controls and adapted gaming inputs
  • Computer and mobile-device interfaces

What’s next

Post-Maker-Faire roadmap.

Phase 2 — head tracking via IMU

Add head-movement cursor control using a Bosch BNO055 IMU on STEMMA QT. The sensor's on-board fusion gives clean Euler angles directly — no Kalman or Madgwick to implement — and its built-in magnetometer eliminates the yaw drift that affects 6-axis-only sensors during prolonged use.

Two mounting modes, same hardware:

  • Mode A — head strap / glasses mount. Best for users with good head mobility. Head nods and tilts move the cursor.
  • Mode B — tongue joystick. Same IMU clipped to the breath tube near the mouthpiece — the user deflects the straw with their tongue. Best for users with good tongue/lip control but limited head movement. Lever-arm and software dead-zone tuning bring the activation force way down.

Switching modes is a config-file change. No reflashing. No PCB revision. The STEMMA QT port for the IMU is already on the board.

Future — medical-grade redundant hardware

For a medically-certified build, the architectural direction is a second LPS28DFWTR pressure sensor that cross-checks the primary one, plus a dedicated safety MCU acting as a hardware watchdog. That's the IEC 62304 / FDA Class II path. Not in the current prototype scope, but documented so the future build doesn't have to start from scratch.

Build one. Or help shape it.

Everything is open: hardware files, firmware, BOM, build instructions. Pull requests welcome.

GitHub: mkadie/SipNPuff →   Get in touch