← All reportsPublic report

commaai/openpilot

openpilot is an operating system for robotics. Currently, it upgrades the driver assistance system on 300+ supported cars.

63k stars Python View on GitHubprofiled 11d ago
Try GitZoid
214PRs this week
22Contributors
67Deps scanned
0Issues found
01 · Repo overview

How openpilot is put together

openpilot is an open-source driver assistance system ('operating system for robotics') that runs on comma hardware (comma four/3X) upgrading ADAS in 300+ supported cars. It is primarily Python with performance-critical parts in C++/C (pandad, camerad, loggerd, encoderd), organized as many cooperating daemons managed by a central manager (system/manager) that starts/stops processes based on driving state and Params flags. Processes communicate via a publish/subscriber messaging layer built on Cap'n Proto serialization over msgq/ZMQ (cereal), with typed event schemas in log.capnp. Data flows from car CAN bus and sensors through pandad/sensord/camerad into modeld/controlsd for actuation, while loggerd records segments to disk and uploader ships them to comma servers; the Athena component provides remote access via WebSocket/JWT.

Languages

PythonC++CCap'n Proto (schema)Shell

Frameworks

msgq/ZMQ messagingCap'n Proto (pycapnp)tinygrad (ML runtime, submodule)raylib (UI)requestsPyJWTwebsocket_client

Infrastructure

comma four / AGNOS embedded Linux targetGitHub Actions (.github/workflows/tests.yaml)Jenkins hardware-in-the-loop (Jenkinsfile)SCons build (SConstruct)git submodules (panda, opendbc, msgq, tinygrad, rednose, teleoprtc)uv-managed Python >=3.12,<3.13

Major components

cereal

Defines Cap'n Proto message schemas (log.capnp, custom.capnp) and the pub/sub messaging layer (msgq/ZMQ sockets, VisionIPC) used by all processes.

system/manager

Process supervisor that launches and monitors all daemons according to declarative start-condition predicates in process_config.py.

selfdrive/pandad

Communicates with the panda safety MCU over SPI/USB, forwarding CAN traffic between the car and openpilot with Cap'n Proto conversion helpers.

selfdrive/controls

Core driving control loop: controlsd actuates steering/acceleration, plannerd plans trajectory, radard tracks lead vehicles.

selfdrive/modeld

Runs neural-network perception models (driving model and driver monitoring) using tinygrad-compiled artifacts.

system/loggerd

Records camera/video encodes, logs, and CAN data into 60-second route segments, manages disk usage (deleter), and uploads routes to comma servers (uploader).

system/athena

Remote-access bridge connecting devices to comma's backend over WebSocket with JWT authentication.

common

Shared utilities: Params key-value persistence, hardware abstraction, API client with JWT signing, transformations, logging (swaglog).

selfdrive/ui

On-device user interface (raylib-based) plus driver-facing sounds (soundd).

tools/lib

CLI tooling including CommaApi REST client with retries and OAuth login flows (Google/Apple/GitHub/JWT) against api.commadotai.com.

The last month of openpilot work centers on a new 'big' driving model and a companion hardware/software effort called 'chestnut', with heavy iteration on how the model loads, alerts, and falls back when it fails. Alongside that, the team polished the live video streaming stack (webrtc), shipped several AGNOS operating system updates, and did broad cleanup—renaming hardware platforms, removing unused dependencies, and speeding up builds and tests. Reliability fixes for the UI, camera pipeline, logging, and GPS rounded out each week.

Week by week

2026-08-17A quieter week focused on stabilizing the webrtc streaming service, cleaning up the big-model rollout, and fixing small UI and startup issues.latest6 changes

Fix

Cruise planner decel fix

Fixed jerky braking behavior coming from the cruise control planner.

Chore

Webrtc cloud logging

The live-streaming service now reports errors to the cloud so remote issues are easier to diagnose.

Fix

Webrtc race condition

Fixed a timing bug where messages could be handled out of order in the streaming service.

Refactor

Faster startup logging

Removed about half a second of delay before the car's data logger starts recording at boot.

Fix

Updater UI reopens after crash

If the software updater screen crashes, it now reopens instead of staying dead.

Chore

Big model detection cleanup

Simplified the code that detects whether the large driving model is present.

2026-08-10A big week for the chestnut release branch: dedicated build scripts, flashing fixes, an offroad prompt to switch branches, plus GPS assistance improvements and a new OS update.6 changes

Feature

Chestnut release branch

Created a separate 'chestnut' release branch with its own build scripts and update table.

Feature

Branch switch alert

Added an offroad notification encouraging users to switch to the chestnut branch.

Fix

Chestnut flashing on old firmware

Fixed the process so chestnut can be flashed onto devices running older firmware.

Feature

Comma AGPS source

The GPS helper now continuously fetches satellite assistance data from comma's own servers for faster location locks.

Fix

Big model failed alert

The screen now clearly warns when the large driving model fails to load.

Chore

AGNOS 19.6

Shipped a new version of the device operating system.

2026-08-03Major housekeeping week: the internal hardware platform was renamed from 'tici' to 'comma', camera code was cleaned up, and a chestnut updater plus eSIM improvements landed.6 changes

Refactor

Renamed tici to comma

The internal name for the device hardware platform was changed from 'tici' to 'comma' throughout the codebase.

Feature

Chestnut updater

Built the software updater support needed for the upcoming chestnut release.

Feature

eSIM profile notifications

eSIM changes now report status notifications following the industry standard, including reporting when no eSIM chip is present.

Fix

Log rollover keeps newest

When storage fills up, the logger now deletes the oldest logs instead of accidentally deleting the newest ones.

Feature

Fonts loaded on demand

The display now loads fonts as needed, including Noto fonts for Asian languages, instead of bundling everything upfront.

Fix

Params cleanup hang fixed

Fixed a bug where the settings database could hang on shutdown during cleanup.

2026-07-27Work centered on shipping and monitoring the new 'big' driving model—loading alerts, failure warnings, and GPU indicators—plus fast clip transcoding and test speedups.6 changes

Feature

'Be Right Here' big model

Released a new larger driving model alongside supporting alerts and a loading chime.

Feature

Fast hardware clip transcoding

Video clips can now be converted using the device's hardware encoder instead of slow software processing.

Feature

GPU icon onroad

The on-screen interface shows a GPU indicator while the big model is active or loading.

Fix

Lane departure blinker cooldown

Fixed the lane-departure warning using the wrong time step in its blinker cooldown logic.

Refactor

Faster unit tests

Replaced pytest with a lightweight custom runner and removed slow tests so checks finish much quicker.

Chore

AGNOS 18.8

Shipped another operating system update for the device.

2026-07-20Preparation for the big model release dominated: fallback loading, eGPU indicators, new sounds, and dependency slimming like removing emoji and Pillow support.6 changes

Feature

Big model fallback

Added a safety net so the system can fall back if the large driving model fails to load.

Feature

eGPU UI indicators

The interface now shows an external-GPU icon whenever the extra GPU is detected.

Feature

New sounds for 3x

Introduced fresh audio cues for the upcoming release.

Chore

Removed emoji and Pillow

Dropped emoji rendering and the Pillow image library to slim down the software.

Fix

Cruise speed limit handling

Moved cruise speed-limit logic out of the controller math for cleaner longitudinal control.

Chore

AGNOS 18.7

Shipped an updated version of the device operating system.

03 · Security check

Dependencies and code review

67 dependencies scanned

Dependency advisories

Security Watch

No known advisories across 67 scanned dependencies.

No known advisories in the scanned dependencies.

Code review

No concrete code-level issues confirmed.

Get this report every week for your repos.

GitZoid learns each repo, reports what changed, and flags what needs attention. One flat price for the whole team.

$19 a month, flat · First 10 outputs free · No card required