From a9bcf732d0ddf3ff8c8ce02abee449ad18c9cd59 Mon Sep 17 00:00:00 2001 From: Jason Wen Date: Wed, 21 Jun 2023 07:33:00 -0400 Subject: [PATCH] Suppress panda siren if in park gear (#175) * Suppress panda siren if in park gear * bump panda --- panda | 2 +- selfdrive/boardd/boardd.cc | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/panda b/panda index dbc8ce299a..bb7d6dbdaa 160000 --- a/panda +++ b/panda @@ -1 +1 @@ -Subproject commit dbc8ce299a6033f69a1f750385ec9ffefe6fae98 +Subproject commit bb7d6dbdaa15e95d04a3ea31eb5560aff296ef30 diff --git a/selfdrive/boardd/boardd.cc b/selfdrive/boardd/boardd.cc index 7cae1c7419..72c0a8c310 100644 --- a/selfdrive/boardd/boardd.cc +++ b/selfdrive/boardd/boardd.cc @@ -466,7 +466,7 @@ void panda_state_thread(PubMaster *pm, std::vector pandas, bool spoofin util::set_thread_name("boardd_panda_state"); Params params; - SubMaster sm({"controlsState"}); + SubMaster sm({"controlsState", "carState"}); Panda *peripheral_panda = pandas[0]; bool is_onroad = false; @@ -526,9 +526,10 @@ void panda_state_thread(PubMaster *pm, std::vector pandas, bool spoofin sm.update(0); const bool engaged = sm.allAliveAndValid({"controlsState"}) && sm["controlsState"].getControlsState().getEnabled(); + const bool parked = sm.allAliveAndValid({"carState"}) && (int(sm["carState"].getCarState().getGearShifter()) == 1); for (const auto &panda : pandas) { - panda->send_heartbeat(engaged); + panda->send_heartbeat(engaged && !parked); } uint64_t dt = nanos_since_boot() - start_time;