Files
sunnypilot/tools
stef 9844075bb2 remote teleop multi-stream on 1 video track (#38013)
* athenad and webrtcd updates

* remove feature stream services from webrtcd split

* stream encoder thread

* reduce diff

* wire webrtc to livestream camera encoder

* request livestream camera switch service

* remove camera list in favour of init camera field

* remove cors

* clean

* remove unused

* remove extra try except

* add back exception trace

* add stream road camera info to stream cameras

* fix

* clean diff

* clean diff

* add testJoystick only on body

* fix camera list

* remove reference to future service

* encode all cameras and swap in video track in webrtc

* clean

* explicitly gate bridge send

* clean leftover

* make local bodyteleop work still
2026-05-22 19:20:22 -07:00
..
2026-05-11 15:34:05 -07:00
2026-03-01 15:40:10 -08:00
2026-04-26 09:40:49 -07:00
2026-05-11 20:00:00 -07:00
2026-02-12 08:59:19 -08:00
2020-01-17 10:07:22 -08:00
2025-09-03 16:06:41 -07:00
2024-12-16 09:37:29 -08:00
2026-04-15 10:26:12 -07:00
2026-05-07 15:36:42 -07:00
2026-04-15 10:26:12 -07:00

openpilot tools

System Requirements

openpilot is developed and tested on Ubuntu 24.04, which is the primary development target aside from the supported embedded hardware.

Most of openpilot should work natively on macOS. On Windows you can use WSL for a nearly native Ubuntu experience. Running natively on any other system is not currently recommended and will likely require modifications.

Native setup on Ubuntu 24.04 and macOS

Follow these instructions for a fully managed setup experience. If you'd like to manage the dependencies yourself, just read the setup scripts in this directory.

1. Clone openpilot

git clone https://github.com/commaai/openpilot.git

2. Run the setup script

cd openpilot
tools/op.sh setup

3. Activate a Python shell Activate a shell with the Python dependencies installed:

source .venv/bin/activate

4. Build openpilot

scons -u

WSL on Windows

Windows Subsystem for Linux (WSL) should provide a similar experience to native Ubuntu. WSL 2 specifically has been reported by several users to be a seamless experience.

Follow these instructions to setup the WSL and install the Ubuntu-24.04 distribution. Once your Ubuntu WSL environment is setup, follow the Linux setup instructions to finish setting up your environment. See these instructions for running GUI apps.

NOTE: If you are running WSL 2 and experiencing performance issues with the UI or simulator, you may need to explicitly enable hardware acceleration by setting GALLIUM_DRIVER=d3d12 before commands. Add export GALLIUM_DRIVER=d3d12 to your ~/.bashrc file to make it automatic for future sessions.

CTF

Learn about the openpilot ecosystem and tools by playing our CTF.

Directory Structure

├── cabana/             # View and plot CAN messages from drives or in realtime
├── camerastream/       # Cameras stream over the network
├── joystick/           # Control your car with a joystick
├── lib/                # Libraries to support the tools and reading openpilot logs
├── plotjuggler/        # A tool to plot openpilot logs
├── replay/             # Replay drives and mock openpilot services
├── scripts/            # Miscellaneous scripts
├── serial/             # Tools for using the comma serial
├── sim/                # Run openpilot in a simulator
└── webcam/             # Run openpilot on a PC with webcams