diff --git a/selfdrive/assets/sounds_chs/audio_1.wav b/selfdrive/assets/sounds_chs/audio_1.wav new file mode 100644 index 00000000..3570fe99 Binary files /dev/null and b/selfdrive/assets/sounds_chs/audio_1.wav differ diff --git a/selfdrive/assets/sounds_chs/audio_10.wav b/selfdrive/assets/sounds_chs/audio_10.wav new file mode 100644 index 00000000..858d9368 Binary files /dev/null and b/selfdrive/assets/sounds_chs/audio_10.wav differ diff --git a/selfdrive/assets/sounds_chs/audio_2.wav b/selfdrive/assets/sounds_chs/audio_2.wav new file mode 100644 index 00000000..7ce2fb69 Binary files /dev/null and b/selfdrive/assets/sounds_chs/audio_2.wav differ diff --git a/selfdrive/assets/sounds_chs/audio_3.wav b/selfdrive/assets/sounds_chs/audio_3.wav new file mode 100644 index 00000000..c7a3b758 Binary files /dev/null and b/selfdrive/assets/sounds_chs/audio_3.wav differ diff --git a/selfdrive/assets/sounds_chs/audio_4.wav b/selfdrive/assets/sounds_chs/audio_4.wav new file mode 100644 index 00000000..ed88e387 Binary files /dev/null and b/selfdrive/assets/sounds_chs/audio_4.wav differ diff --git a/selfdrive/assets/sounds_chs/audio_5.wav b/selfdrive/assets/sounds_chs/audio_5.wav new file mode 100644 index 00000000..bce79c18 Binary files /dev/null and b/selfdrive/assets/sounds_chs/audio_5.wav differ diff --git a/selfdrive/assets/sounds_chs/audio_6.wav b/selfdrive/assets/sounds_chs/audio_6.wav new file mode 100644 index 00000000..5c89883a Binary files /dev/null and b/selfdrive/assets/sounds_chs/audio_6.wav differ diff --git a/selfdrive/assets/sounds_chs/audio_7.wav b/selfdrive/assets/sounds_chs/audio_7.wav new file mode 100644 index 00000000..e4300344 Binary files /dev/null and b/selfdrive/assets/sounds_chs/audio_7.wav differ diff --git a/selfdrive/assets/sounds_chs/audio_8.wav b/selfdrive/assets/sounds_chs/audio_8.wav new file mode 100644 index 00000000..72e922e9 Binary files /dev/null and b/selfdrive/assets/sounds_chs/audio_8.wav differ diff --git a/selfdrive/assets/sounds_chs/audio_9.wav b/selfdrive/assets/sounds_chs/audio_9.wav new file mode 100644 index 00000000..142de44c Binary files /dev/null and b/selfdrive/assets/sounds_chs/audio_9.wav differ diff --git a/selfdrive/assets/sounds_chs/audio_auto_hold.wav b/selfdrive/assets/sounds_chs/audio_auto_hold.wav new file mode 100644 index 00000000..8901478e Binary files /dev/null and b/selfdrive/assets/sounds_chs/audio_auto_hold.wav differ diff --git a/selfdrive/assets/sounds_chs/audio_car_watchout.wav b/selfdrive/assets/sounds_chs/audio_car_watchout.wav new file mode 100644 index 00000000..1936d247 Binary files /dev/null and b/selfdrive/assets/sounds_chs/audio_car_watchout.wav differ diff --git a/selfdrive/assets/sounds_chs/audio_disengage.wav b/selfdrive/assets/sounds_chs/audio_disengage.wav new file mode 100644 index 00000000..9d04b35c Binary files /dev/null and b/selfdrive/assets/sounds_chs/audio_disengage.wav differ diff --git a/selfdrive/assets/sounds_chs/audio_engage.wav b/selfdrive/assets/sounds_chs/audio_engage.wav new file mode 100644 index 00000000..75e5e357 Binary files /dev/null and b/selfdrive/assets/sounds_chs/audio_engage.wav differ diff --git a/selfdrive/assets/sounds_chs/audio_lane_change.wav b/selfdrive/assets/sounds_chs/audio_lane_change.wav new file mode 100644 index 00000000..0b6ec53c Binary files /dev/null and b/selfdrive/assets/sounds_chs/audio_lane_change.wav differ diff --git a/selfdrive/assets/sounds_chs/audio_lanechange.wav b/selfdrive/assets/sounds_chs/audio_lanechange.wav new file mode 100644 index 00000000..0b6ec53c Binary files /dev/null and b/selfdrive/assets/sounds_chs/audio_lanechange.wav differ diff --git a/selfdrive/assets/sounds_chs/audio_speed_down.wav b/selfdrive/assets/sounds_chs/audio_speed_down.wav new file mode 100644 index 00000000..2f17ac99 Binary files /dev/null and b/selfdrive/assets/sounds_chs/audio_speed_down.wav differ diff --git a/selfdrive/assets/sounds_chs/audio_stopping.wav b/selfdrive/assets/sounds_chs/audio_stopping.wav new file mode 100644 index 00000000..01e473b2 Binary files /dev/null and b/selfdrive/assets/sounds_chs/audio_stopping.wav differ diff --git a/selfdrive/assets/sounds_chs/audio_stopstop.wav b/selfdrive/assets/sounds_chs/audio_stopstop.wav new file mode 100644 index 00000000..7984021d Binary files /dev/null and b/selfdrive/assets/sounds_chs/audio_stopstop.wav differ diff --git a/selfdrive/assets/sounds_chs/audio_traffic_error.wav b/selfdrive/assets/sounds_chs/audio_traffic_error.wav new file mode 100644 index 00000000..1e2a9ce0 Binary files /dev/null and b/selfdrive/assets/sounds_chs/audio_traffic_error.wav differ diff --git a/selfdrive/assets/sounds_chs/audio_turn.wav b/selfdrive/assets/sounds_chs/audio_turn.wav new file mode 100644 index 00000000..ae1b880f Binary files /dev/null and b/selfdrive/assets/sounds_chs/audio_turn.wav differ diff --git a/selfdrive/assets/sounds_chs/audio_turn2.wav b/selfdrive/assets/sounds_chs/audio_turn2.wav new file mode 100644 index 00000000..7cf96ecf Binary files /dev/null and b/selfdrive/assets/sounds_chs/audio_turn2.wav differ diff --git a/selfdrive/assets/sounds_chs/disengage.wav b/selfdrive/assets/sounds_chs/disengage.wav new file mode 100644 index 00000000..ba583c41 Binary files /dev/null and b/selfdrive/assets/sounds_chs/disengage.wav differ diff --git a/selfdrive/assets/sounds_chs/engage.wav b/selfdrive/assets/sounds_chs/engage.wav new file mode 100644 index 00000000..41e9b2d5 Binary files /dev/null and b/selfdrive/assets/sounds_chs/engage.wav differ diff --git a/selfdrive/assets/sounds_chs/nnff.wav b/selfdrive/assets/sounds_chs/nnff.wav new file mode 100644 index 00000000..9ada6a16 Binary files /dev/null and b/selfdrive/assets/sounds_chs/nnff.wav differ diff --git a/selfdrive/assets/sounds_chs/prompt.wav b/selfdrive/assets/sounds_chs/prompt.wav new file mode 100644 index 00000000..1ae77051 Binary files /dev/null and b/selfdrive/assets/sounds_chs/prompt.wav differ diff --git a/selfdrive/assets/sounds_chs/prompt_distracted.wav b/selfdrive/assets/sounds_chs/prompt_distracted.wav new file mode 100644 index 00000000..c3d4475c Binary files /dev/null and b/selfdrive/assets/sounds_chs/prompt_distracted.wav differ diff --git a/selfdrive/assets/sounds_chs/refuse.wav b/selfdrive/assets/sounds_chs/refuse.wav new file mode 100644 index 00000000..0e80f7d1 Binary files /dev/null and b/selfdrive/assets/sounds_chs/refuse.wav differ diff --git a/selfdrive/assets/sounds_chs/reverse_gear.wav b/selfdrive/assets/sounds_chs/reverse_gear.wav new file mode 100644 index 00000000..5b7325c7 Binary files /dev/null and b/selfdrive/assets/sounds_chs/reverse_gear.wav differ diff --git a/selfdrive/assets/sounds_chs/tici_disengaged.wav b/selfdrive/assets/sounds_chs/tici_disengaged.wav new file mode 100644 index 00000000..1aa5f28d Binary files /dev/null and b/selfdrive/assets/sounds_chs/tici_disengaged.wav differ diff --git a/selfdrive/assets/sounds_chs/tici_engaged.wav b/selfdrive/assets/sounds_chs/tici_engaged.wav new file mode 100644 index 00000000..72fc06e2 Binary files /dev/null and b/selfdrive/assets/sounds_chs/tici_engaged.wav differ diff --git a/selfdrive/assets/sounds_chs/traffic_sign_changed.wav b/selfdrive/assets/sounds_chs/traffic_sign_changed.wav new file mode 100644 index 00000000..480bbbbf Binary files /dev/null and b/selfdrive/assets/sounds_chs/traffic_sign_changed.wav differ diff --git a/selfdrive/assets/sounds_chs/traffic_sign_green.wav b/selfdrive/assets/sounds_chs/traffic_sign_green.wav new file mode 100644 index 00000000..a078af6b Binary files /dev/null and b/selfdrive/assets/sounds_chs/traffic_sign_green.wav differ diff --git a/selfdrive/assets/sounds_chs/warning_immediate.wav b/selfdrive/assets/sounds_chs/warning_immediate.wav new file mode 100644 index 00000000..b1815a95 Binary files /dev/null and b/selfdrive/assets/sounds_chs/warning_immediate.wav differ diff --git a/selfdrive/assets/sounds_chs/warning_soft.wav b/selfdrive/assets/sounds_chs/warning_soft.wav new file mode 100644 index 00000000..261c7e13 Binary files /dev/null and b/selfdrive/assets/sounds_chs/warning_soft.wav differ diff --git a/selfdrive/carrot/carrot_man.py b/selfdrive/carrot/carrot_man.py index a5cf4805..b423149d 100644 --- a/selfdrive/carrot/carrot_man.py +++ b/selfdrive/carrot/carrot_man.py @@ -438,6 +438,7 @@ class CarrotMan: v_ego_kph = 0 log_carrot = "" v_cruise_kph = 0 + carcruiseSpeed = 0 if not isOnroad: self.xState = 0 self.trafficState = 0 @@ -447,6 +448,7 @@ class CarrotMan: v_ego_kph = int(carState.vEgoCluster * 3.6 + 0.5) log_carrot = carState.logCarrot v_cruise_kph = carState.vCruise + carcruiseSpeed = carState.cruiseState.speed * 3.6 if self.sm.alive['selfdriveState']: selfdrive = self.sm['selfdriveState'] self.controls_active = selfdrive.active @@ -457,6 +459,7 @@ class CarrotMan: msg['log_carrot'] = log_carrot msg['v_cruise_kph'] = v_cruise_kph + msg['carcruiseSpeed'] = carcruiseSpeed msg['v_ego_kph'] = v_ego_kph msg['tbt_dist'] = self.carrot_serv.xDistToTurn msg['sdi_dist'] = self.carrot_serv.xSpdDist @@ -535,7 +538,7 @@ class CarrotMan: def parse_kisa_data(self, data: bytes): result = {} - + try: decoded = data.decode('utf-8') except UnicodeDecodeError: @@ -551,7 +554,7 @@ class CarrotMan: except ValueError: result[key] = value return result - + def kisa_app_thread(self): while True: try: @@ -635,7 +638,7 @@ class CarrotMan: except Exception as e: print(f"Directory creation failed: {e}") ftp.cwd(git_branch) - + directory = car_selected + " " + Params().get("DongleId").decode('utf-8') current_time = datetime.now().strftime("%Y%m%d-%H%M%S") filename = tmux_why + "-" + current_time + "-" + git_branch + ".txt" @@ -756,7 +759,7 @@ class CarrotMan: except Exception as e: print(f"carrot_cmd_zmq error: {e}") socket.close() - time.sleep(1) + time.sleep(1) socket, poller = setup_socket() def recvall(self, sock, n): diff --git a/selfdrive/ui/qt/offroad/settings.cc b/selfdrive/ui/qt/offroad/settings.cc index 1c4ea760..ad7337cb 100644 --- a/selfdrive/ui/qt/offroad/settings.cc +++ b/selfdrive/ui/qt/offroad/settings.cc @@ -659,22 +659,22 @@ CarrotPanel::CarrotPanel(QWidget* parent) : QWidget(parent) { QVBoxLayout* toggles_layout = new QVBoxLayout(toggles); cruiseToggles = new ListWidget(this); - cruiseToggles->addItem(new CValueControl("CruiseButtonMode", "Button: Cruise Button Mode", "0:Normal,1:User1,2:User2", 0, 2, 1)); - cruiseToggles->addItem(new CValueControl("CancelButtonMode", "Button: Cancel Button Mode", "0:Long,1:Long+Lat", 0, 1, 1)); - cruiseToggles->addItem(new CValueControl("LfaButtonMode", "Button: LFA Button Mode", "0:Normal,1:Decel&Stop&LeadCarReady", 0, 1, 1)); - cruiseToggles->addItem(new CValueControl("CruiseSpeedUnitBasic", "Button: Cruise Speed Unit(Basic)", "", 1, 20, 1)); - cruiseToggles->addItem(new CValueControl("CruiseSpeedUnit", "Button: Cruise Speed Unit(Extra)", "", 1, 20, 1)); - cruiseToggles->addItem(new CValueControl("CruiseEcoControl", "CRUISE: Eco control(4km/h)", "Temporarily increasing the set speed to improve fuel efficiency.", 0, 10, 1)); - cruiseToggles->addItem(new CValueControl("AutoSpeedUptoRoadSpeedLimit", "CRUISE: Auto speed up (0%)", "Auto speed up based on the lead car up to RoadSpeedLimit.", 0, 200, 10)); - cruiseToggles->addItem(new CValueControl("TFollowGap1", "GAP1: Apply TFollow (110)x0.01s", "", 70, 300, 5)); - cruiseToggles->addItem(new CValueControl("TFollowGap2", "GAP2: Apply TFollow (120)x0.01s", "", 70, 300, 5)); - cruiseToggles->addItem(new CValueControl("TFollowGap3", "GAP3: Apply TFollow (160)x0.01s", "", 70, 300, 5)); - cruiseToggles->addItem(new CValueControl("TFollowGap4", "GAP4: Apply TFollow (180)x0.01s", "", 70, 300, 5)); - cruiseToggles->addItem(new CValueControl("DynamicTFollow", "Dynamic GAP control", "", 0, 100, 5)); - cruiseToggles->addItem(new CValueControl("DynamicTFollowLC", "Dynamic GAP control (LaneChange)", "", 0, 100, 5)); - cruiseToggles->addItem(new CValueControl("MyDrivingMode", "DRIVEMODE: Select", "1:ECO,2:SAFE,3:NORMAL,4:HIGH", 1, 4, 1)); - cruiseToggles->addItem(new CValueControl("MyDrivingModeAuto", "DRIVEMODE: Auto", "NORMAL mode only", 0, 1, 1)); - cruiseToggles->addItem(new CValueControl("TrafficLightDetectMode", "TrafficLight DetectMode", "0:None, 1:Stopping only, 2: Stop & Go", 0, 2, 1)); + cruiseToggles->addItem(new CValueControl("CruiseButtonMode", tr("Button: Cruise Button Mode"), tr("0:Normal,1:User1,2:User2"), 0, 2, 1)); + cruiseToggles->addItem(new CValueControl("CancelButtonMode", tr("Button: Cancel Button Mode"), tr("0:Long,1:Long+Lat"), 0, 1, 1)); + cruiseToggles->addItem(new CValueControl("LfaButtonMode", tr("Button: LFA Button Mode"), tr("0:Normal,1:Decel&Stop&LeadCarReady"), 0, 1, 1)); + cruiseToggles->addItem(new CValueControl("CruiseSpeedUnitBasic", tr("Button: Cruise Speed Unit(Basic)"), "", 1, 20, 1)); + cruiseToggles->addItem(new CValueControl("CruiseSpeedUnit", tr("Button: Cruise Speed Unit(Extra)"), "", 1, 20, 1)); + cruiseToggles->addItem(new CValueControl("CruiseEcoControl", tr("CRUISE: Eco control(4km/h)"), tr("Temporarily increasing the set speed to improve fuel efficiency."), 0, 10, 1)); + cruiseToggles->addItem(new CValueControl("AutoSpeedUptoRoadSpeedLimit", tr("CRUISE: Auto speed up (0%)"), tr("Auto speed up based on the lead car up to RoadSpeedLimit."), 0, 200, 10)); + cruiseToggles->addItem(new CValueControl("TFollowGap1", tr("GAP1: Apply TFollow (110)x0.01s"), "", 70, 300, 5)); + cruiseToggles->addItem(new CValueControl("TFollowGap2", tr("GAP2: Apply TFollow (120)x0.01s"), "", 70, 300, 5)); + cruiseToggles->addItem(new CValueControl("TFollowGap3", tr("GAP3: Apply TFollow (160)x0.01s"), "", 70, 300, 5)); + cruiseToggles->addItem(new CValueControl("TFollowGap4", tr("GAP4: Apply TFollow (180)x0.01s"), "", 70, 300, 5)); + cruiseToggles->addItem(new CValueControl("DynamicTFollow", tr("Dynamic GAP control"), "", 0, 100, 5)); + cruiseToggles->addItem(new CValueControl("DynamicTFollowLC", tr("Dynamic GAP control (LaneChange)"), "", 0, 100, 5)); + cruiseToggles->addItem(new CValueControl("MyDrivingMode", tr("DRIVEMODE: Select"), tr("1:ECO,2:SAFE,3:NORMAL,4:HIGH"), 1, 4, 1)); + cruiseToggles->addItem(new CValueControl("MyDrivingModeAuto", tr("DRIVEMODE: Auto"), tr("NORMAL mode only"), 0, 1, 1)); + cruiseToggles->addItem(new CValueControl("TrafficLightDetectMode", tr("TrafficLight DetectMode"), tr("0:None, 1:Stopping only, 2: Stop & Go"), 0, 2, 1)); //cruiseToggles->addItem(new CValueControl("CruiseSpeedMin", "CRUISE: Speed Lower limit(10)", "Cruise control MIN speed", 5, 50, 1)); //cruiseToggles->addItem(new CValueControl("AutoResumeFromGas", "GAS CRUISE ON: Use", "Auto Cruise on when GAS pedal released, 60% Gas Cruise On automatically", 0, 3, 1)); //cruiseToggles->addItem(new CValueControl("AutoResumeFromGasSpeed", "GAS CRUISE ON: Speed(30)", "Driving speed exceeds the set value, Cruise ON", 20, 140, 5)); @@ -685,39 +685,39 @@ CarrotPanel::CarrotPanel(QWidget* parent) : QWidget(parent) { //cruiseToggles->addItem(new CValueControl("MyHighModeFactor", "DRIVEMODE: HIGH ratio(100%)", "AccelRatio control ratio", 100, 300, 10)); latLongToggles = new ListWidget(this); - latLongToggles->addItem(new CValueControl("UseLaneLineSpeed", "Laneline mode speed(0)", "Laneline mode, lat_mpc control used", 0, 200, 5)); - latLongToggles->addItem(new CValueControl("UseLaneLineCurveSpeed", "Laneline mode curve speed(0)", "Laneline mode, high speed only", 0, 200, 5)); - latLongToggles->addItem(new CValueControl("AdjustLaneOffset", "AdjustLaneOffset(0)cm", "", 0, 500, 5)); - latLongToggles->addItem(new CValueControl("LaneChangeNeedTorque", "LaneChange need torque", "-1:Disable lanechange, 0: no need torque, 1:need torque", -1, 1, 1)); - latLongToggles->addItem(new CValueControl("LaneChangeDelay", "LaneChange delay", "x0.1sec", 0, 100, 5)); - latLongToggles->addItem(new CValueControl("LaneChangeBsd", "LaneChange Bsd", "-1:ignore bsd, 0:BSD detect, 1: block steer torque", -1, 1, 1)); - latLongToggles->addItem(new CValueControl("CustomSR", "LAT: SteerRatiox0.1(0)", "Custom SteerRatio", 0, 300, 1)); - latLongToggles->addItem(new CValueControl("SteerRatioRate", "LAT: SteerRatioRatex0.01(100)", "SteerRatio apply rate", 30, 170, 1)); - latLongToggles->addItem(new CValueControl("PathOffset", "LAT: PathOffset", "(-)left, (+)right", -150, 150, 1)); - latLongToggles->addItem(new CValueControl("SteerActuatorDelay", "LAT:SteerActuatorDelay(30)", "x0.01, 0:LiveDelay", 0, 100, 1)); - latLongToggles->addItem(new CValueControl("LateralTorqueCustom", "LAT: TorqueCustom(0)", "", 0, 2, 1)); - latLongToggles->addItem(new CValueControl("LateralTorqueAccelFactor", "LAT: TorqueAccelFactor(2500)", "", 1000, 6000, 10)); - latLongToggles->addItem(new CValueControl("LateralTorqueFriction", "LAT: TorqueFriction(100)", "", 0, 1000, 10)); - latLongToggles->addItem(new CValueControl("CustomSteerMax", "LAT: CustomSteerMax(0)", "", 0, 30000, 5)); - latLongToggles->addItem(new CValueControl("CustomSteerDeltaUp", "LAT: CustomSteerDeltaUp(0)", "", 0, 50, 1)); - latLongToggles->addItem(new CValueControl("CustomSteerDeltaDown", "LAT: CustomSteerDeltaDown(0)", "", 0, 50, 1)); - latLongToggles->addItem(new CValueControl("LongTuningKpV", "LONG: P Gain(100)", "", 0, 150, 5)); - latLongToggles->addItem(new CValueControl("LongTuningKiV", "LONG: I Gain(0)", "", 0, 2000, 5)); - latLongToggles->addItem(new CValueControl("LongTuningKf", "LONG: FF Gain(100)", "", 0, 200, 5)); - latLongToggles->addItem(new CValueControl("LongActuatorDelay", "LONG: ActuatorDelay(20)", "", 0, 200, 5)); - latLongToggles->addItem(new CValueControl("VEgoStopping", "LONG: VEgoStopping(50)", "Stopping factor", 1, 100, 5)); - latLongToggles->addItem(new CValueControl("RadarReactionFactor", "LONG: Radar reaction factor(100)", "", 0, 200, 10)); - latLongToggles->addItem(new CValueControl("StoppingAccel", "LONG: StoppingStartAccelx0.01(-40)", "", -100, 0, 5)); - latLongToggles->addItem(new CValueControl("StopDistanceCarrot", "LONG: StopDistance (600)cm", "", 300, 1000, 10)); - latLongToggles->addItem(new CValueControl("JLeadFactor3", "LONG: Jerk Lead Factor (0)", "x0.01", 0, 100, 5)); - latLongToggles->addItem(new CValueControl("CruiseMaxVals0", "ACCEL:0km/h(160)", "Acceleration needed at specified speed.(x0.01m/s^2)", 1, 250, 5)); - latLongToggles->addItem(new CValueControl("CruiseMaxVals1", "ACCEL:10km/h(160)", "Acceleration needed at specified speed.(x0.01m/s^2)", 1, 250, 5)); - latLongToggles->addItem(new CValueControl("CruiseMaxVals2", "ACCEL:40km/h(120)", "Acceleration needed at specified speed.(x0.01m/s^2)", 1, 250, 5)); - latLongToggles->addItem(new CValueControl("CruiseMaxVals3", "ACCEL:60km/h(100)", "Acceleration needed at specified speed.(x0.01m/s^2)", 1, 250, 5)); - latLongToggles->addItem(new CValueControl("CruiseMaxVals4", "ACCEL:80km/h(80)", "Acceleration needed at specified speed.(x0.01m/s^2)", 1, 250, 5)); - latLongToggles->addItem(new CValueControl("CruiseMaxVals5", "ACCEL:110km/h(70)", "Acceleration needed at specified speed.(x0.01m/s^2)", 1, 250, 5)); - latLongToggles->addItem(new CValueControl("CruiseMaxVals6", "ACCEL:140km/h(60)", "Acceleration needed at specified speed.(x0.01m/s^2)", 1, 250, 5)); - latLongToggles->addItem(new CValueControl("MaxAngleFrames", "MaxAngleFrames(89)", "89:Basic, steering instrument panel error 85~87", 80, 100, 1)); + latLongToggles->addItem(new CValueControl("UseLaneLineSpeed", tr("Laneline mode speed(0)"), tr("Laneline mode, lat_mpc control used"), 0, 200, 5)); + latLongToggles->addItem(new CValueControl("UseLaneLineCurveSpeed", tr("Laneline mode curve speed(0)"), tr("Laneline mode, high speed only"), 0, 200, 5)); + latLongToggles->addItem(new CValueControl("AdjustLaneOffset", tr("AdjustLaneOffset(0)cm"), "", 0, 500, 5)); + latLongToggles->addItem(new CValueControl("LaneChangeNeedTorque", tr("LaneChange need torque"), tr("-1:Disable lanechange, 0: no need torque, 1:need torque"), -1, 1, 1)); + latLongToggles->addItem(new CValueControl("LaneChangeDelay", tr("LaneChange delay"), tr("x0.1sec"), 0, 100, 5)); + latLongToggles->addItem(new CValueControl("LaneChangeBsd", tr("LaneChange Bsd"), tr("-1:ignore bsd, 0:BSD detect, 1: block steer torque"), -1, 1, 1)); + latLongToggles->addItem(new CValueControl("CustomSR", tr("LAT: SteerRatiox0.1(0)"), tr("Custom SteerRatio"), 0, 300, 1)); + latLongToggles->addItem(new CValueControl("SteerRatioRate", tr("LAT: SteerRatioRatex0.01(100)"), tr("SteerRatio apply rate"), 30, 170, 1)); + latLongToggles->addItem(new CValueControl("PathOffset", tr("LAT: PathOffset"), tr("(-)left, (+)right"), -150, 150, 1)); + latLongToggles->addItem(new CValueControl("SteerActuatorDelay", tr("LAT:SteerActuatorDelay(30)"), tr("x0.01, 0:LiveDelay"), 0, 100, 1)); + latLongToggles->addItem(new CValueControl("LateralTorqueCustom", tr("LAT: TorqueCustom(0)"), "", 0, 2, 1)); + latLongToggles->addItem(new CValueControl("LateralTorqueAccelFactor", tr("LAT: TorqueAccelFactor(2500)"), "", 1000, 6000, 10)); + latLongToggles->addItem(new CValueControl("LateralTorqueFriction", tr("LAT: TorqueFriction(100)"), "", 0, 1000, 10)); + latLongToggles->addItem(new CValueControl("CustomSteerMax", tr("LAT: CustomSteerMax(0)"), "", 0, 30000, 5)); + latLongToggles->addItem(new CValueControl("CustomSteerDeltaUp", tr("LAT: CustomSteerDeltaUp(0)"), "", 0, 50, 1)); + latLongToggles->addItem(new CValueControl("CustomSteerDeltaDown", tr("LAT: CustomSteerDeltaDown(0)"), "", 0, 50, 1)); + latLongToggles->addItem(new CValueControl("LongTuningKpV", tr("LONG: P Gain(100)"), "", 0, 150, 5)); + latLongToggles->addItem(new CValueControl("LongTuningKiV", tr("LONG: I Gain(0)"), "", 0, 2000, 5)); + latLongToggles->addItem(new CValueControl("LongTuningKf", tr("LONG: FF Gain(100)"), "", 0, 200, 5)); + latLongToggles->addItem(new CValueControl("LongActuatorDelay", tr("LONG: ActuatorDelay(20)"), "", 0, 200, 5)); + latLongToggles->addItem(new CValueControl("VEgoStopping", tr("LONG: VEgoStopping(50)"), tr("Stopping factor"), 1, 100, 5)); + latLongToggles->addItem(new CValueControl("RadarReactionFactor", tr("LONG: Radar reaction factor(100)"), "", 0, 200, 10)); + latLongToggles->addItem(new CValueControl("StoppingAccel", tr("LONG: StoppingStartAccelx0.01(-40)"), "", -100, 0, 5)); + latLongToggles->addItem(new CValueControl("StopDistanceCarrot", tr("LONG: StopDistance (600)cm"), "", 300, 1000, 10)); + latLongToggles->addItem(new CValueControl("JLeadFactor3", tr("LONG: Jerk Lead Factor (0)"), tr("x0.01"), 0, 100, 5)); + latLongToggles->addItem(new CValueControl("CruiseMaxVals0", tr("ACCEL:0km/h(160)"), tr("Acceleration needed at specified speed.(x0.01m/s^2)"), 1, 250, 5)); + latLongToggles->addItem(new CValueControl("CruiseMaxVals1", tr("ACCEL:10km/h(160)"), tr("Acceleration needed at specified speed.(x0.01m/s^2)"), 1, 250, 5)); + latLongToggles->addItem(new CValueControl("CruiseMaxVals2", tr("ACCEL:40km/h(120)"), tr("Acceleration needed at specified speed.(x0.01m/s^2)"), 1, 250, 5)); + latLongToggles->addItem(new CValueControl("CruiseMaxVals3", tr("ACCEL:60km/h(100)"), tr("Acceleration needed at specified speed.(x0.01m/s^2)"), 1, 250, 5)); + latLongToggles->addItem(new CValueControl("CruiseMaxVals4", tr("ACCEL:80km/h(80)"), tr("Acceleration needed at specified speed.(x0.01m/s^2)"), 1, 250, 5)); + latLongToggles->addItem(new CValueControl("CruiseMaxVals5", tr("ACCEL:110km/h(70)"), tr("Acceleration needed at specified speed.(x0.01m/s^2)"), 1, 250, 5)); + latLongToggles->addItem(new CValueControl("CruiseMaxVals6", tr("ACCEL:140km/h(60)"), tr("Acceleration needed at specified speed.(x0.01m/s^2)"), 1, 250, 5)); + latLongToggles->addItem(new CValueControl("MaxAngleFrames", tr("MaxAngleFrames(89)"), tr("89:Basic, steering instrument panel error 85~87"), 80, 100, 1)); //latLongToggles->addItem(new CValueControl("AutoLaneChangeSpeed", "LaneChangeSpeed(20)", "", 1, 100, 5)); //latLongToggles->addItem(new CValueControl("JerkStartLimit", "LONG: JERK START(10)x0.1", "Starting Jerk.", 1, 50, 1)); //latLongToggles->addItem(new CValueControl("LongitudinalTuningApi", "LONG: ControlType", "0:velocity pid, 1:accel pid, 2:accel pid(comma)", 0, 2, 1)); @@ -727,16 +727,16 @@ CarrotPanel::CarrotPanel(QWidget* parent) : QWidget(parent) { //latLongToggles->addItem(new CValueControl("CruiseMinVals", "DECEL:(120)", "Sets the deceleration rate.(x0.01m/s^2)", 50, 250, 5)); dispToggles = new ListWidget(this); - dispToggles->addItem(new CValueControl("ShowDebugUI", "Debug Info", "", 0, 2, 1)); - dispToggles->addItem(new CValueControl("ShowTpms", "Tpms Info", "", 0, 3, 1)); - dispToggles->addItem(new CValueControl("ShowDateTime", "Time Info", "0:None,1:Time/Date,2:Time,3:Date", 0, 3, 1)); - dispToggles->addItem(new CValueControl("ShowPathEnd", "Path End", "0:None,1:Display", 0, 1, 1)); - dispToggles->addItem(new CValueControl("ShowDeviceState", "Device State", "0:None,1:Display", 0, 1, 1)); - dispToggles->addItem(new CValueControl("ShowLaneInfo", "Lane Info", "-1:None, 0:Path, 1:Path+Lane, 2: Path+Lane+RoadEdge", -1, 2, 1)); - dispToggles->addItem(new CValueControl("ShowRadarInfo", "Radar Info", "0:None,1:Display,2:RelPos,3:Stopped Car", 0, 3, 1)); - dispToggles->addItem(new CValueControl("ShowRouteInfo", "Route Info", "0:None,1:Display", 0, 1, 1)); - dispToggles->addItem(new CValueControl("ShowPlotMode", "Debug plot", "", 0, 10, 1)); - dispToggles->addItem(new CValueControl("ShowCustomBrightness", "Brightness ratio", "", 0, 100, 10)); + dispToggles->addItem(new CValueControl("ShowDebugUI", tr("Debug Info"), "", 0, 2, 1)); + dispToggles->addItem(new CValueControl("ShowTpms", tr("Tpms Info"), "", 0, 3, 1)); + dispToggles->addItem(new CValueControl("ShowDateTime", tr("Time Info"), tr("0:None,1:Time/Date,2:Time,3:Date"), 0, 3, 1)); + dispToggles->addItem(new CValueControl("ShowPathEnd", tr("Path End"), tr("0:None,1:Display"), 0, 1, 1)); + dispToggles->addItem(new CValueControl("ShowDeviceState", tr("Device State"), tr("0:None,1:Display"), 0, 1, 1)); + dispToggles->addItem(new CValueControl("ShowLaneInfo", tr("Lane Info"), tr("-1:None, 0:Path, 1:Path+Lane, 2: Path+Lane+RoadEdge"), -1, 2, 1)); + dispToggles->addItem(new CValueControl("ShowRadarInfo", tr("Radar Info"), tr("0:None,1:Display,2:RelPos,3:Stopped Car"), 0, 3, 1)); + dispToggles->addItem(new CValueControl("ShowRouteInfo", tr("Route Info"), tr("0:None,1:Display"), 0, 1, 1)); + dispToggles->addItem(new CValueControl("ShowPlotMode", tr("Debug plot"), "", 0, 10, 1)); + dispToggles->addItem(new CValueControl("ShowCustomBrightness", tr("Brightness ratio"), "", 0, 100, 10)); //dispToggles->addItem(new CValueControl("ShowHudMode", "Display Mode", "0:Frog,1:APilot,2:Bottom,3:Top,4:Left,5:Left-Bottom", 0, 5, 1)); //dispToggles->addItem(new CValueControl("ShowSteerRotate", "Handle rotate", "0:None,1:Rotate", 0, 1, 1)); //dispToggles->addItem(new CValueControl("ShowAccelRpm", "Accel meter", "0:None,1:Display,1:Accel+RPM", 0, 2, 1)); @@ -748,12 +748,12 @@ CarrotPanel::CarrotPanel(QWidget* parent) : QWidget(parent) { //dispToggles->addItem(new CValueControl("ShowDmInfo", "DM Info", "0:None,1:Display,-1:Disable(Reboot)", -1, 1, 1)); pathToggles = new ListWidget(this); - pathToggles->addItem(new CValueControl("ShowPathColorCruiseOff", "Path Color: Cruise OFF", "(+10:Stroke)0:Red,1:Orange,2:Yellow,3:Green,4:Blue,5:Indigo,6:Violet,7:Brown,8:White,9:Black", 0, 19, 1)); - pathToggles->addItem(new CValueControl("ShowPathMode", "Path Mode: Laneless", "0:Normal,1,2:Rec,3,4:^^,5,6:Rec,7,8:^^,9,10,11,12:Smooth^^", 0, 15, 1)); - pathToggles->addItem(new CValueControl("ShowPathColor", "Path Color: Laneless", "(+10:Stroke)0:Red,1:Orange,2:Yellow,3:Green,4:Blue,5:Indigo,6:Violet,7:Brown,8:White,9:Black", 0, 19, 1)); - pathToggles->addItem(new CValueControl("ShowPathModeLane", "Path Mode: LaneMode", "0:Normal,1,2:Rec,3,4:^^,5,6:Rec,7,8:^^,9,10,11,12:Smooth^^", 0, 15, 1)); - pathToggles->addItem(new CValueControl("ShowPathColorLane", "Path Color: LaneMode", "(+10:Stroke)0:Red,1:Orange,2:Yellow,3:Green,4:Blue,5:Indigo,6:Violet,7:Brown,8:White,9:Black", 0, 19, 1)); - pathToggles->addItem(new CValueControl("ShowPathWidth", "Path Width ratio(100%)", "", 10, 200, 10)); + pathToggles->addItem(new CValueControl("ShowPathColorCruiseOff", tr("Path Color: Cruise OFF"), tr("(+10:Stroke)0:Red,1:Orange,2:Yellow,3:Green,4:Blue,5:Indigo,6:Violet,7:Brown,8:White,9:Black"), 0, 19, 1)); + pathToggles->addItem(new CValueControl("ShowPathMode", tr("Path Mode: Laneless"), tr("0:Normal,1,2:Rec,3,4:^^,5,6:Rec,7,8:^^,9,10,11,12:Smooth^^"), 0, 15, 1)); + pathToggles->addItem(new CValueControl("ShowPathColor", tr("Path Color: Laneless"), tr("(+10:Stroke)0:Red,1:Orange,2:Yellow,3:Green,4:Blue,5:Indigo,6:Violet,7:Brown,8:White,9:Black"), 0, 19, 1)); + pathToggles->addItem(new CValueControl("ShowPathModeLane", tr("Path Mode: LaneMode"), tr("0:Normal,1,2:Rec,3,4:^^,5,6:Rec,7,8:^^,9,10,11,12:Smooth^^"), 0, 15, 1)); + pathToggles->addItem(new CValueControl("ShowPathColorLane", tr("Path Color: LaneMode"), tr("(+10:Stroke)0:Red,1:Orange,2:Yellow,3:Green,4:Blue,5:Indigo,6:Violet,7:Brown,8:White,9:Black"), 0, 19, 1)); + pathToggles->addItem(new CValueControl("ShowPathWidth", tr("Path Width ratio(100%)"), "", 10, 200, 10)); startToggles = new ListWidget(this); QString selected = QString::fromStdString(Params().get("CarSelected3")); @@ -811,29 +811,29 @@ CarrotPanel::CarrotPanel(QWidget* parent) : QWidget(parent) { }); startToggles->addItem(selectCarBtn); - startToggles->addItem(new CValueControl("HyundaiCameraSCC", "HYUNDAI: CAMERA SCC", "1:Connect the SCC's CAN line to CAM, 2:Sync Cruise state, 3:StockLong", 0, 3, 1)); - startToggles->addItem(new CValueControl("CanfdHDA2", "CANFD: HDA2 mode", "1:HDA2,2:HDA2+BSM", 0, 2, 1)); - startToggles->addItem(new CValueControl("EnableRadarTracks", "Enable Radar Track", "1:Enable RadarTrack, -1,2:Disable use HKG SCC radar at all times", -1, 3, 1)); - startToggles->addItem(new CValueControl("AutoCruiseControl", "Auto Cruise control", "Softhold, Auto Cruise ON/OFF control", 0, 3, 1)); - startToggles->addItem(new CValueControl("CruiseOnDist", "CRUISE: Auto ON distance(0cm)", "When GAS/Brake is OFF, Cruise ON when the lead car gets closer.", 0, 2500, 50)); - startToggles->addItem(new CValueControl("AutoEngage", "Auto Engage control on start", "1:SteerEnable, 2:Steer/Cruise Engage", 0, 2, 1)); - startToggles->addItem(new CValueControl("AutoGasTokSpeed", "Auto AccelTok speed", "Gas(Accel)Tok enable speed", 0, 200, 5)); - startToggles->addItem(new CValueControl("SpeedFromPCM", "Read Cruise Speed from PCM", "Toyota must set to 1, Honda 3", 0, 3, 1)); - startToggles->addItem(new CValueControl("SoundVolumeAdjust", "Sound Volume(100%)", "", 5, 200, 5)); - startToggles->addItem(new CValueControl("SoundVolumeAdjustEngage", "Sound Volume, Engage(10%)", "", 5, 200, 5)); - startToggles->addItem(new CValueControl("MaxTimeOffroadMin", "Power off time (min)", "", 1, 600, 10)); - startToggles->addItem(new CValueControl("EnableConnect", "EnableConnect", "Your device may be banned by Comma", 0, 2, 1)); - startToggles->addItem(new CValueControl("MapboxStyle", "Mapbox Style(0)", "", 0, 2, 1)); - startToggles->addItem(new CValueControl("RecordRoadCam", "Record Road camera(0)", "1:RoadCam, 2:RoadCam+WideRoadCam", 0, 2, 1)); - startToggles->addItem(new CValueControl("HDPuse", "Use HDP(CCNC)(0)", "1:While Using APN, 2:Always", 0, 2, 1)); - startToggles->addItem(new CValueControl("NNFF", "NNFF", "Twilsonco's NNFF(Reboot required)", 0, 1, 1)); - startToggles->addItem(new CValueControl("NNFFLite", "NNFFLite", "Twilsonco's NNFF-Lite(Reboot required)", 0, 1, 1)); - startToggles->addItem(new CValueControl("AutoGasSyncSpeed", "Auto update Cruise speed", "", 0, 1, 1)); - startToggles->addItem(new CValueControl("DisableMinSteerSpeed", "Disable Min.SteerSpeed", "", 0, 1, 1)); - startToggles->addItem(new CValueControl("DisableDM", "Disable DM", "", 0, 1, 1)); - startToggles->addItem(new CValueControl("HotspotOnBoot", "Hotspot enabled on boot", "", 0, 1, 1)); - startToggles->addItem(new CValueControl("SoftwareMenu", "Enable Software Menu", "", 0, 1, 1)); - startToggles->addItem(new CValueControl("IsLdwsCar", "IsLdwsCar", "", 0, 1, 1)); + startToggles->addItem(new CValueControl("HyundaiCameraSCC", tr("HYUNDAI: CAMERA SCC"), tr("1:Connect the SCC's CAN line to CAM, 2:Sync Cruise state, 3:StockLong"), 0, 3, 1)); + startToggles->addItem(new CValueControl("CanfdHDA2", tr("CANFD: HDA2 mode"), tr("1:HDA2,2:HDA2+BSM"), 0, 2, 1)); + startToggles->addItem(new CValueControl("EnableRadarTracks", tr("Enable Radar Track"), tr("1:Enable RadarTrack, -1,2:Disable use HKG SCC radar at all times"), -1, 3, 1)); + startToggles->addItem(new CValueControl("AutoCruiseControl", tr("Auto Cruise control"), tr("Softhold, Auto Cruise ON/OFF control"), 0, 3, 1)); + startToggles->addItem(new CValueControl("CruiseOnDist", tr("CRUISE: Auto ON distance(0cm)"), tr("When GAS/Brake is OFF, Cruise ON when the lead car gets closer."), 0, 2500, 50)); + startToggles->addItem(new CValueControl("AutoEngage", tr("Auto Engage control on start"), tr("1:SteerEnable, 2:Steer/Cruise Engage"), 0, 2, 1)); + startToggles->addItem(new CValueControl("AutoGasTokSpeed", tr("Auto AccelTok speed"), tr("Gas(Accel)Tok enable speed"), 0, 200, 5)); + startToggles->addItem(new CValueControl("SpeedFromPCM", tr("Read Cruise Speed from PCM"), tr("Toyota must set to 1, Honda 3"), 0, 3, 1)); + startToggles->addItem(new CValueControl("SoundVolumeAdjust", tr("Sound Volume(100%)"), "", 5, 200, 5)); + startToggles->addItem(new CValueControl("SoundVolumeAdjustEngage", tr("Sound Volume, Engage(10%)"), "", 5, 200, 5)); + startToggles->addItem(new CValueControl("MaxTimeOffroadMin", tr("Power off time (min)"), "", 1, 600, 10)); + startToggles->addItem(new CValueControl("EnableConnect", tr("EnableConnect"), tr("Your device may be banned by Comma"), 0, 2, 1)); + startToggles->addItem(new CValueControl("MapboxStyle", tr("Mapbox Style(0)"), "", 0, 2, 1)); + startToggles->addItem(new CValueControl("RecordRoadCam", tr("Record Road camera(0)"), tr("1:RoadCam, 2:RoadCam+WideRoadCam"), 0, 2, 1)); + startToggles->addItem(new CValueControl("HDPuse", tr("Use HDP(CCNC)(0)"), tr("1:While Using APN, 2:Always"), 0, 2, 1)); + startToggles->addItem(new CValueControl("NNFF", tr("NNFF"), tr("Twilsonco's NNFF(Reboot required)"), 0, 1, 1)); + startToggles->addItem(new CValueControl("NNFFLite", tr("NNFFLite"), tr("Twilsonco's NNFF-Lite(Reboot required)"), 0, 1, 1)); + startToggles->addItem(new CValueControl("AutoGasSyncSpeed", tr("Auto update Cruise speed"), "", 0, 1, 1)); + startToggles->addItem(new CValueControl("DisableMinSteerSpeed", tr("Disable Min.SteerSpeed"), "", 0, 1, 1)); + startToggles->addItem(new CValueControl("DisableDM", tr("Disable DM"), "", 0, 1, 1)); + startToggles->addItem(new CValueControl("HotspotOnBoot", tr("Hotspot enabled on boot"), "", 0, 1, 1)); + startToggles->addItem(new CValueControl("SoftwareMenu", tr("Enable Software Menu"), "", 0, 1, 1)); + startToggles->addItem(new CValueControl("IsLdwsCar", tr("IsLdwsCar"), "", 0, 1, 1)); //startToggles->addItem(new CValueControl("CarrotCountDownSpeed", "NaviCountDown Speed(10)", "", 0, 200, 5)); //startToggles->addItem(new ParamControl("NoLogging", "Disable Logger", "", this)); @@ -841,24 +841,24 @@ CarrotPanel::CarrotPanel(QWidget* parent) : QWidget(parent) { //startToggles->addItem(new CValueControl("LaneChangeLaneCheck", "LaneChange: Check lane exist", "(0:No,1:Lane,2:+Edge)", 0, 2, 1)); speedToggles = new ListWidget(this); - speedToggles->addItem(new CValueControl("AutoCurveSpeedLowerLimit", "CURVE: Lower limit speed(30)", "When you approach a curve, reduce your speed. Minimum speed", 30, 200, 5)); - speedToggles->addItem(new CValueControl("AutoCurveSpeedFactor", "CURVE: Auto Control ratio(100%)", "", 50, 300, 1)); - speedToggles->addItem(new CValueControl("AutoCurveSpeedAggressiveness", "CURVE: Aggressiveness (100%)", "", 50, 300, 1)); - speedToggles->addItem(new CValueControl("AutoRoadSpeedLimitOffset", "RoadSpeedLimitOffset(-1)", "-1:NotUsed,RoadLimitSpeed+Offset", -1, 100, 1)); - speedToggles->addItem(new CValueControl("AutoRoadSpeedAdjust", "Auto Roadlimit Speed adjust (50%)", "", -1, 100, 5)); - speedToggles->addItem(new CValueControl("AutoNaviSpeedCtrlEnd", "SpeedCamDecelEnd(6s)", "Sets the deceleration completion point. A larger value completes deceleration farther away from the camera.", 3, 20, 1)); - speedToggles->addItem(new CValueControl("AutoNaviSpeedCtrlMode", "NaviSpeedControlMode(2)", "0:No slowdown, 1: speed camera, 2: + accident prevention bump, 3: + mobile camera", 0, 3, 1)); - speedToggles->addItem(new CValueControl("AutoNaviSpeedDecelRate", "SpeedCamDecelRatex0.01m/s^2(80)", "Lower number, slows down from a greater distance", 10, 200, 10)); - speedToggles->addItem(new CValueControl("AutoNaviSpeedSafetyFactor", "SpeedCamSafetyFactor(105%)", "", 80, 120, 1)); - speedToggles->addItem(new CValueControl("AutoNaviSpeedBumpTime", "SpeedBumpTimeDistance(1s)", "", 1, 50, 1)); - speedToggles->addItem(new CValueControl("AutoNaviSpeedBumpSpeed", "SpeedBumpSpeed(35Km/h)", "", 10, 100, 5)); - speedToggles->addItem(new CValueControl("AutoNaviCountDownMode", "NaviCountDown mode(2)", "0: off, 1:tbt+camera, 2:tbt+camera+bump", 0, 2, 1)); - speedToggles->addItem(new CValueControl("TurnSpeedControlMode", "Turn Speed control mode(1)", "0: off, 1:vision, 2:vision+route, 3: route", 0, 3, 1)); - speedToggles->addItem(new CValueControl("MapTurnSpeedFactor", "Map TurnSpeed Factor(100)", "", 50, 300, 5)); - speedToggles->addItem(new CValueControl("AutoTurnControl", "ATC: Auto turn control(0)", "0:None, 1: lane change, 2: lane change + speed, 3: speed", 0, 3, 1)); - speedToggles->addItem(new CValueControl("AutoTurnControlSpeedTurn", "ATC: Turn Speed (20)", "0:None, turn speed", 0, 100, 5)); - speedToggles->addItem(new CValueControl("AutoTurnControlTurnEnd", "ATC: Turn CtrlDistTime (6)", "dist=speed*time", 0, 30, 1)); - speedToggles->addItem(new CValueControl("AutoTurnMapChange", "ATC Auto Map Change(0)", "", 0, 1, 1)); + speedToggles->addItem(new CValueControl("AutoCurveSpeedLowerLimit", tr("CURVE: Lower limit speed(30)"), tr("When you approach a curve, reduce your speed. Minimum speed"), 30, 200, 5)); + speedToggles->addItem(new CValueControl("AutoCurveSpeedFactor", tr("CURVE: Auto Control ratio(100%)"), "", 50, 300, 1)); + speedToggles->addItem(new CValueControl("AutoCurveSpeedAggressiveness", tr("CURVE: Aggressiveness (100%)"), "", 50, 300, 1)); + speedToggles->addItem(new CValueControl("AutoRoadSpeedLimitOffset", tr("RoadSpeedLimitOffset(-1)"), tr("-1:NotUsed,RoadLimitSpeed+Offset"), -1, 100, 1)); + speedToggles->addItem(new CValueControl("AutoRoadSpeedAdjust", tr("Auto Roadlimit Speed adjust (50%)"), "", -1, 100, 5)); + speedToggles->addItem(new CValueControl("AutoNaviSpeedCtrlEnd", tr("SpeedCamDecelEnd(6s)"), tr("Sets the deceleration completion point. A larger value completes deceleration farther away from the camera."), 3, 20, 1)); + speedToggles->addItem(new CValueControl("AutoNaviSpeedCtrlMode", tr("NaviSpeedControlMode(2)"), tr("0:No slowdown, 1: speed camera, 2: + accident prevention bump, 3: + mobile camera"), 0, 3, 1)); + speedToggles->addItem(new CValueControl("AutoNaviSpeedDecelRate", tr("SpeedCamDecelRatex0.01m/s^2(80)"), tr("Lower number, slows down from a greater distance"), 10, 200, 10)); + speedToggles->addItem(new CValueControl("AutoNaviSpeedSafetyFactor", tr("SpeedCamSafetyFactor(105%)"), "", 80, 120, 1)); + speedToggles->addItem(new CValueControl("AutoNaviSpeedBumpTime", tr("SpeedBumpTimeDistance(1s)"), "", 1, 50, 1)); + speedToggles->addItem(new CValueControl("AutoNaviSpeedBumpSpeed", tr("SpeedBumpSpeed(35Km/h)"), "", 10, 100, 5)); + speedToggles->addItem(new CValueControl("AutoNaviCountDownMode", tr("NaviCountDown mode(2)"), tr("0: off, 1:tbt+camera, 2:tbt+camera+bump"), 0, 2, 1)); + speedToggles->addItem(new CValueControl("TurnSpeedControlMode", tr("Turn Speed control mode(1)"), tr("0: off, 1:vision, 2:vision+route, 3: route"), 0, 3, 1)); + speedToggles->addItem(new CValueControl("MapTurnSpeedFactor", tr("Map TurnSpeed Factor(100)"), "", 50, 300, 5)); + speedToggles->addItem(new CValueControl("AutoTurnControl", tr("ATC: Auto turn control(0)"), tr("0:None, 1: lane change, 2: lane change + speed, 3: speed"), 0, 3, 1)); + speedToggles->addItem(new CValueControl("AutoTurnControlSpeedTurn", tr("ATC: Turn Speed (20)"), tr("0:None, turn speed"), 0, 100, 5)); + speedToggles->addItem(new CValueControl("AutoTurnControlTurnEnd", tr("ATC: Turn CtrlDistTime (6)"), tr("dist=speed*time"), 0, 30, 1)); + speedToggles->addItem(new CValueControl("AutoTurnMapChange", tr("ATC Auto Map Change(0)"), "", 0, 1, 1)); toggles_layout->addWidget(cruiseToggles); toggles_layout->addWidget(latLongToggles); diff --git a/selfdrive/ui/soundd.py b/selfdrive/ui/soundd.py index 1dd23ecd..0679d079 100644 --- a/selfdrive/ui/soundd.py +++ b/selfdrive/ui/soundd.py @@ -129,6 +129,8 @@ class Soundd: if self.lang == "main_ko": wavefile = wave.open(BASEDIR + "/selfdrive/assets/sounds/" + filename, 'r') + elif self.lang == "main_zh-CHS": + wavefile = wave.open(BASEDIR + "/selfdrive/assets/sounds_chs/" + filename, 'r') else: wavefile = wave.open(BASEDIR + "/selfdrive/assets/sounds_eng/" + filename, 'r') diff --git a/selfdrive/ui/translations/main_zh-CHS.ts b/selfdrive/ui/translations/main_zh-CHS.ts index 69a2c0c5..58f12daf 100644 --- a/selfdrive/ui/translations/main_zh-CHS.ts +++ b/selfdrive/ui/translations/main_zh-CHS.ts @@ -87,6 +87,695 @@ 网络名称:"%1" + + CarrotPanel + + Reboot + 重启 + + + Exit + 退出 + + + openpilot + openpilot + + + %n minute(s) ago + + %n 分钟前 + + + + %n hour(s) ago + + %n 小时前 + + + + %n day(s) ago + + %n 天前 + + + + now + 现在 + + + Start + 开始 + + + Cruise + 巡航 + + + Speed + 车速 + + + Tuning + 调参 + + + Disp + 显示 + + + Path + 轨迹 + + + SELECT YOUR CAR + 选择你的车型 + + + Button: Cruise Button Mode + 按键:巡航按钮模式 + + + 0:Normal,1:User1,2:User2 + 0:默认, 1:用户1, 2:用户2 + + + Button: Cancel Button Mode + 按键:取消按钮模式 + + + 0:Long,1:Long+Lat + 0:纵向, 1:纵向+横向 + + + Button: LFA Button Mode + 按键:LFA 按钮模式 + + + 0:Normal,1:Decel&Stop&LeadCarReady + 0:默认, 1:减速&停车&前车就绪 + + + Button: Cruise Speed Unit(Basic) + 按键:巡航步进(基础) + + + Button: Cruise Speed Unit(Extra) + 按键:巡航步进(扩展) + + + CRUISE: Eco control(4km/h) + 巡航:经济控制(4km/h) + + + Temporarily increasing the set speed to improve fuel efficiency. + 短暂提高设定车速以提升燃油效率。 + + + CRUISE: Auto speed up (0%) + 巡航:自动提速 (0%) + + + Auto speed up based on the lead car up to RoadSpeedLimit. + 基于前车自动提速,最高不超过道路限速。 + + + GAP1: Apply TFollow (110)x0.01s + 间距1:应用时距(110)x0.01秒 + + + GAP2: Apply TFollow (120)x0.01s + 间距2:应用时距(120)x0.01秒 + + + GAP3: Apply TFollow (160)x0.01s + 间距3:应用时距(160)x0.01秒 + + + GAP4: Apply TFollow (180)x0.01s + 间距4:应用时距(180)x0.01秒 + + + Dynamic GAP control + 动态间距控制 + + + Dynamic GAP control (LaneChange) + 动态间距控制(变道) + + + DRIVEMODE: Select + 驾驶模式:选择 + + + 1:ECO,2:SAFE,3:NORMAL,4:HIGH + 1:节能, 2:安全, 3:标准, 4:高速 + + + DRIVEMODE: Auto + 驾驶模式:自动 + + + NORMAL mode only + 仅在标准模式下生效 + + + TrafficLight DetectMode + 红绿灯检测模式 + + + 0:None, 1:Stopping only, 2: Stop & Go + 0:关闭, 1:仅停车, 2:停车后起步 + + + Laneline mode speed(0) + 车道线模式速度(0) + + + Laneline mode, lat_mpc control used + 车道线模式,使用横向 MPC 控制 + + + Laneline mode curve speed(0) + 车道线模式弯道速度(0) + + + Laneline mode, high speed only + 车道线模式,仅在高速下使用 + + + AdjustLaneOffset(0)cm + 车道偏移调整(0)cm + + + LaneChange need torque + 变道需要扭矩 + + + -1:Disable lanechange, 0: no need torque, 1:need torque + -1:禁用变道, 0:无需扭矩, 1:需要扭矩 + + + LaneChange delay + 变道延迟 + + + x0.1sec + 单位0.1秒 + + + LaneChange Bsd + 变道盲区检测 + + + -1:ignore bsd, 0:BSD detect, 1: block steer torque + -1:忽略BSD, 0:检测BSD, 1:限制转向扭矩 + + + LAT: SteerRatiox0.1(0) + 横向:转向比x0.1(0) + + + Custom SteerRatio + 自定义转向比 + + + LAT: SteerRatioRatex0.01(100) + 横向:转向比变化率x0.01(100) + + + SteerRatio apply rate + 转向比应用速率 + + + LAT: PathOffset + 横向:路径偏移 + + + (-)left, (+)right + (-)左移, (+)右移 + + + LAT:SteerActuatorDelay(30) + 横向:转向执行器延迟(30) + + + x0.01, 0:LiveDelay + 单位0.01,0为实时延迟 + + + LAT: TorqueCustom(0) + 横向:自定义扭矩(0) + + + LAT: TorqueAccelFactor(2500) + 横向:扭矩加速度系数(2500) + + + LAT: TorqueFriction(100) + 横向:扭矩摩擦(100) + + + LAT: CustomSteerMax(0) + 横向:自定义最大转向(0) + + + LAT: CustomSteerDeltaUp(0) + 横向:自定义转向上升速率(0) + + + LAT: CustomSteerDeltaDown(0) + 横向:自定义转向下降速率(0) + + + LONG: P Gain(100) + 纵向:P增益(100) + + + LONG: I Gain(0) + 纵向:I增益(0) + + + LONG: FF Gain(100) + 纵向:前馈增益(100) + + + LONG: ActuatorDelay(20) + 纵向:执行器延迟(20) + + + LONG: VEgoStopping(50) + 纵向:自车停止因子(50) + + + Stopping factor + 停止因子 + + + LONG: Radar reaction factor(100) + 纵向:雷达反应系数(100) + + + LONG: StoppingStartAccelx0.01(-40) + 纵向:停止开始加速度x0.01(-40) + + + LONG: StopDistance (600)cm + 纵向:停止距离(600)cm + + + LONG: Jerk Lead Factor (0) + 纵向:前车冲击因子(0) + + + x0.01 + x0.01 + + + ACCEL:0km/h(160) + 加速:0km/h(160) + + + Acceleration needed at specified speed.(x0.01m/s^2) + 指定速度所需加速度(x0.01m/s^2)。 + + + ACCEL:10km/h(160) + 加速:10km/h(160) + + + ACCEL:40km/h(120) + 加速:40km/h(120) + + + ACCEL:60km/h(100) + 加速:60km/h(100) + + + ACCEL:80km/h(80) + 加速:80km/h(80) + + + ACCEL:110km/h(70) + 加速:110km/h(70) + + + ACCEL:140km/h(60) + 加速:140km/h(60) + + + MaxAngleFrames(89) + 最大角度帧(89) + + + 89:Basic, steering instrument panel error 85~87 + 89:基础;仪表转向错误85~87 + + + Debug Info + 调试信息 + + + Tpms Info + 胎压信息 + + + Time Info + 时间信息 + + + 0:None,1:Time/Date,2:Time,3:Date + 0:无, 1:时间/日期, 2:时间, 3:日期 + + + Path End + 路径终点 + + + 0:None,1:Display + 0:不显示, 1:显示 + + + Device State + 设备状态 + + + Lane Info + 车道信息 + + + -1:None, 0:Path, 1:Path+Lane, 2: Path+Lane+RoadEdge + -1:无, 0:路径, 1:路径+车道, 2:路径+车道+路缘 + + + Radar Info + 雷达信息 + + + 0:None,1:Display,2:RelPos,3:Stopped Car + 0:不显示, 1:显示, 2:相对位置, 3:静止车辆 + + + Route Info + 路线信息 + + + Debug plot + 调试曲线 + + + Brightness ratio + 亮度比例 + + + Path Color: Cruise OFF + 路径颜色:未巡航 + + + (+10:Stroke)0:Red,1:Orange,2:Yellow,3:Green,4:Blue,5:Indigo,6:Violet,7:Brown,8:White,9:Black + (+10:描边)0:红,1:橙,2:黄,3:绿,4:蓝,5:靛,6:紫,7:棕,8:白,9:黑 + + + Path Mode: Laneless + 路径模式:无车道线 + + + 0:Normal,1,2:Rec,3,4:^^,5,6:Rec,7,8:^^,9,10,11,12:Smooth^^ + 0:普通,1,2:推荐,3,4:^^,5,6:推荐,7,8:^^,9~12:平滑^^ + + + Path Color: Laneless + 路径颜色:无车道线 + + + Path Mode: LaneMode + 路径模式:有车道线 + + + Path Color: LaneMode + 路径颜色:有车道线 + + + Path Width ratio(100%) + 路径宽度比例(100%) + + + HYUNDAI: CAMERA SCC + 现代:摄像头SCC + + + 1:Connect the SCC's CAN line to CAM, 2:Sync Cruise state, 3:StockLong + 1:将SCC的CAN接至CAM, 2:同步巡航状态, 3:原厂纵向 + + + CANFD: HDA2 mode + CANFD:HDA2 模式 + + + 1:HDA2,2:HDA2+BSM + 1:HDA2, 2:HDA2+BSM + + + Enable Radar Track + 启用雷达跟踪 + + + 1:Enable RadarTrack, -1,2:Disable use HKG SCC radar at all times + 1:启用雷达跟踪, -1,2:始终禁用HKG SCC雷达 + + + Auto Cruise control + 自动巡航控制 + + + Softhold, Auto Cruise ON/OFF control + 柔性保持,自动巡航开/关控制 + + + CRUISE: Auto ON distance(0cm) + 巡航:自动开启距离(0cm) + + + When GAS/Brake is OFF, Cruise ON when the lead car gets closer. + 当油门/刹车松开,当前车接近时自动开启巡航。 + + + Auto Engage control on start + 启动时自动接管控制 + + + 1:SteerEnable, 2:Steer/Cruise Engage + 1:只启用转向, 2:启用转向/巡航 + + + Auto AccelTok speed + 自动加速触发速度 + + + Gas(Accel)Tok enable speed + 油门(加速)触发启用速度 + + + Read Cruise Speed from PCM + 从PCM读取巡航速度 + + + Toyota must set to 1, Honda 3 + 丰田需设为1,本田设为3 + + + Sound Volume(100%) + 音量(100%) + + + Sound Volume, Engage(10%) + 接管提示音量(10%) + + + Power off time (min) + 关机延时(分钟) + + + EnableConnect + 启用Connect + + + Your device may be banned by Comma + 你的设备可能被 Comma 限制 + + + Mapbox Style(0) + Mapbox 样式(0) + + + Record Road camera(0) + 录制道路摄像头(0) + + + 1:RoadCam, 2:RoadCam+WideRoadCam + 1:道路相机, 2:道路相机+广角道路相机 + + + Use HDP(CCNC)(0) + 使用 HDP(CCNC)(0) + + + 1:While Using APN, 2:Always + 1:仅 APN 使用时, 2:始终启用 + + + NNFF + NNFF + + + Twilsonco's NNFF(Reboot required) + Twilsonco 的 NNFF(需要重启) + + + NNFFLite + NNFFLite + + + Twilsonco's NNFF-Lite(Reboot required) + Twilsonco 的 NNFF-Lite(需要重启) + + + Auto update Cruise speed + 自动更新巡航速度 + + + Disable Min.SteerSpeed + 禁用最小转向速度 + + + Disable DM + 禁用驾驶员监控 + + + Hotspot enabled on boot + 开机启用热点 + + + Enable Software Menu + 启用软件菜单 + + + IsLdwsCar + 是否LDWS车辆 + + + CURVE: Lower limit speed(30) + 弯道:最低限速(30) + + + When you approach a curve, reduce your speed. Minimum speed + 接近弯道时降低速度。此为最低速度 + + + CURVE: Auto Control ratio(100%) + 弯道:自动控制比例(100%) + + + CURVE: Aggressiveness (100%) + 弯道:激进程度(100%) + + + RoadSpeedLimitOffset(-1) + 道路限速偏移(-1) + + + -1:NotUsed,RoadLimitSpeed+Offset + -1:不使用,道路限速+偏移 + + + Auto Roadlimit Speed adjust (50%) + 自动道路限速调整(50%) + + + SpeedCamDecelEnd(6s) + 测速点减速结束(6秒) + + + Sets the deceleration completion point. A larger value completes deceleration farther away from the camera. + 设置减速完成点。数值越大,越早完成减速。 + + + NaviSpeedControlMode(2) + 导航限速控制模式(2) + + + 0:No slowdown, 1: speed camera, 2: + accident prevention bump, 3: + mobile camera + 0:不减速, 1:测速点, 2:测速点+减速带, 3:测速点+流动测速 + + + SpeedCamDecelRatex0.01m/s^2(80) + 测速点减速度x0.01m/s^2(80) + + + Lower number, slows down from a greater distance + 数值越小,越远开始减速 + + + SpeedCamSafetyFactor(105%) + 测速安全系数(105%) + + + SpeedBumpTimeDistance(1s) + 减速带时间距离(1秒) + + + SpeedBumpSpeed(35Km/h) + 减速带速度(35Km/h) + + + NaviCountDown mode(2) + 导航倒计时模式(2) + + + 0: off, 1:tbt+camera, 2:tbt+camera+bump + 0:关闭, 1:转向提示+测速, 2:转向提示+测速+减速带 + + + Turn Speed control mode(1) + 转弯速度控制模式(1) + + + 0: off, 1:vision, 2:vision+route, 3: route + 0:关闭, 1:视觉, 2:视觉+路线, 3:路线 + + + Map TurnSpeed Factor(100) + 地图转弯速度系数(100) + + + ATC: Auto turn control(0) + ATC:自动转向控制(0) + + + 0:None, 1: lane change, 2: lane change + speed, 3: speed + 0:无, 1:仅变道, 2:变道+车速, 3:仅车速 + + + ATC: Turn Speed (20) + ATC:转弯速度(20) + + + 0:None, turn speed + 0:无, 转弯速度 + + + ATC: Turn CtrlDistTime (6) + ATC:转弯控制距离时间(6) + + + dist=speed*time + 距离=速度×时间 + + + ATC Auto Map Change(0) + ATC 自动地图切换(0) + + ConfirmationDialog @@ -113,6 +802,33 @@ 拒绝并卸载%1 + + DestinationWidget + + Home + + + + Work + + + + No destination set + + + + home + + + + work + + + + No %1 location set + + + DeveloperPanel @@ -172,11 +888,11 @@ Reset Calibration - 重置设备校准 + 重置设备校准 RESET - 重置 + 重置 Are you sure you want to reset calibration? @@ -268,7 +984,7 @@ Reset - 重置 + 重置 Review @@ -286,6 +1002,81 @@ PAIR 配对 + + ReCalibration + 重新校准 + + + Git Pull & Reboot + 拉取更新并重启 + + + Git pull & Reboot? + 确定要拉取更新并重启吗? + + + Failed to start update process. + 无法启动更新进程。 + + + Update process started. Device will reboot if updates are applied. + 已开始更新。若有更新应用,设备将重启。 + + + Set default + 恢复默认 + + + Set to default? + 确定恢复默认吗? + + + Remove MapboxKey + 移除 Mapbox 密钥 + + + Remove Mapbox key? + 确定要移除 Mapbox 密钥吗? + + + Calibration Status + 校准状态 + + + SHOW + 显示 + + + Yes + + + + Reboot & Disengage to Calibration + 请重启并取消openpilot以进行校准 + + + + DrawCarrot + + ECO + + + + SAFE + + + + NORM + + + + FAST + + + + ERRM + + DriverViewWindow @@ -373,6 +1164,51 @@ Firehose Mode allows you to maximize your training data uploads to improve openp 正在安装…… + + MapETA + + eta + + + + min + + + + hr + + + + + MapSettings + + NAVIGATION + + + + Manage at %1 + + + + Manage at connect.comma.ai + + + + + MapWindow + + Map Loading + + + + Waiting for GPS(APN) + + + + Waiting for route + + + MultiOptionDialog @@ -524,6 +1360,21 @@ Firehose Mode allows you to maximize your training data uploads to improve openp 启用 + + PathEndDrawer + + Signal Error + + + + Signal Ready + + + + Signal slowing + + + PrimeAdWidget @@ -568,40 +1419,424 @@ Firehose Mode allows you to maximize your training data uploads to improve openp QObject + + Button: Cruise Button Mode + 按键:巡航按钮模式 + + + 0:Normal,1:User1,2:User2 + 0:默认, 1:用户1, 2:用户2 + + + Button: Cancel Button Mode + 按键:取消按钮模式 + + + 0:Long,1:Long+Lat + 0:纵向, 1:纵向+横向 + + + Button: LFA Button Mode + 按键:LFA 按钮模式 + + + 0:Normal,1:Decel&Stop&LeadCarReady + 0:默认, 1:减速&停车&前车就绪 + + + Button: Cruise Speed Unit(Basic) + 按键:巡航步进(基础) + + + Button: Cruise Speed Unit(Extra) + 按键:巡航步进(扩展) + + + CRUISE: Eco control(4km/h) + 巡航:经济控制(4km/h) + + + Temporarily increasing the set speed to improve fuel efficiency. + 短暂提高设定车速以提升燃油效率。 + + + CRUISE: Auto speed up (0%) + 巡航:自动提速 (0%) + + + Auto speed up based on the lead car up to RoadSpeedLimit. + 基于前车自动提速,最高不超过道路限速。 + + + GAP1: Apply TFollow (110)x0.01s + 间距1:应用时距(110)x0.01秒 + + + GAP2: Apply TFollow (120)x0.01s + 间距2:应用时距(120)x0.01秒 + + + GAP3: Apply TFollow (160)x0.01s + 间距3:应用时距(160)x0.01秒 + + + GAP4: Apply TFollow (180)x0.01s + 间距4:应用时距(180)x0.01秒 + + + Dynamic GAP control + 动态间距控制 + + + Dynamic GAP control (LaneChange) + 动态间距控制(变道) + + + DRIVEMODE: Select + 驾驶模式:选择 + + + 1:ECO,2:SAFE,3:NORMAL,4:HIGH + 1:节能, 2:安全, 3:标准, 4:高速 + + + DRIVEMODE: Auto + 驾驶模式:自动 + + + NORMAL mode only + 仅在标准模式下生效 + + + TrafficLight DetectMode + 红绿灯检测模式 + + + 0:None, 1:Stopping only, 2: Stop & Go + 0:关闭, 1:仅停车, 2:停车后起步 + + + Laneline mode speed(0) + 车道线模式速度(0) + + + Laneline mode, lat_mpc control used + 车道线模式,使用横向 MPC 控制 + + + Laneline mode curve speed(0) + 车道线模式弯道速度(0) + + + Laneline mode, high speed only + 车道线模式,仅在高速下使用 + + + AdjustLaneOffset(0)cm + 车道偏移调整(0)cm + + + LaneChange need torque + 变道需要扭矩 + + + -1:Disable lanechange, 0: no need torque, 1:need torque + -1:禁用变道, 0:无需扭矩, 1:需要扭矩 + + + LaneChange delay + 变道延迟 + + + x0.1sec + 单位0.1秒 + + + LaneChange Bsd + 变道盲区检测 + + + -1:ignore bsd, 0:BSD detect, 1: block steer torque + -1:忽略BSD, 0:检测BSD, 1:限制转向扭矩 + + + LAT: SteerRatiox0.1(0) + 横向:转向比x0.1(0) + + + Custom SteerRatio + 自定义转向比 + + + LAT: SteerRatioRatex0.01(100) + 横向:转向比变化率x0.01(100) + + + SteerRatio apply rate + 转向比应用速率 + + + LAT: PathOffset + 横向:路径偏移 + + + (-)left, (+)right + (-)左移, (+)右移 + + + LAT:SteerActuatorDelay(30) + 横向:转向执行器延迟(30) + + + x0.01, 0:LiveDelay + 单位0.01,0为实时延迟 + + + LAT: TorqueCustom(0) + 横向:自定义扭矩(0) + + + LAT: TorqueAccelFactor(2500) + 横向:扭矩加速度系数(2500) + + + LAT: TorqueFriction(100) + 横向:扭矩摩擦(100) + + + LAT: CustomSteerMax(0) + 横向:自定义最大转向(0) + + + LAT: CustomSteerDeltaUp(0) + 横向:自定义转向上升速率(0) + + + LAT: CustomSteerDeltaDown(0) + 横向:自定义转向下降速率(0) + + + LONG: P Gain(100) + 纵向:P增益(100) + + + LONG: I Gain(0) + 纵向:I增益(0) + + + LONG: FF Gain(100) + 纵向:前馈增益(100) + + + LONG: ActuatorDelay(20) + 纵向:执行器延迟(20) + + + LONG: VEgoStopping(50) + 纵向:自车停止因子(50) + + + Stopping factor + 停止因子 + + + LONG: Radar reaction factor(100) + 纵向:雷达反应系数(100) + + + LONG: StoppingStartAccelx0.01(-40) + 纵向:停止开始加速度x0.01(-40) + + + LONG: StopDistance (600)cm + 纵向:停止距离(600)cm + + + LONG: Jerk Lead Factor (0) + 纵向:前车冲击因子(0) + + + x0.01 + x0.01 + + + ACCEL:0km/h(160) + 加速:0km/h(160) + + + Acceleration needed at specified speed.(x0.01m/s^2) + 指定速度所需加速度(x0.01m/s^2)。 + + + ACCEL:10km/h(160) + 加速:10km/h(160) + + + ACCEL:40km/h(120) + 加速:40km/h(120) + + + ACCEL:60km/h(100) + 加速:60km/h(100) + + + ACCEL:80km/h(80) + 加速:80km/h(80) + + + ACCEL:110km/h(70) + 加速:110km/h(70) + + + ACCEL:140km/h(60) + 加速:140km/h(60) + + + MaxAngleFrames(89) + 最大角度帧(89) + + + 89:Basic, steering instrument panel error 85~87 + 89:基础;仪表转向错误85~87 + + + Debug Info + 调试信息 + + + Tpms Info + 胎压信息 + + + Time Info + 时间信息 + + + 0:None,1:Time/Date,2:Time,3:Date + 0:无, 1:时间/日期, 2:时间, 3:日期 + + + Path End + 路径终点 + + + 0:None,1:Display + 0:不显示, 1:显示 + + + Device State + 设备状态 + + + Lane Info + 车道信息 + + + -1:None, 0:Path, 1:Path+Lane, 2: Path+Lane+RoadEdge + -1:无, 0:路径, 1:路径+车道, 2:路径+车道+路缘 + + + Radar Info + 雷达信息 + + + 0:None,1:Display,2:RelPos,3:Stopped Car + 0:不显示, 1:显示, 2:相对位置, 3:静止车辆 + + + Route Info + 路线信息 + + + Debug plot + 调试曲线 + + + Brightness ratio + 亮度比例 + + + Path Color: Cruise OFF + 路径颜色:未巡航 + + + (+10:Stroke)0:Red,1:Orange,2:Yellow,3:Green,4:Blue,5:Indigo,6:Violet,7:Brown,8:White,9:Black + (+10:描边)0:红,1:橙,2:黄,3:绿,4:蓝,5:靛,6:紫,7:棕,8:白,9:黑 + + + Path Mode: Laneless + 路径模式:无车道线 + + + 0:Normal,1,2:Rec,3,4:^^,5,6:Rec,7,8:^^,9,10,11,12:Smooth^^ + 0:普通,1,2:推荐,3,4:^^,5,6:推荐,7,8:^^,9~12:平滑^^ + + + Path Color: Laneless + 路径颜色:无车道线 + + + Path Mode: LaneMode + 路径模式:有车道线 + + + Path Color: LaneMode + 路径颜色:有车道线 + + + Path Width ratio(100%) + 路径宽度比例(100%) + + + km + + + + m + + + + mi + + + + ft + + Reboot - 重启 + 重启 Exit - 退出 + 退出 - openpilot - openpilot + carrotpilot + + + + now + 现在 %n minute(s) ago - + %n 分钟前 %n hour(s) ago - + %n 小时前 %n day(s) ago - + %n 天前 - - now - 现在 - Reset @@ -674,6 +1909,10 @@ This may take up to a minute. Firehose 训练上传 + + Carrot + Carrot + Setup @@ -1110,6 +2349,18 @@ This may take up to a minute. Enable driver monitoring even when openpilot is not engaged. 即使在openpilot未激活时也启用驾驶员监控。 + + MoreRelaxed + 更舒适 + + + Record and Upload Microphone Audio + + + + Record and store microphone audio while driving. The audio will be included in the dashcam video in comma connect. + + Updater