diff --git a/.gitignore b/.gitignore
index 810756400..d9f52bcde 100644
--- a/.gitignore
+++ b/.gitignore
@@ -82,7 +82,7 @@ build/
poetry.toml
selfdrive/ui/_ui_nonav
-*events.po~
+*.po~
selfdrive/loggerd/bootlog
selfdrive/loggerd/loggerd
selfdrive/proclogd/proclogd
diff --git a/CHANGELOGS_c2.md b/CHANGELOGS_c2.md
index 0d5498ca9..9d7500037 100644
--- a/CHANGELOGS_c2.md
+++ b/CHANGELOGS_c2.md
@@ -16,7 +16,9 @@ dragonpilot [Latest] - EON/C2 Release
* TWEAK: e2e Lateral will display lanelines in white.
* TWEAK: Updated VisionIPC to match current version.
* TWEAK: DM reverted to 0.8.13 model and algorithm.
+ * TWEAK: E2E Initial speed matches ACC initial speed. (105 -> 40)
* FIXED: Fixed Reverse message not showing issue.
+ * FIXED: Honda ALKA not working. @loveloveses
dragonpilot 2023.02.08 - EON/C2 Release
========================
diff --git a/cereal/visionipc/visionipc_pyx.so b/cereal/visionipc/visionipc_pyx.so
index 66cf05ba4..f79928f49 100755
Binary files a/cereal/visionipc/visionipc_pyx.so and b/cereal/visionipc/visionipc_pyx.so differ
diff --git a/common/dp_conf.py b/common/dp_conf.py
index e408cfd4b..a53aa0c55 100644
--- a/common/dp_conf.py
+++ b/common/dp_conf.py
@@ -197,7 +197,7 @@ confs = [
# {'name': 'dp_ftpd', 'default': False, 'type': 'Bool', 'conf_type': ['param']},
{'name': 'dp_lateral_version', 'default': 0, 'min': 0, 'max': 2, 'type': 'UInt8', 'conf_type': ['param']},
{'name': 'dp_lateral_steer_rate_cost', 'default': 1.0, 'min': 0.5, 'max': 2.0, 'type': 'Float32', 'conf_type': ['param']},
- {'name': 'dp_upload_ignored', 'default': False, 'type': 'Bool', 'conf_type': ['param']},
+ {'name': 'dp_upload_ignored', 'default': True, 'type': 'Bool', 'conf_type': ['param']},
{'name': 'local_trip_count_total', 'default': 0.0, 'type': 'Float32', 'conf_type': ['param']},
{'name': 'local_trip_meter_total', 'default': 0.0, 'type': 'Float32', 'conf_type': ['param']},
{'name': 'local_trip_min_total', 'default': 0.0, 'type': 'Float32', 'conf_type': ['param']},
diff --git a/common/params_pyx.so b/common/params_pyx.so
index 8b7492601..9e3befd84 100755
Binary files a/common/params_pyx.so and b/common/params_pyx.so differ
diff --git a/common/version.h b/common/version.h
index b454b24aa..ff4a14ea0 100644
--- a/common/version.h
+++ b/common/version.h
@@ -1 +1 @@
-#define COMMA_VERSION "2023.03.30"
+#define COMMA_VERSION "2023.04.01"
diff --git a/opendbc/can/libdbc.so b/opendbc/can/libdbc.so
index cd8c34834..7d5371089 100755
Binary files a/opendbc/can/libdbc.so and b/opendbc/can/libdbc.so differ
diff --git a/panda/board/obj/bootstub.panda.bin b/panda/board/obj/bootstub.panda.bin
index eca1314d9..9808906ab 100755
Binary files a/panda/board/obj/bootstub.panda.bin and b/panda/board/obj/bootstub.panda.bin differ
diff --git a/panda/board/obj/panda.bin.signed b/panda/board/obj/panda.bin.signed
index a46422cdc..7fbb95986 100644
Binary files a/panda/board/obj/panda.bin.signed and b/panda/board/obj/panda.bin.signed differ
diff --git a/rednose/helpers/ekf_sym_pyx.so b/rednose/helpers/ekf_sym_pyx.so
index 4b32d5fa4..4ea0f1716 100755
Binary files a/rednose/helpers/ekf_sym_pyx.so and b/rednose/helpers/ekf_sym_pyx.so differ
diff --git a/selfdrive/assets/locales/ja-JP/LC_MESSAGES/events.mo b/selfdrive/assets/locales/ja-JP/LC_MESSAGES/events.mo
index 117720252..3308a46ca 100644
Binary files a/selfdrive/assets/locales/ja-JP/LC_MESSAGES/events.mo and b/selfdrive/assets/locales/ja-JP/LC_MESSAGES/events.mo differ
diff --git a/selfdrive/assets/locales/zh-CN/LC_MESSAGES/events.mo b/selfdrive/assets/locales/zh-CN/LC_MESSAGES/events.mo
index 27f3cf194..e1fa157df 100644
Binary files a/selfdrive/assets/locales/zh-CN/LC_MESSAGES/events.mo and b/selfdrive/assets/locales/zh-CN/LC_MESSAGES/events.mo differ
diff --git a/selfdrive/assets/locales/zh-TW/LC_MESSAGES/events.mo b/selfdrive/assets/locales/zh-TW/LC_MESSAGES/events.mo
index 8233932c2..75507fc45 100644
Binary files a/selfdrive/assets/locales/zh-TW/LC_MESSAGES/events.mo and b/selfdrive/assets/locales/zh-TW/LC_MESSAGES/events.mo differ
diff --git a/selfdrive/boardd/boardd b/selfdrive/boardd/boardd
index 96ac16e15..8be24c0cf 100755
Binary files a/selfdrive/boardd/boardd and b/selfdrive/boardd/boardd differ
diff --git a/selfdrive/car/honda/carcontroller.py b/selfdrive/car/honda/carcontroller.py
index 8e659e988..3976f898d 100644
--- a/selfdrive/car/honda/carcontroller.py
+++ b/selfdrive/car/honda/carcontroller.py
@@ -205,7 +205,10 @@ class CarController:
if pcm_cancel_cmd:
can_sends.append(hondacan.spam_buttons_command(self.packer, CruiseButtons.CANCEL, self.CP.carFingerprint))
elif CC.cruiseControl.resume:
- can_sends.append(hondacan.spam_buttons_command(self.packer, CruiseButtons.RES_ACCEL, self.CP.carFingerprint))
+ if CS.CP.carFingerprint in (CAR.CIVIC_BOSCH, CAR.CRV_HYBRID_BSM) and CS.hud_lead == 1:
+ can_sends.append(hondacan.spam_buttons_command(self.packer, CruiseButtons.RES_ACCEL, CS.CP.carFingerprint))
+ else:
+ can_sends.append(hondacan.spam_buttons_command(self.packer, CruiseButtons.RES_ACCEL, self.CP.carFingerprint))
else:
# Send gas and brake commands.
diff --git a/selfdrive/car/honda/carstate.py b/selfdrive/car/honda/carstate.py
index c33d0863f..d3b90fb7d 100644
--- a/selfdrive/car/honda/carstate.py
+++ b/selfdrive/car/honda/carstate.py
@@ -44,6 +44,7 @@ def get_can_signals(CP, gearbox_msg, main_on_sig_msg):
("MAIN_ON", main_on_sig_msg),
#dp
("ENGINE_RPM", "POWERTRAIN_DATA"),
+ ("HUD_LEAD", "ACC_HUD"),
]
checks = [
@@ -70,7 +71,7 @@ def get_can_signals(CP, gearbox_msg, main_on_sig_msg):
("SCM_BUTTONS", 25),
]
- if CP.carFingerprint in (CAR.CRV_HYBRID, CAR.CIVIC_BOSCH_DIESEL, CAR.ACURA_RDX_3G, CAR.HONDA_E):
+ if CP.carFingerprint in (CAR.CRV_HYBRID, CAR.CIVIC_BOSCH_DIESEL, CAR.ACURA_RDX_3G, CAR.HONDA_E, CAR.CRV_HYBRID_BSM):
checks.append((gearbox_msg, 50))
else:
checks.append((gearbox_msg, 100))
@@ -107,7 +108,7 @@ def get_can_signals(CP, gearbox_msg, main_on_sig_msg):
else:
checks.append(("CRUISE_PARAMS", 50))
- if CP.carFingerprint in (CAR.ACCORD, CAR.ACCORDH, CAR.CIVIC_BOSCH, CAR.CIVIC_BOSCH_DIESEL, CAR.CRV_HYBRID, CAR.INSIGHT, CAR.ACURA_RDX_3G, CAR.HONDA_E, CAR.CIVIC_2022):
+ if CP.carFingerprint in (CAR.ACCORD, CAR.ACCORDH, CAR.CIVIC_BOSCH, CAR.CIVIC_BOSCH_DIESEL, CAR.CRV_HYBRID, CAR.INSIGHT, CAR.ACURA_RDX_3G, CAR.HONDA_E, CAR.CIVIC_2022, CAR.CRV_HYBRID_BSM):
signals.append(("DRIVERS_DOOR_OPEN", "SCM_FEEDBACK"))
elif CP.carFingerprint in (CAR.ODYSSEY_CHN, CAR.FREED, CAR.HRV):
signals.append(("DRIVERS_DOOR_OPEN", "SCM_BUTTONS"))
@@ -162,6 +163,7 @@ class CarState(CarStateBase):
self.cruise_setting = 0
self.v_cruise_pcm_prev = 0
self.engineRPM = 0
+ self.hud_lead = 0
# When available we use cp.vl["CAR_SPEED"]["ROUGH_CAR_SPEED_2"] to populate vEgoCluster
# However, on cars without a digital speedometer this is not always present (HRV, FIT, CRV 2016, ILX and RDX)
@@ -188,7 +190,7 @@ class CarState(CarStateBase):
# panda checks if the signal is non-zero
ret.standstill = cp.vl["ENGINE_DATA"]["XMISSION_SPEED"] < 1e-5
# TODO: find a common signal across all cars
- if self.CP.carFingerprint in (CAR.ACCORD, CAR.ACCORDH, CAR.CIVIC_BOSCH, CAR.CIVIC_BOSCH_DIESEL, CAR.CRV_HYBRID, CAR.INSIGHT, CAR.ACURA_RDX_3G, CAR.HONDA_E, CAR.CIVIC_2022):
+ if self.CP.carFingerprint in (CAR.ACCORD, CAR.ACCORDH, CAR.CIVIC_BOSCH, CAR.CIVIC_BOSCH_DIESEL, CAR.CRV_HYBRID, CAR.INSIGHT, CAR.ACURA_RDX_3G, CAR.HONDA_E, CAR.CIVIC_2022, CAR.CRV_HYBRID_BSM):
ret.doorOpen = bool(cp.vl["SCM_FEEDBACK"]["DRIVERS_DOOR_OPEN"])
elif self.CP.carFingerprint in (CAR.ODYSSEY_CHN, CAR.FREED, CAR.HRV):
ret.doorOpen = bool(cp.vl["SCM_BUTTONS"]["DRIVERS_DOOR_OPEN"])
@@ -290,6 +292,9 @@ class CarState(CarStateBase):
ret.cruiseState.enabled = cp.vl["POWERTRAIN_DATA"]["ACC_STATUS"] != 0
ret.cruiseState.available = bool(cp.vl[self.main_on_sig_msg]["MAIN_ON"])
+ # afa feature
+ self.hud_lead = cp.vl["ACC_HUD"]['HUD_LEAD']
+
# Gets rid of Pedal Grinding noise when brake is pressed at slow speeds for some models
if self.CP.carFingerprint in (CAR.PILOT, CAR.RIDGELINE):
if ret.brake > 0.1:
@@ -318,7 +323,7 @@ class CarState(CarStateBase):
if self.CP.carFingerprint in HONDA_BOSCH_RADARLESS:
self.lkas_hud = cp_cam.vl["LKAS_HUD"]
- if self.CP.enableBsm and self.CP.carFingerprint in (CAR.CRV_5G, ):
+ if self.CP.enableBsm and self.CP.carFingerprint in (CAR.CRV_5G, CAR.CRV_HYBRID_BSM,):
# BSM messages are on B-CAN, requires a panda forwarding B-CAN messages to CAN 0
# more info here: https://github.com/commaai/openpilot/pull/1867
ret.leftBlindspot = cp_body.vl["BSM_STATUS_LEFT"]["BSM_ALERT"] == 1
@@ -365,7 +370,7 @@ class CarState(CarStateBase):
@staticmethod
def get_body_can_parser(CP):
- if CP.enableBsm and CP.carFingerprint == CAR.CRV_5G:
+ if CP.enableBsm and CP.carFingerprint in (CAR.CRV_5G, CAR.CRV_HYBRID_BSM,):
signals = [("BSM_ALERT", "BSM_STATUS_RIGHT"),
("BSM_ALERT", "BSM_STATUS_LEFT")]
diff --git a/selfdrive/car/honda/interface.py b/selfdrive/car/honda/interface.py
index 8d2c1af46..eea1f4443 100755
--- a/selfdrive/car/honda/interface.py
+++ b/selfdrive/car/honda/interface.py
@@ -61,7 +61,7 @@ class CarInterface(CarInterfaceBase):
if candidate in HONDA_BOSCH:
ret.pcmCruise = True
- if candidate == CAR.CRV_5G:
+ if candidate in (CAR.CRV_5G, CAR.CRV_HYBRID_BSM):
ret.enableBsm = 0x12f8bfa7 in fingerprint[0]
# Detect Bosch cars with new HUD msgs
@@ -173,7 +173,7 @@ class CarInterface(CarInterfaceBase):
tire_stiffness_factor = 0.677
ret.wheelSpeedFactor = 1.025
- elif candidate == CAR.CRV_HYBRID:
+ elif candidate in (CAR.CRV_HYBRID, CAR.CRV_HYBRID_BSM):
ret.mass = 1667. + STD_CARGO_KG # mean of 4 models in kg
ret.wheelbase = 2.66
ret.centerToFront = ret.wheelbase * 0.41
@@ -322,7 +322,7 @@ class CarInterface(CarInterfaceBase):
elif candidate == CAR.CRV_5G:
ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 2560, 10000], [0, 2560, 3840]] #tuned by Titanminer (8000)
ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.21], [0.07]]
- elif candidate == CAR.CRV_HYBRID:
+ elif candidate in (CAR.CRV_HYBRID, CAR.CRV_HYBRID_BSM):
ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0x0, 0xB5, 0x161, 0x2D6, 0x4C0, 0x70D, 0xC42, 0x1058, 0x2C00], [0x0, 0x160, 0x1F0, 0x2E0, 0x378, 0x4A0, 0x5F0, 0x804, 0xF00]]
ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.21], [0.07]] #still needs to finish tuning for the new car
ret.lateralTuning.pid.kf = 0.00004
diff --git a/selfdrive/car/honda/values.py b/selfdrive/car/honda/values.py
index 77984edd2..fcc84c803 100644
--- a/selfdrive/car/honda/values.py
+++ b/selfdrive/car/honda/values.py
@@ -84,6 +84,7 @@ class CAR:
CRV_5G = "HONDA CR-V 2017"
CRV_EU = "HONDA CR-V EU 2016"
CRV_HYBRID = "HONDA CR-V HYBRID 2019"
+ CRV_HYBRID_BSM = "HONDA CR-V HYBRID 2019 w/ BSM"
FIT = "HONDA FIT 2018"
FREED = "HONDA FREED 2020"
HRV = "HONDA HRV 2019"
@@ -198,6 +199,7 @@ FW_QUERY_CONFIG = FwQueryConfig(
)
FW_VERSIONS = {
+ CAR.CRV_HYBRID_BSM: {(Ecu.vsa, 0xfff, None): [b'\x00']},
CAR.ODYSSEY_HYBRID: {(Ecu.vsa, 0xfff, None): [b'\x00']},
CAR.ACCORD: {
(Ecu.programmedFuelInjection, 0x18da10f1, None): [
@@ -1526,6 +1528,7 @@ DBC = {
CAR.CRV_5G: dbc_dict('honda_crv_ex_2017_can_generated', None, body_dbc='honda_crv_ex_2017_body_generated'),
CAR.CRV_EU: dbc_dict('honda_crv_executive_2016_can_generated', 'acura_ilx_2016_nidec'),
CAR.CRV_HYBRID: dbc_dict('honda_accord_2018_can_generated', None),
+ CAR.CRV_HYBRID_BSM: dbc_dict('honda_accord_2018_can_generated', None, body_dbc='honda_crv_ex_2017_body_generated'),
CAR.FIT: dbc_dict('honda_fit_ex_2018_can_generated', 'acura_ilx_2016_nidec'),
CAR.FREED: dbc_dict('honda_fit_ex_2018_can_generated', 'acura_ilx_2016_nidec'),
CAR.HRV: dbc_dict('honda_fit_ex_2018_can_generated', 'acura_ilx_2016_nidec'),
@@ -1549,6 +1552,6 @@ HONDA_NIDEC_ALT_PCM_ACCEL = {CAR.ODYSSEY}
HONDA_NIDEC_ALT_SCM_MESSAGES = {CAR.ACURA_ILX, CAR.ACURA_RDX, CAR.CRV, CAR.CRV_EU, CAR.FIT, CAR.FREED, CAR.HRV, CAR.ODYSSEY_CHN,
CAR.ODYSSEY_HYBRID, CAR.PILOT, CAR.RIDGELINE}
HONDA_BOSCH = {CAR.ACCORD, CAR.ACCORDH, CAR.CIVIC_BOSCH, CAR.CIVIC_BOSCH_DIESEL, CAR.CRV_5G,
- CAR.CRV_HYBRID, CAR.INSIGHT, CAR.ACURA_RDX_3G, CAR.HONDA_E, CAR.CIVIC_2022}
+ CAR.CRV_HYBRID, CAR.INSIGHT, CAR.ACURA_RDX_3G, CAR.HONDA_E, CAR.CIVIC_2022, CAR.CRV_HYBRID_BSM}
HONDA_BOSCH_ALT_BRAKE_SIGNAL = {CAR.ACCORD, CAR.CRV_5G, CAR.ACURA_RDX_3G}
HONDA_BOSCH_RADARLESS = {CAR.CIVIC_2022}
diff --git a/selfdrive/controls/controlsd.py b/selfdrive/controls/controlsd.py
index e9410f1bf..8847eb013 100755
--- a/selfdrive/controls/controlsd.py
+++ b/selfdrive/controls/controlsd.py
@@ -550,7 +550,7 @@ class Controls:
# dp - local trip log
self.local_trip_meter_total += CS.vEgo * DT_CTRL
if not self.local_trip_count_added:
- if self.distance_traveled > 0:
+ if self.local_trip_meter_total > 0:
put_nonblocking("local_trip_count_total", str(float(self.params.get("local_trip_count_total").decode('utf-8')) + 1))
self.local_trip_count_added = True
# every 30 secs
diff --git a/selfdrive/controls/lib/drive_helpers.py b/selfdrive/controls/lib/drive_helpers.py
index 27edb0d2c..9edd630dc 100644
--- a/selfdrive/controls/lib/drive_helpers.py
+++ b/selfdrive/controls/lib/drive_helpers.py
@@ -5,6 +5,7 @@ from common.conversions import Conversions as CV
from common.numpy_fast import clip, interp
from common.realtime import DT_MDL
from selfdrive.modeld.constants import T_IDXS
+from system.hardware import TICI
# WARNING: this value was determined based on the model's training distribution,
# model predictions above this speed can be unpredictable
@@ -13,7 +14,7 @@ V_CRUISE_MIN = 8
V_CRUISE_MAX = 145
V_CRUISE_UNSET = 255
V_CRUISE_INITIAL = 40
-V_CRUISE_INITIAL_EXPERIMENTAL_MODE = 105
+V_CRUISE_INITIAL_EXPERIMENTAL_MODE = V_CRUISE_INITIAL if not TICI else 105
IMPERIAL_INCREMENT = 1.6 # should be CV.MPH_TO_KPH, but this causes rounding errors
MIN_SPEED = 1.0
diff --git a/selfdrive/controls/lib/vision_turn_controller.py b/selfdrive/controls/lib/vision_turn_controller.py
index 12048cf4b..874c85361 100644
--- a/selfdrive/controls/lib/vision_turn_controller.py
+++ b/selfdrive/controls/lib/vision_turn_controller.py
@@ -252,6 +252,7 @@ class VisionTurnController():
self.state = VisionTurnControllerState.disabled
def _update_solution(self):
+ a_target = self._a_ego
# DISABLED
if self.state == VisionTurnControllerState.disabled:
# when not overshooting, calculate v_turn as the speed at the prediction horizon when following
diff --git a/selfdrive/locationd/locationd b/selfdrive/locationd/locationd
index 6365190ed..9b1e24370 100755
Binary files a/selfdrive/locationd/locationd and b/selfdrive/locationd/locationd differ
diff --git a/selfdrive/loggerd/bootlog b/selfdrive/loggerd/bootlog
index 2640ce310..5363a262f 100755
Binary files a/selfdrive/loggerd/bootlog and b/selfdrive/loggerd/bootlog differ
diff --git a/selfdrive/loggerd/loggerd b/selfdrive/loggerd/loggerd
index f9a80bb59..a7c6e6660 100755
Binary files a/selfdrive/loggerd/loggerd and b/selfdrive/loggerd/loggerd differ
diff --git a/selfdrive/modeld/_dmonitoringmodeld b/selfdrive/modeld/_dmonitoringmodeld
index 85635194b..9f3ea12f8 100755
Binary files a/selfdrive/modeld/_dmonitoringmodeld and b/selfdrive/modeld/_dmonitoringmodeld differ
diff --git a/selfdrive/modeld/_modeld b/selfdrive/modeld/_modeld
index 7f457b65c..c2c93f21c 100755
Binary files a/selfdrive/modeld/_modeld and b/selfdrive/modeld/_modeld differ
diff --git a/selfdrive/proclogd/proclogd b/selfdrive/proclogd/proclogd
index 245b5c796..d709adf84 100755
Binary files a/selfdrive/proclogd/proclogd and b/selfdrive/proclogd/proclogd differ
diff --git a/selfdrive/ui/_ui b/selfdrive/ui/_ui
index 08ea9f1e4..85e57457c 100755
Binary files a/selfdrive/ui/_ui and b/selfdrive/ui/_ui differ
diff --git a/selfdrive/ui/_ui_nonav b/selfdrive/ui/_ui_nonav
index 5a8833b1f..2ba82a000 100755
Binary files a/selfdrive/ui/_ui_nonav and b/selfdrive/ui/_ui_nonav differ
diff --git a/selfdrive/ui/qt/spinner b/selfdrive/ui/qt/spinner
index eca4eb1fa..41abba802 100755
Binary files a/selfdrive/ui/qt/spinner and b/selfdrive/ui/qt/spinner differ
diff --git a/selfdrive/ui/qt/text b/selfdrive/ui/qt/text
index 9a390a36e..b1d6d1b10 100755
Binary files a/selfdrive/ui/qt/text and b/selfdrive/ui/qt/text differ
diff --git a/selfdrive/ui/soundd/_soundd b/selfdrive/ui/soundd/_soundd
index 2d41db4ed..087edf5a6 100755
Binary files a/selfdrive/ui/soundd/_soundd and b/selfdrive/ui/soundd/_soundd differ
diff --git a/selfdrive/ui/translations/main_de.ts b/selfdrive/ui/translations/main_de.ts
index 22016e50a..b6a208476 100644
--- a/selfdrive/ui/translations/main_de.ts
+++ b/selfdrive/ui/translations/main_de.ts
@@ -455,13 +455,6 @@ More linear steering experience.
Always On Lateral
-
- Use at your own risk! Your drive will not upload but you can find them under /data/media/0/fakedata you will not be ban but we just don't upload since comma does not use data from fork but it will be stored locally.
-1 = Stock Long
-2 = OP Long
-Reboot required.
-
- OFF
@@ -547,6 +540,23 @@ Your Vehicle may not support all the options, YMMV.
This feature will let you use alternative lateral controller at higher set speed.
+
+ Use at your own risk!
+1 = Stock Long
+2 = OP Long
+Reboot required.
+
+
+
+ Manual Lane Change
+
+
+
+ Enabling this will allow lane change manually when blinker is on.
+NOTES: Once LCA/ALCA is enabled, those settings will override manual lane change.
+e.g. If you have this option on and LCA at 20km/hr, ALCA at 40km/hr, speed below 20km/hr will be manual lane change. If you disable LCA/ALCA and have this option on, manual lane change will apply to ALL SPEED.
+
+ DPGeneralPanel
diff --git a/selfdrive/ui/translations/main_ja.ts b/selfdrive/ui/translations/main_ja.ts
index 3b273b371..3f12e67fd 100644
--- a/selfdrive/ui/translations/main_ja.ts
+++ b/selfdrive/ui/translations/main_ja.ts
@@ -455,13 +455,6 @@ More linear steering experience.
Enable Max Ctrl Speed Check
-
- Use at your own risk! Your drive will not upload but you can find them under /data/media/0/fakedata you will not be ban but we just don't upload since comma does not use data from fork but it will be stored locally.
-1 = Stock Long
-2 = OP Long
-Reboot required.
-
- Enable this if you wish to use following dist. mode in DE2E.
@@ -547,6 +540,23 @@ Your Vehicle may not support all the options, YMMV.
This feature will let you use alternative lateral controller at higher set speed.
+
+ Use at your own risk!
+1 = Stock Long
+2 = OP Long
+Reboot required.
+
+
+
+ Manual Lane Change
+
+
+
+ Enabling this will allow lane change manually when blinker is on.
+NOTES: Once LCA/ALCA is enabled, those settings will override manual lane change.
+e.g. If you have this option on and LCA at 20km/hr, ALCA at 40km/hr, speed below 20km/hr will be manual lane change. If you disable LCA/ALCA and have this option on, manual lane change will apply to ALL SPEED.
+
+ DPGeneralPanel
diff --git a/selfdrive/ui/translations/main_ko.ts b/selfdrive/ui/translations/main_ko.ts
index c1c19485c..d7de8062d 100644
--- a/selfdrive/ui/translations/main_ko.ts
+++ b/selfdrive/ui/translations/main_ko.ts
@@ -455,13 +455,6 @@ More linear steering experience.
Enable Max Ctrl Speed Check
-
- Use at your own risk! Your drive will not upload but you can find them under /data/media/0/fakedata you will not be ban but we just don't upload since comma does not use data from fork but it will be stored locally.
-1 = Stock Long
-2 = OP Long
-Reboot required.
-
- Enable this if you wish to use following dist. mode in DE2E.
@@ -547,6 +540,23 @@ Your Vehicle may not support all the options, YMMV.
This feature will let you use alternative lateral controller at higher set speed.
+
+ Use at your own risk!
+1 = Stock Long
+2 = OP Long
+Reboot required.
+
+
+
+ Manual Lane Change
+
+
+
+ Enabling this will allow lane change manually when blinker is on.
+NOTES: Once LCA/ALCA is enabled, those settings will override manual lane change.
+e.g. If you have this option on and LCA at 20km/hr, ALCA at 40km/hr, speed below 20km/hr will be manual lane change. If you disable LCA/ALCA and have this option on, manual lane change will apply to ALL SPEED.
+
+ DPGeneralPanel
diff --git a/selfdrive/ui/translations/main_pt-BR.qm b/selfdrive/ui/translations/main_pt-BR.qm
index c76f98ebb..952425722 100644
Binary files a/selfdrive/ui/translations/main_pt-BR.qm and b/selfdrive/ui/translations/main_pt-BR.qm differ
diff --git a/selfdrive/ui/translations/main_pt-BR.ts b/selfdrive/ui/translations/main_pt-BR.ts
index 1ea8841ed..ce0a74e77 100644
--- a/selfdrive/ui/translations/main_pt-BR.ts
+++ b/selfdrive/ui/translations/main_pt-BR.ts
@@ -455,13 +455,6 @@ More linear steering experience.
Enable Max Ctrl Speed Check
-
- Use at your own risk! Your drive will not upload but you can find them under /data/media/0/fakedata you will not be ban but we just don't upload since comma does not use data from fork but it will be stored locally.
-1 = Stock Long
-2 = OP Long
-Reboot required.
-
- Enable this if you wish to use following dist. mode in DE2E.
@@ -547,6 +540,23 @@ Your Vehicle may not support all the options, YMMV.
This feature will let you use alternative lateral controller at higher set speed.
+
+ Use at your own risk!
+1 = Stock Long
+2 = OP Long
+Reboot required.
+
+
+
+ Manual Lane Change
+
+
+
+ Enabling this will allow lane change manually when blinker is on.
+NOTES: Once LCA/ALCA is enabled, those settings will override manual lane change.
+e.g. If you have this option on and LCA at 20km/hr, ALCA at 40km/hr, speed below 20km/hr will be manual lane change. If you disable LCA/ALCA and have this option on, manual lane change will apply to ALL SPEED.
+
+ DPGeneralPanel
diff --git a/selfdrive/ui/translations/main_zh-CHS.ts b/selfdrive/ui/translations/main_zh-CHS.ts
index d6f780ba3..c80c70b42 100644
--- a/selfdrive/ui/translations/main_zh-CHS.ts
+++ b/selfdrive/ui/translations/main_zh-CHS.ts
@@ -455,13 +455,6 @@ More linear steering experience.
Enable Max Ctrl Speed Check
-
- Use at your own risk! Your drive will not upload but you can find them under /data/media/0/fakedata you will not be ban but we just don't upload since comma does not use data from fork but it will be stored locally.
-1 = Stock Long
-2 = OP Long
-Reboot required.
-
- Enable this if you wish to use following dist. mode in DE2E.
@@ -547,6 +540,23 @@ Your Vehicle may not support all the options, YMMV.
This feature will let you use alternative lateral controller at higher set speed.
+
+ Use at your own risk!
+1 = Stock Long
+2 = OP Long
+Reboot required.
+
+
+
+ Manual Lane Change
+
+
+
+ Enabling this will allow lane change manually when blinker is on.
+NOTES: Once LCA/ALCA is enabled, those settings will override manual lane change.
+e.g. If you have this option on and LCA at 20km/hr, ALCA at 40km/hr, speed below 20km/hr will be manual lane change. If you disable LCA/ALCA and have this option on, manual lane change will apply to ALL SPEED.
+
+ DPGeneralPanel
diff --git a/selfdrive/ui/translations/main_zh-CHT.qm b/selfdrive/ui/translations/main_zh-CHT.qm
index 3ae3a2a7d..b6858cc7f 100644
Binary files a/selfdrive/ui/translations/main_zh-CHT.qm and b/selfdrive/ui/translations/main_zh-CHT.qm differ
diff --git a/selfdrive/ui/translations/main_zh-CHT.ts b/selfdrive/ui/translations/main_zh-CHT.ts
index bd8fda2e6..8c88d3186 100644
--- a/selfdrive/ui/translations/main_zh-CHT.ts
+++ b/selfdrive/ui/translations/main_zh-CHT.ts
@@ -95,7 +95,7 @@
RAM PER
- 記憶體 %
+ 記憶體 %OFF
@@ -139,14 +139,14 @@
Lat Ctrl
- 橫向控制器
+ 橫向控制C2NetworkPanelWi-Fi Settings
- 無線網路設定
+ Wi-Fi 設定OPEN
@@ -321,16 +321,13 @@ Thanks to @TheCrowd
Enable Reverse ACC Set speed.
-
+ 反轉 ACC 定速加減值Enabling this will reverse set acc short press +5 jump, Long press +1 Jump.
Reboot Required.
-
-
-
- Use Alternative Controller
- 使用替代控制器
+ 啟用此功能將反轉 ACC 定速加減值:短按為 +5 ,長按為+1 。
+需要重新啟動。
@@ -461,7 +458,7 @@ When on close will be dynamic but get closer in traffic. Normal is also dynamic
Automatically Turn On and Off End-to-end longitudinal (extremely alpha), this will ignore the stock end-to-end settings
- 自動開啟、關閉 E2E 縱向控制 (實驗功能)
+ 自動開啟、關閉 E2E 縱向控制 (實驗功能),這將會忽略 OP 本來的 E2E 設定。Lateral
@@ -527,14 +524,7 @@ More linear steering experience.
啟用最高允許控車速度檢查
- Use at your own risk! Your drive will not upload but you can find them under /data/media/0/fakedata you will not be ban but we just don't upload since comma does not use data from fork but it will be stored locally.
-1 = Stock Long
-2 = OP Long
-Reboot required.
-
-
-
- when acc set speed below the setting and there is no lead car, e2e will be turned on automatically.
+ when acc set speed below the setting and there is no lead car, e2e will be turned on automatically.
1 km/h = 0.62 mph當車子的定速低於設定值並且在沒有前車的情形下,系統會自動開啟 E2E 模式。
1 km/h = 0.62 mph
@@ -544,7 +534,7 @@ Reboot required. km/h
- when lead car is going below the setting, e2e will be turned on automatically.
+ when lead car is going below the setting, e2e will be turned on automatically.
1 km/h = 0.62 mph當前車車速於低於設定值時,系統將自動切換至 E2E 模式。
1 km/h = 0.62 mph
@@ -581,30 +571,31 @@ Reboot required.Enable this if your vehicles is in VOACC (e.g. Honda Bosch / VAG).如果您的車子使用的是 VOACC (例如:Honda Bosch / VAG/HKG),可以開啟這個功能增進剎車效能。
+
+ ALC RoadEdge Detection
+ 換道路緣檢測
+
+
+ Enabling this will prevent lane change when you are too close to road edge.
+ 啟用此選項可以防止當您靠近道路邊緣時進行車道變換。
+ DE2E w/ VOACCDE2E 用於 VOACC 下
- Camera Offset
- 相機偏移
+ When Set Speed Above:
+ 當定速高於:
- Driving Path Offset
- 駕駛路徑偏移
-
-
- When Set Speed Above:
- 當定速高於:
-
-
- when acc SET speed above the setting, it will switch to alternative controller.
+ when acc SET speed above the setting, it will switch to alternative controller.
1 km/h = 0.62 mph
- 當定速高於設定的速度時,將會啟用替代的控制器
+ 當定速高於設定的速度時,將會啟用替代的控制器
+1 km/h = 0.62 mph
- Alternative Controller
- 替代控制器
+ Alternative Controller
+ 替代控制器
@@ -618,32 +609,35 @@ Your Vehicle may not support all the options, YMMV.
你的車型可能無法適用所有的選項。
- Use Lanelines
- 使用線道
+ Use Alternative Controller
+ 使用替代控制器This feature will let you use alternative lateral controller at higher set speed.這個功能讓你在較高的定速下使用替代控制器
- Use Alternative Controller
- 使用替代控制器
+ Use at your own risk!
+1 = Stock Long
+2 = OP Long
+Reboot required.
+ 自行承擔風險!
+1 = 使用原廠縱向控制
+2 = 使用 OP 縱向控制
+需要重新啟動。
- ALC RoadEdge Detection
- 換道路緣檢測
+ Manual Lane Change
+ 手動換道
- Enabling this will prevent lane change when you are too close to road edge.
- 啟用此選項可以防止當您靠近道路邊緣時進行車道變換。
-
-
- When Set Speed Above:
- 當定速高於:
-
-
- Alternative Controller
- 替代控制器
+ Enabling this will allow lane change manually when blinker is on.
+NOTES: Once LCA/ALCA is enabled, those settings will override manual lane change.
+e.g. If you have this option on and LCA at 20km/hr, ALCA at 40km/hr, speed below 20km/hr will be manual lane change. If you disable LCA/ALCA and have this option on, manual lane change will apply to ALL SPEED.
+ 啟用此功能將允許在開啟方向燈時進行手動變換車道。
+注意:啟用 LCA/ALCA 後,這些設置將覆蓋手動變換車道。
+例如,如果您啟用此選項並將 LCA 設置為 20 公里/小時,將 ALCA 設置為 40 公里/小時,速度低於 20 公里/小時時將進行手動變換車道。
+如果您禁用 LCA/ALCA 並啟用此選項,手動變換車道將套用於所有速度。
@@ -655,12 +649,11 @@ Your Vehicle may not support all the options, YMMV.
Adjust your shutdown waiting period.
0 = shutdown immediately.
- 調整自動關機時間。
-0 = 馬上關機
+ 調整自動關機時間。0 = 馬上關機 mins
- 分鐘
+ 分鐘Enable Auto Shutdown
@@ -859,7 +852,11 @@ Use web interface to control it: *http://<device_ip>:8082*.
You will need to apply your own mapbox token at https://www.mapbox.com/.
Internet access from mobile phone (tethering) is required.
Reboot required.
-
+ 這將讓您使用自己的訪問密鑰來使用導航功能。
+使用 Web 介面來控制它:http://<device_ip>:8082。
+您需要在 https://www.mapbox.com/ 上申請自己的 Mapbox token。
+需要使用手機(共用網路)上網。
+需要重新啟動。Reboot recommended.
@@ -941,7 +938,7 @@ Please note:
OpenStreetMap Database Update
- OpenStreetMap 數據庫更新
+ OpenStreetMap 資料庫更新CHECK
@@ -951,13 +948,13 @@ Please note:
"OpenStreetMap Database Update"
Your device will reboot and perform a database update based on the region you have selected.
Reboot now?
- "OpenStreetMap 數據庫更新"
-您的設備將會重新啟動,並基於您選擇的區域執行一次數據庫更新。
+ "OpenStreetMap 資料庫更新"
+您的設備將重新啟動,並根據您選擇的區域進行資料庫更新。
現在重新啟動嗎?OpenStreetMap Database
- OpenStreetMap 數據庫
+ OpenStreetMap 資料庫SELECT
@@ -965,14 +962,15 @@ Reboot now?
Select your location
- 請選擇您的位置
+ 選擇您的地區"OpenStreetMap Database"
Restart your device to start downloading the selected database. Dragonpilot will only start downloading the database on reboot.
Reboot now?
- "OpenStreetMap 數據庫"
-請重新啟動您的設備以開始下載選定的數據庫。Dragonpilot 只會在重新啟動後開始下載數據庫。
+ "OpenStreetMap 資料庫"
+重新啟動您的設備以開始下載所選的資料庫。
+dragonpilot 只會在重新啟動時開始下載資料庫。
現在重新啟動嗎?
@@ -1070,24 +1068,24 @@ Reboot now?
Rainbow Path
-
+ 顯示彩虹路徑for all the tesla fanboy's.
-
+ 給所有的 Tesla 粉絲。
+
+
+ Volume
+ 音量LAUNCH
- 啟動
+ 開啟Date/Time日期/時間
-
- Volume
- 提示音量
- DeclinePage
@@ -1281,7 +1279,7 @@ Reboot now?
EXPERIMENTAL MODE / DE2E ON
- 實驗模式 / DE2E ON
+
@@ -2042,14 +2040,6 @@ This may take up to a minute.
The driving visualization will transition to the road-facing wide-angle camera at low speeds to better show some turns. The Experimental mode logo will also be shown in the top right corner.低速行駛時,將會切換成路側廣角鏡頭,以完整顯示轉彎路徑,右上角將出現實驗模式圖案。
-
- Enable Right-Hand Drive
- 啟用右駕模式
-
-
- Allow openpilot to obey left-hand traffic conventions and perform driver monitoring on right driver seat.
- openpilot 將對右側駕駛進行監控 (但仍遵守靠左駕的交通慣例)。
- Experimental mode is currently unavailable on this car since the car's stock ACC is used for longitudinal control.因車輛使用內建ACC系統,無法在本車輛上啟動實驗模式。
@@ -2066,6 +2056,14 @@ This may take up to a minute.
Enable experimental longitudinal control to allow Experimental mode.啟用實驗性縱向控制以使用實驗模式。
+
+ Enable Right-Hand Drive
+ 啟用右駕模式
+
+
+ Allow openpilot to obey left-hand traffic conventions and perform driver monitoring on right driver seat.
+ 允許 openpilot 遵循左駕的交通規則並在右駕上進行駕駛員監控。
+ Updater
diff --git a/selfdrive/ui/update_translations.py b/selfdrive/ui/update_translations.py
index 8412d3372..6bc78a4d0 100755
--- a/selfdrive/ui/update_translations.py
+++ b/selfdrive/ui/update_translations.py
@@ -2,13 +2,15 @@
import argparse
import json
import os
+
+local_gen = False
try:
from common.basedir import BASEDIR
+except Exception:
+ BASEDIR = ""
+ local_gen = True
- UI_DIR = os.path.join(BASEDIR, "selfdrive", "ui")
-except ModuleNotFoundError:
- UI_DIR = os.path.join("", "selfdrive", "ui")
-
+UI_DIR = os.path.join(BASEDIR, "selfdrive", "ui")
TRANSLATIONS_DIR = os.path.join(UI_DIR, "translations")
LANGUAGES_FILE = os.path.join(TRANSLATIONS_DIR, "languages.json")
@@ -22,7 +24,7 @@ def update_translations(vanish=False, plural_only=None, translations_dir=TRANSLA
for file in translation_files.values():
tr_file = os.path.join(translations_dir, f"{file}.ts")
- args = f"lupdate -locations none -recursive {UI_DIR} -ts {tr_file} -I {BASEDIR}"
+ args = f"lupdate -locations none -recursive {UI_DIR} -ts {tr_file}" + (f"-I {BASEDIR}" if BASEDIR != "" else "")
if vanish:
args += " -no-obsolete"
if file in plural_only:
diff --git a/system/camerad/camerad b/system/camerad/camerad
index c519a693e..808ab3d40 100755
Binary files a/system/camerad/camerad and b/system/camerad/camerad differ
diff --git a/system/loggerd/uploader.py b/system/loggerd/uploader.py
index 129059474..860493f37 100644
--- a/system/loggerd/uploader.py
+++ b/system/loggerd/uploader.py
@@ -77,7 +77,7 @@ class Uploader():
self.immediate_priority = {"qlog": 0, "qlog.bz2": 0, "qcamera.ts": 1}
# dp
- self.dp_upload_ignored = Params().get_bool('dp_upload_ignored')
+ self.update_onced = False
def get_upload_sort(self, name):
if name in self.immediate_priority:
@@ -202,9 +202,9 @@ class Uploader():
self.last_time = time.monotonic() - start_time
self.last_speed = (sz / 1e6) / self.last_time
success = True
- if not self.dp_upload_ignored and stat.status_code == 412:
- self.dp_upload_ignored = True
- Params().put_bool('dp_upload_ignored', True)
+ if not self.update_onced and stat.status_code != 412:
+ Params().put_bool('dp_upload_ignored', False)
+ self.update_onced = True
cloudlog.event("upload_success" if stat.status_code != 412 else "upload_ignored", key=key, fn=fn, sz=sz, network_type=network_type, metered=metered)
else:
success = False
diff --git a/system/sensord/_sensord b/system/sensord/_sensord
index 112aef904..32bb50aca 100755
Binary files a/system/sensord/_sensord and b/system/sensord/_sensord differ
diff --git a/system/ubloxd/ubloxd b/system/ubloxd/ubloxd
index db67ae009..ee7fffb94 100755
Binary files a/system/ubloxd/ubloxd and b/system/ubloxd/ubloxd differ