update unsafeMode to alternativeExperience (#23995)
* update unsafeMode to alternativeExperience * fix * fix * bump submodules Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>pull/24008/merge
parent
d08b52caef
commit
e91613bc62
2
cereal
2
cereal
|
@ -1 +1 @@
|
||||||
Subproject commit 447d8b8a7a9c75e5f3478ac08622d6f1d2121528
|
Subproject commit e94649e0ed1f70fe5c74c3700a9330b878606101
|
2
panda
2
panda
|
@ -1 +1 @@
|
||||||
Subproject commit e01c64574c03da825c9f467a377dde3f07ea6926
|
Subproject commit 7104818e148494523e87fd74736748b6ffd0a7c4
|
|
@ -161,7 +161,7 @@ bool safety_setter_thread(std::vector<Panda *> pandas) {
|
||||||
int safety_param;
|
int safety_param;
|
||||||
|
|
||||||
auto safety_configs = car_params.getSafetyConfigs();
|
auto safety_configs = car_params.getSafetyConfigs();
|
||||||
uint16_t unsafe_mode = car_params.getUnsafeMode();
|
uint16_t alternative_experience = car_params.getAlternativeExperience();
|
||||||
for (uint32_t i = 0; i < pandas.size(); i++) {
|
for (uint32_t i = 0; i < pandas.size(); i++) {
|
||||||
auto panda = pandas[i];
|
auto panda = pandas[i];
|
||||||
|
|
||||||
|
@ -174,8 +174,8 @@ bool safety_setter_thread(std::vector<Panda *> pandas) {
|
||||||
safety_param = 0;
|
safety_param = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
LOGW("panda %d: setting safety model: %d, param: %d, unsafe mode: %d", i, (int)safety_model, safety_param, unsafe_mode);
|
LOGW("panda %d: setting safety model: %d, param: %d, alternative experience: %d", i, (int)safety_model, safety_param, alternative_experience);
|
||||||
panda->set_unsafe_mode(unsafe_mode);
|
panda->set_alternative_experience(alternative_experience);
|
||||||
panda->set_safety_model(safety_model, safety_param);
|
panda->set_safety_model(safety_model, safety_param);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -362,7 +362,7 @@ std::optional<bool> send_panda_states(PubMaster *pm, const std::vector<Panda *>
|
||||||
ps.setFaultStatus(cereal::PandaState::FaultStatus(health.fault_status_pkt));
|
ps.setFaultStatus(cereal::PandaState::FaultStatus(health.fault_status_pkt));
|
||||||
ps.setPowerSaveEnabled((bool)(health.power_save_enabled_pkt));
|
ps.setPowerSaveEnabled((bool)(health.power_save_enabled_pkt));
|
||||||
ps.setHeartbeatLost((bool)(health.heartbeat_lost_pkt));
|
ps.setHeartbeatLost((bool)(health.heartbeat_lost_pkt));
|
||||||
ps.setUnsafeMode(health.unsafe_mode_pkt);
|
ps.setAlternativeExperience(health.alternative_experience_pkt);
|
||||||
ps.setHarnessStatus(cereal::PandaState::HarnessStatus(health.car_harness_status_pkt));
|
ps.setHarnessStatus(cereal::PandaState::HarnessStatus(health.car_harness_status_pkt));
|
||||||
|
|
||||||
// Convert faults bitset to capnp list
|
// Convert faults bitset to capnp list
|
||||||
|
|
|
@ -251,8 +251,8 @@ void Panda::set_safety_model(cereal::CarParams::SafetyModel safety_model, int sa
|
||||||
usb_write(0xdc, (uint16_t)safety_model, safety_param);
|
usb_write(0xdc, (uint16_t)safety_model, safety_param);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Panda::set_unsafe_mode(uint16_t unsafe_mode) {
|
void Panda::set_alternative_experience(uint16_t alternative_experience) {
|
||||||
usb_write(0xdf, unsafe_mode, 0);
|
usb_write(0xdf, alternative_experience, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
cereal::PandaState::PandaType Panda::get_hw_type() {
|
cereal::PandaState::PandaType Panda::get_hw_type() {
|
||||||
|
|
|
@ -74,7 +74,7 @@ class Panda {
|
||||||
// Panda functionality
|
// Panda functionality
|
||||||
cereal::PandaState::PandaType get_hw_type();
|
cereal::PandaState::PandaType get_hw_type();
|
||||||
void set_safety_model(cereal::CarParams::SafetyModel safety_model, int safety_param=0);
|
void set_safety_model(cereal::CarParams::SafetyModel safety_model, int safety_param=0);
|
||||||
void set_unsafe_mode(uint16_t unsafe_mode);
|
void set_alternative_experience(uint16_t alternative_experience);
|
||||||
void set_rtc(struct tm sys_time);
|
void set_rtc(struct tm sys_time);
|
||||||
struct tm get_rtc();
|
struct tm get_rtc();
|
||||||
void set_fan_speed(uint16_t fan_speed);
|
void set_fan_speed(uint16_t fan_speed);
|
||||||
|
|
|
@ -94,7 +94,7 @@ class Controls:
|
||||||
get_one_can(self.can_sock)
|
get_one_can(self.can_sock)
|
||||||
|
|
||||||
self.CI, self.CP = get_car(self.can_sock, self.pm.sock['sendcan'])
|
self.CI, self.CP = get_car(self.can_sock, self.pm.sock['sendcan'])
|
||||||
self.CP.unsafeMode = 0 # see panda/board/safety_declarations.h for allowed values
|
self.CP.alternativeExperience = 0 # see panda/board/safety_declarations.h for allowed values
|
||||||
|
|
||||||
# read params
|
# read params
|
||||||
self.is_metric = params.get_bool("IsMetric")
|
self.is_metric = params.get_bool("IsMetric")
|
||||||
|
@ -260,7 +260,7 @@ class Controls:
|
||||||
if i < len(self.CP.safetyConfigs):
|
if i < len(self.CP.safetyConfigs):
|
||||||
safety_mismatch = pandaState.safetyModel != self.CP.safetyConfigs[i].safetyModel or \
|
safety_mismatch = pandaState.safetyModel != self.CP.safetyConfigs[i].safetyModel or \
|
||||||
pandaState.safetyParam != self.CP.safetyConfigs[i].safetyParam or \
|
pandaState.safetyParam != self.CP.safetyConfigs[i].safetyParam or \
|
||||||
pandaState.unsafeMode != self.CP.unsafeMode
|
pandaState.alternativeExperience != self.CP.alternativeExperience
|
||||||
else:
|
else:
|
||||||
safety_mismatch = pandaState.safetyModel not in IGNORED_SAFETY_MODES
|
safety_mismatch = pandaState.safetyModel not in IGNORED_SAFETY_MODES
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue