Files
sunnypilot-byd/panda/board
Quintine 1abd13736b byd: fix SEAL bus topology from live dump — ADAS on bus 0, PCM_BUTTONS confirmed
Live bus dump from the Seal showed a different topology than the Han:
- ACC_HUD_ADAS (813) + ACC_CMD (814) are broadcast on the vehicle CAN
  (bus 0), not the camera CAN. Panda rx check expected 813 on bus 2 and
  never saw it -> safety config invalid -> controls blocked forever.
- PCM_BUTTONS (944) confirmed on bus 0 at 20Hz (MADS button placement OK)
- 482 MPC_LKAS_CMD_ANGLE present on bus 2 (angle LKAS cmd; for future use)

Changes:
- carstate: ADAS messages (ACC_HUD_ADAS/ACC_CMD) read from bus 0 on SEAL,
  bus 2 on HAN (cp_adas accessor); parsers built per platform/bus
- panda byd.h: 813 cruise check is bus-independent; rx checks accept
  813 on bus 0 or 2, 944 on bus 0 or 2 (first-seen-wins)
- interface: disable openpilot longitudinal for SEAL — stock ACC_CMD
  originates on bus 0 where the panda cannot intercept it. Stock ACC +
  MADS lateral it is (which is the point of MADS anyway).
- panda firmware rebuilt

Verified: SEAL (cruise+lkas button via bus 0, alphaLong=False) and
HAN (bus 2 topology, alphaLong=True) both canValid; 120 safety tests +
MISRA clean.
2026-07-25 18:57:17 +10:00
..
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00
2026-07-21 07:44:02 +00:00

Programming

./flash.py        # flash application
./recover.py      # flash bootstub

Debugging

To print out the serial console from the STM32, run tests/debug_console.py

Troubleshooting

If your panda will not flash and green LED is on, use recover.py. If panda is blinking fast with green LED, use flash.py.

Otherwise if LED is off and panda can't be seen with lsusb command, use panda paw to go into DFU mode.

If your device has an internal panda and none of the above works, try running ../scripts/reflash_internal_panda.py.