openpilot

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

bash <(curl -fsSL openpilot.comma.ai)

61,636

⭐ Stars

11,038

🍴 Forks

136

🐛 Open Issues

MIT

📜 License

Python

💻 Language

1,314

👥 Subscribers

Experience openpilot

Using openpilot in a car

To use openpilot in a car, you need four things:

1

Supported Device

A comma four, available at comma.ai/shop/comma-four

2

Software

The setup procedure for the comma four allows users to enter a URL for custom software. Use the URL openpilot.comma.ai to install the release version.

3

Supported Car

Ensure that you have one of the 300+ supported cars.

4

Car Harness

You will also need a car harness to connect your comma four to your car.

We have detailed instructions for how to install the harness and device in a car. Note that it's possible to run openpilot on other hardware, although it's not plug-and-play.

Branches

Running master and other branches directly is supported, but it's recommended to run one of the following prebuilt branches:

comma four branch comma 3X branch URL description
release-mici release-tizi openpilot.comma.ai This is openpilot's release branch.
release-mici-staging release-tizi-staging openpilot-test.comma.ai This is the staging branch for releases. Use it to get new releases slightly early.
nightly nightly openpilot-nightly.comma.ai This is the bleeding edge development branch. Do not expect this to be stable.
nightly-dev nightly-dev installer.comma.ai/commaai/nightly-dev Same as nightly, but includes experimental development features for some cars.

To start developing openpilot

openpilot is developed by comma and by users like you. We welcome both pull requests and issues on GitHub.

Safety and Testing

ISO26262 Guidelines

openpilot observes ISO26262 guidelines, see SAFETY.md for more details.

Software-in-the-loop Tests

openpilot has software-in-the-loop tests that run on every commit.

Code Rigor

The code enforcing the safety model lives in panda and is written in C, see code rigor for more details.

Hardware Testing

Internally, we have a hardware-in-the-loop Jenkins test suite that builds and unit tests the various processes.

Continuous Testing

We run the latest openpilot in a testing closet containing 10 comma devices continuously replaying routes.

License

openpilot is released under the MIT license.