Revert "Move alpha longitudinal control toggle to developer panel (#34223)"

This reverts commit d4a6f62c40.
pull/34469/head
Adeeb Shihadeh 3 months ago
parent 2e1436a515
commit d0f5e5a09d
  1. 28
      selfdrive/ui/qt/offroad/developer_panel.cc
  2. 2
      selfdrive/ui/qt/offroad/developer_panel.h
  3. 17
      selfdrive/ui/qt/offroad/settings.cc

@ -24,13 +24,6 @@ DeveloperPanel::DeveloperPanel(SettingsWindow *parent) : ListWidget(parent) {
}); });
addItem(longManeuverToggle); addItem(longManeuverToggle);
alphaLongToggle = new ParamControl("ExperimentalLongitudinalEnabled", tr("openpilot Longitudinal Control (Alpha)"), "", "../assets/offroad/icon_speed_limit.png");
QObject::connect(alphaLongToggle, &ParamControl::toggleFlipped, [=](bool state) {
updateToggles(offroad);
});
addItem(alphaLongToggle);
alphaLongToggle->setConfirmation(true, false);
// Joystick and longitudinal maneuvers should be hidden on release branches // Joystick and longitudinal maneuvers should be hidden on release branches
is_release = params.getBool("IsReleaseBranch"); is_release = params.getBool("IsReleaseBranch");
@ -50,29 +43,8 @@ void DeveloperPanel::updateToggles(bool _offroad) {
AlignedBuffer aligned_buf; AlignedBuffer aligned_buf;
capnp::FlatArrayMessageReader cmsg(aligned_buf.align(cp_bytes.data(), cp_bytes.size())); capnp::FlatArrayMessageReader cmsg(aligned_buf.align(cp_bytes.data(), cp_bytes.size()));
cereal::CarParams::Reader CP = cmsg.getRoot<cereal::CarParams>(); cereal::CarParams::Reader CP = cmsg.getRoot<cereal::CarParams>();
const QString alpha_long_description = QString("<b>%1</b><br><br>%2")
.arg(tr("WARNING: openpilot longitudinal control is in alpha for this car and will disable Automatic Emergency Braking (AEB)."))
.arg(tr("On this car, openpilot defaults to the car's built-in ACC instead of openpilot's longitudinal control. "
"Enable this to switch to openpilot longitudinal control. Enabling Experimental mode is recommended when enabling openpilot longitudinal control alpha."));
alphaLongToggle->setDescription("<b>" + alpha_long_description + "</b>");
if (!CP.getExperimentalLongitudinalAvailable() && !CP.getOpenpilotLongitudinalControl()) {
params.remove("ExperimentalLongitudinalEnabled");
alphaLongToggle->setEnabled(false);
alphaLongToggle->setDescription("<b>" + tr("openpilot longitudinal control may come in a future update.") + "</b>");
}
// if is a release branch or if the car already have long control the alphaLongToggle should not be visible
if (is_release || CP.getOpenpilotLongitudinalControl()) {
params.remove("ExperimentalLongitudinalEnabled");
alphaLongToggle->setVisible(false);
}
alphaLongToggle->refresh();
longManeuverToggle->setEnabled(hasLongitudinalControl(CP) && _offroad); longManeuverToggle->setEnabled(hasLongitudinalControl(CP) && _offroad);
} else { } else {
alphaLongToggle->setVisible(false);
longManeuverToggle->setEnabled(false); longManeuverToggle->setEnabled(false);
} }

@ -12,8 +12,6 @@ private:
Params params; Params params;
ParamControl* joystickToggle; ParamControl* joystickToggle;
ParamControl* longManeuverToggle; ParamControl* longManeuverToggle;
ParamControl* alphaLongToggle;
bool is_release; bool is_release;
bool offroad; bool offroad;

@ -24,6 +24,15 @@ TogglesPanel::TogglesPanel(SettingsWindow *parent) : ListWidget(parent) {
tr("Use the openpilot system for adaptive cruise control and lane keep driver assistance. Your attention is required at all times to use this feature. Changing this setting takes effect when the car is powered off."), tr("Use the openpilot system for adaptive cruise control and lane keep driver assistance. Your attention is required at all times to use this feature. Changing this setting takes effect when the car is powered off."),
"../assets/img_chffr_wheel.png", "../assets/img_chffr_wheel.png",
}, },
{
"ExperimentalLongitudinalEnabled",
tr("openpilot Longitudinal Control (Alpha)"),
QString("<b>%1</b><br><br>%2")
.arg(tr("WARNING: openpilot longitudinal control is in alpha for this car and will disable Automatic Emergency Braking (AEB)."))
.arg(tr("On this car, openpilot defaults to the car's built-in ACC instead of openpilot's longitudinal control. "
"Enable this to switch to openpilot longitudinal control. Enabling Experimental mode is recommended when enabling openpilot longitudinal control alpha.")),
"../assets/offroad/icon_speed_limit.png",
},
{ {
"ExperimentalMode", "ExperimentalMode",
tr("Experimental Mode"), tr("Experimental Mode"),
@ -92,6 +101,11 @@ TogglesPanel::TogglesPanel(SettingsWindow *parent) : ListWidget(parent) {
// Toggles with confirmation dialogs // Toggles with confirmation dialogs
toggles["ExperimentalMode"]->setActiveIcon("../assets/img_experimental.svg"); toggles["ExperimentalMode"]->setActiveIcon("../assets/img_experimental.svg");
toggles["ExperimentalMode"]->setConfirmation(true, true); toggles["ExperimentalMode"]->setConfirmation(true, true);
toggles["ExperimentalLongitudinalEnabled"]->setConfirmation(true, false);
connect(toggles["ExperimentalLongitudinalEnabled"], &ToggleControl::toggleFlipped, [=]() {
updateToggles();
});
} }
void TogglesPanel::updateState(const UIState &s) { void TogglesPanel::updateState(const UIState &s) {
@ -116,6 +130,7 @@ void TogglesPanel::showEvent(QShowEvent *event) {
void TogglesPanel::updateToggles() { void TogglesPanel::updateToggles() {
auto experimental_mode_toggle = toggles["ExperimentalMode"]; auto experimental_mode_toggle = toggles["ExperimentalMode"];
auto op_long_toggle = toggles["ExperimentalLongitudinalEnabled"];
const QString e2e_description = QString("%1<br>" const QString e2e_description = QString("%1<br>"
"<h4>%2</h4><br>" "<h4>%2</h4><br>"
"%3<br>" "%3<br>"
@ -139,6 +154,7 @@ void TogglesPanel::updateToggles() {
if (!CP.getExperimentalLongitudinalAvailable() || is_release) { if (!CP.getExperimentalLongitudinalAvailable() || is_release) {
params.remove("ExperimentalLongitudinalEnabled"); params.remove("ExperimentalLongitudinalEnabled");
} }
op_long_toggle->setVisible(CP.getExperimentalLongitudinalAvailable() && !is_release);
if (hasLongitudinalControl(CP)) { if (hasLongitudinalControl(CP)) {
// normal description and toggle // normal description and toggle
experimental_mode_toggle->setEnabled(true); experimental_mode_toggle->setEnabled(true);
@ -167,6 +183,7 @@ void TogglesPanel::updateToggles() {
experimental_mode_toggle->refresh(); experimental_mode_toggle->refresh();
} else { } else {
experimental_mode_toggle->setDescription(e2e_description); experimental_mode_toggle->setDescription(e2e_description);
op_long_toggle->setVisible(false);
} }
} }

Loading…
Cancel
Save