Open source software for the road

Build the vehicle computing system you actually want.

Open Road Code is a modular vehicle computing platform for embedded Linux and Raspberry Pi, with shared navigation, telemetry, radio, media, lighting, sensor, and hardware services that can power multiple user interfaces without tying applications directly to devices.

Real hardware. Replaceable software.

Open Road Code brings compute, display, positioning, radio, vehicle data, sensors, lighting, audio, and physical controls together around accessible Linux hardware.

One platform, multiple vehicle interfaces

Open Road Code provides a modular foundation for custom vehicle computing. Hardware access, protocols, controllers, producer services, messaging contracts, and applications are separated so each part can evolve independently.

The same services can drive a touchscreen cockpit, terminal interface, web frontend, development workstation, or future embedded application without forcing every interface to own GPS, IMU, OBD-II, radio, or other hardware.

Open. Road. Code.

The name describes the project: an open, configurable computing platform for vehicles that owners, builders, and developers can understand, adapt, and extend.

Freedom to build

Open

Open-source software, documented interfaces, accessible hardware, and local-first capabilities keep the platform inspectable and adaptable.

Designed for vehicles

Road

Positioning, telemetry, radio, media, displays, lighting, sensors, and physical controls belong on one coherent platform built for real hardware.

Configured through software

Code

Interfaces, adapters, services, message contracts, and reusable controllers let developers replace a component without rebuilding the entire system.

Services produce state. Applications decide how to present it.

Domain services own physical devices, browser sources, or simulation and publish canonical state. Applications consume those contracts instead of opening competing GPS, IMU, OBD-II, or sensor connections just to draw a screen.

Continuous state uses ZeroMQ publish/subscribe messaging. Operations that require acknowledgement use request/reply interfaces. Interface Design Descriptions define the public wire contracts so producers and consumers can evolve independently.

carUi · carTui · webUi
Public contracts + controllers
ZeroMQ PUB/SUB + REQ/REP
Navigation + automotive services
Hardware · browser · simulation

A vehicle lab that keeps growing

Touchscreen car UI
Terminal car UI
Web frontend
GPSD + browser positioning
Valhalla route planning
MapLibre navigation
ZeroMQ PUB/SUB + REQ/REP
Documented IDD contracts
CLI component tests
OBD-II vehicle telemetry
Software-defined radio
ADS-B aircraft tracking
Spotify + music video integration
PipeWire audio + analysis
BLE cabin lighting
Rotary encoders + GPIO controls
Environmental + IMU sensors
Android + browser sensor sources

A focused Linux image for the whole stack.

Pre-alpha project OpenRoadCode OS is in early development and intended for contributors and experimentation.

A separate Yocto Project-based effort is exploring reproducible embedded Linux images tailored to Open Road Code and supported single-board computers.

Pre-alpha · Active development
Open Road Code applications
OpenRoadCode OS image
Yocto Project + board support
Supported hardware

Vehicle software should be open to experimentation.

Modern vehicles contain enormous computing capability, yet most automotive software remains closed, proprietary, and difficult to extend. Open Road Code explores what becomes possible when the independent computing layer is yours.

Open Road Code is under active development and currently targets Raspberry Pi and Linux systems for experimental, enthusiast, educational, and non-safety-critical vehicle computing.

Build something for the road.

Developers, makers, radio enthusiasts, embedded engineers, and curious hardware tinkerers are welcome.