Disengage on gas toggle

pull/23538/head
Jason Wen 3 years ago
parent b63bc89bc9
commit 87475e02cb
  1. 5
      selfdrive/car/interfaces.py
  2. 1
      selfdrive/common/params.cc
  3. 1
      selfdrive/manager/manager.py
  4. 6
      selfdrive/ui/qt/offroad/settings.cc

@ -32,6 +32,7 @@ class CarInterfaceBase(ABC):
self.steering_unpressed = 0 self.steering_unpressed = 0
self.low_speed_alert = False self.low_speed_alert = False
self.silent_steer_warning = True self.silent_steer_warning = True
self.disengage_on_gas = params.get("DisengageOnGas", encoding='utf8')
if CarState is not None: if CarState is not None:
self.CS = CarState(CP) self.CS = CarState(CP)
@ -123,7 +124,7 @@ class CarInterfaceBase(ABC):
events.add(EventName.wrongCarMode) events.add(EventName.wrongCarMode)
if cs_out.espDisabled: if cs_out.espDisabled:
events.add(EventName.espDisabled) events.add(EventName.espDisabled)
if cs_out.gasPressed: if cs_out.gasPressed and self.disengage_on_gas:
events.add(EventName.gasPressed) events.add(EventName.gasPressed)
if cs_out.stockFcw: if cs_out.stockFcw:
events.add(EventName.stockFcw) events.add(EventName.stockFcw)
@ -152,7 +153,7 @@ class CarInterfaceBase(ABC):
events.add(EventName.steerUnavailable) events.add(EventName.steerUnavailable)
# Disable on rising edge of gas or brake. Also disable on brake when speed > 0. # Disable on rising edge of gas or brake. Also disable on brake when speed > 0.
if (cs_out.gasPressed and not self.CS.out.gasPressed) or \ if (self.disengage_on_gas and cs_out.gasPressed and not self.CS.out.gasPressed) or \
(cs_out.brakePressed and (not self.CS.out.brakePressed or not cs_out.standstill)): (cs_out.brakePressed and (not self.CS.out.brakePressed or not cs_out.standstill)):
events.add(EventName.pedalPressed) events.add(EventName.pedalPressed)

@ -99,6 +99,7 @@ std::unordered_map<std::string, uint32_t> keys = {
{"DisableRadar_Allow", PERSISTENT}, {"DisableRadar_Allow", PERSISTENT},
{"DisableRadar", PERSISTENT}, // WARNING: THIS DISABLES AEB {"DisableRadar", PERSISTENT}, // WARNING: THIS DISABLES AEB
{"DisableUpdates", PERSISTENT}, {"DisableUpdates", PERSISTENT},
{"DisengageOnGas", PERSISTENT},
{"DongleId", PERSISTENT}, {"DongleId", PERSISTENT},
{"DoReboot", CLEAR_ON_MANAGER_START}, {"DoReboot", CLEAR_ON_MANAGER_START},
{"DoShutdown", CLEAR_ON_MANAGER_START}, {"DoShutdown", CLEAR_ON_MANAGER_START},

@ -38,6 +38,7 @@ def manager_init() -> None:
default_params: List[Tuple[str, Union[str, bytes]]] = [ default_params: List[Tuple[str, Union[str, bytes]]] = [
("CompletedTrainingVersion", "0"), ("CompletedTrainingVersion", "0"),
("DisengageOnGas", "1"),
("HasAcceptedTerms", "0"), ("HasAcceptedTerms", "0"),
("OpenpilotEnabledToggle", "1"), ("OpenpilotEnabledToggle", "1"),
] ]

@ -71,6 +71,12 @@ TogglesPanel::TogglesPanel(SettingsWindow *parent) : ListWidget(parent) {
"In this mode openpilot will ignore lanelines and just drive how it thinks a human would.", "In this mode openpilot will ignore lanelines and just drive how it thinks a human would.",
"../assets/offroad/icon_road.png", "../assets/offroad/icon_road.png",
}, },
{
"DisengageOnGas",
"Disengage openpilot On Gas Press",
"Disengage openpilot on gas pedal press.",
"../assets/offroad/icon_speed_limit.png",
},
#ifdef ENABLE_MAPS #ifdef ENABLE_MAPS
{ {
"NavSettingTime24h", "NavSettingTime24h",

Loading…
Cancel
Save