Upgrade driver assistance on over 300 supported vehicle models
Imagine connecting a dedicated device to your car and watching its existing driver assistance system become more active. openpilot is software that communicates with a car's electronic control units to upgrade driver assistance features. It is designed to work across a variety of vehicles on the support list, not just specific models.
Requirements for vehicle installation
Running openpilot on a real vehicle requires four elements. First, you need the comma four dedicated hardware device, which is available for purchase from comma.ai. Second, you must enter a URL address to install the openpilot software on the device. Third, the vehicle must be on the supported list, and fourth, you need a harness to connect the device to the vehicle's electronic systems. The README provides detailed installation instructions but notes that while running on other hardware is possible, it is not ready for immediate use out of the box.
Distinguishing stable and experimental versions
Users can choose a software version that fits their needs. The most stable 'release' branch provides official releases, while the 'staging' branch allows users to experience new releases a bit earlier. In contrast, the 'nightly' branch is the latest development version and is an experimental environment without stability guarantees. The same branch structure is provided for users of the specific hardware chestnut, with each branch having a different installation URL. Developers or users seeking advanced features can test experimental features for some vehicles through the 'nightly-dev' branch.
Safety verification and data handling
openpilot adheres to ISO26262 safety guidelines and runs software in the loop (SIL) tests for every commit. Code that enforces the safety model is written in C and included in the panda module, which undergoes additional hardware in the loop (HIL) testing. Internally, tests are performed by continuously running the latest openpilot in a test space containing 10 comma devices to replay routes. Regarding data, the system uploads data such as road-facing camera, CAN, GPS, and IMU to servers for model training by default, but users can disable data collection if they wish. The driver-facing camera and microphone are only recorded if the user explicitly agrees in the settings.
Legal and technical limitations to know before use
This software is an alpha-quality product intended for research purposes only and is not a formal commercial product. Users are responsible for complying with local laws and regulations, and no warranties are provided. Additionally, all users of openpilot must agree to indemnify and hold harmless Comma.ai, Inc. and related parties from any claims, demands, lawsuits, damages, or costs. The license is open under the MIT License, but some software parts may be distributed under other licenses. Therefore, a clear understanding of legal liability and technical stability is required before applying this tool to a vehicle.