diff --git a/panda b/panda index ffb3109e28..2f3e2825e5 160000 --- a/panda +++ b/panda @@ -1 +1 @@ -Subproject commit ffb3109e28296cc86f1892c4e0690856e28fb35a +Subproject commit 2f3e2825e5ecc8074b4ee9cb9a70df635d09fd10 diff --git a/selfdrive/boardd/boardd.cc b/selfdrive/boardd/boardd.cc index 3e39985c29..77e86f9458 100644 --- a/selfdrive/boardd/boardd.cc +++ b/selfdrive/boardd/boardd.cc @@ -407,6 +407,7 @@ std::optional send_panda_states(PubMaster *pm, const std::vector cs[j].setCanDataSpeed(can_health.can_data_speed); cs[j].setCanfdEnabled(can_health.canfd_enabled); cs[j].setBrsEnabled(can_health.brs_enabled); + cs[j].setCanfdNonIso(can_health.canfd_non_iso); } // Convert faults bitset to capnp list diff --git a/selfdrive/boardd/panda.cc b/selfdrive/boardd/panda.cc index 7ddf15f9ce..0b8630b0c0 100644 --- a/selfdrive/boardd/panda.cc +++ b/selfdrive/boardd/panda.cc @@ -360,6 +360,10 @@ void Panda::set_data_speed_kbps(uint16_t bus, uint16_t speed) { usb_write(0xf9, bus, (speed * 10)); } +void Panda::set_canfd_non_iso(uint16_t bus, bool non_iso) { + usb_write(0xfc, bus, non_iso); +} + static uint8_t len_to_dlc(uint8_t len) { if (len <= 8) { return len; diff --git a/selfdrive/boardd/panda.h b/selfdrive/boardd/panda.h index a4afbdac1a..c7a0e7a6c1 100644 --- a/selfdrive/boardd/panda.h +++ b/selfdrive/boardd/panda.h @@ -91,6 +91,7 @@ class Panda { void send_heartbeat(bool engaged); void set_can_speed_kbps(uint16_t bus, uint16_t speed); void set_data_speed_kbps(uint16_t bus, uint16_t speed); + void set_canfd_non_iso(uint16_t bus, bool non_iso); void can_send(capnp::List::Reader can_data_list); bool can_receive(std::vector& out_vec);