commaai/panda

code powering the comma.ai panda

What it solves

It provides a secure interface for communicating with a vehicle's internal network (CAN and CAN FD), ensuring that commands sent to the car are filtered through a safety model to prevent dangerous actions.

How it works

Running on the STM32H725 microcontroller, panda acts as a bridge between a computer and the car's CAN buses. It uses vehicle-specific safety logic (provided by opendbc) to enforce safety constraints on outgoing messages. The project includes a Python library for userspace interaction and a rigorous testing suite including static analysis, MISRA C:2012 compliance checks, and hardware-in-the-loop tests.

Who it’s for

Developers working on vehicle automation, specifically those using openpilot or building custom automotive software that requires safe CAN bus interaction.

Highlights

  • Safety-First Design: Enforces vehicle-specific safety models to prevent unsafe vehicle control.
  • Hardware Integration: Native support for STM32H725 and CAN FD.
  • High Code Rigor: Employs strict compiler flags, MISRA C compliance, and mutation testing to ensure reliability.
  • Python Interface: Includes a dedicated library for easy sending and receiving of CAN messages.

Related

  • Project
  • Project
  • Project
  • Project
  • Project