Files
Quintine 02f1972e99 byd: spoof 508 steering feedback to camera on SEAL — fixes ADAS lockout
The Seal's camera faults (ACC + ADAS + AEB warning lights, 'unable to
activate ADAS') because panda neutralizes its intercepted 790 LKAS
commands while the camera watches the 508 feedback for execution —
seeing its requests ignored, it disables the whole ADAS suite.

The Han avoids this by echoing the camera's request back in the 792
feedback; the Seal needs the same on its 508 STEERING_TORQUE_ANGLE:

- bydcan.create_steering_torque_angle: mirrors the Han spoof logic on
  the 508 layout — when camera LKAS is active, echo its 790 torque
  request into MAIN_TORQUE and its 482 angle request into TARGET_ANGLE
  with Cruise_Activated=1; prepare -> LKSPrepare=1; passive -> neutral
- carcontroller: Seal sends the 508 spoof, Han keeps the 792 spoof
- carstate: capture the camera's 482 angle command for the spoof
- panda: whitelist 508 TX on bus 2 (absolute-limit check), stock 508
  blocked 0->2 via check_relay — one config covers both platforms
- firmware rebuilt; spoof decode-verified (camera's exact torque+angle
  echoed back); 120 safety tests + MISRA clean

NOTE: the ADAS fault latches — the car needs a full power cycle (or a
few minutes off) after flashing this build for the dash warnings to
clear.
2026-07-25 19:37:06 +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.