exp_features["e2e_long"]=tr("Let the driving model control the gas and brakes. openpilot will drive as it thinks a human would, including stopping for red lights and stop signs. "
"Since the driving model decides the speed to drive, the set speed will only act as an upper bound. This is an alpha quality feature; mistakes should be expected.");
exp_features["nav_on_op"]=tr("When navigation has a destination, openpilot will input the map information into the model. This generally improves behavior and allows openpilot to keep left or right appropriately at forks/exits and take turns. "
"Lane change behavior is unchanged and still activated by the driver. This is an alpha quality feature; mistakes should be expected.");
exp_features["visualization"]=tr("The driving visualization will transition to the road-facing wide-angle camera at low speeds to better show some turns. The Experimental mode logo will also be shown in the top right corner.");
{"e2e_long",tr("🌮 End-to-End Longitudinal Control 🌮")},
{"nav_on_op",tr("Navigate on openpilot")},
{"visualization",tr("New Driving Visualization")}
};
constQStringe2e_description=QString("%1<br>"
"<h4>%2</h4><br>"
"%3<br>"
"<h4>%4</h4><br>"
"%5")
.arg(tr("openpilot defaults to driving in <b>chill mode</b>. Experimental mode enables <b>alpha-level features</b> that aren't ready for chill mode. Experimental features are listed below:"))
.arg(tr("🌮 End-to-End Longitudinal Control 🌮"))
.arg(tr("Let the driving model control the gas and brakes. openpilot will drive as it thinks a human would, including stopping for red lights and stop signs. "
"Since the driving model decides the speed to drive, the set speed will only act as an upper bound. This is an alpha quality feature; mistakes should be expected."))
.arg(tr("New Driving Visualization"))
.arg(tr("The driving visualization will transition to the road-facing wide-angle camera at low speeds to better show some turns. The Experimental mode logo will also be shown in the top right corner."));
// prepended note that end-to-end longitudinal control will not be used
constQStringunavailable=tr("End-to-End Longitudinal Control is currently unavailable on this car since the car's stock ACC is used for longitudinal control.");
constQStringunavailable=tr("Experimental mode is currently unavailable on this car since the car's stock ACC is used for longitudinal control.");
QStringlong_desc=unavailable+""+ \
tr("openpilot longitudinal control may come in a future update.");
if(CP.getExperimentalLongitudinalAvailable()){
if(is_release){
long_desc=unavailable+""+tr("An alpha version of openpilot longitudinal control can be tested, along with End-to-End Longitudinal Control, on non-release branches.");
long_desc=unavailable+""+tr("An alpha version of openpilot longitudinal control can be tested, along with Experimental mode, on non-release branches.");
}else{
long_desc=tr("Enable experimental longitudinal control to use End-to-End Longitudinal Control.");
long_desc=tr("Enable experimental longitudinal control to allow Experimental mode.");
QStringe2e_description=tr("openpilot defaults to driving in <b>chill mode</b>. Experimental mode enables <b>alpha-level features</b> that aren't ready for chill mode. Experimental features are listed below:")+"<br>";