mirror of
https://github.com/sunnypilot/sunnypilot.git
synced 2026-06-16 13:06:38 +08:00
Compare commits
156 Commits
master-dev
...
toyota
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
893132d0aa | ||
|
|
cf9f10a16d | ||
|
|
060ef30223 | ||
|
|
599fd9801e | ||
|
|
fd6004b475 | ||
|
|
1aeebaa074 | ||
|
|
f8fca88c45 | ||
|
|
26d20e68e0 | ||
|
|
d15652f4f0 | ||
|
|
116edceba5 | ||
|
|
a502281dcd | ||
|
|
36ec53563f | ||
|
|
2f8a6796a2 | ||
|
|
1f9ea6628a | ||
|
|
47f54326f5 | ||
|
|
237dd0aeea | ||
|
|
6ffea11910 | ||
|
|
e5027e0035 | ||
|
|
47f9b248c9 | ||
|
|
7f29e30cd0 | ||
|
|
e58c509d98 | ||
|
|
f6831f420e | ||
|
|
21d4bd4779 | ||
|
|
6e775c1768 | ||
|
|
10baad1d23 | ||
|
|
a5450a1dd0 | ||
|
|
e7ad4ab7c5 | ||
|
|
1557662393 | ||
|
|
38d4cba5be | ||
|
|
f08c90209b | ||
|
|
4ec3d78e3d | ||
|
|
4726c05dfa | ||
|
|
7b384185a6 | ||
|
|
1400df2789 | ||
|
|
a925ad1fa7 | ||
|
|
e2ca21f605 | ||
|
|
0a55f898d5 | ||
|
|
b73eb6e6db | ||
|
|
e78e1ee8c8 | ||
|
|
0765267cb2 | ||
|
|
4a07ec504f | ||
|
|
187cefb2df | ||
|
|
ce268cbc61 | ||
|
|
404148cb3c | ||
|
|
17a20291e2 | ||
|
|
5afc2a3c62 | ||
|
|
ee9353480d | ||
|
|
dced58dc34 | ||
|
|
98d72bba3d | ||
|
|
a0dac9282e | ||
|
|
2dcc838f73 | ||
|
|
0b4170dcc2 | ||
|
|
143ac94ba9 | ||
|
|
876a500cfb | ||
|
|
06726c4b92 | ||
|
|
e03b640bf8 | ||
|
|
f97e2fa4bd | ||
|
|
bda7abf354 | ||
|
|
af9a9d50cc | ||
|
|
5b62bd4033 | ||
|
|
9ed43705c4 | ||
|
|
e30ae2e70e | ||
|
|
e08a8552e0 | ||
|
|
235048ab9d | ||
|
|
e13b70f88b | ||
|
|
265e1ae7ce | ||
|
|
929ea507f2 | ||
|
|
3d06292c7e | ||
|
|
f8ee6f60ff | ||
|
|
725fcea452 | ||
|
|
acb894a678 | ||
|
|
c574fd0b5b | ||
|
|
cf36500aef | ||
|
|
17829703ee | ||
|
|
c854c9763d | ||
|
|
a0bbe2a126 | ||
|
|
77259f26d0 | ||
|
|
f093f460a3 | ||
|
|
bbbbe3b8ef | ||
|
|
4182f29840 | ||
|
|
2d4f31bcec | ||
|
|
5e798af4a1 | ||
|
|
dd40b8a1e8 | ||
|
|
202ea9141f | ||
|
|
1e8a276027 | ||
|
|
817592c184 | ||
|
|
1797d978a4 | ||
|
|
df8046ec8c | ||
|
|
ba52a42514 | ||
|
|
c1cc78d401 | ||
|
|
3281ab4b84 | ||
|
|
d00d623173 | ||
|
|
36109bc743 | ||
|
|
4c198769b1 | ||
|
|
57fce9f3a4 | ||
|
|
852302b97b | ||
|
|
a176851afe | ||
|
|
ce4d1f8505 | ||
|
|
a0f2b086c7 | ||
|
|
59ad1b0926 | ||
|
|
add019179f | ||
|
|
4a51023102 | ||
|
|
1f0415e310 | ||
|
|
1937140890 | ||
|
|
b9d1980f6e | ||
|
|
0b766c67b3 | ||
|
|
f31bd02087 | ||
|
|
f9a195bab7 | ||
|
|
21a2aa79b2 | ||
|
|
31ba711819 | ||
|
|
805fd9a290 | ||
|
|
b8f63740bc | ||
|
|
c5ebb3a5a1 | ||
|
|
c365aac60a | ||
|
|
98e9890004 | ||
|
|
8b976ee3ac | ||
|
|
c0d5f23ac0 | ||
|
|
5341eb30fe | ||
|
|
a07bb99d0c | ||
|
|
bc65566017 | ||
|
|
db684508da | ||
|
|
94fc8a9b5a | ||
|
|
080ca6e62f | ||
|
|
4e3e220f37 | ||
|
|
b2dfc01469 | ||
|
|
3413f077fb | ||
|
|
c32595e63f | ||
|
|
cae49279e5 | ||
|
|
72deb320a7 | ||
|
|
f532c73c60 | ||
|
|
bb3d041bb1 | ||
|
|
f7da0a2af5 | ||
|
|
2773e214a8 | ||
|
|
d0608fc987 | ||
|
|
2f56309bb6 | ||
|
|
e602ac636c | ||
|
|
1ce2ecd153 | ||
|
|
b4fd05617c | ||
|
|
373d6c2e59 | ||
|
|
7aef4728ca | ||
|
|
ca5fa0e6d9 | ||
|
|
0c76a761ce | ||
|
|
dee11f6d54 | ||
|
|
76efd9e8ae | ||
|
|
2721e85275 | ||
|
|
dd08146711 | ||
|
|
c219ba7c79 | ||
|
|
ee67635e8d | ||
|
|
972c69bd2a | ||
|
|
16e9625626 | ||
|
|
6b71d82019 | ||
|
|
8d693e1d41 | ||
|
|
cab9ccf0d8 | ||
|
|
c831b5f2af | ||
|
|
58f994496c | ||
|
|
2e15f519bc |
@@ -5,16 +5,9 @@ sunnypilot - 0.9.8.0 (2024-xx-xx)
|
||||
* UPDATED: Synced with commaai's openpilot
|
||||
* master commit 4ef757c (July 06, 2024)
|
||||
* NEW❗: Default Driving Model: Notre Dame (July 01, 2024)
|
||||
* NEW❗: Longitudinal: Acceleration Personality thanks to kegman, rav4kumar, and arne1282! (CTV 2.0: GlideTech)
|
||||
* NEW❗: Longitudinal: Acceleration Personality thanks to kegman, rav4kumar, and arne1282!
|
||||
* Select from three distinct acceleration personalities: Eco, Normal, and Sport
|
||||
* Acceleration personalities are integrated directly into the model's acceleration matrix and can be activated in real-time!
|
||||
* NEW❗: Toyota - Drive Mode Selector
|
||||
* When enabled you can control acceleration personality just with press of button!
|
||||
* UPDATED: Dynamic Experimental Control
|
||||
* Switched to weighted moving averages to enhance responsiveness to recent data.
|
||||
* Goal is to improve real-time detection accuracy in dynamic conditions.
|
||||
* Capable of handling the increased complexity that comes with this approach.
|
||||
* Particularly beneficial in environments where recent changes are critical to performance.
|
||||
* NEW❗: Longitudinal: Dynamic Personality thanks to rav4kumar!
|
||||
* Dynamically adjusts following distance and reaction based on your "Driving Personality" setting
|
||||
* Personalities adapt in real-time to your speed and the distance to the lead car
|
||||
@@ -33,8 +26,8 @@ sunnypilot - 0.9.8.0 (2024-xx-xx)
|
||||
* Toyota TSS1/1.5, equipped with factory Blind Spot Monitoring (BSM)
|
||||
* Prius TSS2, equipped with factory Blind Spot Monitoring (BSM)
|
||||
* NOTE: Only enable this feature if your Toyota/Lexus vehicle has factory Blind Spot Monitor equipped, and mentioned in the supported platforms list
|
||||
* UPDATED: Toyota: TSS2 longitudinal: Custom Tuning (CTV 2.0: GlideTech)
|
||||
* Re-tuned and tested by the community (September 29, 2024)
|
||||
* UPDATED: Toyota: TSS2 longitudinal: Custom Tuning
|
||||
* Re-tuned and tested by the community (July 1, 2024)
|
||||
* UPDATED: Driving Model Selector v5
|
||||
* NEW❗: Driving Model additions
|
||||
* Notre Dame (July 01, 2024) - NDv3
|
||||
@@ -45,6 +38,9 @@ sunnypilot - 0.9.8.0 (2024-xx-xx)
|
||||
* In response to the official deprecation of support for Smart DSU (SDSU) and Radar CAN Filter in the upstream ([commaai/openpilot#32777](https://github.com/commaai/openpilot/pull/32777)), sunnypilot will continue maintaining software support for Smart DSU (SDSU) and Radar CAN Filter
|
||||
* UPDATED: Continued support for Mapbox navigation
|
||||
* In response to the official temporary deprecation of support for Mapbox navigation in the upstream ([commaai/openpilot#32773](https://github.com/commaai/openpilot/pull/32773)), sunnypilot will continue maintaining software support for Mapbox navigation
|
||||
* NEW❗: Toyota - Automatic Brake Hold (AHB) thanks to AlexandreSato!
|
||||
* When you stop the vehicle completely by depressing the brake pedal, sunnypilot will activate Auto Brake Hold
|
||||
* NOTE: Only for Toyota/Lexus vehicles with TSS2/LSS2
|
||||
* NEW❗: Toyota - Automatic Door Locking and Unlocking thanks to AlexandreSato, cydia2020, and dragonpilot-community!
|
||||
* Auto Lock by Speed: All doors are automatically locked when vehicle speed is approximately 6 mph (10 km/h) or higher
|
||||
* Auto Unlock by Shift to P: All doors are automatically unlocked when shifting the shift lever to P
|
||||
|
||||
@@ -138,6 +138,7 @@ struct CarEvent @0x9b1657f34caf3ad3 {
|
||||
speedLimitConfirmed @140;
|
||||
torqueNNLoad @141;
|
||||
hyundaiRadarTracksAvailable @142;
|
||||
spAutoBrakeHold @143;
|
||||
|
||||
radarCanErrorDEPRECATED @15;
|
||||
communityFeatureDisallowedDEPRECATED @62;
|
||||
|
||||
@@ -330,6 +330,7 @@ std::unordered_map<std::string, uint32_t> keys = {
|
||||
{"TorqueLateralJerk", PERSISTENT | BACKUP},
|
||||
{"TorqueMaxLatAccel", PERSISTENT | BACKUP},
|
||||
{"TorquedOverride", PERSISTENT | BACKUP},
|
||||
{"ToyotaAutoHold", PERSISTENT | BACKUP},
|
||||
{"ToyotaAutoLockBySpeed", PERSISTENT | BACKUP},
|
||||
{"ToyotaAutoUnlockByShifter", PERSISTENT | BACKUP},
|
||||
{"ToyotaDriveMode", PERSISTENT | BACKUP},
|
||||
|
||||
Submodule opendbc_repo updated: 529474a50e...3d8fa43d5a
2
panda
2
panda
Submodule panda updated: 55018eafc2...827201c04a
@@ -60,6 +60,7 @@ class Car:
|
||||
self.mads_disengage_lateral_on_brake = self.params.get_bool("DisengageLateralOnBrake")
|
||||
self.mads_dlob = self.enable_mads and self.mads_disengage_lateral_on_brake
|
||||
self.mads_ndlob = self.enable_mads and not self.mads_disengage_lateral_on_brake
|
||||
self.sp_toyota_auto_brake_hold = self.params.get_bool("ToyotaAutoHold")
|
||||
self.CP.alternativeExperience = 0
|
||||
if not self.disengage_on_accelerator:
|
||||
self.CP.alternativeExperience |= ALTERNATIVE_EXPERIENCE.DISABLE_DISENGAGE_ON_GAS
|
||||
@@ -67,6 +68,8 @@ class Car:
|
||||
self.CP.alternativeExperience |= ALTERNATIVE_EXPERIENCE.ENABLE_MADS
|
||||
elif self.mads_ndlob:
|
||||
self.CP.alternativeExperience |= ALTERNATIVE_EXPERIENCE.MADS_DISABLE_DISENGAGE_LATERAL_ON_BRAKE
|
||||
if self.sp_toyota_auto_brake_hold:
|
||||
self.CP.alternativeExperience |= ALTERNATIVE_EXPERIENCE.ALLOW_AEB
|
||||
|
||||
if self.CP.customStockLongAvailable and self.CP.pcmCruise and self.params.get_bool("CustomStockLong"):
|
||||
self.CP.pcmCruiseSpeed = False
|
||||
|
||||
@@ -126,7 +126,7 @@ class CarInterface(CarInterfaceBase):
|
||||
|
||||
if 0x1fa in fingerprint[CAN.ECAN]:
|
||||
ret.spFlags |= HyundaiFlagsSP.SP_NAV_MSG.value
|
||||
if Params().get("DongleId", encoding='utf8') in ("012c95f06918eca4", "68d6a96e703c00c9", "11c1f1909ca37bca"):
|
||||
if Params().get("DongleId", encoding='utf8') in ("012c95f06918eca4", "68d6a96e703c00c9"):
|
||||
ret.spFlags |= HyundaiFlagsSP.SP_UPSTREAM_TACO.value
|
||||
else:
|
||||
ret.enableBsm = 0x58b in fingerprint[0]
|
||||
|
||||
@@ -1,8 +1,11 @@
|
||||
from cereal import car
|
||||
import math
|
||||
from openpilot.common.params import Params
|
||||
from openpilot.selfdrive.controls.lib.pid import PIDController
|
||||
from common.conversions import Conversions as CV
|
||||
from openpilot.common.numpy_fast import clip, interp
|
||||
from openpilot.selfdrive.car import apply_meas_steer_torque_limits, apply_std_steer_angle_limits, common_fault_avoidance, make_can_msg, make_tester_present_msg, \
|
||||
create_gas_interceptor_command
|
||||
create_gas_interceptor_command, rate_limit
|
||||
from openpilot.selfdrive.car.interfaces import CarControllerBase
|
||||
from openpilot.selfdrive.car.toyota import toyotacan
|
||||
from openpilot.selfdrive.car.toyota.values import CAR, STATIC_DSU_MSGS, NO_STOP_TIMER_CAR, TSS2_CAR, \
|
||||
@@ -13,6 +16,11 @@ from opendbc.can.packer import CANPacker
|
||||
GearShifter = car.CarState.GearShifter
|
||||
SteerControlType = car.CarParams.SteerControlType
|
||||
VisualAlert = car.CarControl.HUDControl.VisualAlert
|
||||
LongCtrlState = car.CarControl.Actuators.LongControlState
|
||||
|
||||
ACCELERATION_DUE_TO_GRAVITY = 9.81 # m/s^2
|
||||
|
||||
ACCEL_WINDUP_LIMIT = 0.5 # m/s^2 / frame
|
||||
|
||||
# LKA limits
|
||||
# EPS faults if you apply torque while the steering rate is above 100 deg/s for too long
|
||||
@@ -46,6 +54,9 @@ class CarController(CarControllerBase):
|
||||
self.steer_rate_counter = 0
|
||||
self.distance_button = 0
|
||||
|
||||
self.pcm_accel_compensation = 0.0
|
||||
self.permit_braking = 0.0
|
||||
|
||||
self.packer = CANPacker(dbc_name)
|
||||
self.gas = 0
|
||||
self.accel = 0
|
||||
@@ -55,6 +66,13 @@ class CarController(CarControllerBase):
|
||||
self.last_blindspot_frame = 0
|
||||
|
||||
self._auto_lock_speed = 0.0
|
||||
|
||||
if CP.spFlags & ToyotaFlagsSP.SP_AUTO_BRAKE_HOLD:
|
||||
self.brake_hold_active: bool = False
|
||||
self._brake_hold_counter: int = 0
|
||||
self._brake_hold_reset: bool = False
|
||||
self._prev_brake_pressed: bool = False
|
||||
|
||||
self._auto_lock_once = False
|
||||
self._gear_prev = GearShifter.park
|
||||
|
||||
@@ -133,6 +151,39 @@ class CarController(CarControllerBase):
|
||||
lta_active, self.frame // 2, torque_wind_down))
|
||||
|
||||
# *** gas and brake ***
|
||||
# For cars where we allow a higher max acceleration of 2.0 m/s^2, compensate for PCM request overshoot and imprecise braking
|
||||
# TODO: sometimes when switching from brake to gas quickly, CLUTCH->ACCEL_NET shows a slow unwind. make it go to 0 immediately
|
||||
if self.CP.flags & ToyotaFlags.RAISED_ACCEL_LIMIT and CC.longActive and not CS.out.cruiseState.standstill:
|
||||
# calculate amount of acceleration PCM should apply to reach target, given pitch
|
||||
accel_due_to_pitch = math.sin(CS.slope_angle) * ACCELERATION_DUE_TO_GRAVITY
|
||||
net_acceleration_request = actuators.accel + accel_due_to_pitch
|
||||
|
||||
# let PCM handle stopping for now
|
||||
pcm_accel_compensation = 0.0
|
||||
if actuators.longControlState != LongCtrlState.stopping:
|
||||
pcm_accel_compensation = 2.0 * (CS.pcm_accel_net - net_acceleration_request)
|
||||
|
||||
# prevent compensation windup
|
||||
pcm_accel_compensation = clip(pcm_accel_compensation, actuators.accel - self.params.ACCEL_MAX,
|
||||
actuators.accel - self.params.ACCEL_MIN)
|
||||
|
||||
self.pcm_accel_compensation = rate_limit(pcm_accel_compensation, self.pcm_accel_compensation, -0.01, 0.01)
|
||||
pcm_accel_cmd = actuators.accel - self.pcm_accel_compensation
|
||||
|
||||
# Along with rate limiting positive jerk below, this greatly improves gas response time
|
||||
# Consider the net acceleration request that the PCM should be applying (pitch included)
|
||||
if net_acceleration_request < 0.1:
|
||||
self.permit_braking = True
|
||||
elif net_acceleration_request > 0.2:
|
||||
self.permit_braking = False
|
||||
else:
|
||||
self.pcm_accel_compensation = 0.0
|
||||
pcm_accel_cmd = actuators.accel
|
||||
self.permit_braking = True
|
||||
|
||||
pcm_accel_cmd = clip(pcm_accel_cmd, self.params.ACCEL_MIN, self.params.ACCEL_MAX)
|
||||
|
||||
|
||||
if self.CP.enableGasInterceptorDEPRECATED and CC.longActive:
|
||||
MAX_INTERCEPTOR_GAS = 0.5
|
||||
# RAV4 has very sensitive gas pedal
|
||||
@@ -148,7 +199,6 @@ class CarController(CarControllerBase):
|
||||
interceptor_gas_cmd = clip(pedal_command, 0., MAX_INTERCEPTOR_GAS)
|
||||
else:
|
||||
interceptor_gas_cmd = 0.
|
||||
pcm_accel_cmd = clip(actuators.accel, self.params.ACCEL_MIN, self.params.ACCEL_MAX)
|
||||
|
||||
# TODO: probably can delete this. CS.pcm_acc_status uses a different signal
|
||||
# than CS.cruiseState.enabled. confirm they're not meaningfully different
|
||||
@@ -168,6 +218,9 @@ class CarController(CarControllerBase):
|
||||
|
||||
self.last_standstill = CS.out.standstill
|
||||
|
||||
if self.CP.spFlags & ToyotaFlagsSP.SP_AUTO_BRAKE_HOLD:
|
||||
can_sends.extend(self.create_auto_brake_hold_messages(CS))
|
||||
|
||||
# handle UI messages
|
||||
fcw_alert = hud_control.visualAlert == VisualAlert.fcw
|
||||
steer_alert = hud_control.visualAlert in (VisualAlert.steerRequired, VisualAlert.ldw)
|
||||
@@ -189,11 +242,14 @@ class CarController(CarControllerBase):
|
||||
if pcm_cancel_cmd and self.CP.carFingerprint in UNSUPPORTED_DSU_CAR:
|
||||
can_sends.append(toyotacan.create_acc_cancel_command(self.packer))
|
||||
elif self.CP.openpilotLongitudinalControl:
|
||||
can_sends.append(toyotacan.create_accel_command(self.packer, pcm_accel_cmd, pcm_cancel_cmd, self.standstill_req, lead, CS.acc_type, fcw_alert,
|
||||
self.distance_button, reverse_acc))
|
||||
# internal PCM gas command can get stuck unwinding from negative accel so we apply a generous rate limit
|
||||
pcm_accel_cmd = min(pcm_accel_cmd, self.accel + ACCEL_WINDUP_LIMIT) if CC.longActive else 0.0
|
||||
|
||||
can_sends.append(toyotacan.create_accel_command(self.packer, pcm_accel_cmd, pcm_cancel_cmd, self.permit_braking, self.standstill_req, lead,
|
||||
CS.acc_type, fcw_alert, self.distance_button, reverse_acc))
|
||||
self.accel = pcm_accel_cmd
|
||||
else:
|
||||
can_sends.append(toyotacan.create_accel_command(self.packer, 0, pcm_cancel_cmd, False, lead, CS.acc_type, False, self.distance_button, reverse_acc))
|
||||
can_sends.append(toyotacan.create_accel_command(self.packer, 0, pcm_cancel_cmd, True, False, lead, CS.acc_type, False, self.distance_button, reverse_acc))
|
||||
|
||||
if self.frame % 2 == 0 and self.CP.enableGasInterceptorDEPRECATED and self.CP.openpilotLongitudinalControl:
|
||||
# send exactly zero if gas cmd is zero. Interceptor will send the max between read value and gas cmd.
|
||||
@@ -286,3 +342,25 @@ class CarController(CarControllerBase):
|
||||
# print("bsm poll right")
|
||||
|
||||
return can_sends
|
||||
|
||||
# auto brake hold (https://github.com/AlexandreSato/)
|
||||
def create_auto_brake_hold_messages(self, CS: car.CarState, brake_hold_allowed_timer: int = 100):
|
||||
can_sends = []
|
||||
disallowed_gears = [GearShifter.park, GearShifter.reverse]
|
||||
brake_hold_allowed = CS.out.standstill and CS.out.cruiseState.available and not CS.out.gasPressed and \
|
||||
not CS.out.cruiseState.enabled and (CS.out.gearShifter not in disallowed_gears)
|
||||
|
||||
if brake_hold_allowed:
|
||||
self._brake_hold_counter += 1
|
||||
self.brake_hold_active = self._brake_hold_counter > brake_hold_allowed_timer and not self._brake_hold_reset
|
||||
self._brake_hold_reset = not self._prev_brake_pressed and CS.out.brakePressed and not self._brake_hold_reset
|
||||
else:
|
||||
self._brake_hold_counter = 0
|
||||
self.brake_hold_active = False
|
||||
self._brake_hold_reset = False
|
||||
self._prev_brake_pressed = CS.out.brakePressed
|
||||
|
||||
if self.frame % 2 == 0:
|
||||
can_sends.append(toyotacan.create_brake_hold_command(self.packer, self.frame, CS.pre_collision_2, self.brake_hold_active))
|
||||
|
||||
return can_sends
|
||||
|
||||
@@ -57,6 +57,8 @@ class CarState(CarStateBase):
|
||||
self.low_speed_lockout = False
|
||||
self.acc_type = 1
|
||||
self.lkas_hud = {}
|
||||
self.pcm_accel_net = 0.0
|
||||
self.slope_angle = 0.0
|
||||
|
||||
self.lkas_enabled = None
|
||||
self.prev_lkas_enabled = None
|
||||
@@ -87,6 +89,10 @@ class CarState(CarStateBase):
|
||||
self.prev_accel_profile = None
|
||||
self.accel_profile_init = False
|
||||
self.toyota_drive_mode = Params().get_bool('ToyotaDriveMode')
|
||||
|
||||
if CP.spFlags & ToyotaFlagsSP.SP_AUTO_BRAKE_HOLD:
|
||||
self.pre_collision_2 = {}
|
||||
|
||||
self.frame = 0
|
||||
|
||||
def update(self, cp, cp_cam):
|
||||
@@ -96,6 +102,24 @@ class CarState(CarStateBase):
|
||||
self.prev_lkas_enabled = self.lkas_enabled
|
||||
self.prev_lta_status = self.lta_status
|
||||
|
||||
# Describes the acceleration request from the PCM if on flat ground, may be higher or lower if pitched
|
||||
# CLUTCH->ACCEL_NET is only accurate for gas, PCM_CRUISE->ACCEL_NET is only accurate for brake
|
||||
# These signals only have meaning when ACC is active
|
||||
if self.CP.flags & ToyotaFlags.RAISED_ACCEL_LIMIT:
|
||||
self.pcm_accel_net = max(cp.vl["CLUTCH"]["ACCEL_NET"], 0.0)
|
||||
|
||||
# Sometimes ACC_BRAKING can be 1 while showing we're applying gas already
|
||||
if cp.vl["PCM_CRUISE"]["ACC_BRAKING"]:
|
||||
self.pcm_accel_net += min(cp.vl["PCM_CRUISE"]["ACCEL_NET"], 0.0)
|
||||
|
||||
# add creeping force at low speeds only for braking, CLUTCH->ACCEL_NET already shows this
|
||||
neutral_accel = max(cp.vl["PCM_CRUISE"]["NEUTRAL_FORCE"] / self.CP.mass, 0.0)
|
||||
if self.pcm_accel_net + neutral_accel < 0.0:
|
||||
self.pcm_accel_net += neutral_accel
|
||||
|
||||
# filtered pitch estimate from the car, negative is a downward slope
|
||||
self.slope_angle = cp.vl["VSC1S07"]["ASLP"] * CV.DEG_TO_RAD
|
||||
|
||||
ret.doorOpen = any([cp.vl["BODY_CONTROL_STATE"]["DOOR_OPEN_FL"], cp.vl["BODY_CONTROL_STATE"]["DOOR_OPEN_FR"],
|
||||
cp.vl["BODY_CONTROL_STATE"]["DOOR_OPEN_RL"], cp.vl["BODY_CONTROL_STATE"]["DOOR_OPEN_RR"]])
|
||||
ret.seatbeltUnlatched = cp.vl["BODY_CONTROL_STATE"]["SEATBELT_DRIVER_UNLATCHED"] != 0
|
||||
@@ -186,37 +210,29 @@ class CarState(CarStateBase):
|
||||
|
||||
if self.toyota_drive_mode:
|
||||
# Determine sport signal based on car model
|
||||
sport_signal = 'SPORT_ON_2' if self.CP.carFingerprint in (CAR.TOYOTA_RAV4_TSS2, CAR.LEXUS_ES_TSS2, CAR.TOYOTA_HIGHLANDER_TSS2) else 'SPORT_ON'
|
||||
sport_signal = 'SPORT_ON_2' if self.CP.carFingerprint in (CAR.TOYOTA_RAV4_TSS2, CAR.LEXUS_ES_TSS2) else 'SPORT_ON'
|
||||
|
||||
# Check signals once
|
||||
if not self.signals_checked:
|
||||
self.signals_checked = True
|
||||
|
||||
# Try to detect sport mode signal, handle missing signal with a fallback
|
||||
try:
|
||||
sport_mode = cp.vl["GEAR_PACKET"][sport_signal]
|
||||
self.sport_signal_seen = True
|
||||
except KeyError:
|
||||
sport_mode = 0
|
||||
self.sport_signal_seen = False
|
||||
# Get sport and eco signals, handling missing signals
|
||||
sport_mode = cp.vl["GEAR_PACKET"].get(sport_signal, 0)
|
||||
eco_mode = cp.vl["GEAR_PACKET"].get('ECON_ON', 0)
|
||||
|
||||
# Try to detect eco mode signal, handle missing signal with a fallback
|
||||
try:
|
||||
eco_mode = cp.vl["GEAR_PACKET"]['ECON_ON']
|
||||
self.eco_signal_seen = True
|
||||
except KeyError:
|
||||
eco_mode = 0
|
||||
self.eco_signal_seen = False
|
||||
# Track if signals were detected
|
||||
self.sport_signal_seen = sport_mode == 1
|
||||
self.eco_signal_seen = eco_mode == 1
|
||||
else:
|
||||
# Always re-check the signals to account for mode changes
|
||||
sport_mode = cp.vl["GEAR_PACKET"][sport_signal] if self.sport_signal_seen else 0
|
||||
eco_mode = cp.vl["GEAR_PACKET"]['ECON_ON'] if self.eco_signal_seen else 0
|
||||
# Use previously detected signals if they were seen
|
||||
sport_mode = 1 if self.sport_signal_seen else 0
|
||||
eco_mode = 1 if self.eco_signal_seen else 0
|
||||
|
||||
# Set acceleration profile based on detected modes, with sport mode having higher priority
|
||||
if sport_mode == 1:
|
||||
self.accel_profile = AccelPersonality.sport
|
||||
elif eco_mode == 1:
|
||||
# Set acceleration profile based on detected modes, prioritize eco over sport if both are detected
|
||||
if eco_mode == 1:
|
||||
self.accel_profile = AccelPersonality.eco
|
||||
elif sport_mode == 1:
|
||||
self.accel_profile = AccelPersonality.sport
|
||||
else:
|
||||
self.accel_profile = AccelPersonality.normal
|
||||
|
||||
@@ -226,8 +242,9 @@ class CarState(CarStateBase):
|
||||
if not self.accel_profile_init or self.accel_profile != self.prev_accel_profile:
|
||||
Params().put_nonblocking('AccelPersonality', str(self.accel_profile))
|
||||
self.accel_profile_init = True
|
||||
# Update the previous profile to prevent unnecessary re-syncing
|
||||
self.prev_accel_profile = self.accel_profile
|
||||
|
||||
# Update the previous profile
|
||||
self.prev_accel_profile = self.accel_profile
|
||||
|
||||
if self.CP.carFingerprint != CAR.TOYOTA_MIRAI:
|
||||
ret.engineRpm = cp.vl["ENGINE_RPM"]["RPM"]
|
||||
@@ -313,6 +330,9 @@ class CarState(CarStateBase):
|
||||
if self.CP.spFlags & ToyotaFlagsSP.SP_ENHANCED_BSM and self.frame > 199:
|
||||
ret.leftBlindspot, ret.rightBlindspot = self.sp_get_enhanced_bsm(cp)
|
||||
|
||||
if self.CP.spFlags & ToyotaFlagsSP.SP_AUTO_BRAKE_HOLD:
|
||||
self.pre_collision_2 = copy.copy(cp_cam.vl["PRE_COLLISION_2"])
|
||||
|
||||
self._update_traffic_signals(cp_cam)
|
||||
ret.cruiseState.speedLimit = self._calculate_speed_limit()
|
||||
self.frame += 1
|
||||
@@ -443,6 +463,7 @@ class CarState(CarStateBase):
|
||||
("BODY_CONTROL_STATE", 3),
|
||||
("BODY_CONTROL_STATE_2", 2),
|
||||
("ESP_CONTROL", 3),
|
||||
("VSC1S07", 20),
|
||||
("EPS_STATUS", 25),
|
||||
("BRAKE_MODULE", 40),
|
||||
("WHEEL_SPEEDS", 80),
|
||||
@@ -452,6 +473,9 @@ class CarState(CarStateBase):
|
||||
("STEER_TORQUE_SENSOR", 50),
|
||||
]
|
||||
|
||||
if CP.flags & ToyotaFlags.RAISED_ACCEL_LIMIT:
|
||||
messages.append(("CLUTCH", 15))
|
||||
|
||||
if CP.carFingerprint != CAR.TOYOTA_MIRAI:
|
||||
messages.append(("ENGINE_RPM", 42))
|
||||
|
||||
@@ -516,4 +540,7 @@ class CarState(CarStateBase):
|
||||
("PCS_HUD", 1),
|
||||
]
|
||||
|
||||
if CP.spFlags & ToyotaFlagsSP.SP_AUTO_BRAKE_HOLD:
|
||||
messages.append(("PRE_COLLISION_2", 33))
|
||||
|
||||
return CANParser(DBC[CP.carFingerprint]["pt"], messages, 2)
|
||||
|
||||
@@ -17,7 +17,7 @@ GearShifter = car.CarState.GearShifter
|
||||
class CarInterface(CarInterfaceBase):
|
||||
@staticmethod
|
||||
def get_pid_accel_limits(CP, current_speed, cruise_speed):
|
||||
return CarControllerParams.ACCEL_MIN, CarControllerParams.ACCEL_MAX
|
||||
return CarControllerParams(CP).ACCEL_MIN, CarControllerParams(CP).ACCEL_MAX
|
||||
|
||||
@staticmethod
|
||||
def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, docs):
|
||||
@@ -63,6 +63,9 @@ class CarInterface(CarInterfaceBase):
|
||||
ret.enableDsu = len(found_ecus) > 0 and Ecu.dsu not in found_ecus and candidate not in (NO_DSU_CAR | UNSUPPORTED_DSU_CAR) \
|
||||
and not (ret.flags & ToyotaFlags.SMART_DSU)
|
||||
|
||||
if True: # candidate in (CAR.LEXUS_ES_TSS2, CAR.TOYOTA_COROLLA_TSS2, CAR.TOYOTA_PRIUS_TSS2, CAR.LEXUS_RX_TSS2) and Ecu.hybrid not in found_ecus:
|
||||
ret.flags |= ToyotaFlags.RAISED_ACCEL_LIMIT.value
|
||||
|
||||
if candidate == CAR.TOYOTA_PRIUS:
|
||||
zss = ret.spFlags & ToyotaFlagsSP.SP_ZSS
|
||||
stop_and_go = True
|
||||
@@ -160,30 +163,39 @@ class CarInterface(CarInterfaceBase):
|
||||
|
||||
sp_tss2_long_tune = Params().get_bool("ToyotaTSS2Long")
|
||||
|
||||
# Last updated: September 29, 2024
|
||||
def custom_tss2_longitudinal_tuning(): # hand tuned
|
||||
ret.vEgoStopping = 0.25
|
||||
ret.vEgoStarting = 0.01
|
||||
ret.stoppingDecelRate = 0.006
|
||||
# hand tuned (August 12, 2024)
|
||||
def custom_tss2_longitudinal_tuning():
|
||||
ret.vEgoStopping = 0.15
|
||||
ret.vEgoStarting = 0.05
|
||||
ret.stopAccel = -2.0
|
||||
ret.stoppingDecelRate = 0.005 # reach stopping target smoothly
|
||||
|
||||
def default_tss2_longitudinal_tuning(): # stock comma
|
||||
def default_tss2_longitudinal_tuning():
|
||||
ret.vEgoStopping = 0.25
|
||||
ret.vEgoStarting = 0.10
|
||||
ret.stoppingDecelRate = 0.007 # reach stopping target smoothly
|
||||
ret.vEgoStarting = 0.25
|
||||
ret.stoppingDecelRate = 0.3 # reach stopping target smoothly
|
||||
|
||||
def default_longitudinal_tuning(): # stock comma
|
||||
def default_longitudinal_tuning():
|
||||
tune.kiBP = [0., 5., 35.]
|
||||
tune.kiV = [3.6, 2.4, 1.5]
|
||||
|
||||
tune = ret.longitudinalTuning
|
||||
if candidate in TSS2_CAR or ret.enableGasInterceptorDEPRECATED:
|
||||
if sp_tss2_long_tune:
|
||||
tune.kiBP = [0., 5., 12., 20., 27., 36., 40.]
|
||||
tune.kiV = [0.34, 0.234, 0.20, 0.17, 0.105, 0.09, 0.08]
|
||||
#tune.kiBP = [0., 0.03, 5., 10., 15., 30.]
|
||||
#tune.kiV = [0.1, 0.12, 0.08, 0.06, 0.5, 1.0]
|
||||
#tune.kpBP = [0., 5., 20.]
|
||||
#tune.kpV = [2.3, 1.0, 0.7]
|
||||
tune.kiBP = [0., 3., 8., 20., 27., 40.]
|
||||
tune.kiV = [.35, .24, .20, .17, .10, .06]
|
||||
custom_tss2_longitudinal_tuning()
|
||||
else:
|
||||
tune.kpV = [0.0]
|
||||
tune.kiV = [0.5]
|
||||
# Since we compensate for imprecise acceleration in carcontroller, we can be less aggressive with tuning
|
||||
# This also prevents unnecessary request windup due to internal car jerk limits
|
||||
if ret.flags & ToyotaFlags.RAISED_ACCEL_LIMIT:
|
||||
tune.kiV = [0.25]
|
||||
if candidate in TSS2_CAR:
|
||||
default_tss2_longitudinal_tuning()
|
||||
else:
|
||||
@@ -195,6 +207,9 @@ class CarInterface(CarInterfaceBase):
|
||||
if candidate == CAR.TOYOTA_PRIUS_TSS2:
|
||||
ret.spFlags |= ToyotaFlagsSP.SP_NEED_DEBUG_BSM.value
|
||||
|
||||
if Params().get_bool("ToyotaAutoHold") and candidate in (TSS2_CAR - RADAR_ACC_CAR):
|
||||
ret.spFlags |= ToyotaFlagsSP.SP_AUTO_BRAKE_HOLD.value
|
||||
|
||||
return ret
|
||||
|
||||
@staticmethod
|
||||
@@ -268,6 +283,11 @@ class CarInterface(CarInterfaceBase):
|
||||
# while in standstill, send a user alert
|
||||
events.add(EventName.manualRestart)
|
||||
|
||||
# auto brake hold
|
||||
if self.CP.spFlags & ToyotaFlagsSP.SP_AUTO_BRAKE_HOLD:
|
||||
if self.CC.brake_hold_active and not ret.brakeHoldActive:
|
||||
events.add(EventName.spAutoBrakeHold)
|
||||
|
||||
ret.events = events.to_msg()
|
||||
|
||||
return ret
|
||||
|
||||
@@ -34,14 +34,14 @@ def create_lta_steer_command(packer, steer_control_type, steer_angle, steer_req,
|
||||
return packer.make_can_msg("STEERING_LTA", 0, values)
|
||||
|
||||
|
||||
def create_accel_command(packer, accel, pcm_cancel, standstill_req, lead, acc_type, fcw_alert, distance, reverse_acc):
|
||||
def create_accel_command(packer, accel, pcm_cancel, permit_braking, standstill_req, lead, acc_type, fcw_alert, distance, reverse_acc):
|
||||
# TODO: find the exact canceling bit that does not create a chime
|
||||
values = {
|
||||
"ACCEL_CMD": 0 if pcm_cancel else accel,
|
||||
"ACC_TYPE": acc_type,
|
||||
"DISTANCE": distance,
|
||||
"MINI_CAR": lead,
|
||||
"PERMIT_BRAKING": 1,
|
||||
"PERMIT_BRAKING": permit_braking,
|
||||
"RELEASE_STANDSTILL": not standstill_req,
|
||||
"CANCEL_REQ": pcm_cancel,
|
||||
"ALLOW_LONG_PRESS": reverse_acc,
|
||||
@@ -130,3 +130,37 @@ def create_set_bsm_debug_mode(lr_blindspot, enabled):
|
||||
|
||||
def create_bsm_polling_status(lr_blindspot):
|
||||
return make_can_msg(0x750, lr_blindspot + b"\x02\x21\x69\x00\x00\x00\x00", 0)
|
||||
|
||||
|
||||
# auto brake hold
|
||||
def create_brake_hold_command(packer, frame, pre_collision_2, brake_hold_active):
|
||||
# forward PRE_COLLISION_2 when auto brake hold is not active
|
||||
values = {s: pre_collision_2[s] for s in [
|
||||
"DSS1GDRV",
|
||||
"DS1STAT2",
|
||||
"DS1STBK2",
|
||||
"PCSWAR",
|
||||
"PCSALM",
|
||||
"PCSOPR",
|
||||
"PCSABK",
|
||||
"PBATRGR",
|
||||
"PPTRGR",
|
||||
"IBTRGR",
|
||||
"CLEXTRGR",
|
||||
"IRLT_REQ",
|
||||
"BRKHLD",
|
||||
"AVSTRGR",
|
||||
"VGRSTRGR",
|
||||
"PREFILL",
|
||||
"PBRTRGR",
|
||||
"PCSDIS",
|
||||
"PBPREPMP",
|
||||
]}
|
||||
|
||||
if brake_hold_active:
|
||||
values = {
|
||||
"DSS1GDRV": 0x3FF,
|
||||
"PBRTRGR": frame % 730 < 727, # cut actuation for 3 frames
|
||||
}
|
||||
|
||||
return packer.make_can_msg("PRE_COLLISION_2", 0, values)
|
||||
|
||||
@@ -16,9 +16,6 @@ PEDAL_TRANSITION = 10. * CV.MPH_TO_MS
|
||||
|
||||
|
||||
class CarControllerParams:
|
||||
ACCEL_MAX = 1.5 # m/s2, lower than allowed 2.0 m/s2 for tuning reasons
|
||||
ACCEL_MIN = -3.5 # m/s2
|
||||
|
||||
STEER_STEP = 1
|
||||
STEER_MAX = 1500
|
||||
STEER_ERROR_MAX = 350 # max delta between torque cmd and torque motor
|
||||
@@ -33,6 +30,12 @@ class CarControllerParams:
|
||||
ANGLE_RATE_LIMIT_DOWN = AngleRateLimit(speed_bp=[5, 25], angle_v=[0.36, 0.26])
|
||||
|
||||
def __init__(self, CP):
|
||||
if CP.flags & ToyotaFlags.RAISED_ACCEL_LIMIT:
|
||||
self.ACCEL_MAX = 2.0
|
||||
else:
|
||||
self.ACCEL_MAX = 1.5 # m/s2, lower than allowed 2.0 m/s^2 for tuning reasons
|
||||
self.ACCEL_MIN = -3.5 # m/s2
|
||||
|
||||
if CP.lateralTuning.which == 'torque':
|
||||
self.STEER_DELTA_UP = 15 # 1.0s time to peak torque
|
||||
self.STEER_DELTA_DOWN = 25 # always lower than 45 otherwise the Rav4 faults (Prius seems ok with 50)
|
||||
@@ -58,12 +61,15 @@ class ToyotaFlags(IntFlag):
|
||||
NO_STOP_TIMER = 256
|
||||
# these cars are speculated to allow stop and go when the DSU is unplugged or disabled with sDSU
|
||||
SNG_WITHOUT_DSU = 512
|
||||
# these cars can utilize 2.0 m/s^2
|
||||
RAISED_ACCEL_LIMIT = 1024
|
||||
|
||||
|
||||
class ToyotaFlagsSP(IntFlag):
|
||||
SP_ZSS = 1
|
||||
SP_ENHANCED_BSM = 2
|
||||
SP_NEED_DEBUG_BSM = 4
|
||||
SP_AUTO_BRAKE_HOLD = 8
|
||||
|
||||
|
||||
class Footnote(Enum):
|
||||
|
||||
@@ -744,6 +744,14 @@ EVENTS: dict[int, dict[str, Alert | AlertCallbackType]] = {
|
||||
ET.NO_ENTRY: NoEntryAlert("Brake Hold Active"),
|
||||
},
|
||||
|
||||
EventName.spAutoBrakeHold: {
|
||||
ET.PERMANENT: Alert(
|
||||
"sunnypilot Brake Hold Active",
|
||||
"",
|
||||
AlertStatus.normal, AlertSize.small,
|
||||
Priority.LOWEST, VisualAlert.none, AudibleAlert.prompt, 0.),
|
||||
},
|
||||
|
||||
EventName.parkBrake: {
|
||||
ET.USER_DISABLE: EngagementAlert(AudibleAlert.disengage),
|
||||
ET.NO_ENTRY: NoEntryAlert("Parking Brake Engaged"),
|
||||
|
||||
@@ -63,9 +63,9 @@ def get_jerk_factor(personality=custom.LongitudinalPersonalitySP.standard):
|
||||
elif personality==custom.LongitudinalPersonalitySP.standard:
|
||||
return 1.0
|
||||
elif personality==custom.LongitudinalPersonalitySP.moderate:
|
||||
return 0.9
|
||||
return 0.5
|
||||
elif personality==custom.LongitudinalPersonalitySP.aggressive:
|
||||
return 0.8
|
||||
return 0.2
|
||||
elif personality==custom.LongitudinalPersonalitySP.overtake:
|
||||
return 0.1
|
||||
else:
|
||||
@@ -74,37 +74,36 @@ def get_jerk_factor(personality=custom.LongitudinalPersonalitySP.standard):
|
||||
|
||||
def get_T_FOLLOW(personality=custom.LongitudinalPersonalitySP.standard):
|
||||
if personality==custom.LongitudinalPersonalitySP.relaxed:
|
||||
return 1.75
|
||||
return 1.80
|
||||
elif personality==custom.LongitudinalPersonalitySP.standard:
|
||||
return 1.45
|
||||
return 1.55
|
||||
elif personality==custom.LongitudinalPersonalitySP.moderate:
|
||||
return 1.25
|
||||
return 1.35
|
||||
elif personality==custom.LongitudinalPersonalitySP.aggressive:
|
||||
return 1.0
|
||||
return 1.20
|
||||
elif personality==custom.LongitudinalPersonalitySP.overtake:
|
||||
return 0.25
|
||||
else:
|
||||
raise NotImplementedError("Longitudinal personality not supported")
|
||||
|
||||
# Last updated: September 29, 2024
|
||||
|
||||
def get_dynamic_personality(v_ego, personality=custom.LongitudinalPersonalitySP.standard):
|
||||
if personality==custom.LongitudinalPersonalitySP.relaxed:
|
||||
x_vel = [0, 14., 27.7]
|
||||
y_dist = [1.75, 1.75, 2.00]
|
||||
x_vel = [0, 5., 5.01, 8.33, 8.34, 27.69, 27.7]
|
||||
y_dist = [0.0, 1.2, 1.7, 1.7, 1.75, 1.75, 1.83]
|
||||
elif personality==custom.LongitudinalPersonalitySP.standard:
|
||||
x_vel = [0, 14., 27.7]
|
||||
y_dist = [1.75, 1.75, 1.70]
|
||||
x_vel = [0, 5.0, 5.01, 8.33, 8.34, 27.69, 27.7]
|
||||
y_dist = [0.0, 1.6, 1.6, 1.6, 1.75, 1.75, 1.80]
|
||||
elif personality==custom.LongitudinalPersonalitySP.moderate:
|
||||
x_vel = [0, 14., 27.7]
|
||||
y_dist = [1.45, 1.45, 1.48]
|
||||
x_vel = [0, 5., 5.01, 8.33, 8.34, 27.69, 27.7]
|
||||
y_dist = [0.0, 1.4, 1.4, 1.4, 1.45, 1.45, 1.50]
|
||||
elif personality==custom.LongitudinalPersonalitySP.aggressive:
|
||||
x_vel = [0, 14., 27.7]
|
||||
y_dist = [1.25, 1.25, 1.28]
|
||||
x_vel = [0, 5., 5.01, 17.0, 17.01, 27.69, 27.7]
|
||||
y_dist = [0.0, 1.2, 1.2, 1.2, 1.25, 1.25, 1.3]
|
||||
else:
|
||||
raise NotImplementedError("Dynamic personality not supported")
|
||||
return np.interp(v_ego, x_vel, y_dist)
|
||||
|
||||
|
||||
def get_stopped_equivalence_factor(v_lead):
|
||||
return (v_lead**2) / (2 * COMFORT_BRAKE)
|
||||
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
# THE SOFTWARE.
|
||||
|
||||
# Last updated: September 29, 2024
|
||||
# Last updated: August 12, 2024
|
||||
|
||||
from cereal import custom
|
||||
from openpilot.common.numpy_fast import interp
|
||||
@@ -29,15 +29,22 @@ from openpilot.common.numpy_fast import interp
|
||||
AccelPersonality = custom.AccelerationPersonality
|
||||
|
||||
# accel personality by @arne182 modified by cgw and kumar
|
||||
_DP_CRUISE_MIN_V = [-1.0, -1.0, -0.88]
|
||||
_DP_CRUISE_MIN_V_ECO = [-1.0, -1.0, -0.76]
|
||||
_DP_CRUISE_MIN_V_SPORT = [-1.0, -1.0, -1.0]
|
||||
_DP_CRUISE_MIN_BP = [0., 11.1, 20.]
|
||||
_DP_CRUISE_MIN_V = [-0.12, -0.12, -0.08, -0.08, -0.14, -0.14, -0.16, -0.16, -0.24, -0.24, -1.0, -1.0, -1.15]
|
||||
_DP_CRUISE_MIN_V_ECO = [-0.11, -0.11, -0.07, -0.07, -0.13, -0.13, -0.15, -0.15, -0.23, -0.23, -1.0, -1.0, -1.10]
|
||||
_DP_CRUISE_MIN_V_SPORT = [-0.13, -0.13, -0.09, -0.09, -0.15, -0.15, -0.17, -0.17, -0.25, -0.25, -1.0, -1.0, -1.20]
|
||||
_DP_CRUISE_MIN_BP = [0., 0.08, 0.09, 2.77, 2.78, 8.33, 8.34, 13.88, 13.89, 19.44, 25.01, 30.55, 30.56]
|
||||
#_DP_CRUISE_MIN_BP in kph[0., 0.3, 0.3, 10, 10, 30, 30, 50, 50, 70, 90, 110, >110]
|
||||
|
||||
#_DP_CRUISE_MIN_V = [-1.0, -0.88]
|
||||
#_DP_CRUISE_MIN_V_ECO = [-1.0, -0.76]
|
||||
#_DP_CRUISE_MIN_V_SPORT = [-1.0, -1.0]
|
||||
#_DP_CRUISE_MIN_BP = [0., 40.]
|
||||
|
||||
_DP_CRUISE_MAX_V = [2.0, 2.0, 1.75, 0.96, .65, .53, .38, .17]
|
||||
_DP_CRUISE_MAX_V_ECO = [2.0, 1.98, 1.67, 0.92, .58, .47, .32, .09]
|
||||
_DP_CRUISE_MAX_V_SPORT = [2.0, 2.0, 1.95, 1.15, .84, .70, .50, .30]
|
||||
_DP_CRUISE_MAX_BP = [0., 6.0, 8., 11., 20., 25., 30., 40.]
|
||||
|
||||
_DP_CRUISE_MAX_V = [2.0, 2.0, 2.0, 1.75, 1.03, .72, .53, .42, .13]
|
||||
_DP_CRUISE_MAX_V_ECO = [2.0, 2.0, 2.0, 1.50, 0.92, .54, .43, .32, .088]
|
||||
_DP_CRUISE_MAX_V_SPORT = [2.0, 2.0, 2.0, 2.00, 1.25, .96, .78, .60, .4]
|
||||
_DP_CRUISE_MAX_BP = [0., 1., 6., 8., 11., 20., 25., 30., 55.]
|
||||
|
||||
|
||||
class AccelController:
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
# THE SOFTWARE.
|
||||
#
|
||||
# Version = 2024-9-28
|
||||
# Version = 2024-7-11
|
||||
from common.numpy_fast import interp
|
||||
import numpy as np
|
||||
|
||||
@@ -376,4 +376,4 @@ class DynamicExperimentalController:
|
||||
self._set_mode_timeout = SET_MODE_TIMEOUT
|
||||
|
||||
if self._set_mode_timeout > 0:
|
||||
self._set_mode_timeout -= 1
|
||||
self._set_mode_timeout -= 1
|
||||
|
||||
@@ -159,6 +159,18 @@ SPVehiclesTogglesPanel::SPVehiclesTogglesPanel(VehiclePanel *parent) : ListWidge
|
||||
toyotaTss2LongTune->setConfirmation(true, false);
|
||||
addItem(toyotaTss2LongTune);
|
||||
|
||||
auto toyotaAbh = new ParamControlSP(
|
||||
"ToyotaAutoHold",
|
||||
tr("Enable Automatic Brake Hold (AHB)"),
|
||||
QString("<b>%1</b><br><br>%2<br><br><b>%3</b>")
|
||||
.arg(tr("WARNING: Only for Toyota/Lexus vehicles with TSS2/LSS2. USE AT YOUR OWN RISK."))
|
||||
.arg(tr("When you stop the vehicle completely by depressing the brake pedal, sunnypilot will activate Auto Brake Hold."))
|
||||
.arg(tr("Changing this setting takes effect when the car is powered off.")),
|
||||
"../assets/offroad/icon_blank.png"
|
||||
);
|
||||
toyotaAbh->setConfirmation(true, false);
|
||||
addItem(toyotaAbh);
|
||||
|
||||
toyotaEnhancedBsm = new ParamControlSP(
|
||||
"ToyotaEnhancedBsm",
|
||||
tr("Enable Enhanced Blind Spot Monitor"),
|
||||
@@ -215,6 +227,7 @@ SPVehiclesTogglesPanel::SPVehiclesTogglesPanel(VehiclePanel *parent) : ListWidge
|
||||
hkgCustomLongTuning->setEnabled(offroad);
|
||||
hyundaiCruiseMainDefault->setEnabled(offroad);
|
||||
toyotaTss2LongTune->setEnabled(offroad);
|
||||
toyotaAbh->setEnabled(offroad);
|
||||
toyotaEnhancedBsm->setEnabled(offroad);
|
||||
toyotaSngHack->setEnabled(offroad);
|
||||
volkswagenCCOnly->setEnabled(offroad);
|
||||
|
||||
@@ -216,6 +216,7 @@ void AnnotatedCameraWidgetSP::updateState(const UIStateSP &s) {
|
||||
latAccelFactorFiltered = ltp.getLatAccelFactorFiltered();
|
||||
frictionCoefficientFiltered = ltp.getFrictionCoefficientFiltered();
|
||||
liveValid = ltp.getLiveValid();
|
||||
ecoMode = vEgo > 0 && car_state.getEngineRpm() == 0;
|
||||
// ############################## DEV UI END ##############################
|
||||
|
||||
btnPerc = s.scene.sleep_btn_opacity * 0.05;
|
||||
@@ -523,10 +524,32 @@ void AnnotatedCameraWidgetSP::drawHud(QPainter &p) {
|
||||
|
||||
// current speed
|
||||
if (!hideVEgoUi) {
|
||||
// Set up the font for the speed text
|
||||
p.setFont(InterFont(176, QFont::Bold));
|
||||
drawColoredText(p, rect().center().x(), 210, speedStr, brakeLights ? QColor(0xff, 0, 0, 255) : QColor(0xff, 0xff, 0xff, 255));
|
||||
|
||||
// Define text coordinates
|
||||
int centerX = rect().center().x();
|
||||
int centerY = 210;
|
||||
|
||||
// Draw a red border if brakeLights is active
|
||||
if (brakeLights) {
|
||||
for (int offsetX = -6; offsetX <= 6; offsetX++) {
|
||||
for (int offsetY = -6; offsetY <= 6; offsetY++) {
|
||||
// Avoid drawing at the original text position
|
||||
if (offsetX != 0 || offsetY != 0) {
|
||||
drawColoredText(p, centerX + offsetX, centerY + offsetY, speedStr, QColor(255, 0, 0, 255)); // Red border
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Draw the main speed text: green if ecoMode is on, otherwise white
|
||||
QColor speedTextColor = ecoMode ? QColor(0, 245, 0) : QColor(255, 255, 255, 255);
|
||||
drawColoredText(p, centerX, centerY, speedStr, speedTextColor);
|
||||
|
||||
// Draw the speed unit below the main text
|
||||
p.setFont(InterFont(66));
|
||||
drawText(p, rect().center().x(), 290, speedUnit, 200);
|
||||
drawText(p, centerX, 290, speedUnit, 200);
|
||||
}
|
||||
|
||||
if (!reversing) {
|
||||
@@ -1165,7 +1188,7 @@ void AnnotatedCameraWidgetSP::drawLaneLines(QPainter &painter, const UIStateSP *
|
||||
}
|
||||
|
||||
// TODO: Fix empty spaces when curiving back on itself
|
||||
painter.setBrush(QColor::fromRgbF(1.0, 0.0, 0.0, 0.2));
|
||||
painter.setBrush(QColor::fromRgbF(1.0, 0.0, 0.0, 0.4));
|
||||
if (left_blindspot) painter.drawPolygon(scene.lane_barrier_vertices[0]);
|
||||
if (right_blindspot) painter.drawPolygon(scene.lane_barrier_vertices[1]);
|
||||
|
||||
|
||||
@@ -176,6 +176,7 @@ private:
|
||||
float latAccelFactorFiltered;
|
||||
float frictionCoefficientFiltered;
|
||||
bool liveValid;
|
||||
bool ecoMode;
|
||||
// ############################## DEV UI END ##############################
|
||||
|
||||
float btnPerc;
|
||||
|
||||
@@ -203,6 +203,14 @@
|
||||
<source>mph</source>
|
||||
<translation type="unfinished">ميل/س</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>blended</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>acc</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>MAX</source>
|
||||
<translation type="unfinished">MAX</translation>
|
||||
@@ -1466,11 +1474,15 @@ This may take up to a minute.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>HKG CAN: Smoother Stopping Performance (Beta)</source>
|
||||
<source>HKG: Custom Tuning for New Longitudinal API</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Smoother stopping behind a stopped car or desired stopping event. This is only applicable to HKG CAN platforms using openpilot longitudinal control.</source>
|
||||
<source>HKG CAN: Enable Cruise Main By Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enabling this toggle sets CRUISE MAIN to ON by default when the car starts, without engaging MADS. The user still needs to manually engage MADS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@@ -1517,6 +1529,22 @@ This may take up to a minute.</source>
|
||||
<source>Smoother longitudinal performance for Toyota/Lexus TSS2/LSS2 cars. Big thanks to dragonpilot-community for this implementation.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Automatic Brake Hold (AHB)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>WARNING: Only for Toyota/Lexus vehicles with TSS2/LSS2. USE AT YOUR OWN RISK.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>When you stop the vehicle completely by depressing the brake pedal, sunnypilot will activate Auto Brake Hold.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Changing this setting takes effect when the car is powered off.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Enhanced Blind Spot Monitor</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -1583,14 +1611,6 @@ Reboot Required.</source>
|
||||
<source>Tested on RAV4 TSS1, Lexus LSS1, Toyota TSS1/1.5, and Prius TSS2.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>HKG CAN: Enable Cruise Main By Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enabling this toggle sets CRUISE MAIN to ON by default when the car starts, without engaging MADS. The user still needs to manually engage MADS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>SettingsWindow</name>
|
||||
@@ -2517,6 +2537,14 @@ Reboot Required.</source>
|
||||
<source>Neural Network Lateral Control (NNLC)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>NNLC: Remove Lateral Jerk Response (Alpha)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>When NNLC is active, enable this to disables the use of lateral jerk in steering torque calculations, focusing solely on lateral acceleration for a simplified control response.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enforce Torque Lateral Control</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -2525,6 +2553,14 @@ Reboot Required.</source>
|
||||
<source>Enable this to enforce sunnypilot to steer with Torque lateral control.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Lateral Jerk with Torque Lateral Control (Alpha)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Utilizes limited lateral jerk control for improved steering response, leveraging stock torque lateral controller capabilities. Designed to mimic NNLC behavior without training models or data collection.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Self-Tune</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -2910,6 +2946,10 @@ Reboot Required.</source>
|
||||
This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Use Planner Speed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Experimental Mode</source>
|
||||
<translation type="unfinished">الوضع التجريبي</translation>
|
||||
@@ -3277,6 +3317,14 @@ This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<source>Speed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Time</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>All</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Display Metrics Below Chevron</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -3305,14 +3353,6 @@ This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<source>Display Temperature on Sidebar</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Time</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>All</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>WiFiPromptWidget</name>
|
||||
|
||||
@@ -203,6 +203,14 @@
|
||||
<source>mph</source>
|
||||
<translation type="unfinished">mph</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>blended</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>acc</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>MAX</source>
|
||||
<translation type="unfinished">MAX</translation>
|
||||
@@ -1448,11 +1456,15 @@ This may take up to a minute.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>HKG CAN: Smoother Stopping Performance (Beta)</source>
|
||||
<source>HKG: Custom Tuning for New Longitudinal API</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Smoother stopping behind a stopped car or desired stopping event. This is only applicable to HKG CAN platforms using openpilot longitudinal control.</source>
|
||||
<source>HKG CAN: Enable Cruise Main By Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enabling this toggle sets CRUISE MAIN to ON by default when the car starts, without engaging MADS. The user still needs to manually engage MADS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@@ -1499,6 +1511,22 @@ This may take up to a minute.</source>
|
||||
<source>Smoother longitudinal performance for Toyota/Lexus TSS2/LSS2 cars. Big thanks to dragonpilot-community for this implementation.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Automatic Brake Hold (AHB)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>WARNING: Only for Toyota/Lexus vehicles with TSS2/LSS2. USE AT YOUR OWN RISK.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>When you stop the vehicle completely by depressing the brake pedal, sunnypilot will activate Auto Brake Hold.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Changing this setting takes effect when the car is powered off.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Enhanced Blind Spot Monitor</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -1565,14 +1593,6 @@ Reboot Required.</source>
|
||||
<source>Tested on RAV4 TSS1, Lexus LSS1, Toyota TSS1/1.5, and Prius TSS2.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>HKG CAN: Enable Cruise Main By Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enabling this toggle sets CRUISE MAIN to ON by default when the car starts, without engaging MADS. The user still needs to manually engage MADS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>SettingsWindow</name>
|
||||
@@ -2501,6 +2521,14 @@ Reboot Required.</source>
|
||||
<source>Neural Network Lateral Control (NNLC)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>NNLC: Remove Lateral Jerk Response (Alpha)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>When NNLC is active, enable this to disables the use of lateral jerk in steering torque calculations, focusing solely on lateral acceleration for a simplified control response.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enforce Torque Lateral Control</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -2509,6 +2537,14 @@ Reboot Required.</source>
|
||||
<source>Enable this to enforce sunnypilot to steer with Torque lateral control.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Lateral Jerk with Torque Lateral Control (Alpha)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Utilizes limited lateral jerk control for improved steering response, leveraging stock torque lateral controller capabilities. Designed to mimic NNLC behavior without training models or data collection.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Self-Tune</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -2896,6 +2932,10 @@ Reboot Required.</source>
|
||||
This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Use Planner Speed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Experimental Mode</source>
|
||||
<translation type="unfinished">Experimenteller Modus</translation>
|
||||
@@ -3263,6 +3303,14 @@ This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<source>Speed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Time</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>All</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Display Metrics Below Chevron</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -3291,14 +3339,6 @@ This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<source>Display Temperature on Sidebar</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Time</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>All</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>WiFiPromptWidget</name>
|
||||
|
||||
@@ -207,6 +207,14 @@
|
||||
<source>LIMIT</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>blended</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>acc</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>AutoLaneChangeTimer</name>
|
||||
@@ -1445,14 +1453,6 @@ Esto puede tardar un minuto.</translation>
|
||||
<source>Hyundai/Kia/Genesis</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>HKG CAN: Smoother Stopping Performance (Beta)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Smoother stopping behind a stopped car or desired stopping event. This is only applicable to HKG CAN platforms using openpilot longitudinal control.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Subaru</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -1571,6 +1571,26 @@ Reboot Required.</source>
|
||||
<source>Enabling this toggle sets CRUISE MAIN to ON by default when the car starts, without engaging MADS. The user still needs to manually engage MADS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>HKG: Custom Tuning for New Longitudinal API</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Automatic Brake Hold (AHB)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>WARNING: Only for Toyota/Lexus vehicles with TSS2/LSS2. USE AT YOUR OWN RISK.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>When you stop the vehicle completely by depressing the brake pedal, sunnypilot will activate Auto Brake Hold.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Changing this setting takes effect when the car is powered off.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>SettingsWindow</name>
|
||||
@@ -2677,6 +2697,22 @@ Reboot Required.</source>
|
||||
<source>Default is Laneless. In Auto mode, sunnnypilot dynamically chooses between Laneline or Laneless model based on lane recognition confidence level on road and certain conditions.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>NNLC: Remove Lateral Jerk Response (Alpha)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>When NNLC is active, enable this to disables the use of lateral jerk in steering torque calculations, focusing solely on lateral acceleration for a simplified control response.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Lateral Jerk with Torque Lateral Control (Alpha)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Utilizes limited lateral jerk control for improved steering response, leveraging stock torque lateral controller capabilities. Designed to mimic NNLC behavior without training models or data collection.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>TermsPage</name>
|
||||
@@ -3042,6 +3078,10 @@ This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<source>Enable the sunnypilot longitudinal control (alpha) toggle to allow Experimental mode.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Use Planner Speed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>TorqueFriction</name>
|
||||
|
||||
@@ -203,6 +203,14 @@
|
||||
<source>mph</source>
|
||||
<translation type="unfinished">mi/h</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>blended</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>acc</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>MAX</source>
|
||||
<translation type="unfinished">MAX</translation>
|
||||
@@ -1450,11 +1458,15 @@ Cela peut prendre jusqu'à une minute.</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>HKG CAN: Smoother Stopping Performance (Beta)</source>
|
||||
<source>HKG: Custom Tuning for New Longitudinal API</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Smoother stopping behind a stopped car or desired stopping event. This is only applicable to HKG CAN platforms using openpilot longitudinal control.</source>
|
||||
<source>HKG CAN: Enable Cruise Main By Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enabling this toggle sets CRUISE MAIN to ON by default when the car starts, without engaging MADS. The user still needs to manually engage MADS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@@ -1501,6 +1513,22 @@ Cela peut prendre jusqu'à une minute.</translation>
|
||||
<source>Smoother longitudinal performance for Toyota/Lexus TSS2/LSS2 cars. Big thanks to dragonpilot-community for this implementation.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Automatic Brake Hold (AHB)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>WARNING: Only for Toyota/Lexus vehicles with TSS2/LSS2. USE AT YOUR OWN RISK.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>When you stop the vehicle completely by depressing the brake pedal, sunnypilot will activate Auto Brake Hold.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Changing this setting takes effect when the car is powered off.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Enhanced Blind Spot Monitor</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -1567,14 +1595,6 @@ Reboot Required.</source>
|
||||
<source>Tested on RAV4 TSS1, Lexus LSS1, Toyota TSS1/1.5, and Prius TSS2.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>HKG CAN: Enable Cruise Main By Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enabling this toggle sets CRUISE MAIN to ON by default when the car starts, without engaging MADS. The user still needs to manually engage MADS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>SettingsWindow</name>
|
||||
@@ -2501,6 +2521,14 @@ Reboot Required.</source>
|
||||
<source>Neural Network Lateral Control (NNLC)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>NNLC: Remove Lateral Jerk Response (Alpha)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>When NNLC is active, enable this to disables the use of lateral jerk in steering torque calculations, focusing solely on lateral acceleration for a simplified control response.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enforce Torque Lateral Control</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -2509,6 +2537,14 @@ Reboot Required.</source>
|
||||
<source>Enable this to enforce sunnypilot to steer with Torque lateral control.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Lateral Jerk with Torque Lateral Control (Alpha)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Utilizes limited lateral jerk control for improved steering response, leveraging stock torque lateral controller capabilities. Designed to mimic NNLC behavior without training models or data collection.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Self-Tune</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -2894,6 +2930,10 @@ Reboot Required.</source>
|
||||
This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Use Planner Speed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Experimental Mode</source>
|
||||
<translation type="unfinished">Mode expérimental</translation>
|
||||
@@ -3261,6 +3301,14 @@ This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<source>Speed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Time</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>All</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Display Metrics Below Chevron</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -3289,14 +3337,6 @@ This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<source>Display Temperature on Sidebar</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Time</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>All</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>WiFiPromptWidget</name>
|
||||
|
||||
@@ -203,6 +203,14 @@
|
||||
<source>mph</source>
|
||||
<translation type="unfinished">mph</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>blended</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>acc</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>MAX</source>
|
||||
<translation type="unfinished">最高速度</translation>
|
||||
@@ -1444,11 +1452,15 @@ This may take up to a minute.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>HKG CAN: Smoother Stopping Performance (Beta)</source>
|
||||
<source>HKG: Custom Tuning for New Longitudinal API</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Smoother stopping behind a stopped car or desired stopping event. This is only applicable to HKG CAN platforms using openpilot longitudinal control.</source>
|
||||
<source>HKG CAN: Enable Cruise Main By Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enabling this toggle sets CRUISE MAIN to ON by default when the car starts, without engaging MADS. The user still needs to manually engage MADS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@@ -1495,6 +1507,22 @@ This may take up to a minute.</source>
|
||||
<source>Smoother longitudinal performance for Toyota/Lexus TSS2/LSS2 cars. Big thanks to dragonpilot-community for this implementation.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Automatic Brake Hold (AHB)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>WARNING: Only for Toyota/Lexus vehicles with TSS2/LSS2. USE AT YOUR OWN RISK.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>When you stop the vehicle completely by depressing the brake pedal, sunnypilot will activate Auto Brake Hold.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Changing this setting takes effect when the car is powered off.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Enhanced Blind Spot Monitor</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -1561,14 +1589,6 @@ Reboot Required.</source>
|
||||
<source>Tested on RAV4 TSS1, Lexus LSS1, Toyota TSS1/1.5, and Prius TSS2.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>HKG CAN: Enable Cruise Main By Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enabling this toggle sets CRUISE MAIN to ON by default when the car starts, without engaging MADS. The user still needs to manually engage MADS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>SettingsWindow</name>
|
||||
@@ -2495,6 +2515,14 @@ Reboot Required.</source>
|
||||
<source>Neural Network Lateral Control (NNLC)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>NNLC: Remove Lateral Jerk Response (Alpha)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>When NNLC is active, enable this to disables the use of lateral jerk in steering torque calculations, focusing solely on lateral acceleration for a simplified control response.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enforce Torque Lateral Control</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -2503,6 +2531,14 @@ Reboot Required.</source>
|
||||
<source>Enable this to enforce sunnypilot to steer with Torque lateral control.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Lateral Jerk with Torque Lateral Control (Alpha)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Utilizes limited lateral jerk control for improved steering response, leveraging stock torque lateral controller capabilities. Designed to mimic NNLC behavior without training models or data collection.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Self-Tune</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -2888,6 +2924,10 @@ Reboot Required.</source>
|
||||
This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Use Planner Speed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Experimental Mode</source>
|
||||
<translation type="unfinished">実験モード</translation>
|
||||
@@ -3255,6 +3295,14 @@ This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<source>Speed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Time</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>All</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Display Metrics Below Chevron</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -3283,14 +3331,6 @@ This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<source>Display Temperature on Sidebar</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Time</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>All</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>WiFiPromptWidget</name>
|
||||
|
||||
@@ -203,6 +203,14 @@
|
||||
<source>mph</source>
|
||||
<translation type="unfinished">mph</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>blended</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>acc</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>MAX</source>
|
||||
<translation type="unfinished">MAX</translation>
|
||||
@@ -1446,11 +1454,15 @@ This may take up to a minute.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>HKG CAN: Smoother Stopping Performance (Beta)</source>
|
||||
<source>HKG: Custom Tuning for New Longitudinal API</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Smoother stopping behind a stopped car or desired stopping event. This is only applicable to HKG CAN platforms using openpilot longitudinal control.</source>
|
||||
<source>HKG CAN: Enable Cruise Main By Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enabling this toggle sets CRUISE MAIN to ON by default when the car starts, without engaging MADS. The user still needs to manually engage MADS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@@ -1497,6 +1509,22 @@ This may take up to a minute.</source>
|
||||
<source>Smoother longitudinal performance for Toyota/Lexus TSS2/LSS2 cars. Big thanks to dragonpilot-community for this implementation.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Automatic Brake Hold (AHB)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>WARNING: Only for Toyota/Lexus vehicles with TSS2/LSS2. USE AT YOUR OWN RISK.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>When you stop the vehicle completely by depressing the brake pedal, sunnypilot will activate Auto Brake Hold.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Changing this setting takes effect when the car is powered off.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Enhanced Blind Spot Monitor</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -1563,14 +1591,6 @@ Reboot Required.</source>
|
||||
<source>Tested on RAV4 TSS1, Lexus LSS1, Toyota TSS1/1.5, and Prius TSS2.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>HKG CAN: Enable Cruise Main By Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enabling this toggle sets CRUISE MAIN to ON by default when the car starts, without engaging MADS. The user still needs to manually engage MADS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>SettingsWindow</name>
|
||||
@@ -2497,6 +2517,14 @@ Reboot Required.</source>
|
||||
<source>Neural Network Lateral Control (NNLC)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>NNLC: Remove Lateral Jerk Response (Alpha)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>When NNLC is active, enable this to disables the use of lateral jerk in steering torque calculations, focusing solely on lateral acceleration for a simplified control response.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enforce Torque Lateral Control</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -2505,6 +2533,14 @@ Reboot Required.</source>
|
||||
<source>Enable this to enforce sunnypilot to steer with Torque lateral control.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Lateral Jerk with Torque Lateral Control (Alpha)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Utilizes limited lateral jerk control for improved steering response, leveraging stock torque lateral controller capabilities. Designed to mimic NNLC behavior without training models or data collection.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Self-Tune</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -2890,6 +2926,10 @@ Reboot Required.</source>
|
||||
This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Use Planner Speed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Experimental Mode</source>
|
||||
<translation type="unfinished">실험 모드</translation>
|
||||
@@ -3257,6 +3297,14 @@ This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<source>Speed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Time</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>All</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Display Metrics Below Chevron</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -3285,14 +3333,6 @@ This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<source>Display Temperature on Sidebar</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Time</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>All</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>WiFiPromptWidget</name>
|
||||
|
||||
@@ -203,6 +203,14 @@
|
||||
<source>mph</source>
|
||||
<translation type="unfinished">mph</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>blended</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>acc</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>MAX</source>
|
||||
<translation type="unfinished">LIMITE</translation>
|
||||
@@ -1450,11 +1458,15 @@ Isso pode levar até um minuto.</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>HKG CAN: Smoother Stopping Performance (Beta)</source>
|
||||
<source>HKG: Custom Tuning for New Longitudinal API</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Smoother stopping behind a stopped car or desired stopping event. This is only applicable to HKG CAN platforms using openpilot longitudinal control.</source>
|
||||
<source>HKG CAN: Enable Cruise Main By Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enabling this toggle sets CRUISE MAIN to ON by default when the car starts, without engaging MADS. The user still needs to manually engage MADS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@@ -1501,6 +1513,22 @@ Isso pode levar até um minuto.</translation>
|
||||
<source>Smoother longitudinal performance for Toyota/Lexus TSS2/LSS2 cars. Big thanks to dragonpilot-community for this implementation.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Automatic Brake Hold (AHB)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>WARNING: Only for Toyota/Lexus vehicles with TSS2/LSS2. USE AT YOUR OWN RISK.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>When you stop the vehicle completely by depressing the brake pedal, sunnypilot will activate Auto Brake Hold.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Changing this setting takes effect when the car is powered off.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Enhanced Blind Spot Monitor</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -1567,14 +1595,6 @@ Reboot Required.</source>
|
||||
<source>Tested on RAV4 TSS1, Lexus LSS1, Toyota TSS1/1.5, and Prius TSS2.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>HKG CAN: Enable Cruise Main By Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enabling this toggle sets CRUISE MAIN to ON by default when the car starts, without engaging MADS. The user still needs to manually engage MADS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>SettingsWindow</name>
|
||||
@@ -2501,6 +2521,14 @@ Reboot Required.</source>
|
||||
<source>Neural Network Lateral Control (NNLC)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>NNLC: Remove Lateral Jerk Response (Alpha)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>When NNLC is active, enable this to disables the use of lateral jerk in steering torque calculations, focusing solely on lateral acceleration for a simplified control response.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enforce Torque Lateral Control</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -2509,6 +2537,14 @@ Reboot Required.</source>
|
||||
<source>Enable this to enforce sunnypilot to steer with Torque lateral control.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Lateral Jerk with Torque Lateral Control (Alpha)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Utilizes limited lateral jerk control for improved steering response, leveraging stock torque lateral controller capabilities. Designed to mimic NNLC behavior without training models or data collection.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Self-Tune</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -2894,6 +2930,10 @@ Reboot Required.</source>
|
||||
This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Use Planner Speed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Experimental Mode</source>
|
||||
<translation type="unfinished">Modo Experimental</translation>
|
||||
@@ -3261,6 +3301,14 @@ This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<source>Speed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Time</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>All</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Display Metrics Below Chevron</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -3289,14 +3337,6 @@ This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<source>Display Temperature on Sidebar</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Time</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>All</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>WiFiPromptWidget</name>
|
||||
|
||||
@@ -203,6 +203,14 @@
|
||||
<source>mph</source>
|
||||
<translation type="unfinished">ไมล์/ชม.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>blended</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>acc</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>MAX</source>
|
||||
<translation type="unfinished">สูงสุด</translation>
|
||||
@@ -1446,11 +1454,15 @@ This may take up to a minute.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>HKG CAN: Smoother Stopping Performance (Beta)</source>
|
||||
<source>HKG: Custom Tuning for New Longitudinal API</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Smoother stopping behind a stopped car or desired stopping event. This is only applicable to HKG CAN platforms using openpilot longitudinal control.</source>
|
||||
<source>HKG CAN: Enable Cruise Main By Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enabling this toggle sets CRUISE MAIN to ON by default when the car starts, without engaging MADS. The user still needs to manually engage MADS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@@ -1497,6 +1509,22 @@ This may take up to a minute.</source>
|
||||
<source>Smoother longitudinal performance for Toyota/Lexus TSS2/LSS2 cars. Big thanks to dragonpilot-community for this implementation.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Automatic Brake Hold (AHB)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>WARNING: Only for Toyota/Lexus vehicles with TSS2/LSS2. USE AT YOUR OWN RISK.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>When you stop the vehicle completely by depressing the brake pedal, sunnypilot will activate Auto Brake Hold.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Changing this setting takes effect when the car is powered off.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Enhanced Blind Spot Monitor</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -1563,14 +1591,6 @@ Reboot Required.</source>
|
||||
<source>Tested on RAV4 TSS1, Lexus LSS1, Toyota TSS1/1.5, and Prius TSS2.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>HKG CAN: Enable Cruise Main By Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enabling this toggle sets CRUISE MAIN to ON by default when the car starts, without engaging MADS. The user still needs to manually engage MADS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>SettingsWindow</name>
|
||||
@@ -2497,6 +2517,14 @@ Reboot Required.</source>
|
||||
<source>Neural Network Lateral Control (NNLC)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>NNLC: Remove Lateral Jerk Response (Alpha)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>When NNLC is active, enable this to disables the use of lateral jerk in steering torque calculations, focusing solely on lateral acceleration for a simplified control response.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enforce Torque Lateral Control</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -2505,6 +2533,14 @@ Reboot Required.</source>
|
||||
<source>Enable this to enforce sunnypilot to steer with Torque lateral control.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Lateral Jerk with Torque Lateral Control (Alpha)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Utilizes limited lateral jerk control for improved steering response, leveraging stock torque lateral controller capabilities. Designed to mimic NNLC behavior without training models or data collection.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Self-Tune</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -2890,6 +2926,10 @@ Reboot Required.</source>
|
||||
This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Use Planner Speed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Experimental Mode</source>
|
||||
<translation type="unfinished">โหมดทดลอง</translation>
|
||||
@@ -3257,6 +3297,14 @@ This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<source>Speed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Time</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>All</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Display Metrics Below Chevron</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -3285,14 +3333,6 @@ This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<source>Display Temperature on Sidebar</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Time</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>All</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>WiFiPromptWidget</name>
|
||||
|
||||
@@ -203,6 +203,14 @@
|
||||
<source>mph</source>
|
||||
<translation type="unfinished">mph</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>blended</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>acc</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>MAX</source>
|
||||
<translation type="unfinished">MAX</translation>
|
||||
@@ -1444,11 +1452,15 @@ This may take up to a minute.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>HKG CAN: Smoother Stopping Performance (Beta)</source>
|
||||
<source>HKG: Custom Tuning for New Longitudinal API</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Smoother stopping behind a stopped car or desired stopping event. This is only applicable to HKG CAN platforms using openpilot longitudinal control.</source>
|
||||
<source>HKG CAN: Enable Cruise Main By Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enabling this toggle sets CRUISE MAIN to ON by default when the car starts, without engaging MADS. The user still needs to manually engage MADS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@@ -1495,6 +1507,22 @@ This may take up to a minute.</source>
|
||||
<source>Smoother longitudinal performance for Toyota/Lexus TSS2/LSS2 cars. Big thanks to dragonpilot-community for this implementation.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Automatic Brake Hold (AHB)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>WARNING: Only for Toyota/Lexus vehicles with TSS2/LSS2. USE AT YOUR OWN RISK.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>When you stop the vehicle completely by depressing the brake pedal, sunnypilot will activate Auto Brake Hold.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Changing this setting takes effect when the car is powered off.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Enhanced Blind Spot Monitor</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -1561,14 +1589,6 @@ Reboot Required.</source>
|
||||
<source>Tested on RAV4 TSS1, Lexus LSS1, Toyota TSS1/1.5, and Prius TSS2.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>HKG CAN: Enable Cruise Main By Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enabling this toggle sets CRUISE MAIN to ON by default when the car starts, without engaging MADS. The user still needs to manually engage MADS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>SettingsWindow</name>
|
||||
@@ -2495,6 +2515,14 @@ Reboot Required.</source>
|
||||
<source>Neural Network Lateral Control (NNLC)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>NNLC: Remove Lateral Jerk Response (Alpha)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>When NNLC is active, enable this to disables the use of lateral jerk in steering torque calculations, focusing solely on lateral acceleration for a simplified control response.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enforce Torque Lateral Control</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -2503,6 +2531,14 @@ Reboot Required.</source>
|
||||
<source>Enable this to enforce sunnypilot to steer with Torque lateral control.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Lateral Jerk with Torque Lateral Control (Alpha)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Utilizes limited lateral jerk control for improved steering response, leveraging stock torque lateral controller capabilities. Designed to mimic NNLC behavior without training models or data collection.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Self-Tune</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -2888,6 +2924,10 @@ Reboot Required.</source>
|
||||
This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Use Planner Speed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Experimental Mode</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -3255,6 +3295,14 @@ This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<source>Speed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Time</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>All</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Display Metrics Below Chevron</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -3283,14 +3331,6 @@ This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<source>Display Temperature on Sidebar</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Time</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>All</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>WiFiPromptWidget</name>
|
||||
|
||||
@@ -203,6 +203,14 @@
|
||||
<source>mph</source>
|
||||
<translation type="unfinished">mph</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>blended</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>acc</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>MAX</source>
|
||||
<translation type="unfinished">最高定速</translation>
|
||||
@@ -1446,11 +1454,15 @@ This may take up to a minute.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>HKG CAN: Smoother Stopping Performance (Beta)</source>
|
||||
<source>HKG: Custom Tuning for New Longitudinal API</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Smoother stopping behind a stopped car or desired stopping event. This is only applicable to HKG CAN platforms using openpilot longitudinal control.</source>
|
||||
<source>HKG CAN: Enable Cruise Main By Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enabling this toggle sets CRUISE MAIN to ON by default when the car starts, without engaging MADS. The user still needs to manually engage MADS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@@ -1497,6 +1509,22 @@ This may take up to a minute.</source>
|
||||
<source>Smoother longitudinal performance for Toyota/Lexus TSS2/LSS2 cars. Big thanks to dragonpilot-community for this implementation.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Automatic Brake Hold (AHB)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>WARNING: Only for Toyota/Lexus vehicles with TSS2/LSS2. USE AT YOUR OWN RISK.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>When you stop the vehicle completely by depressing the brake pedal, sunnypilot will activate Auto Brake Hold.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Changing this setting takes effect when the car is powered off.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Enhanced Blind Spot Monitor</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -1563,14 +1591,6 @@ Reboot Required.</source>
|
||||
<source>Tested on RAV4 TSS1, Lexus LSS1, Toyota TSS1/1.5, and Prius TSS2.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>HKG CAN: Enable Cruise Main By Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enabling this toggle sets CRUISE MAIN to ON by default when the car starts, without engaging MADS. The user still needs to manually engage MADS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>SettingsWindow</name>
|
||||
@@ -2497,6 +2517,14 @@ Reboot Required.</source>
|
||||
<source>Neural Network Lateral Control (NNLC)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>NNLC: Remove Lateral Jerk Response (Alpha)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>When NNLC is active, enable this to disables the use of lateral jerk in steering torque calculations, focusing solely on lateral acceleration for a simplified control response.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enforce Torque Lateral Control</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -2505,6 +2533,14 @@ Reboot Required.</source>
|
||||
<source>Enable this to enforce sunnypilot to steer with Torque lateral control.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Lateral Jerk with Torque Lateral Control (Alpha)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Utilizes limited lateral jerk control for improved steering response, leveraging stock torque lateral controller capabilities. Designed to mimic NNLC behavior without training models or data collection.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Self-Tune</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -2890,6 +2926,10 @@ Reboot Required.</source>
|
||||
This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Use Planner Speed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Experimental Mode</source>
|
||||
<translation type="unfinished">测试模式</translation>
|
||||
@@ -3257,6 +3297,14 @@ This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<source>Speed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Time</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>All</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Display Metrics Below Chevron</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -3285,14 +3333,6 @@ This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<source>Display Temperature on Sidebar</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Time</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>All</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>WiFiPromptWidget</name>
|
||||
|
||||
@@ -203,6 +203,14 @@
|
||||
<source>mph</source>
|
||||
<translation type="unfinished">mph</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>blended</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>acc</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>MAX</source>
|
||||
<translation type="unfinished">最高</translation>
|
||||
@@ -1446,11 +1454,15 @@ This may take up to a minute.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>HKG CAN: Smoother Stopping Performance (Beta)</source>
|
||||
<source>HKG: Custom Tuning for New Longitudinal API</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Smoother stopping behind a stopped car or desired stopping event. This is only applicable to HKG CAN platforms using openpilot longitudinal control.</source>
|
||||
<source>HKG CAN: Enable Cruise Main By Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enabling this toggle sets CRUISE MAIN to ON by default when the car starts, without engaging MADS. The user still needs to manually engage MADS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
@@ -1497,6 +1509,22 @@ This may take up to a minute.</source>
|
||||
<source>Smoother longitudinal performance for Toyota/Lexus TSS2/LSS2 cars. Big thanks to dragonpilot-community for this implementation.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Automatic Brake Hold (AHB)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>WARNING: Only for Toyota/Lexus vehicles with TSS2/LSS2. USE AT YOUR OWN RISK.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>When you stop the vehicle completely by depressing the brake pedal, sunnypilot will activate Auto Brake Hold.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Changing this setting takes effect when the car is powered off.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Enhanced Blind Spot Monitor</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -1563,14 +1591,6 @@ Reboot Required.</source>
|
||||
<source>Tested on RAV4 TSS1, Lexus LSS1, Toyota TSS1/1.5, and Prius TSS2.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>HKG CAN: Enable Cruise Main By Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enabling this toggle sets CRUISE MAIN to ON by default when the car starts, without engaging MADS. The user still needs to manually engage MADS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>SettingsWindow</name>
|
||||
@@ -2497,6 +2517,14 @@ Reboot Required.</source>
|
||||
<source>Neural Network Lateral Control (NNLC)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>NNLC: Remove Lateral Jerk Response (Alpha)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>When NNLC is active, enable this to disables the use of lateral jerk in steering torque calculations, focusing solely on lateral acceleration for a simplified control response.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enforce Torque Lateral Control</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -2505,6 +2533,14 @@ Reboot Required.</source>
|
||||
<source>Enable this to enforce sunnypilot to steer with Torque lateral control.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Lateral Jerk with Torque Lateral Control (Alpha)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Utilizes limited lateral jerk control for improved steering response, leveraging stock torque lateral controller capabilities. Designed to mimic NNLC behavior without training models or data collection.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Enable Self-Tune</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -2890,6 +2926,10 @@ Reboot Required.</source>
|
||||
This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Use Planner Speed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Experimental Mode</source>
|
||||
<translation type="unfinished">實驗模式</translation>
|
||||
@@ -3257,6 +3297,14 @@ This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<source>Speed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Time</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>All</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Display Metrics Below Chevron</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -3285,14 +3333,6 @@ This feature must be used along with SLC, and/or V-TSC, and/or M-TSC.</source>
|
||||
<source>Display Temperature on Sidebar</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Time</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>All</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>WiFiPromptWidget</name>
|
||||
|
||||
@@ -326,7 +326,7 @@ void Device::resetInteractiveTimeout(int timeout) {
|
||||
|
||||
void Device::updateBrightness(const UIState &s) {
|
||||
clipped_brightness = offroad_brightness;
|
||||
if (s.scene.started && s.scene.light_sensor >= 0) {
|
||||
if (s.scene.started && s.scene.light_sensor > 0) {
|
||||
clipped_brightness = s.scene.light_sensor;
|
||||
|
||||
// CIE 1931 - https://www.photonstophotos.net/GeneralTopics/Exposure/Psychometric_Lightness_and_Gamma.htm
|
||||
@@ -337,7 +337,7 @@ void Device::updateBrightness(const UIState &s) {
|
||||
}
|
||||
|
||||
// Scale back to 10% to 100%
|
||||
clipped_brightness = std::clamp(100.0f * clipped_brightness, 5.0f, 100.0f);
|
||||
clipped_brightness = std::clamp(100.0f * clipped_brightness, 10.0f, 100.0f);
|
||||
}
|
||||
RETURN_IF_SUNNYPILOT
|
||||
|
||||
@@ -377,4 +377,4 @@ Device *device() {
|
||||
static Device _device;
|
||||
return &_device;
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
@@ -45,7 +45,7 @@ def handle_long_poll(ws: WebSocket, exit_event: threading.Event | None) -> None:
|
||||
threading.Thread(target=ws_ping, args=(ws, end_event), name='ws_ping'),
|
||||
threading.Thread(target=ws_queue, args=(end_event,), name='ws_queue'),
|
||||
# threading.Thread(target=upload_handler, args=(end_event,), name='upload_handler'),
|
||||
threading.Thread(target=sunny_log_handler, args=(end_event, comma_prime_cellular_end_event), name='log_handler'),
|
||||
# threading.Thread(target=sunny_log_handler, args=(end_event, comma_prime_cellular_end_event), name='log_handler'),
|
||||
# threading.Thread(target=stat_handler, args=(end_event,), name='stat_handler'),
|
||||
] + [
|
||||
threading.Thread(target=jsonrpc_handler, args=(end_event,), name=f'worker_{x}')
|
||||
|
||||
@@ -104,6 +104,7 @@ def manager_init() -> None:
|
||||
("TorqueDeadzoneDeg", "0"),
|
||||
("TorqueFriction", "10"),
|
||||
("TorqueMaxLatAccel", "250"),
|
||||
("ToyotaAutoHold", "0"),
|
||||
("ToyotaAutoLockBySpeed", "0"),
|
||||
("ToyotaAutoUnlockByShifter", "0"),
|
||||
("ToyotaDriveMode", "0"),
|
||||
|
||||
@@ -19,9 +19,9 @@ from openpilot.system.version import get_build_metadata, get_version
|
||||
|
||||
class SentryProject(Enum):
|
||||
# python project
|
||||
SELFDRIVE = "https://3e25e235efe389b74cde72fb0e115aef@o1138119.ingest.us.sentry.io/4509950385979397"
|
||||
SELFDRIVE = "https://7e3be9bfcfe04c9abe58bd25fe290d1a@o1138119.ingest.sentry.io/6191481"
|
||||
# native project
|
||||
SELFDRIVE_NATIVE = "https://3e25e235efe389b74cde72fb0e115aef@o1138119.ingest.us.sentry.io/4509950385979397"
|
||||
SELFDRIVE_NATIVE = "https://7e3be9bfcfe04c9abe58bd25fe290d1a@o1138119.ingest.sentry.io/6191481"
|
||||
|
||||
|
||||
CRASHES_DIR = Paths.community_crash_root()
|
||||
|
||||
Reference in New Issue
Block a user