A First-of-Its-Kind Communication Platform for Deaf Motorsports Drivers
SR Comms is a first-of-its-kind communication platform developed to provide real-time race communications for deaf and hard-of-hearing motorsports drivers.
Endurance racing depends on constant communication between the driver and pit crew for strategy, safety, and vehicle diagnostics. Conventional radio systems are inaccessible to drivers who cannot hear. SR Comms was engineered from the ground up as a complete hardware and software ecosystem — a steering wheel-mounted wireless controller, embedded firmware, and a native Android application unified into a single driver communication interface.
The ProblemRadios Don't Work for Deaf Drivers
Traditional motorsports communication relies on radio headsets for pit strategy, fuel windows, mechanical diagnostics, track hazards, driver condition, and emergency response. Silent Racing was the first race team in the United States to field deaf racecar drivers — and for them, that entire communication channel simply doesn't exist.
Before SR Comms, the team relied on whiteboards, hand signals, and live video calls. Each broke down under real racing conditions: too slow, too limited in vocabulary, too dependent on line of sight, or too distracting for a crew member who had to stay glued to a phone.
| Alternative | Limitation |
|---|---|
| Whiteboards | Extremely slow, unreadable at speed |
| Hand signals | Limited vocabulary, line-of-sight only |
| Video call stream | Distracting, bandwidth-dependent |
| Touchscreen-only app | Requires taking hands off the wheel |
| Wired push-to-talk | Cable fatigue, connector failure at the steering column |
| SR Comms | Fast, wireless, scalable — highest development effort |
To the best of my knowledge, no commercially available motorsports communication system provided this complete functionality when the project began — bidirectional messaging, hands-on-wheel operation, fast message generation, high cockpit visibility, endurance-race reliability, and accessibility for deaf drivers, all in one integrated system.
RequirementsFive Constraints, One System
Functional
- Real-time bidirectional messaging
- Rapid message generation
- Reliable across 24+ hour races
Mechanical
- Steering-wheel integration
- Low mass
- Secure mounting under vibration
- Ergonomic button placement
Electrical
- Battery-powered, rechargeable
- Bluetooth connectivity
- Multi-day runtime
Human Factors
- Hands stay on the wheel
- Glove-compatible controls
- Tactile feedback, high visibility
- Learnable under stress
Scalability
- Customizable message trees
- Multilingual operation
- Off-grid communication
- Uses beyond motorsports
System ArchitectureDriver Input to Crew, in Two Hops
Steering-Wheel Controller
- nRF52840-based embedded controller
- Eleven physical inputs
- Rechargeable Li-ion battery
- Custom mechanical housing
- Wireless BLE link
Android Application
- Kotlin, Jetpack Compose
- MVVM architecture
- Editable decision-tree messaging
- Google ML Kit translation
- Meshtastic BLE/protobuf link
Communication Outputs
- Group cellular messaging
- Off-grid LoRa mesh
- Multilingual translated messages
When cellular coverage isn't available — at a remote industrial site, or simply outside network range — the app switches to Meshtastic instead of SMS/MMS, routing messages over a LoRa mesh network through handheld nodes like these.
Mechanical & HMI DesignBuilt Around the Driver's Hands, Not the Electronics
Conformal, Not Bolted-On
The controller housing was designed around a 3D scan of the steering wheel itself, giving it a conformal fit rather than a generic clamp-on box. Button placement, wire routing, and strain relief were all built into the mounting geometry from the start.
- Lightweight FDM-printed housing
- Internal wire routing with motorsport-grade concentric twisting for strain relief
- Replaceable buttons and reverse-engineered, custom-printed button caps for colors that weren't available commercially
Designed for Gloves and Stress, Not a Desk
Every control decision was made for a driver wearing racing gloves, working from muscle memory under stress. Buttons are large, color-coded to match the on-screen decision tree exactly, and spaced for rapid recognition without looking away from the track. An early tactile switch revision replaced buttons that lacked physical feedback, after driver testing showed drivers couldn't confirm a press by feel alone.
When the Part You Need Doesn't Exist, Model It
Some of the colors and symbols needed for the color-coded interface simply weren't available as commercial button caps. Rather than compromise the color scheme, each missing cap was reverse-engineered in CAD and printed to match — down to the icon.
From CAD to Cockpit
Housing, internal wiring, battery, and all eleven buttons come together into a single wheel-mounted unit — no external boxes, cables, or connectors between the driver's hands and the electronics.
Hands-on-Wheel, Eyes-on-Track
The finished system keeps both hands on the wheel and both eyes forward. The controller sends button presses over BLE to a dash-mounted phone, which displays incoming crew messages in high-visibility, color-coded text — legible at a glance during competition.
Embedded HardwareWireless by Design, Not by Convenience
The controller is built around an Adafruit ItsyBitsy nRF52840 Express, paired with an Adafruit PowerBoost 1000C charger board and a rechargeable Li-ion battery. Momentary tactile pushbuttons and a power switch round out a fully self-contained, wireless input device mounted directly on the steering wheel.
Why Wireless, Not a Coiled Cable
Most race cars route a wired push-to-talk button to the radio through a coiled steering-column cable — a cable that, over years of racing, is a recurring failure point. Going wireless over BLE eliminates:
- Conductor fatigue from repeated steering cycles
- Connector failures at the steering column
- Cable snagging and steering restriction
Battery sizing was validated with a straightforward calculation — 1200 mAh capacity against an estimated 40 mA average draw — yielding a 30-hour minimum runtime, well past the 24-hour endurance-race requirement. Bench testing has gone further than that minimum: the current controller has run continuously for over 72 hours, and an earlier version of the system remained functional after being left powered for a full seven days.
Software ArchitectureFrom App Inventor to a Native Android Platform
The application follows an MVVM architecture: a Compose UI layer handles display and input, ViewModels manage state and logic, and a manager/repository layer handles BLE communication and data persistence. Contacts, decision trees, and configuration are stored in Jetpack DataStore, with navigation managed through Jetpack Navigation Compose.
The app maintains two simultaneous BLE connections — one to the steering-wheel controller, one to a Meshtastic node — with mesh communication implemented over Protocol Buffers via Square's Wire library. At the core is a decision-tree messaging model: a small number of button presses traverses a structured tree to generate a complete, predefined message. Trees are fully editable, persist across sessions, and support different configurations for racing or industrial workflows.
Interface & CommunicationWhat the Driver and Crew Actually See
Racing
- Decision-tree messaging
- Group SMS/MMS team chat
- Saved contacts & editable buttons
- Save/load custom presets
- High-visibility incoming messages
Meshtastic
- BLE connection to LoRa node
- Off-grid message routing
- Direct node selection
- Cellular / mesh mode toggle
Racing Configuration
Every on-screen button is color-matched to the physical button on the steering wheel controller, so drivers can navigate the message tree from muscle memory without reading labels mid-corner.
Industrial & Off-Grid
The same decision-tree engine drives the industrial configuration, with job-specific presets and a cellular/mesh toggle for sites without reliable coverage.
Flipping the toggle from Cell to Mesh reroutes outgoing messages through the paired Meshtastic node instead of SMS/MMS — no separate app or workflow for off-grid use.
Auto-TranslatorOne Interface, 53 Languages
Every button label and outgoing message is translated at runtime using Google ML Kit's on-device translation — not a cloud API call mid-race. Language models are downloaded to the phone ahead of time, so the entire interface keeps working fully offline, with no connectivity required once a language is installed.
This isn't a display-only translation layer: the actual SMS/MMS text sent to the crew is translated too, so a multilingual team can each read messages in their own language on their own end.
- 53 supported languages
- On-device inference — no network dependency once installed
- Applies to both the interface and the transmitted message text
- Same decision tree, same button layout, any language
Because translation runs on-device, language coverage isn't limited to whichever languages a crew happens to speak going in — a new language is just another model download, added once and available every race after.
The same button layout and decision tree hold up across a Latin script, Hangul, and Cyrillic — the interface doesn't just swap words, it adapts to entirely different writing systems without changing the underlying message structure a driver has already memorized.
ValidationTested Where It Actually Matters — In the Car
Earlier versions of the system were used in motorsport competition over roughly four years, across races ranging from 7 to 24 hours in length, with direct feedback from Silent Racing's drivers and crew. Earlier versions of the system supported the team during multiple podium-finishing endurance events. The revised, native-Android system is scheduled for its next full validation at a race weekend at Circuit of The Americas.
Beyond MotorsportsThe Same Architecture, Different Job Site
Custom decision trees, on-device translation, off-grid mesh communication, and large high-visibility controls weren't built for racing alone — they're general-purpose tools for any high-noise, low-connectivity, or multilingual work environment.
The Android app already ships with job-specific presets for crane, mining, and dump-truck workflows alongside the racing configuration — the same platform, reconfigured for a different set of hands.
What's NextFrom Race Prototype to Consumer-Ready Hardware
The next iteration of SR Comms is focused entirely on the steering wheel controller — taking it from a working race-team prototype to a consumer-grade product. The current housing has a fair amount of hand-routed wiring tucked inside it; the redesign is about stripping that back to something that could actually ship.
Current Prototype
- Commercial development boards
- FDM-printed housing
- Hand-routed internal wiring harness
- Individually wired tactile pushbuttons
- Custom fit to one specific steering wheel
Next-Generation Architecture
- Fully custom PCB
- Integrated tactile buttons on-board
- Minimal internal wiring
- IP68-rated sealed housing
- Customizable mount compatible with most aftermarket racing wheels
Moving the buttons and connections onto a single custom board removes almost all of the point-to-point wiring that the current handmade harness relies on — fewer connections means fewer failure points, and a housing that's actually sealable to an IP68 rating. Paired with a mounting system designed for a range of aftermarket wheels instead of one 3D-scanned fit, the goal is a controller that's no longer built around a single car.
My RoleProject Ownership
I conceived SR Comms in response to a communication problem encountered by Silent Racing's deaf drivers, and led its development across mechanical design, embedded hardware, firmware, Android application architecture, system integration, and field testing. The project progressed from an early functional prototype into a scalable native Android platform with off-grid and multilingual capabilities.
Software development used an AI-assisted engineering workflow, in which I defined the architecture, system behavior, interface requirements, integration logic, and validation criteria, while using development tools to accelerate implementation.