From 17fbb74695ee8c91a870715683ccdc46ea13187d Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 20 May 2024 22:26:20 -0500 Subject: [PATCH 01/29] wip --- panda/board/safety/safety_hyundai_canfd.h | 3 --- selfdrive/car/hyundai/hyundaicanfd.py | 4 ++-- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/panda/board/safety/safety_hyundai_canfd.h b/panda/board/safety/safety_hyundai_canfd.h index 0949f3d..fbbc4e6 100755 --- a/panda/board/safety/safety_hyundai_canfd.h +++ b/panda/board/safety/safety_hyundai_canfd.h @@ -73,9 +73,6 @@ const CanMsg HYUNDAI_CANFD_HDA1_TX_MSGS[] = { #define HYUNDAI_CANFD_ALT_BUTTONS_ADDR_CHECK(pt_bus) \ {.msg = {{0x1aa, (pt_bus), 16, .check_checksum = false, .max_counter = 0xffU, .frequency = 50U}, { 0 }, { 0 }}}, \ -// #define HYUNDAI_CANFD_ALT_BUTTONS_ADDR_CHECK(pt_bus) \ -// {.msg = {{0x1aa, (pt_bus), 16, .check_checksum = false, .max_counter = 0xffU, .frequency = 50U}, { 0 }, { 0 }}}, \ - // SCC_CONTROL (from ADAS unit or camera) #define HYUNDAI_CANFD_SCC_ADDR_CHECK(scc_bus) \ {.msg = {{0x1a0, (scc_bus), 32, .check_checksum = true, .max_counter = 0xffU, .frequency = 50U}, { 0 }, { 0 }}}, \ diff --git a/selfdrive/car/hyundai/hyundaicanfd.py b/selfdrive/car/hyundai/hyundaicanfd.py index 65d0704..7e9ffbc 100755 --- a/selfdrive/car/hyundai/hyundaicanfd.py +++ b/selfdrive/car/hyundai/hyundaicanfd.py @@ -132,7 +132,7 @@ def create_acc_set_speed(packer, CP, CAN, cruise_info_copy, speed): def create_acc_cancel(packer, CP, CAN, cruise_info_copy): - # why are we executing this at all? + # This does nothing on the tucson # TODO: why do we copy different values here? if CP.flags & HyundaiFlags.CANFD_CAMERA_SCC.value: values = {s: cruise_info_copy[s] for s in [ @@ -156,7 +156,7 @@ def create_acc_cancel(packer, CP, CAN, cruise_info_copy): "CRUISE_STANDSTILL", ]} values.update({ - "ACCMode": 0, # testing 1 instead of 4 + "ACCMode": 4, # testing 1 instead of 4 "aReqRaw": 0.0, "aReqValue": 0.0, }) From 9cf87b08b5023c687c298934c81be1d617ba8d77 Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 20 May 2024 22:29:01 -0500 Subject: [PATCH 02/29] wip --- selfdrive/ui/qt/onroad.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/selfdrive/ui/qt/onroad.cc b/selfdrive/ui/qt/onroad.cc index 26bb974..04e27d3 100755 --- a/selfdrive/ui/qt/onroad.cc +++ b/selfdrive/ui/qt/onroad.cc @@ -527,7 +527,7 @@ void AnnotatedCameraWidget::drawHud(QPainter &p) { // } // } -void AnnotatedCameraWidget::drawSpeedWidget(QPainter &p, int x, int y, const QString &title, const QString &speedLimitStr, QColor colorSpeed, int width = 176) { +void AnnotatedCameraWidget::drawSpeedWidget(QPainter &p, int x, int y, const QString &title, const QString &speedLimitStr, QColor colorSpeed, int width = 172) { // Draw outer box + border to contain set speed and speed limit const int sign_margin = 12; const int us_sign_height = 186; From 6e6d4428dfe83625a2b596e71a6466684ca225c7 Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 20 May 2024 22:30:27 -0500 Subject: [PATCH 03/29] wip --- selfdrive/ui/qt/onroad.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/selfdrive/ui/qt/onroad.cc b/selfdrive/ui/qt/onroad.cc index 04e27d3..f0b3ffb 100755 --- a/selfdrive/ui/qt/onroad.cc +++ b/selfdrive/ui/qt/onroad.cc @@ -527,7 +527,7 @@ void AnnotatedCameraWidget::drawHud(QPainter &p) { // } // } -void AnnotatedCameraWidget::drawSpeedWidget(QPainter &p, int x, int y, const QString &title, const QString &speedLimitStr, QColor colorSpeed, int width = 172) { +void AnnotatedCameraWidget::drawSpeedWidget(QPainter &p, int x, int y, const QString &title, const QString &speedLimitStr, QColor colorSpeed, int width) { // Draw outer box + border to contain set speed and speed limit const int sign_margin = 12; const int us_sign_height = 186; From 1ef69ac52ef1542806e4a94a7031ecd3fd98c335 Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 20 May 2024 22:32:27 -0500 Subject: [PATCH 04/29] wip --- selfdrive/car/hyundai/carcontroller.py | 1 + 1 file changed, 1 insertion(+) diff --git a/selfdrive/car/hyundai/carcontroller.py b/selfdrive/car/hyundai/carcontroller.py index 9981296..bb28bb4 100755 --- a/selfdrive/car/hyundai/carcontroller.py +++ b/selfdrive/car/hyundai/carcontroller.py @@ -132,6 +132,7 @@ class CarController(CarControllerBase): can_sends.extend(hyundaicanfd.create_spas_messages(self.packer, self.CAN, self.frame, CC.leftBlinker, CC.rightBlinker)) # params_memory = Params("/dev/shm/params") + params_memory = Params("/dev/shm/params") if params_memory.get_bool("CPTLkasButtonAction"): if self.frame % 10 == 0: for _ in range(20): From 64578562fc0485a460e55b8b6da7373e4f97b86c Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 20 May 2024 22:34:45 -0500 Subject: [PATCH 05/29] wip --- selfdrive/car/hyundai/carcontroller.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/selfdrive/car/hyundai/carcontroller.py b/selfdrive/car/hyundai/carcontroller.py index bb28bb4..72f3669 100755 --- a/selfdrive/car/hyundai/carcontroller.py +++ b/selfdrive/car/hyundai/carcontroller.py @@ -135,8 +135,9 @@ class CarController(CarControllerBase): params_memory = Params("/dev/shm/params") if params_memory.get_bool("CPTLkasButtonAction"): if self.frame % 10 == 0: - for _ in range(20): - can_sends.append(hyundaicanfd.create_buttons_alt(self.packer, self.CP, self.CAN, CS.buttons_counter+1, Buttons.SET_DECEL)) + for _ in range(20): + can_sends.append(hyundaicanfd.create_buttons_alt(self.packer, self.CP, self.CAN, CS.buttons_counter+1, Buttons.SET_DECEL)) + print("Decel") # can_sends.extend(hyundaicanfd.create_adrv_messages(self.packer, self.CAN, self.frame)) # can_sends.append(hyundaicanfd.create_acc_set_speed(self.packer, self.CP, self.CAN, CS.cruise_info, 50)) # can_sends.append(hyundaicanfd.create_acc_cancel(self.packer, self.CP, self.CAN, CS.cruise_info)) From 2f2205ebe7cd2150bac67c540f65a051b1cdbe03 Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 20 May 2024 22:40:46 -0500 Subject: [PATCH 06/29] wip --- panda/board/main.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/panda/board/main.c b/panda/board/main.c index 00429e3..1e3e2d2 100755 --- a/panda/board/main.c +++ b/panda/board/main.c @@ -238,8 +238,13 @@ void tick_handler(void) { // clear heartbeat engaged state heartbeat_engaged = false; - if (current_safety_mode != SAFETY_SILENT) { - set_safety_mode(SAFETY_SILENT, 0U); + // if (current_safety_mode != SAFETY_SILENT) { + // set_safety_mode(SAFETY_SILENT, 0U); + // } + + // clearpilot + if (current_safety_mode != SAFETY_ALLOUTPUT) { + set_safety_mode(SAFETY_ALLOUTPUT, 0U); } if (power_save_status != POWER_SAVE_STATUS_ENABLED) { @@ -335,7 +340,9 @@ int main(void) { microsecond_timer_init(); // init to SILENT and can silent - set_safety_mode(SAFETY_SILENT, 0U); + //clearpilot + // set_safety_mode(SAFETY_SILENT, 0U); + set_safety_mode(SAFETY_ALLOUTPUT, 0U); // enable CAN TXs current_board->enable_can_transceivers(true); From 01dfb0205f5615d6383b3aea66f59158f16d7d06 Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 20 May 2024 22:52:32 -0500 Subject: [PATCH 07/29] wip --- common/swaglog.py | 3 ++- panda/board/main.c | 13 +++---------- 2 files changed, 5 insertions(+), 11 deletions(-) diff --git a/common/swaglog.py b/common/swaglog.py index ba81318..a302add 100755 --- a/common/swaglog.py +++ b/common/swaglog.py @@ -120,7 +120,8 @@ log.setLevel(logging.DEBUG) outhandler = logging.StreamHandler() -print_level = os.environ.get('LOGPRINT', 'warning') +# print_level = os.environ.get('LOGPRINT', 'warning') +print_level = os.environ.get('LOGPRINT', 'debug') if print_level == 'debug': outhandler.setLevel(logging.DEBUG) elif print_level == 'info': diff --git a/panda/board/main.c b/panda/board/main.c index 1e3e2d2..00429e3 100755 --- a/panda/board/main.c +++ b/panda/board/main.c @@ -238,13 +238,8 @@ void tick_handler(void) { // clear heartbeat engaged state heartbeat_engaged = false; - // if (current_safety_mode != SAFETY_SILENT) { - // set_safety_mode(SAFETY_SILENT, 0U); - // } - - // clearpilot - if (current_safety_mode != SAFETY_ALLOUTPUT) { - set_safety_mode(SAFETY_ALLOUTPUT, 0U); + if (current_safety_mode != SAFETY_SILENT) { + set_safety_mode(SAFETY_SILENT, 0U); } if (power_save_status != POWER_SAVE_STATUS_ENABLED) { @@ -340,9 +335,7 @@ int main(void) { microsecond_timer_init(); // init to SILENT and can silent - //clearpilot - // set_safety_mode(SAFETY_SILENT, 0U); - set_safety_mode(SAFETY_ALLOUTPUT, 0U); + set_safety_mode(SAFETY_SILENT, 0U); // enable CAN TXs current_board->enable_can_transceivers(true); From cb7def739edb8bcf9b0985fd4240a270304c6c8a Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 20 May 2024 22:59:50 -0500 Subject: [PATCH 08/29] wip --- panda/board/safety/safety_hyundai_canfd.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/panda/board/safety/safety_hyundai_canfd.h b/panda/board/safety/safety_hyundai_canfd.h index fbbc4e6..2850810 100755 --- a/panda/board/safety/safety_hyundai_canfd.h +++ b/panda/board/safety/safety_hyundai_canfd.h @@ -444,9 +444,9 @@ static int hyundai_canfd_fwd_hook(int bus_num, int addr) { bool is_scc_msg = ((addr == 0x1a0) && hyundai_longitudinal && !hyundai_canfd_hda2); bool block_msg = is_lkas_msg || is_lfa_msg || is_lfahda_msg || is_scc_msg; - if (!block_msg) { + // if (!block_msg) { CP bus_fwd = 0; - } + // } } return bus_fwd; From c22143d2cdf34c1d21787346a135648fdf875558 Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 20 May 2024 23:01:14 -0500 Subject: [PATCH 09/29] wip --- panda/board/safety/safety_hyundai_canfd.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/panda/board/safety/safety_hyundai_canfd.h b/panda/board/safety/safety_hyundai_canfd.h index 2850810..fc291f8 100755 --- a/panda/board/safety/safety_hyundai_canfd.h +++ b/panda/board/safety/safety_hyundai_canfd.h @@ -444,9 +444,9 @@ static int hyundai_canfd_fwd_hook(int bus_num, int addr) { bool is_scc_msg = ((addr == 0x1a0) && hyundai_longitudinal && !hyundai_canfd_hda2); bool block_msg = is_lkas_msg || is_lfa_msg || is_lfahda_msg || is_scc_msg; - // if (!block_msg) { CP + if (!block_msg || true) { bus_fwd = 0; - // } + } } return bus_fwd; From cc9e3d6827a04ae2fc0e1dde52edfe0800827846 Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 20 May 2024 23:05:08 -0500 Subject: [PATCH 10/29] wip --- panda/board/safety/safety_hyundai_canfd.h | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/panda/board/safety/safety_hyundai_canfd.h b/panda/board/safety/safety_hyundai_canfd.h index fc291f8..e32f0ef 100755 --- a/panda/board/safety/safety_hyundai_canfd.h +++ b/panda/board/safety/safety_hyundai_canfd.h @@ -440,11 +440,15 @@ static int hyundai_canfd_fwd_hook(int bus_num, int addr) { // HUD icons bool is_lfahda_msg = ((addr == 0x1e0) && !hyundai_canfd_hda2); + // Cruise Alt Buttons + bool is_cruise_alt_buttons = (addr == 0x1aa); // && hyundai_canfd_hda2); + // CRUISE_INFO for non-HDA2, we send our own longitudinal commands bool is_scc_msg = ((addr == 0x1a0) && hyundai_longitudinal && !hyundai_canfd_hda2); - bool block_msg = is_lkas_msg || is_lfa_msg || is_lfahda_msg || is_scc_msg; - if (!block_msg || true) { + bool block_msg = is_lkas_msg || is_lfa_msg || is_lfahda_msg || is_scc_msg + || is_cruise_alt_buttons; + if (!block_msg) { bus_fwd = 0; } } From 8dacb123629e65387f6f79cb2a1f34e8ab4f79df Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 20 May 2024 23:26:07 -0500 Subject: [PATCH 11/29] wip --- selfdrive/car/hyundai/carcontroller.py | 5 +++-- selfdrive/car/hyundai/carstate.py | 1 + 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/selfdrive/car/hyundai/carcontroller.py b/selfdrive/car/hyundai/carcontroller.py index 72f3669..9efe915 100755 --- a/selfdrive/car/hyundai/carcontroller.py +++ b/selfdrive/car/hyundai/carcontroller.py @@ -136,7 +136,7 @@ class CarController(CarControllerBase): if params_memory.get_bool("CPTLkasButtonAction"): if self.frame % 10 == 0: for _ in range(20): - can_sends.append(hyundaicanfd.create_buttons_alt(self.packer, self.CP, self.CAN, CS.buttons_counter+1, Buttons.SET_DECEL)) + can_sends.append(hyundaicanfd.create_buttons_alt(self.packer, self.CP, self.CAN, CS.buttons_counter+1, Buttons.SET_DECEL, CS.cruise_can_msg)) print("Decel") # can_sends.extend(hyundaicanfd.create_adrv_messages(self.packer, self.CAN, self.frame)) # can_sends.append(hyundaicanfd.create_acc_set_speed(self.packer, self.CP, self.CAN, CS.cruise_info, 50)) @@ -224,7 +224,8 @@ class CarController(CarControllerBase): # pass # can_sends.append(hyundaicanfd.create_acc_cancel(self.packer, self.CP, self.CAN, CS.cruise_info)) for _ in range(20): - can_sends.append(hyundaicanfd.create_buttons_alt(self.packer, self.CP, self.CAN, CS.buttons_counter+1, Buttons.CANCEL)) + if CS.cruise_can_msg: + can_sends.append(hyundaicanfd.create_buttons_alt(self.packer, self.CP, self.CAN, CS.buttons_counter+1, Buttons.CANCEL, CS.cruise_can_msg)) print("Try Cancel Button Alt") self.last_button_frame = self.frame CS.lkas_trigger_result = 1 diff --git a/selfdrive/car/hyundai/carstate.py b/selfdrive/car/hyundai/carstate.py index 9b504c3..771b79d 100755 --- a/selfdrive/car/hyundai/carstate.py +++ b/selfdrive/car/hyundai/carstate.py @@ -288,6 +288,7 @@ class CarState(CarStateBase): ret.cruiseState.nonAdaptive = cp.vl["MANUAL_SPEED_LIMIT_ASSIST"]["MSLA_ENABLED"] == 1 self.cruise_can_msg = copy.copy(cp.vl_all[self.cruise_btns_msg_canfd]) + print(self.cruise_can_msg) self.prev_cruise_buttons = self.cruise_buttons[-1] self.cruise_buttons.extend(cp.vl_all[self.cruise_btns_msg_canfd]["CRUISE_BUTTONS"]) From dce9b86fb668d7663ba7fda0a86739f42282be08 Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 20 May 2024 23:30:03 -0500 Subject: [PATCH 12/29] wip --- selfdrive/car/hyundai/hyundaicanfd.py | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/selfdrive/car/hyundai/hyundaicanfd.py b/selfdrive/car/hyundai/hyundaicanfd.py index 7e9ffbc..bc48a60 100755 --- a/selfdrive/car/hyundai/hyundaicanfd.py +++ b/selfdrive/car/hyundai/hyundaicanfd.py @@ -88,13 +88,22 @@ def create_buttons(packer, CP, CAN, cnt, btn): bus = CAN.ECAN if CP.flags & HyundaiFlags.CANFD_HDA2 else CAN.CAM return packer.make_can_msg("CRUISE_BUTTONS", bus, values) -def create_buttons_alt(packer, CP, CAN, cnt, btn): - values = { - "COUNTER": cnt, - "SET_ME_1": 1, - "SET_ME_2": 2, - "CRUISE_BUTTONS": btn, - } +# def create_buttons_alt(packer, CP, CAN, cnt, btn): +# values = { +# "COUNTER": cnt, +# "SET_ME_1": 1, +# "SET_ME_2": 2, +# "CRUISE_BUTTONS": btn, +# } + +# bus = CAN.ECAN # if CP.flags & HyundaiFlags.CANFD_HDA2 else CAN.CAM +# return packer.make_can_msg("CRUISE_BUTTONS_ALT", bus, values) + + +def create_buttons_alt(packer, CP, CAN, cnt, btn, template): + template.update({ + "CRUISE_BUTTONS": btn + }) bus = CAN.ECAN # if CP.flags & HyundaiFlags.CANFD_HDA2 else CAN.CAM return packer.make_can_msg("CRUISE_BUTTONS_ALT", bus, values) From 42f0e95f0aabb1ebd905fb202e8d27bbd17ffa49 Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 20 May 2024 23:32:02 -0500 Subject: [PATCH 13/29] wip --- selfdrive/car/hyundai/hyundaicanfd.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/selfdrive/car/hyundai/hyundaicanfd.py b/selfdrive/car/hyundai/hyundaicanfd.py index bc48a60..5a4f931 100755 --- a/selfdrive/car/hyundai/hyundaicanfd.py +++ b/selfdrive/car/hyundai/hyundaicanfd.py @@ -106,7 +106,7 @@ def create_buttons_alt(packer, CP, CAN, cnt, btn, template): }) bus = CAN.ECAN # if CP.flags & HyundaiFlags.CANFD_HDA2 else CAN.CAM - return packer.make_can_msg("CRUISE_BUTTONS_ALT", bus, values) + return packer.make_can_msg("CRUISE_BUTTONS_ALT", bus, template) def create_acc_set_speed(packer, CP, CAN, cruise_info_copy, speed): From f7ce58d71f399819da7ccaeaaadf5ab969d0966d Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 20 May 2024 23:34:45 -0500 Subject: [PATCH 14/29] wip --- selfdrive/car/hyundai/carcontroller.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/selfdrive/car/hyundai/carcontroller.py b/selfdrive/car/hyundai/carcontroller.py index 9efe915..8409a2c 100755 --- a/selfdrive/car/hyundai/carcontroller.py +++ b/selfdrive/car/hyundai/carcontroller.py @@ -223,10 +223,10 @@ class CarController(CarControllerBase): if self.CP.flags & HyundaiFlags.CANFD_ALT_BUTTONS: # pass # can_sends.append(hyundaicanfd.create_acc_cancel(self.packer, self.CP, self.CAN, CS.cruise_info)) - for _ in range(20): - if CS.cruise_can_msg: - can_sends.append(hyundaicanfd.create_buttons_alt(self.packer, self.CP, self.CAN, CS.buttons_counter+1, Buttons.CANCEL, CS.cruise_can_msg)) - print("Try Cancel Button Alt") + # for _ in range(20): + # if CS.cruise_can_msg: + # can_sends.append(hyundaicanfd.create_buttons_alt(self.packer, self.CP, self.CAN, CS.buttons_counter+1, Buttons.CANCEL, CS.cruise_can_msg)) + # print("Try Cancel Button Alt") self.last_button_frame = self.frame CS.lkas_trigger_result = 1 else: From 2c3a8273f75fd6658073dfbc16c89dfc447adf3d Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 20 May 2024 23:36:58 -0500 Subject: [PATCH 15/29] wip --- selfdrive/controls/controlsd.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/selfdrive/controls/controlsd.py b/selfdrive/controls/controlsd.py index 20f4e47..1cf6863 100755 --- a/selfdrive/controls/controlsd.py +++ b/selfdrive/controls/controlsd.py @@ -76,6 +76,8 @@ class Controls: self.params_memory = Params("/dev/shm/params") self.params_storage = Params("/persist/params") + self.params_memory.put_bool("CPTLkasButtonAction", False) + self.radarless_model = self.params.get("Model", encoding='utf-8') in RADARLESS_MODELS with car.CarParams.from_bytes(self.params.get("CarParams", block=True)) as msg: From b879b6790fb11ddad1cc8346d24d269830d941f9 Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 20 May 2024 23:52:07 -0500 Subject: [PATCH 16/29] wip --- selfdrive/car/hyundai/hyundaicanfd.py | 87 ++++++++++++++++++++++----- 1 file changed, 73 insertions(+), 14 deletions(-) diff --git a/selfdrive/car/hyundai/hyundaicanfd.py b/selfdrive/car/hyundai/hyundaicanfd.py index 5a4f931..ea47bed 100755 --- a/selfdrive/car/hyundai/hyundaicanfd.py +++ b/selfdrive/car/hyundai/hyundaicanfd.py @@ -88,25 +88,84 @@ def create_buttons(packer, CP, CAN, cnt, btn): bus = CAN.ECAN if CP.flags & HyundaiFlags.CANFD_HDA2 else CAN.CAM return packer.make_can_msg("CRUISE_BUTTONS", bus, values) -# def create_buttons_alt(packer, CP, CAN, cnt, btn): -# values = { -# "COUNTER": cnt, -# "SET_ME_1": 1, -# "SET_ME_2": 2, -# "CRUISE_BUTTONS": btn, -# } +# null +# {'CHECKSUM': [], 'COUNTER': [], 'NEW_SIGNAL_1': [], 'SET_ME_1': [], 'DISTANCE_UNIT': [], +# 'NEW_SIGNAL_2': [], 'ADAPT +# IVE_CRUISE_MAIN_BTN': [], 'NEW_SIGNAL_3': [], 'LFA_BTN': [], 'CRUISE_BUTTONS': [], +# 'NEW_SIGNAL_4': [], 'NORMAL_CRUI +# SE_MAIN_BTN': [], 'NEW_SIGNAL_5': [], 'SET_ME_2': [], 'NEW_SIGNAL_6': [], 'BYTE6': [], +# 'BYTE7': [], 'BYTE8': [], 'B +# YTE9': [], 'BYTE10': [], 'BYTE11': [], 'BYTE12': [], 'BYTE13': [], 'BYTE14': [], +# 'BYTE15': []} -# bus = CAN.ECAN # if CP.flags & HyundaiFlags.CANFD_HDA2 else CAN.CAM -# return packer.make_can_msg("CRUISE_BUTTONS_ALT", bus, values) +# holding down up button +# {'CHECKSUM': [5774.0], 'COUNTER': [63.0], 'NEW_SIGNAL_1': [0.0], 'SET_ME_1': +# [0.0], 'DISTANCE_UNIT': [1.0], 'NEW_SIGNAL_2': [4.0], 'ADAPTIVE_CRUISE_MAIN_BTN': +# [0.0], 'NEW_SIGNAL_3': [0.0], 'LFA_BTN': [0.0], 'CRUISE_BUTTONS': [1.0], +# 'NEW_SIGNAL_4': [0.0], 'NORMAL_CRUISE_MAIN_BTN': [0.0], 'NEW_SIGNAL_5': [0.0], +# 'SET_ME_2': [2.0], 'NEW_SIGNAL_6': [1.0], 'BYTE6': [32.0], 'BYTE7': [0.0], +# 'BYTE8': [26.0], 'BYTE9': [0.0], 'BYTE10': [0.0], 'BYTE11': [0.0], 'BYTE12': +# [0.0], 'BYTE13': [0.0], 'BYTE14': [0.0], 'BYTE15': [0.0]} + +# {'CHECKSUM': [14783.0], 'COUNTER': [150.0], 'NEW_SIGNAL_1': [0.0], +# 'SET_ME_1': [0.0], 'DISTANCE_UNIT': [1.0], 'NEW_ +# SIGNAL_2': [6.0], 'ADAPTIVE_CRUISE_MAIN_BTN': [0.0], 'NEW_SIGNAL_3': [0.0], +# 'LFA_BTN': [0.0], 'CRUISE_BUTTONS': [1. +# 0], 'NEW_SIGNAL_4': [0.0], 'NORMAL_CRUISE_MAIN_BTN': [0.0], 'NEW_SIGNAL_5': +# [0.0], 'SET_ME_2': [2.0], 'NEW_SIGNAL_6 +# ': [1.0], 'BYTE6': [37.0], 'BYTE7': [0.0], 'BYTE8': [30.0], 'BYTE9': [0.0], +# 'BYTE10': [0.0], 'BYTE11': [0.0], 'BYTE +# 12': [0.0], 'BYTE13': [0.0], 'BYTE14': [0.0], 'BYTE15': [0.0]} + +# {'CHECKSUM': [61602.0], 'COUNTER': [153.0], 'NEW_SIGNAL_1': [0.0], 'SET_ME_1': +# [0.0], 'DISTANCE_UNIT': [1.0], 'NEW_ +# SIGNAL_2': [0.0], 'ADAPTIVE_CRUISE_MAIN_BTN': [0.0], 'NEW_SIGNAL_3': [0.0], +# 'LFA_BTN': [1.0], 'CRUISE_BUTTONS': [1. +# 0], 'NEW_SIGNAL_4': [0.0], 'NORMAL_CRUISE_MAIN_BTN': [0.0], 'NEW_SIGNAL_5': +# [0.0], 'SET_ME_2': [2.0], 'NEW_SIGNAL_6 +# ': [1.0], 'BYTE6': [38.0], 'BYTE7': [0.0], 'BYTE8': [31.0], 'BYTE9': [0.0], +# 'BYTE10': [0.0], 'BYTE11': [0.0], 'BYTE +# 12': [0.0], 'BYTE13': [0.0], 'BYTE14': [0.0], 'BYTE15': [0.0]} -def create_buttons_alt(packer, CP, CAN, cnt, btn, template): - template.update({ - "CRUISE_BUTTONS": btn - }) +def create_buttons_alt(packer, CP, CAN, cnt, btn): + values = { + "COUNTER": cnt, + "NEW_SIGNAL_1": 0.0, + "DISTANCE_UNIT": 1.0, + "SET_ME_1": 0.0, + "NEW_SIGNAL_2": 0.0, + "ADAPTIVE_CRUISE_MAIN_BTN": 0.0, + "NEW_SIGNAL_3": 0.0, + "CRUISE_BUTTONS": btn * 1.0, + "NEW_SIGNAL_4": 0.0, + "NORMAL_CRUISE_MAIN_BTN": 0.0, + "NEW_SIGNAL_5": 0.0, + "SET_ME_2": 2.0, + "NEW_SIGNAL_5": 1.0, + "BYTE_6": 38.0, # Target speed? + "BYTE_7": 0.0, + "BYTE_8": 31.0, # Current spedometer speed? + "BYTE_9": 0.0, + "BYTE_10": 0.0, + "BYTE_11": 0.0, + "BYTE_12": 0.0, + "BYTE_13": 0.0, + "BYTE_14": 0.0, + "BYTE_15": 0.0, + } bus = CAN.ECAN # if CP.flags & HyundaiFlags.CANFD_HDA2 else CAN.CAM - return packer.make_can_msg("CRUISE_BUTTONS_ALT", bus, template) + return packer.make_can_msg("CRUISE_BUTTONS_ALT", bus, values) + + +# def create_buttons_alt(packer, CP, CAN, cnt, btn, template): +# template.update({ +# "CRUISE_BUTTONS": btn +# }) + +# bus = CAN.ECAN # if CP.flags & HyundaiFlags.CANFD_HDA2 else CAN.CAM +# return packer.make_can_msg("CRUISE_BUTTONS_ALT", bus, template) def create_acc_set_speed(packer, CP, CAN, cruise_info_copy, speed): From 6939b8820e0ec402b8b28f664b44d7a991eb2772 Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 20 May 2024 23:52:23 -0500 Subject: [PATCH 17/29] wip --- selfdrive/car/hyundai/hyundaicanfd.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/selfdrive/car/hyundai/hyundaicanfd.py b/selfdrive/car/hyundai/hyundaicanfd.py index ea47bed..d18c59a 100755 --- a/selfdrive/car/hyundai/hyundaicanfd.py +++ b/selfdrive/car/hyundai/hyundaicanfd.py @@ -137,7 +137,7 @@ def create_buttons_alt(packer, CP, CAN, cnt, btn): "NEW_SIGNAL_2": 0.0, "ADAPTIVE_CRUISE_MAIN_BTN": 0.0, "NEW_SIGNAL_3": 0.0, - "CRUISE_BUTTONS": btn * 1.0, + "CRUISE_BUTTONS": 1.0 #btn * 1.0, "NEW_SIGNAL_4": 0.0, "NORMAL_CRUISE_MAIN_BTN": 0.0, "NEW_SIGNAL_5": 0.0, From babab7f4156b1d8692296beab8ac44f77348a130 Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 20 May 2024 23:53:14 -0500 Subject: [PATCH 18/29] wip --- selfdrive/car/hyundai/hyundaicanfd.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/selfdrive/car/hyundai/hyundaicanfd.py b/selfdrive/car/hyundai/hyundaicanfd.py index d18c59a..1fac03c 100755 --- a/selfdrive/car/hyundai/hyundaicanfd.py +++ b/selfdrive/car/hyundai/hyundaicanfd.py @@ -137,7 +137,7 @@ def create_buttons_alt(packer, CP, CAN, cnt, btn): "NEW_SIGNAL_2": 0.0, "ADAPTIVE_CRUISE_MAIN_BTN": 0.0, "NEW_SIGNAL_3": 0.0, - "CRUISE_BUTTONS": 1.0 #btn * 1.0, + "CRUISE_BUTTONS": 1.0, #btn * 1.0, "NEW_SIGNAL_4": 0.0, "NORMAL_CRUISE_MAIN_BTN": 0.0, "NEW_SIGNAL_5": 0.0, From 8e71d08b8281c779af871b130eed4891b8c2da90 Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 20 May 2024 23:54:40 -0500 Subject: [PATCH 19/29] wip --- selfdrive/car/hyundai/hyundaicanfd.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/selfdrive/car/hyundai/hyundaicanfd.py b/selfdrive/car/hyundai/hyundaicanfd.py index 1fac03c..9c111e4 100755 --- a/selfdrive/car/hyundai/hyundaicanfd.py +++ b/selfdrive/car/hyundai/hyundaicanfd.py @@ -128,7 +128,7 @@ def create_buttons(packer, CP, CAN, cnt, btn): # 12': [0.0], 'BYTE13': [0.0], 'BYTE14': [0.0], 'BYTE15': [0.0]} -def create_buttons_alt(packer, CP, CAN, cnt, btn): +def create_buttons_alt(packer, CP, CAN, cnt, btn, template): values = { "COUNTER": cnt, "NEW_SIGNAL_1": 0.0, From fc451096c5c31caf47ee8dafa0e1fcceb6cd8199 Mon Sep 17 00:00:00 2001 From: Your Name Date: Tue, 21 May 2024 00:03:13 -0500 Subject: [PATCH 20/29] wip --- common/params.cc | 1 + selfdrive/car/hyundai/carstate.py | 2 ++ selfdrive/car/hyundai/hyundaicanfd.py | 7 +++++-- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/common/params.cc b/common/params.cc index f65de49..47f8bb0 100755 --- a/common/params.cc +++ b/common/params.cc @@ -232,6 +232,7 @@ std::unordered_map keys = { {"CarMake", PERSISTENT}, {"CarModel", PERSISTENT}, + {"CarCruiseDisplayActual", PERSISTENT}, {"CarSpeedLimit", PERSISTENT}, {"CarSpeedLimitLiteral", PERSISTENT}, {"SpeedLimitLatDesired", PERSISTENT}, diff --git a/selfdrive/car/hyundai/carstate.py b/selfdrive/car/hyundai/carstate.py index 771b79d..390bec3 100755 --- a/selfdrive/car/hyundai/carstate.py +++ b/selfdrive/car/hyundai/carstate.py @@ -211,6 +211,8 @@ class CarState(CarStateBase): self.params_memory.put_int("CarSpeedLimitLiteral", self.calculate_speed_limit(cp, cp_cam)) self.params_memory.put_float("CarSpeedLimit", self.calculate_speed_limit(cp, cp_cam) * speed_conv) + self.params_memory.put_float("CarCruiseDisplayActual", cp_cruise.vl["SCC11"]["VSetDis"]) + return ret diff --git a/selfdrive/car/hyundai/hyundaicanfd.py b/selfdrive/car/hyundai/hyundaicanfd.py index 9c111e4..892c638 100755 --- a/selfdrive/car/hyundai/hyundaicanfd.py +++ b/selfdrive/car/hyundai/hyundaicanfd.py @@ -129,6 +129,9 @@ def create_buttons(packer, CP, CAN, cnt, btn): def create_buttons_alt(packer, CP, CAN, cnt, btn, template): + params_memory = Params("/dev/shm/params") + self.params_memory.get_float("CarCruiseDisplayActual") + values = { "COUNTER": cnt, "NEW_SIGNAL_1": 0.0, @@ -143,9 +146,9 @@ def create_buttons_alt(packer, CP, CAN, cnt, btn, template): "NEW_SIGNAL_5": 0.0, "SET_ME_2": 2.0, "NEW_SIGNAL_5": 1.0, - "BYTE_6": 38.0, # Target speed? + "BYTE_6": CarCruiseDisplayActual+1, # Target "BYTE_7": 0.0, - "BYTE_8": 31.0, # Current spedometer speed? + "BYTE_8": CarCruiseDisplayActual, # Current cruise sets "BYTE_9": 0.0, "BYTE_10": 0.0, "BYTE_11": 0.0, From 8818f9135ac884b3993e7c2f628b9c99dcbd41db Mon Sep 17 00:00:00 2001 From: Your Name Date: Tue, 21 May 2024 00:06:17 -0500 Subject: [PATCH 21/29] wip --- selfdrive/car/hyundai/hyundaicanfd.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/selfdrive/car/hyundai/hyundaicanfd.py b/selfdrive/car/hyundai/hyundaicanfd.py index 892c638..8dbea43 100755 --- a/selfdrive/car/hyundai/hyundaicanfd.py +++ b/selfdrive/car/hyundai/hyundaicanfd.py @@ -130,8 +130,8 @@ def create_buttons(packer, CP, CAN, cnt, btn): def create_buttons_alt(packer, CP, CAN, cnt, btn, template): params_memory = Params("/dev/shm/params") - self.params_memory.get_float("CarCruiseDisplayActual") - + params_memory.get_float("CarCruiseDisplayActual") + values = { "COUNTER": cnt, "NEW_SIGNAL_1": 0.0, From cc7a35b30033edabd82e9ca67ebebcabc8ac6fed Mon Sep 17 00:00:00 2001 From: Your Name Date: Tue, 21 May 2024 00:06:37 -0500 Subject: [PATCH 22/29] wip --- selfdrive/car/hyundai/carstate.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/selfdrive/car/hyundai/carstate.py b/selfdrive/car/hyundai/carstate.py index 390bec3..aba6847 100755 --- a/selfdrive/car/hyundai/carstate.py +++ b/selfdrive/car/hyundai/carstate.py @@ -290,7 +290,7 @@ class CarState(CarStateBase): ret.cruiseState.nonAdaptive = cp.vl["MANUAL_SPEED_LIMIT_ASSIST"]["MSLA_ENABLED"] == 1 self.cruise_can_msg = copy.copy(cp.vl_all[self.cruise_btns_msg_canfd]) - print(self.cruise_can_msg) + # print(self.cruise_can_msg) self.prev_cruise_buttons = self.cruise_buttons[-1] self.cruise_buttons.extend(cp.vl_all[self.cruise_btns_msg_canfd]["CRUISE_BUTTONS"]) From 70bf59ccbfd739f0ed6dabfc6a90f657512ed9a9 Mon Sep 17 00:00:00 2001 From: Your Name Date: Tue, 21 May 2024 00:08:37 -0500 Subject: [PATCH 23/29] wip --- selfdrive/car/hyundai/hyundaicanfd.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/selfdrive/car/hyundai/hyundaicanfd.py b/selfdrive/car/hyundai/hyundaicanfd.py index 8dbea43..c9d0a91 100755 --- a/selfdrive/car/hyundai/hyundaicanfd.py +++ b/selfdrive/car/hyundai/hyundaicanfd.py @@ -130,7 +130,7 @@ def create_buttons(packer, CP, CAN, cnt, btn): def create_buttons_alt(packer, CP, CAN, cnt, btn, template): params_memory = Params("/dev/shm/params") - params_memory.get_float("CarCruiseDisplayActual") + CarCruiseDisplayActual = params_memory.get_float("CarCruiseDisplayActual") values = { "COUNTER": cnt, From db94b5f923636015dbe696294a7064c9f2e96f14 Mon Sep 17 00:00:00 2001 From: Your Name Date: Tue, 21 May 2024 00:10:04 -0500 Subject: [PATCH 24/29] wip --- selfdrive/car/hyundai/hyundaicanfd.py | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/selfdrive/car/hyundai/hyundaicanfd.py b/selfdrive/car/hyundai/hyundaicanfd.py index c9d0a91..1179cbc 100755 --- a/selfdrive/car/hyundai/hyundaicanfd.py +++ b/selfdrive/car/hyundai/hyundaicanfd.py @@ -146,16 +146,16 @@ def create_buttons_alt(packer, CP, CAN, cnt, btn, template): "NEW_SIGNAL_5": 0.0, "SET_ME_2": 2.0, "NEW_SIGNAL_5": 1.0, - "BYTE_6": CarCruiseDisplayActual+1, # Target - "BYTE_7": 0.0, - "BYTE_8": CarCruiseDisplayActual, # Current cruise sets - "BYTE_9": 0.0, - "BYTE_10": 0.0, - "BYTE_11": 0.0, - "BYTE_12": 0.0, - "BYTE_13": 0.0, - "BYTE_14": 0.0, - "BYTE_15": 0.0, + # "BYTE_6": CarCruiseDisplayActual+1, # Target + # "BYTE_7": 0.0, + # "BYTE_8": CarCruiseDisplayActual, # Current cruise sets + # "BYTE_9": 0.0, + # "BYTE_10": 0.0, + # "BYTE_11": 0.0, + # "BYTE_12": 0.0, + # "BYTE_13": 0.0, + # "BYTE_14": 0.0, + # "BYTE_15": 0.0, } bus = CAN.ECAN # if CP.flags & HyundaiFlags.CANFD_HDA2 else CAN.CAM From 2f9d425859c2a190ca69e5ba9fa2ee7adb32a33a Mon Sep 17 00:00:00 2001 From: Your Name Date: Tue, 21 May 2024 00:19:09 -0500 Subject: [PATCH 25/29] wip --- panda/board/safety/safety_hyundai_canfd.h | 6 ++++-- selfdrive/car/hyundai/carcontroller.py | 8 ++++---- selfdrive/car/hyundai/hyundaicanfd.py | 1 + 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/panda/board/safety/safety_hyundai_canfd.h b/panda/board/safety/safety_hyundai_canfd.h index e32f0ef..edcce2f 100755 --- a/panda/board/safety/safety_hyundai_canfd.h +++ b/panda/board/safety/safety_hyundai_canfd.h @@ -21,14 +21,16 @@ const SteeringLimits HYUNDAI_CANFD_STEERING_LIMITS = { const CanMsg HYUNDAI_CANFD_HDA2_TX_MSGS[] = { {0x50, 0, 16}, // LKAS {0x1CF, 1, 8}, // CRUISE_BUTTON - {0x1AA, 1, 16}, // CRUISE_BUTTONS_ALT + {0x1AA, 1, 16}, // CRUISE_BUTTONS_ALT + {0x1A0, 1, 32}, // CRUISE_INFO {0x2A4, 0, 24}, // CAM_0x2A4 }; const CanMsg HYUNDAI_CANFD_HDA2_ALT_STEERING_TX_MSGS[] = { {0x110, 0, 32}, // LKAS_ALT {0x1CF, 1, 8}, // CRUISE_BUTTON - {0x1AA, 1, 16}, // CRUISE_BUTTONS_ALT + {0x1AA, 1, 16}, // CRUISE_BUTTONS_ALT + {0x1A0, 1, 32}, // CRUISE_INFO {0x362, 0, 32}, // CAM_0x362 }; diff --git a/selfdrive/car/hyundai/carcontroller.py b/selfdrive/car/hyundai/carcontroller.py index 8409a2c..5d54647 100755 --- a/selfdrive/car/hyundai/carcontroller.py +++ b/selfdrive/car/hyundai/carcontroller.py @@ -134,12 +134,12 @@ class CarController(CarControllerBase): # params_memory = Params("/dev/shm/params") params_memory = Params("/dev/shm/params") if params_memory.get_bool("CPTLkasButtonAction"): - if self.frame % 10 == 0: - for _ in range(20): - can_sends.append(hyundaicanfd.create_buttons_alt(self.packer, self.CP, self.CAN, CS.buttons_counter+1, Buttons.SET_DECEL, CS.cruise_can_msg)) + # if self.frame % 10 == 0: + # for _ in range(20): + # can_sends.append(hyundaicanfd.create_buttons_alt(self.packer, self.CP, self.CAN, CS.buttons_counter+1, Buttons.SET_DECEL, CS.cruise_can_msg)) print("Decel") # can_sends.extend(hyundaicanfd.create_adrv_messages(self.packer, self.CAN, self.frame)) - # can_sends.append(hyundaicanfd.create_acc_set_speed(self.packer, self.CP, self.CAN, CS.cruise_info, 50)) + can_sends.append(hyundaicanfd.create_acc_set_speed(self.packer, self.CP, self.CAN, CS.cruise_info, 50)) # can_sends.append(hyundaicanfd.create_acc_cancel(self.packer, self.CP, self.CAN, CS.cruise_info)) # print("Debug cancel executed") diff --git a/selfdrive/car/hyundai/hyundaicanfd.py b/selfdrive/car/hyundai/hyundaicanfd.py index 1179cbc..dc37bc1 100755 --- a/selfdrive/car/hyundai/hyundaicanfd.py +++ b/selfdrive/car/hyundai/hyundaicanfd.py @@ -129,6 +129,7 @@ def create_buttons(packer, CP, CAN, cnt, btn): def create_buttons_alt(packer, CP, CAN, cnt, btn, template): + return params_memory = Params("/dev/shm/params") CarCruiseDisplayActual = params_memory.get_float("CarCruiseDisplayActual") From 9aabc7e6058bf1567fe819794678a51da3a3fce4 Mon Sep 17 00:00:00 2001 From: Your Name Date: Tue, 21 May 2024 00:20:54 -0500 Subject: [PATCH 26/29] wip --- panda/board/safety/safety_hyundai_canfd.h | 34 +++++++++++------------ 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/panda/board/safety/safety_hyundai_canfd.h b/panda/board/safety/safety_hyundai_canfd.h index edcce2f..1a1acdc 100755 --- a/panda/board/safety/safety_hyundai_canfd.h +++ b/panda/board/safety/safety_hyundai_canfd.h @@ -403,26 +403,26 @@ BO_ 1151 HVAC_TOUCH_BUTTONS: 8 XXX } // ACCEL: safety check - if (addr == 0x1a0) { - int desired_accel_raw = (((GET_BYTE(to_send, 17) & 0x7U) << 8) | GET_BYTE(to_send, 16)) - 1023U; - int desired_accel_val = ((GET_BYTE(to_send, 18) << 4) | (GET_BYTE(to_send, 17) >> 4)) - 1023U; + // if (addr == 0x1a0) { + // int desired_accel_raw = (((GET_BYTE(to_send, 17) & 0x7U) << 8) | GET_BYTE(to_send, 16)) - 1023U; + // int desired_accel_val = ((GET_BYTE(to_send, 18) << 4) | (GET_BYTE(to_send, 17) >> 4)) - 1023U; - bool violation = false; + // bool violation = false; - if (hyundai_longitudinal) { - violation |= longitudinal_accel_checks(desired_accel_raw, HYUNDAI_LONG_LIMITS); - violation |= longitudinal_accel_checks(desired_accel_val, HYUNDAI_LONG_LIMITS); - } else { - // only used to cancel on here - if ((desired_accel_raw != 0) || (desired_accel_val != 0)) { - violation = true; - } - } + // if (hyundai_longitudinal) { + // violation |= longitudinal_accel_checks(desired_accel_raw, HYUNDAI_LONG_LIMITS); + // violation |= longitudinal_accel_checks(desired_accel_val, HYUNDAI_LONG_LIMITS); + // } else { + // // only used to cancel on here + // if ((desired_accel_raw != 0) || (desired_accel_val != 0)) { + // violation = true; + // } + // } - if (violation) { - tx = false; - } - } + // if (violation) { + // tx = false; + // } + // } return tx; } From dd96b5aea71bc92f5942e99350aae4479c52f4a1 Mon Sep 17 00:00:00 2001 From: Your Name Date: Tue, 21 May 2024 00:22:19 -0500 Subject: [PATCH 27/29] wip --- selfdrive/car/hyundai/carcontroller.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/selfdrive/car/hyundai/carcontroller.py b/selfdrive/car/hyundai/carcontroller.py index 5d54647..b00fec8 100755 --- a/selfdrive/car/hyundai/carcontroller.py +++ b/selfdrive/car/hyundai/carcontroller.py @@ -137,7 +137,7 @@ class CarController(CarControllerBase): # if self.frame % 10 == 0: # for _ in range(20): # can_sends.append(hyundaicanfd.create_buttons_alt(self.packer, self.CP, self.CAN, CS.buttons_counter+1, Buttons.SET_DECEL, CS.cruise_can_msg)) - print("Decel") + print("Decel") # can_sends.extend(hyundaicanfd.create_adrv_messages(self.packer, self.CAN, self.frame)) can_sends.append(hyundaicanfd.create_acc_set_speed(self.packer, self.CP, self.CAN, CS.cruise_info, 50)) # can_sends.append(hyundaicanfd.create_acc_cancel(self.packer, self.CP, self.CAN, CS.cruise_info)) From b3467cf7395543a988f6be803632d10a7478cb69 Mon Sep 17 00:00:00 2001 From: Your Name Date: Tue, 21 May 2024 00:29:31 -0500 Subject: [PATCH 28/29] wip --- selfdrive/car/hyundai/carcontroller.py | 8 +++++-- selfdrive/car/hyundai/hyundaicanfd.py | 31 ++++++++++++++++++++++++++ selfdrive/controls/controlsd.py | 14 ++++++------ 3 files changed, 44 insertions(+), 9 deletions(-) diff --git a/selfdrive/car/hyundai/carcontroller.py b/selfdrive/car/hyundai/carcontroller.py index b00fec8..241b157 100755 --- a/selfdrive/car/hyundai/carcontroller.py +++ b/selfdrive/car/hyundai/carcontroller.py @@ -134,12 +134,16 @@ class CarController(CarControllerBase): # params_memory = Params("/dev/shm/params") params_memory = Params("/dev/shm/params") if params_memory.get_bool("CPTLkasButtonAction"): + if self.frame % 2 == 0: + can_sends.append(hyundaicanfd.create_acc_control_alt(self.packer, self.CAN, CC.enabled, self.accel_last, accel, stopping, CC.cruiseControl.override, + set_speed_in_units, hud_control)) + self.accel_last = accel # if self.frame % 10 == 0: # for _ in range(20): # can_sends.append(hyundaicanfd.create_buttons_alt(self.packer, self.CP, self.CAN, CS.buttons_counter+1, Buttons.SET_DECEL, CS.cruise_can_msg)) - print("Decel") + # print("Decel") # can_sends.extend(hyundaicanfd.create_adrv_messages(self.packer, self.CAN, self.frame)) - can_sends.append(hyundaicanfd.create_acc_set_speed(self.packer, self.CP, self.CAN, CS.cruise_info, 50)) + # can_sends.append(hyundaicanfd.create_acc_set_speed(self.packer, self.CP, self.CAN, CS.cruise_info, 50)) # can_sends.append(hyundaicanfd.create_acc_cancel(self.packer, self.CP, self.CAN, CS.cruise_info)) # print("Debug cancel executed") diff --git a/selfdrive/car/hyundai/hyundaicanfd.py b/selfdrive/car/hyundai/hyundaicanfd.py index dc37bc1..9d878c9 100755 --- a/selfdrive/car/hyundai/hyundaicanfd.py +++ b/selfdrive/car/hyundai/hyundaicanfd.py @@ -275,6 +275,37 @@ def create_acc_control(packer, CAN, enabled, accel_last, accel, stopping, gas_ov return packer.make_can_msg("SCC_CONTROL", CAN.ECAN, values) + +def create_acc_control_alt(packer, CAN, enabled, accel_last, accel, stopping, gas_override, set_speed, hud_control): + jerk = 5 + jn = jerk / 50 + if not enabled or gas_override: + a_val, a_raw = 0, 0 + else: + a_raw = accel + a_val = clip(accel, accel_last - jn, accel_last + jn) + + values = { + "ACCMode": 0 if not enabled else (2 if gas_override else 1), + "MainMode_ACC": 1, + "StopReq": 1 if stopping else 0, + "aReqValue": a_val, + "aReqRaw": a_raw, + "VSetDis": set_speed, + "JerkLowerLimit": jerk if enabled else 1, + "JerkUpperLimit": 3.0, + + "ACC_ObjDist": 1, + "ObjValid": 0, + "OBJ_STATUS": 2, + "SET_ME_2": 0x4, + "SET_ME_3": 0x3, + "SET_ME_TMP_64": 0x64, + "DISTANCE_SETTING": hud_control.leadDistanceBars, + } + + return packer.make_can_msg("SCC_CONTROL", CAN.ECAN, values) + # Disabled blinker messages def create_spas_messages(packer, CAN, frame, left_blink, right_blink): ret = [] diff --git a/selfdrive/controls/controlsd.py b/selfdrive/controls/controlsd.py index 1cf6863..46bc44b 100755 --- a/selfdrive/controls/controlsd.py +++ b/selfdrive/controls/controlsd.py @@ -1133,13 +1133,13 @@ class Controls: self.drive_added = True # Clearpilot - todo: override conditional on cruise button tap - # if any(be.pressed and be.type == FrogPilotButtonType.lkas for be in CS.buttonEvents) and self.experimental_mode_via_lkas: - # if self.frogpilot_variables.conditional_experimental_mode: - # conditional_status = self.params_memory.get_int("CEStatus") - # override_value = 0 if conditional_status in {1, 2, 3, 4, 5, 6} else 3 if conditional_status >= 7 else 4 - # self.params_memory.put_int("CEStatus", override_value) - # else: - # self.params.put_bool_nonblocking("ExperimentalMode", not self.experimental_mode) + if any(be.pressed and be.type == FrogPilotButtonType.lkas for be in CS.buttonEvents) and self.experimental_mode_via_lkas: + if self.frogpilot_variables.conditional_experimental_mode: + conditional_status = self.params_memory.get_int("CEStatus") + override_value = 0 if conditional_status in {1, 2, 3, 4, 5, 6} else 3 if conditional_status >= 7 else 4 + self.params_memory.put_int("CEStatus", override_value) + else: + self.params.put_bool_nonblocking("ExperimentalMode", not self.experimental_mode) self.previously_enabled |= (self.enabled or self.FPCC.alwaysOnLateral) and CS.vEgo > CRUISING_SPEED self.previously_enabled &= self.driving_gear From 7f63e516586dc709ea1f6246e5a3c51dda5c7bab Mon Sep 17 00:00:00 2001 From: Comma Device Date: Sun, 9 Jun 2024 21:08:28 +0000 Subject: [PATCH 29/29] wip --- .gitignore | 2 +- .../screenrecorder/moc_screenrecorder.cc | 0 .../ui/qt/offroad/moc_control_settings.cc | 0 .../ui/qt/offroad/moc_vehicle_settings.cc | 0 .../ui/qt/offroad/moc_visual_settings.cc | 0 .../ui/qt/widgets/moc_frogpilot_controls.cc | 0 selfdrive/ui/translations/main_ar.ts | 132 ++++++-------- selfdrive/ui/translations/main_de.ts | 166 ++++-------------- selfdrive/ui/translations/main_fr.ts | 132 ++++++-------- selfdrive/ui/translations/main_ja.ts | 166 ++++-------------- selfdrive/ui/translations/main_ko.ts | 132 ++++++-------- selfdrive/ui/translations/main_pt-BR.ts | 132 ++++++-------- selfdrive/ui/translations/main_th.ts | 132 ++++++-------- selfdrive/ui/translations/main_tr.ts | 166 ++++-------------- selfdrive/ui/translations/main_zh-CHS.ts | 132 ++++++-------- selfdrive/ui/translations/main_zh-CHT.ts | 132 ++++++-------- system/clearpilot/dev/on_start.sh | 1 - system/clearpilot/dev/on_start_brian.sh.cpt | 2 + system/clearpilot/dev/reverse_ssh.cpt | Bin 409 -> 0 bytes 19 files changed, 481 insertions(+), 946 deletions(-) mode change 100755 => 100644 selfdrive/frogpilot/screenrecorder/moc_screenrecorder.cc mode change 100755 => 100644 selfdrive/frogpilot/ui/qt/offroad/moc_control_settings.cc mode change 100755 => 100644 selfdrive/frogpilot/ui/qt/offroad/moc_vehicle_settings.cc mode change 100755 => 100644 selfdrive/frogpilot/ui/qt/offroad/moc_visual_settings.cc mode change 100755 => 100644 selfdrive/frogpilot/ui/qt/widgets/moc_frogpilot_controls.cc create mode 100644 system/clearpilot/dev/on_start_brian.sh.cpt delete mode 100755 system/clearpilot/dev/reverse_ssh.cpt diff --git a/.gitignore b/.gitignore index be40251..4889c6b 100755 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,5 @@ prebuilt -system/clearpilot/dev/reverse_ssh +system/clearpilot/dev/on_start_brian.sh system/clearpilot/dev/id_rsa system/clearpilot/dev/id_rsa.pub venv/ diff --git a/selfdrive/frogpilot/screenrecorder/moc_screenrecorder.cc b/selfdrive/frogpilot/screenrecorder/moc_screenrecorder.cc old mode 100755 new mode 100644 diff --git a/selfdrive/frogpilot/ui/qt/offroad/moc_control_settings.cc b/selfdrive/frogpilot/ui/qt/offroad/moc_control_settings.cc old mode 100755 new mode 100644 diff --git a/selfdrive/frogpilot/ui/qt/offroad/moc_vehicle_settings.cc b/selfdrive/frogpilot/ui/qt/offroad/moc_vehicle_settings.cc old mode 100755 new mode 100644 diff --git a/selfdrive/frogpilot/ui/qt/offroad/moc_visual_settings.cc b/selfdrive/frogpilot/ui/qt/offroad/moc_visual_settings.cc old mode 100755 new mode 100644 diff --git a/selfdrive/frogpilot/ui/qt/widgets/moc_frogpilot_controls.cc b/selfdrive/frogpilot/ui/qt/widgets/moc_frogpilot_controls.cc old mode 100755 new mode 100644 diff --git a/selfdrive/ui/translations/main_ar.ts b/selfdrive/ui/translations/main_ar.ts index 65a4729..b827526 100755 --- a/selfdrive/ui/translations/main_ar.ts +++ b/selfdrive/ui/translations/main_ar.ts @@ -95,7 +95,7 @@ AnnotatedCameraWidget km/h - كم/س + كم/س mph @@ -103,15 +103,15 @@ MAX - MAX + MAX SPEED - SPEED + SPEED LIMIT - LIMIT + LIMIT meters @@ -149,26 +149,14 @@ - Max: %1%2 - - | Obstacle: - - | Obstacle Factor: - - - Stop: - - - Stop Factor: - - Follow: - - Follow Distance: @@ -199,18 +187,10 @@ Experimental Mode activated for - - intersection - - upcoming intersection - - turn - - upcoming turn @@ -219,18 +199,10 @@ Experimental Mode activated due to - - SLC - - no speed limit set - - speed - - speed being less than @@ -287,6 +259,14 @@ . Double tap the screen to revert + + meters + + + + feet + + ConfirmationDialog @@ -318,27 +298,27 @@ DestinationWidget Home - المنزل + المنزل Work - العمل + العمل No destination set - لم يتم ضبط الوجهة + لم يتم ضبط الوجهة home - المنزل + المنزل work - العمل + العمل No %1 location set - لم يتم ضبط %1 موقع + لم يتم ضبط %1 موقع @@ -710,45 +690,41 @@ MapETA eta - الوصول + الوصول min - د + د hr - س + س MapSettings NAVIGATION - التنقل + التنقل Manage at connect.comma.ai - الإدارة في connect.comma.ai - - - Manage at %1 - + الإدارة في connect.comma.ai MapWindow Map Loading - تحميل الخريطة + تحميل الخريطة Waiting for GPS - بانتظار GPS + بانتظار GPS Waiting for route - بانتظار الطريق + بانتظار الطريق @@ -857,19 +833,19 @@ PairingPopup Pair your device to your comma account - اقرن جهازك مع حسابك على comma + اقرن جهازك مع حسابك على comma Go to https://connect.comma.ai on your phone - انتقل إلى https://connect.comma.ai على جوالك + انتقل إلى https://connect.comma.ai على جوالك Click "add new device" and scan the QR code on the right - انقر "،إضافة جهاز جديد"، وامسح رمز الاستجابة السريعة (QR) على اليمين + انقر "،إضافة جهاز جديد"، وامسح رمز الاستجابة السريعة (QR) على اليمين Bookmark connect.comma.ai to your home screen to use it like an app - اجعل لـconnect.comma.ai إشارة مرجعية على شاشتك الرئيسية من أجل استخدامه مثل أي تطبيق + اجعل لـconnect.comma.ai إشارة مرجعية على شاشتك الرئيسية من أجل استخدامه مثل أي تطبيق @@ -887,42 +863,42 @@ PrimeAdWidget Upgrade Now - الترقية الآن + الترقية الآن Become a comma prime member at connect.comma.ai - كن عضوًا في comma prime على connect.comma.ai + كن عضوًا في comma prime على connect.comma.ai PRIME FEATURES: - الميزات الأساسية: + الميزات الأساسية: Remote access - التحكم عن بعد + التحكم عن بعد 24/7 LTE connectivity - اتصال LTE على مدار الساعة 24/7 + اتصال LTE على مدار الساعة 24/7 1 year of drive storage - سنة واحدة من تخزين القرص + سنة واحدة من تخزين القرص Turn-by-turn navigation - التنقل خطوة بخطوة + التنقل خطوة بخطوة PrimeUserWidget ✓ SUBSCRIBED - ✓ مشترك + ✓ مشترك comma prime - comma prime + comma prime @@ -974,19 +950,19 @@ km - كم + كم m - م + م mi - ميل + ميل ft - قدم + قدم ClearPilot @@ -1064,10 +1040,6 @@ This may take up to a minute. Controls - - Navigation - - Vehicles @@ -1176,15 +1148,15 @@ This may take up to a minute. SetupWidget Finish Setup - إنهاء الإعداد + إنهاء الإعداد Pair your device with comma connect (connect.comma.ai) and claim your comma prime offer. - اقرن جهازك بجهاز (connect.comma.ai) واحصل على عرضك من comma prime. + اقرن جهازك بجهاز (connect.comma.ai) واحصل على عرضك من comma prime. Pair device - اقتران الجهاز + اقتران الجهاز @@ -1502,19 +1474,19 @@ This may take up to a minute. Show ETA in 24h Format - إظهار الوقت المقدر للوصول بصيغة 24 ساعة + إظهار الوقت المقدر للوصول بصيغة 24 ساعة Use 24h format instead of am/pm - استخدام صيغة 24 ساعة بدلاً من صباحاً/مساء + استخدام صيغة 24 ساعة بدلاً من صباحاً/مساء Show Map on Left Side of UI - عرض الخريطة على الجانب الأيسر من واجهة المستخدم + عرض الخريطة على الجانب الأيسر من واجهة المستخدم Show map on left side when in split screen view. - عرض الخريطة عل الجانب الأيسر عندما تكون وضعية العرض بطريقة الشاشة المنقسمة. + عرض الخريطة عل الجانب الأيسر عندما تكون وضعية العرض بطريقة الشاشة المنقسمة. openpilot Longitudinal Control (Alpha) @@ -1562,11 +1534,11 @@ This may take up to a minute. Navigate on openpilot - التنقل على openpilot + التنقل على openpilot When navigation has a destination, openpilot will input the map information into the model. This provides useful context for the model and allows openpilot to keep left or right appropriately at forks/exits. Lane change behavior is unchanged and still activated by the driver. This is an alpha quality feature; mistakes should be expected, particularly around exits and forks. These mistakes can include unintended laneline crossings, late exit taking, driving towards dividing barriers in the gore areas, etc. - عندما يكون هناك وجهة للتنقل، فإن openpilot سيقوم بإدخال معلومات الخريطة في هذا النموذج. وهذا يقدم سياقاً مفيداً ويسمح لـopenpilot بالبقاء يساراً أو يميناً بالشكل المناسب عند المنعطفات/المخارج. يبقى سلوك تغيير المسار مفعلاً عند السائق،. هذه هي خاصية الجودة ألفا، ولذلك يجب توقع الأخطاء لا سيما عند المخارج والمنعطفات هذه الأخطاء قد تشمل العبور غير المقصود لخطوط المسارات، والتأخر في الخروج، والقيادة نحو الحواجز الفاصلة في المناطق المثلثة بين الطريق الرئيسي والمخارج، وغير ذلك من الأخطاء المشابهة. + عندما يكون هناك وجهة للتنقل، فإن openpilot سيقوم بإدخال معلومات الخريطة في هذا النموذج. وهذا يقدم سياقاً مفيداً ويسمح لـopenpilot بالبقاء يساراً أو يميناً بالشكل المناسب عند المنعطفات/المخارج. يبقى سلوك تغيير المسار مفعلاً عند السائق،. هذه هي خاصية الجودة ألفا، ولذلك يجب توقع الأخطاء لا سيما عند المخارج والمنعطفات هذه الأخطاء قد تشمل العبور غير المقصود لخطوط المسارات، والتأخر في الخروج، والقيادة نحو الحواجز الفاصلة في المناطق المثلثة بين الطريق الرئيسي والمخارج، وغير ذلك من الأخطاء المشابهة. New Driving Visualization diff --git a/selfdrive/ui/translations/main_de.ts b/selfdrive/ui/translations/main_de.ts index 6c65321..415db15 100755 --- a/selfdrive/ui/translations/main_de.ts +++ b/selfdrive/ui/translations/main_de.ts @@ -95,7 +95,7 @@ AnnotatedCameraWidget km/h - km/h + km/h mph @@ -103,15 +103,15 @@ MAX - MAX + MAX SPEED - Geschwindigkeit + Geschwindigkeit LIMIT - LIMIT + LIMIT meters @@ -149,26 +149,14 @@ - Max: %1%2 - - | Obstacle: - - | Obstacle Factor: - - - Stop: - - - Stop Factor: - - Follow: - - Follow Distance: @@ -199,18 +187,10 @@ Experimental Mode activated for - - intersection - - upcoming intersection - - turn - - upcoming turn @@ -219,18 +199,10 @@ Experimental Mode activated due to - - SLC - - no speed limit set - - speed - - speed being less than @@ -287,6 +259,14 @@ . Double tap the screen to revert + + meters + + + + feet + + ConfirmationDialog @@ -314,33 +294,6 @@ Ablehnen, deinstallieren %1 - - DestinationWidget - - Home - - - - Work - - - - No destination set - - - - No %1 location set - - - - home - - - - work - - - DevicePanel @@ -706,45 +659,26 @@ MapETA eta - Ankunft + Ankunft min - min + min hr - std - - - - MapSettings - - NAVIGATION - - - - Manage at connect.comma.ai - - - - Manage at %1 - + std MapWindow Map Loading - Karte wird geladen + Karte wird geladen Waiting for GPS - Warten auf GPS - - - Waiting for route - + Warten auf GPS @@ -852,19 +786,19 @@ PairingPopup Pair your device to your comma account - Verbinde dein Gerät mit deinem comma Konto + Verbinde dein Gerät mit deinem comma Konto Go to https://connect.comma.ai on your phone - Gehe zu https://connect.comma.ai auf deinem Handy + Gehe zu https://connect.comma.ai auf deinem Handy Click "add new device" and scan the QR code on the right - Klicke auf "neues Gerät hinzufügen" und scanne den QR code rechts + Klicke auf "neues Gerät hinzufügen" und scanne den QR code rechts Bookmark connect.comma.ai to your home screen to use it like an app - Füge connect.comma.ai als Lesezeichen auf deinem Homescreen hinzu um es wie eine App zu verwenden + Füge connect.comma.ai als Lesezeichen auf deinem Homescreen hinzu um es wie eine App zu verwenden @@ -882,42 +816,30 @@ PrimeAdWidget Upgrade Now - Jetzt abonieren + Jetzt abonieren Become a comma prime member at connect.comma.ai - Werde Comma Prime Mitglied auf connect.comma.ai + Werde Comma Prime Mitglied auf connect.comma.ai PRIME FEATURES: - PRIME FUNKTIONEN: + PRIME FUNKTIONEN: Remote access - Fernzugriff - - - 24/7 LTE connectivity - - - - Turn-by-turn navigation - - - - 1 year of drive storage - + Fernzugriff PrimeUserWidget ✓ SUBSCRIBED - ✓ ABBONIERT + ✓ ABBONIERT comma prime - comma prime + comma prime @@ -957,19 +879,19 @@ km - km + km m - m + m mi - mi + mi ft - fuß + fuß ClearPilot @@ -1046,10 +968,6 @@ This may take up to a minute. Controls - - Navigation - - Vehicles @@ -1158,15 +1076,15 @@ This may take up to a minute. SetupWidget Finish Setup - Einrichtung beenden + Einrichtung beenden Pair your device with comma connect (connect.comma.ai) and claim your comma prime offer. - Koppele dein Gerät mit Comma Connect (connect.comma.ai) und sichere dir dein Comma Prime Angebot. + Koppele dein Gerät mit Comma Connect (connect.comma.ai) und sichere dir dein Comma Prime Angebot. Pair device - Gerät koppeln + Gerät koppeln @@ -1482,21 +1400,21 @@ This may take up to a minute. Use 24h format instead of am/pm - Benutze das 24Stunden Format anstatt am/pm + Benutze das 24Stunden Format anstatt am/pm Show Map on Left Side of UI Too long for UI - Zeige die Karte auf der linken Seite + Zeige die Karte auf der linken Seite Show map on left side when in split screen view. - Zeige die Karte auf der linken Seite der Benutzeroberfläche bei geteilten Bildschirm. + Zeige die Karte auf der linken Seite der Benutzeroberfläche bei geteilten Bildschirm. Show ETA in 24h Format Too long for UI - Zeige die Ankunftszeit im 24 Stunden Format + Zeige die Ankunftszeit im 24 Stunden Format Experimental Mode @@ -1554,14 +1472,6 @@ This may take up to a minute. End-to-End Longitudinal Control - - Navigate on openpilot - - - - When navigation has a destination, openpilot will input the map information into the model. This provides useful context for the model and allows openpilot to keep left or right appropriately at forks/exits. Lane change behavior is unchanged and still activated by the driver. This is an alpha quality feature; mistakes should be expected, particularly around exits and forks. These mistakes can include unintended laneline crossings, late exit taking, driving towards dividing barriers in the gore areas, etc. - - 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. When a navigation destination is set and the driving model is using it as input, the driving path on the map will turn green. diff --git a/selfdrive/ui/translations/main_fr.ts b/selfdrive/ui/translations/main_fr.ts index e1838c2..be97ab0 100755 --- a/selfdrive/ui/translations/main_fr.ts +++ b/selfdrive/ui/translations/main_fr.ts @@ -95,7 +95,7 @@ AnnotatedCameraWidget km/h - km/h + km/h mph @@ -103,15 +103,15 @@ MAX - MAX + MAX SPEED - VITESSE + VITESSE LIMIT - LIMITE + LIMITE meters @@ -149,26 +149,14 @@ - Max: %1%2 - - | Obstacle: - - | Obstacle Factor: - - - Stop: - - - Stop Factor: - - Follow: - - Follow Distance: @@ -199,18 +187,10 @@ Experimental Mode activated for - - intersection - - upcoming intersection - - turn - - upcoming turn @@ -219,18 +199,10 @@ Experimental Mode activated due to - - SLC - - no speed limit set - - speed - - speed being less than @@ -287,6 +259,14 @@ . Double tap the screen to revert + + meters + + + + feet + + ConfirmationDialog @@ -318,27 +298,27 @@ DestinationWidget Home - Domicile + Domicile Work - Travail + Travail No destination set - Aucune destination définie + Aucune destination définie home - domicile + domicile work - travail + travail No %1 location set - Aucun lieu %1 défini + Aucun lieu %1 défini @@ -706,45 +686,41 @@ MapETA eta - eta + eta min - min + min hr - h + h MapSettings NAVIGATION - NAVIGATION + NAVIGATION Manage at connect.comma.ai - Gérer sur connect.comma.ai - - - Manage at %1 - + Gérer sur connect.comma.ai MapWindow Map Loading - Chargement de la carte + Chargement de la carte Waiting for GPS - En attente du GPS + En attente du GPS Waiting for route - En attente d'un trajet + En attente d'un trajet @@ -853,19 +829,19 @@ PairingPopup Pair your device to your comma account - Associez votre appareil à votre compte comma + Associez votre appareil à votre compte comma Go to https://connect.comma.ai on your phone - Allez sur https://connect.comma.ai sur votre téléphone + Allez sur https://connect.comma.ai sur votre téléphone Click "add new device" and scan the QR code on the right - Cliquez sur "ajouter un nouvel appareil" et scannez le code QR à droite + Cliquez sur "ajouter un nouvel appareil" et scannez le code QR à droite Bookmark connect.comma.ai to your home screen to use it like an app - Ajoutez connect.comma.ai à votre écran d'accueil pour l'utiliser comme une application + Ajoutez connect.comma.ai à votre écran d'accueil pour l'utiliser comme une application @@ -883,42 +859,42 @@ PrimeAdWidget Upgrade Now - Mettre à niveau + Mettre à niveau Become a comma prime member at connect.comma.ai - Devenez membre comma prime sur connect.comma.ai + Devenez membre comma prime sur connect.comma.ai PRIME FEATURES: - FONCTIONNALITÉS PRIME : + FONCTIONNALITÉS PRIME : Remote access - Accès à distance + Accès à distance 24/7 LTE connectivity - Connexion LTE 24/7 + Connexion LTE 24/7 1 year of drive storage - 1 an de stockage de trajets + 1 an de stockage de trajets Turn-by-turn navigation - Navigation étape par étape + Navigation étape par étape PrimeUserWidget ✓ SUBSCRIBED - ✓ ABONNÉ + ✓ ABONNÉ comma prime - comma prime + comma prime @@ -958,19 +934,19 @@ km - km + km m - m + m mi - mi + mi ft - ft + ft ClearPilot @@ -1048,10 +1024,6 @@ Cela peut prendre jusqu'à une minute. Controls - - Navigation - - Vehicles @@ -1160,15 +1132,15 @@ Cela peut prendre jusqu'à une minute. SetupWidget Finish Setup - Terminer l'installation + Terminer l'installation Pair your device with comma connect (connect.comma.ai) and claim your comma prime offer. - Associez votre appareil avec comma connect (connect.comma.ai) et profitez de l'offre comma prime. + Associez votre appareil avec comma connect (connect.comma.ai) et profitez de l'offre comma prime. Pair device - Associer l'appareil + Associer l'appareil @@ -1502,19 +1474,19 @@ Cela peut prendre jusqu'à une minute. Show ETA in 24h Format - Afficher l'heure d'arrivée en format 24h + Afficher l'heure d'arrivée en format 24h Use 24h format instead of am/pm - Utiliser le format 24h plutôt que am/pm + Utiliser le format 24h plutôt que am/pm Show Map on Left Side of UI - Afficher la carte à gauche de l'interface + Afficher la carte à gauche de l'interface Show map on left side when in split screen view. - Afficher la carte à gauche en mode écran scindé. + Afficher la carte à gauche en mode écran scindé. Aggressive @@ -1562,11 +1534,11 @@ Cela peut prendre jusqu'à une minute. Navigate on openpilot - Navigation avec openpilot + Navigation avec openpilot When navigation has a destination, openpilot will input the map information into the model. This provides useful context for the model and allows openpilot to keep left or right appropriately at forks/exits. Lane change behavior is unchanged and still activated by the driver. This is an alpha quality feature; mistakes should be expected, particularly around exits and forks. These mistakes can include unintended laneline crossings, late exit taking, driving towards dividing barriers in the gore areas, etc. - Lorsque la navigation dispose d'une destination, openpilot entrera les informations de la carte dans le modèle. Cela fournit un contexte utile pour le modèle et permet à openpilot de se diriger à gauche ou à droite de manière appropriée aux bifurcations/sorties. Le comportement relatif au changement de voie reste inchangé et doit toujours être activé par le conducteur. Il s'agit d'une fonctionnalité alpha ; il faut s'attendre à des erreurs, en particulier aux abords des sorties et des bifurcations. Ces erreurs peuvent inclure des franchissements involontaires de passages piétons, des prises de sortie tardives, la conduite vers des zones de séparation de type zebras, etc. + Lorsque la navigation dispose d'une destination, openpilot entrera les informations de la carte dans le modèle. Cela fournit un contexte utile pour le modèle et permet à openpilot de se diriger à gauche ou à droite de manière appropriée aux bifurcations/sorties. Le comportement relatif au changement de voie reste inchangé et doit toujours être activé par le conducteur. Il s'agit d'une fonctionnalité alpha ; il faut s'attendre à des erreurs, en particulier aux abords des sorties et des bifurcations. Ces erreurs peuvent inclure des franchissements involontaires de passages piétons, des prises de sortie tardives, la conduite vers des zones de séparation de type zebras, etc. 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. When a navigation destination is set and the driving model is using it as input, the driving path on the map will turn green. diff --git a/selfdrive/ui/translations/main_ja.ts b/selfdrive/ui/translations/main_ja.ts index 0d5af74..40e25b5 100755 --- a/selfdrive/ui/translations/main_ja.ts +++ b/selfdrive/ui/translations/main_ja.ts @@ -95,7 +95,7 @@ AnnotatedCameraWidget km/h - km/h + km/h mph @@ -103,15 +103,15 @@ MAX - 最高速度 + 最高速度 SPEED - 速度 + 速度 LIMIT - 制限速度 + 制限速度 meters @@ -149,26 +149,14 @@ - Max: %1%2 - - | Obstacle: - - | Obstacle Factor: - - - Stop: - - - Stop Factor: - - Follow: - - Follow Distance: @@ -199,18 +187,10 @@ Experimental Mode activated for - - intersection - - upcoming intersection - - turn - - upcoming turn @@ -219,18 +199,10 @@ Experimental Mode activated due to - - SLC - - no speed limit set - - speed - - speed being less than @@ -287,6 +259,14 @@ . Double tap the screen to revert + + meters + + + + feet + + ConfirmationDialog @@ -314,33 +294,6 @@ 拒否して %1 をアンインストール - - DestinationWidget - - Home - - - - Work - - - - No destination set - - - - No %1 location set - - - - home - - - - work - - - DevicePanel @@ -705,45 +658,26 @@ MapETA eta - 到着予定時間 + 到着予定時間 min - + hr - 時間 - - - - MapSettings - - NAVIGATION - - - - Manage at connect.comma.ai - - - - Manage at %1 - + 時間 MapWindow Map Loading - マップを読み込んでいます + マップを読み込んでいます Waiting for GPS - GPS信号を探しています - - - Waiting for route - + GPS信号を探しています @@ -851,19 +785,19 @@ PairingPopup Pair your device to your comma account - デバイスと comma アカウントを連携する + デバイスと comma アカウントを連携する Go to https://connect.comma.ai on your phone - スマートフォンで「https://connect.comma.ai」にアクセスしてください。 + スマートフォンで「https://connect.comma.ai」にアクセスしてください。 Click "add new device" and scan the QR code on the right - 「新しいデバイスを追加」を押し、右側のQRコードをスキャンしてください。 + 「新しいデバイスを追加」を押し、右側のQRコードをスキャンしてください。 Bookmark connect.comma.ai to your home screen to use it like an app - 「connect.comma.ai」をホーム画面に追加して、アプリのように使うことができます。 + 「connect.comma.ai」をホーム画面に追加して、アプリのように使うことができます。 @@ -881,42 +815,30 @@ PrimeAdWidget Upgrade Now - 今すぐアップグレート + 今すぐアップグレート Become a comma prime member at connect.comma.ai - connect.comma.ai でプライム会員に登録できます + connect.comma.ai でプライム会員に登録できます PRIME FEATURES: - 特典: + 特典: Remote access - リモートアクセス - - - 24/7 LTE connectivity - - - - Turn-by-turn navigation - - - - 1 year of drive storage - + リモートアクセス PrimeUserWidget ✓ SUBSCRIBED - ✓ 入会しました + ✓ 入会しました comma prime - comma prime + comma prime @@ -953,19 +875,19 @@ km - キロメートル + キロメートル m - メートル + メートル mi - マイル + マイル ft - フィート + フィート ClearPilot @@ -1042,10 +964,6 @@ This may take up to a minute. Controls - - Navigation - - Vehicles @@ -1154,15 +1072,15 @@ This may take up to a minute. SetupWidget Finish Setup - セットアップ完了 + セットアップ完了 Pair your device with comma connect (connect.comma.ai) and claim your comma prime offer. - デバイスを comma connect (connect.comma.ai)でペアリングし、comma primeの特典を申請してください。 + デバイスを comma connect (connect.comma.ai)でペアリングし、comma primeの特典を申請してください。 Pair device - デバイスをペアリング + デバイスをペアリング @@ -1480,19 +1398,19 @@ This may take up to a minute. Show ETA in 24h Format - 24時間表示 + 24時間表示 Use 24h format instead of am/pm - AM/PM の代わりに24時間形式を使用します + AM/PM の代わりに24時間形式を使用します Show Map on Left Side of UI - ディスプレイの左側にマップを表示 + ディスプレイの左側にマップを表示 Show map on left side when in split screen view. - 分割画面表示の場合、ディスプレイの左側にマップを表示します。 + 分割画面表示の場合、ディスプレイの左側にマップを表示します。 Experimental Mode @@ -1546,14 +1464,6 @@ This may take up to a minute. End-to-End Longitudinal Control - - Navigate on openpilot - - - - When navigation has a destination, openpilot will input the map information into the model. This provides useful context for the model and allows openpilot to keep left or right appropriately at forks/exits. Lane change behavior is unchanged and still activated by the driver. This is an alpha quality feature; mistakes should be expected, particularly around exits and forks. These mistakes can include unintended laneline crossings, late exit taking, driving towards dividing barriers in the gore areas, etc. - - 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. When a navigation destination is set and the driving model is using it as input, the driving path on the map will turn green. diff --git a/selfdrive/ui/translations/main_ko.ts b/selfdrive/ui/translations/main_ko.ts index 043199a..f943e65 100755 --- a/selfdrive/ui/translations/main_ko.ts +++ b/selfdrive/ui/translations/main_ko.ts @@ -95,7 +95,7 @@ AnnotatedCameraWidget km/h - km/h + km/h mph @@ -103,15 +103,15 @@ MAX - MAX + MAX SPEED - SPEED + SPEED LIMIT - LIMIT + LIMIT meters @@ -149,26 +149,14 @@ - Max: %1%2 - - | Obstacle: - - | Obstacle Factor: - - - Stop: - - - Stop Factor: - - Follow: - - Follow Distance: @@ -199,18 +187,10 @@ Experimental Mode activated for - - intersection - - upcoming intersection - - turn - - upcoming turn @@ -219,18 +199,10 @@ Experimental Mode activated due to - - SLC - - no speed limit set - - speed - - speed being less than @@ -287,6 +259,14 @@ . Double tap the screen to revert + + meters + + + + feet + + ConfirmationDialog @@ -318,27 +298,27 @@ DestinationWidget Home - + Work - 회사 + 회사 No destination set - 목적지가 설정되지 않았습니다 + 목적지가 설정되지 않았습니다 No %1 location set - %1 위치가 설정되지 않았습니다 + %1 위치가 설정되지 않았습니다 home - + work - 회사 + 회사 @@ -705,45 +685,41 @@ MapETA eta - 도착 + 도착 min - + hr - 시간 + 시간 MapSettings NAVIGATION - 내비게이션 + 내비게이션 Manage at connect.comma.ai - connect.comma.ai에서 관리하세요 - - - Manage at %1 - + connect.comma.ai에서 관리하세요 MapWindow Map Loading - 지도 로딩 중 + 지도 로딩 중 Waiting for GPS - GPS 수신 중 + GPS 수신 중 Waiting for route - 경로를 기다리는 중 + 경로를 기다리는 중 @@ -852,19 +828,19 @@ PairingPopup Pair your device to your comma account - 장치를 comma 계정에 페어링합니다 + 장치를 comma 계정에 페어링합니다 Go to https://connect.comma.ai on your phone - https://connect.comma.ai에 접속하세요 + https://connect.comma.ai에 접속하세요 Click "add new device" and scan the QR code on the right - "새 장치 추가"를 클릭하고 오른쪽 QR 코드를 스캔하세요 + "새 장치 추가"를 클릭하고 오른쪽 QR 코드를 스캔하세요 Bookmark connect.comma.ai to your home screen to use it like an app - connect.comma.ai를 앱처럼 사용하려면 홈 화면에 바로가기를 만드세요 + connect.comma.ai를 앱처럼 사용하려면 홈 화면에 바로가기를 만드세요 @@ -882,42 +858,42 @@ PrimeAdWidget Upgrade Now - 지금 업그레이드하세요 + 지금 업그레이드하세요 Become a comma prime member at connect.comma.ai - connect.comma.ai에 접속하여 comma prime 회원으로 등록하세요 + connect.comma.ai에 접속하여 comma prime 회원으로 등록하세요 PRIME FEATURES: - PRIME 기능: + PRIME 기능: Remote access - 원격 접속 + 원격 접속 24/7 LTE connectivity - 항상 LTE 연결 + 항상 LTE 연결 Turn-by-turn navigation - 내비게이션 경로안내 + 내비게이션 경로안내 1 year of drive storage - 1년간 드라이브 로그 저장 + 1년간 드라이브 로그 저장 PrimeUserWidget ✓ SUBSCRIBED - ✓ 구독함 + ✓ 구독함 comma prime - comma prime + comma prime @@ -954,19 +930,19 @@ km - km + km m - m + m mi - mi + mi ft - ft + ft ClearPilot @@ -1044,10 +1020,6 @@ This may take up to a minute. Controls - - Navigation - - Vehicles @@ -1156,15 +1128,15 @@ This may take up to a minute. SetupWidget Finish Setup - 설정 완료 + 설정 완료 Pair your device with comma connect (connect.comma.ai) and claim your comma prime offer. - 장치를 comma connect (connect.comma.ai)에서 페어링하고 comma prime 무료 이용권을 사용하세요. + 장치를 comma connect (connect.comma.ai)에서 페어링하고 comma prime 무료 이용권을 사용하세요. Pair device - 장치 페어링 + 장치 페어링 @@ -1482,19 +1454,19 @@ This may take up to a minute. Show ETA in 24h Format - 24시간 형식으로 도착 예정 시간 표시 + 24시간 형식으로 도착 예정 시간 표시 Use 24h format instead of am/pm - 오전/오후 대신 24시간 형식 사용 + 오전/오후 대신 24시간 형식 사용 Show Map on Left Side of UI - UI 왼쪽에 지도 표시 + UI 왼쪽에 지도 표시 Show map on left side when in split screen view. - 분할 화면 보기에서 지도를 왼쪽에 표시합니다. + 분할 화면 보기에서 지도를 왼쪽에 표시합니다. Experimental Mode @@ -1554,7 +1526,7 @@ This may take up to a minute. Navigate on openpilot - openpilot 내비게이트 + openpilot 내비게이트 Enable the openpilot longitudinal control (alpha) toggle to allow Experimental mode. @@ -1566,7 +1538,7 @@ This may take up to a minute. When navigation has a destination, openpilot will input the map information into the model. This provides useful context for the model and allows openpilot to keep left or right appropriately at forks/exits. Lane change behavior is unchanged and still activated by the driver. This is an alpha quality feature; mistakes should be expected, particularly around exits and forks. These mistakes can include unintended laneline crossings, late exit taking, driving towards dividing barriers in the gore areas, etc. - 내비게이션에 목적지가 설정되어 있으면 openpilot이 지도 정보를 주행 모델에 입력합니다. 이는 모델에 유용한 정보를 제공하고 openpilot이 진출입로 및 램프에서 적절하게 왼쪽 또는 오른쪽을 유지할 수 있도록 해 줍니다. 차선 변경 기능은 여전히 운전자의 조작에 의해 활성화됩니다. 이 기능은 알파 버전입니다. 특히 진출입로 및 분기점 주변에서 실수가 발생할 수 있으며 이러한 실수에는 의도하지 않은 차선 이탈, 늦은 진출, 도로 가장자리의 분리대 또는 경계석을 향해 운전하는 행동 등이 포함됩니다. + 내비게이션에 목적지가 설정되어 있으면 openpilot이 지도 정보를 주행 모델에 입력합니다. 이는 모델에 유용한 정보를 제공하고 openpilot이 진출입로 및 램프에서 적절하게 왼쪽 또는 오른쪽을 유지할 수 있도록 해 줍니다. 차선 변경 기능은 여전히 운전자의 조작에 의해 활성화됩니다. 이 기능은 알파 버전입니다. 특히 진출입로 및 분기점 주변에서 실수가 발생할 수 있으며 이러한 실수에는 의도하지 않은 차선 이탈, 늦은 진출, 도로 가장자리의 분리대 또는 경계석을 향해 운전하는 행동 등이 포함됩니다. 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. When a navigation destination is set and the driving model is using it as input, the driving path on the map will turn green. diff --git a/selfdrive/ui/translations/main_pt-BR.ts b/selfdrive/ui/translations/main_pt-BR.ts index 707e66f..eca790e 100755 --- a/selfdrive/ui/translations/main_pt-BR.ts +++ b/selfdrive/ui/translations/main_pt-BR.ts @@ -95,7 +95,7 @@ AnnotatedCameraWidget km/h - km/h + km/h mph @@ -103,15 +103,15 @@ MAX - LIMITE + LIMITE SPEED - MAX + MAX LIMIT - VELO + VELO meters @@ -149,26 +149,14 @@ - Max: %1%2 - - | Obstacle: - - | Obstacle Factor: - - - Stop: - - - Stop Factor: - - Follow: - - Follow Distance: @@ -199,18 +187,10 @@ Experimental Mode activated for - - intersection - - upcoming intersection - - turn - - upcoming turn @@ -219,18 +199,10 @@ Experimental Mode activated due to - - SLC - - no speed limit set - - speed - - speed being less than @@ -287,6 +259,14 @@ . Double tap the screen to revert + + meters + + + + feet + + ConfirmationDialog @@ -318,27 +298,27 @@ DestinationWidget Home - Casa + Casa Work - Trabalho + Trabalho No destination set - Nenhum destino definido + Nenhum destino definido No %1 location set - Endereço de %1 não definido + Endereço de %1 não definido home - casa + casa work - trabalho + trabalho @@ -706,45 +686,41 @@ MapETA eta - eta + eta min - min + min hr - hr + hr MapSettings NAVIGATION - NAVEGAÇÃO + NAVEGAÇÃO Manage at connect.comma.ai - Gerencie em connect.comma.ai - - - Manage at %1 - + Gerencie em connect.comma.ai MapWindow Map Loading - Carregando Mapa + Carregando Mapa Waiting for GPS - Aguardando GPS + Aguardando GPS Waiting for route - Aguardando rota + Aguardando rota @@ -853,19 +829,19 @@ PairingPopup Pair your device to your comma account - Pareie seu dispositivo à sua conta comma + Pareie seu dispositivo à sua conta comma Go to https://connect.comma.ai on your phone - navegue até https://connect.comma.ai no seu telefone + navegue até https://connect.comma.ai no seu telefone Click "add new device" and scan the QR code on the right - Clique "add new device" e escaneie o QR code a seguir + Clique "add new device" e escaneie o QR code a seguir Bookmark connect.comma.ai to your home screen to use it like an app - Salve connect.comma.ai como sua página inicial para utilizar como um app + Salve connect.comma.ai como sua página inicial para utilizar como um app @@ -883,42 +859,42 @@ PrimeAdWidget Upgrade Now - Atualizar Agora + Atualizar Agora Become a comma prime member at connect.comma.ai - Seja um membro comma prime em connect.comma.ai + Seja um membro comma prime em connect.comma.ai PRIME FEATURES: - BENEFÍCIOS PRIME: + BENEFÍCIOS PRIME: Remote access - Acesso remoto (proxy comma) + Acesso remoto (proxy comma) 24/7 LTE connectivity - Conectividade LTE (só nos EUA) + Conectividade LTE (só nos EUA) Turn-by-turn navigation - Navegação passo a passo + Navegação passo a passo 1 year of drive storage - 1 ano de dados em nuvem + 1 ano de dados em nuvem PrimeUserWidget ✓ SUBSCRIBED - ✓ INSCRITO + ✓ INSCRITO comma prime - comma prime + comma prime @@ -958,19 +934,19 @@ km - km + km m - m + m mi - milha + milha ft - pés + pés ClearPilot @@ -1048,10 +1024,6 @@ Isso pode levar até um minuto. Controls - - Navigation - - Vehicles @@ -1160,15 +1132,15 @@ Isso pode levar até um minuto. SetupWidget Finish Setup - Concluir + Concluir Pair your device with comma connect (connect.comma.ai) and claim your comma prime offer. - Pareie seu dispositivo com comma connect (connect.comma.ai) e reivindique sua oferta de comma prime. + Pareie seu dispositivo com comma connect (connect.comma.ai) e reivindique sua oferta de comma prime. Pair device - Parear dispositivo + Parear dispositivo @@ -1486,19 +1458,19 @@ Isso pode levar até um minuto. Show ETA in 24h Format - Mostrar ETA em Formato 24h + Mostrar ETA em Formato 24h Use 24h format instead of am/pm - Use o formato 24h em vez de am/pm + Use o formato 24h em vez de am/pm Show Map on Left Side of UI - Exibir Mapa no Lado Esquerdo + Exibir Mapa no Lado Esquerdo Show map on left side when in split screen view. - Exibir mapa do lado esquerdo quando a tela for dividida. + Exibir mapa do lado esquerdo quando a tela for dividida. Experimental Mode @@ -1558,7 +1530,7 @@ Isso pode levar até um minuto. Navigate on openpilot - Navegação no openpilot + Navegação no openpilot Enable the openpilot longitudinal control (alpha) toggle to allow Experimental mode. @@ -1570,7 +1542,7 @@ Isso pode levar até um minuto. When navigation has a destination, openpilot will input the map information into the model. This provides useful context for the model and allows openpilot to keep left or right appropriately at forks/exits. Lane change behavior is unchanged and still activated by the driver. This is an alpha quality feature; mistakes should be expected, particularly around exits and forks. These mistakes can include unintended laneline crossings, late exit taking, driving towards dividing barriers in the gore areas, etc. - Quando a navegação tem um destino, o openpilot insere as informações do mapa no modelo. Isso fornece contexto útil para o modelo e permite que o openpilot mantenha a esquerda ou a direita apropriadamente em bifurcações/saídas. O comportamento de mudança de faixa permanece inalterado e ainda é ativado somente pelo motorista. Este é um recurso de qualidade embrionária; erros devem ser esperados, principalmente em torno de saídas e bifurcações. Esses erros podem incluir travessias não intencionais na faixa de rodagem, saída tardia, condução em direção a barreiras divisórias nas áreas de marcas de canalização, etc. + Quando a navegação tem um destino, o openpilot insere as informações do mapa no modelo. Isso fornece contexto útil para o modelo e permite que o openpilot mantenha a esquerda ou a direita apropriadamente em bifurcações/saídas. O comportamento de mudança de faixa permanece inalterado e ainda é ativado somente pelo motorista. Este é um recurso de qualidade embrionária; erros devem ser esperados, principalmente em torno de saídas e bifurcações. Esses erros podem incluir travessias não intencionais na faixa de rodagem, saída tardia, condução em direção a barreiras divisórias nas áreas de marcas de canalização, etc. 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. When a navigation destination is set and the driving model is using it as input, the driving path on the map will turn green. diff --git a/selfdrive/ui/translations/main_th.ts b/selfdrive/ui/translations/main_th.ts index b72cf5e..cf4039c 100755 --- a/selfdrive/ui/translations/main_th.ts +++ b/selfdrive/ui/translations/main_th.ts @@ -95,7 +95,7 @@ AnnotatedCameraWidget km/h - กม./ชม. + กม./ชม. mph @@ -103,15 +103,15 @@ MAX - สูงสุด + สูงสุด SPEED - ความเร็ว + ความเร็ว LIMIT - จำกัด + จำกัด meters @@ -149,26 +149,14 @@ - Max: %1%2 - - | Obstacle: - - | Obstacle Factor: - - - Stop: - - - Stop Factor: - - Follow: - - Follow Distance: @@ -199,18 +187,10 @@ Experimental Mode activated for - - intersection - - upcoming intersection - - turn - - upcoming turn @@ -219,18 +199,10 @@ Experimental Mode activated due to - - SLC - - no speed limit set - - speed - - speed being less than @@ -287,6 +259,14 @@ . Double tap the screen to revert + + meters + + + + feet + + ConfirmationDialog @@ -318,27 +298,27 @@ DestinationWidget Home - บ้าน + บ้าน Work - ที่ทำงาน + ที่ทำงาน No destination set - ยังไม่ได้เลือกจุดหมาย + ยังไม่ได้เลือกจุดหมาย home - บ้าน + บ้าน work - ที่ทำงาน + ที่ทำงาน No %1 location set - ยังไม่ได้เลือกตำแหน่ง%1 + ยังไม่ได้เลือกตำแหน่ง%1 @@ -705,45 +685,41 @@ MapETA eta - eta + eta min - นาที + นาที hr - ชม. + ชม. MapSettings NAVIGATION - การนำทาง + การนำทาง Manage at connect.comma.ai - จัดการได้ที่ connect.comma.ai - - - Manage at %1 - + จัดการได้ที่ connect.comma.ai MapWindow Map Loading - กำลังโหลดแผนที่ + กำลังโหลดแผนที่ Waiting for GPS - กำลังรอสัญญาณ GPS + กำลังรอสัญญาณ GPS Waiting for route - กำลังรอเส้นทาง + กำลังรอเส้นทาง @@ -852,19 +828,19 @@ PairingPopup Pair your device to your comma account - จับคู่อุปกรณ์ของคุณกับบัญชี comma ของคุณ + จับคู่อุปกรณ์ของคุณกับบัญชี comma ของคุณ Go to https://connect.comma.ai on your phone - ไปที่ https://connect.comma.ai ด้วยโทรศัพท์ของคุณ + ไปที่ https://connect.comma.ai ด้วยโทรศัพท์ของคุณ Click "add new device" and scan the QR code on the right - กดที่ "add new device" และสแกนคิวอาร์โค้ดทางด้านขวา + กดที่ "add new device" และสแกนคิวอาร์โค้ดทางด้านขวา Bookmark connect.comma.ai to your home screen to use it like an app - จดจำ connect.comma.ai โดยการเพิ่มไปยังหน้าจอโฮม เพื่อใช้งานเหมือนเป็นแอปพลิเคชัน + จดจำ connect.comma.ai โดยการเพิ่มไปยังหน้าจอโฮม เพื่อใช้งานเหมือนเป็นแอปพลิเคชัน @@ -882,42 +858,42 @@ PrimeAdWidget Upgrade Now - อัพเกรดเดี๋ยวนี้ + อัพเกรดเดี๋ยวนี้ Become a comma prime member at connect.comma.ai - สมัครสมาชิก comma prime ได้ที่ connect.comma.ai + สมัครสมาชิก comma prime ได้ที่ connect.comma.ai PRIME FEATURES: - คุณสมบัติของ PRIME: + คุณสมบัติของ PRIME: Remote access - การเข้าถึงระยะไกล + การเข้าถึงระยะไกล 24/7 LTE connectivity - การเชื่อมต่อ LTE แบบ 24/7 + การเชื่อมต่อ LTE แบบ 24/7 1 year of drive storage - จัดเก็บข้อมูลการขับขี่นาน 1 ปี + จัดเก็บข้อมูลการขับขี่นาน 1 ปี Turn-by-turn navigation - การนำทางแบบเลี้ยวต่อเลี้ยว + การนำทางแบบเลี้ยวต่อเลี้ยว PrimeUserWidget ✓ SUBSCRIBED - ✓ สมัครสำเร็จ + ✓ สมัครสำเร็จ comma prime - comma prime + comma prime @@ -954,19 +930,19 @@ km - กม. + กม. m - ม. + ม. mi - ไมล์ + ไมล์ ft - ฟุต + ฟุต ClearPilot @@ -1044,10 +1020,6 @@ This may take up to a minute. Controls - - Navigation - - Vehicles @@ -1156,15 +1128,15 @@ This may take up to a minute. SetupWidget Finish Setup - ตั้งค่าเสร็จสิ้น + ตั้งค่าเสร็จสิ้น Pair your device with comma connect (connect.comma.ai) and claim your comma prime offer. - จับคู่อุปกรณ์ของคุณกับ comma connect (connect.comma.ai) และรับข้อเสนอ comma prime ของคุณ + จับคู่อุปกรณ์ของคุณกับ comma connect (connect.comma.ai) และรับข้อเสนอ comma prime ของคุณ Pair device - จับคู่อุปกรณ์ + จับคู่อุปกรณ์ @@ -1482,19 +1454,19 @@ This may take up to a minute. Show ETA in 24h Format - แสดงเวลา ETA ในรูปแบบ 24 ชั่วโมง + แสดงเวลา ETA ในรูปแบบ 24 ชั่วโมง Use 24h format instead of am/pm - ใช้รูปแบบเวลา 24 ชั่วโมง แทน am/pm + ใช้รูปแบบเวลา 24 ชั่วโมง แทน am/pm Show Map on Left Side of UI - แสดงแผนที่ที่ด้านซ้ายของหน้าจอ + แสดงแผนที่ที่ด้านซ้ายของหน้าจอ Show map on left side when in split screen view. - แสดงแผนที่ด้านซ้ายของหน้าจอเมื่ออยู่ในโหมดแบ่งหน้าจอ + แสดงแผนที่ด้านซ้ายของหน้าจอเมื่ออยู่ในโหมดแบ่งหน้าจอ Experimental Mode @@ -1558,11 +1530,11 @@ This may take up to a minute. Navigate on openpilot - การนำทางบน openpilot + การนำทางบน openpilot When navigation has a destination, openpilot will input the map information into the model. This provides useful context for the model and allows openpilot to keep left or right appropriately at forks/exits. Lane change behavior is unchanged and still activated by the driver. This is an alpha quality feature; mistakes should be expected, particularly around exits and forks. These mistakes can include unintended laneline crossings, late exit taking, driving towards dividing barriers in the gore areas, etc. - เมื่อการนำทางมีจุดหมายปลายทาง openpilot จะป้อนข้อมูลแผนที่เข้าไปยังโมเดล ซึ่งจะเป็นบริบทที่มีประโยชน์สำหรับโมเดลและจะทำให้ openpilot สามารถรักษาเลนซ้ายหรือขวาได้อย่างเหมาะสมบริเวณทางแยกหรือทางออก พฤติกรรมการเปลี่ยนเลนยังคงเหมือนเดิมและยังคงต้องถูกเริ่มโดยคนขับ ความสามารถนี้ยังอยู่ในระดับ alpha ซึ่งอาจะเกิดความผิดพลาดได้โดยเฉพาะบริเวณทางแยกหรือทางออก ความผิดพลาดที่อาจเกิดขึ้นได้อาจรวมถึงการข้ามเส้นแบ่งเลนโดยไม่ตั้งใจ, การเข้าช่องทางออกช้ากว่าปกติ, การขับเข้าหาแบริเออร์ในเขตปลอดภัย, ฯลฯ + เมื่อการนำทางมีจุดหมายปลายทาง openpilot จะป้อนข้อมูลแผนที่เข้าไปยังโมเดล ซึ่งจะเป็นบริบทที่มีประโยชน์สำหรับโมเดลและจะทำให้ openpilot สามารถรักษาเลนซ้ายหรือขวาได้อย่างเหมาะสมบริเวณทางแยกหรือทางออก พฤติกรรมการเปลี่ยนเลนยังคงเหมือนเดิมและยังคงต้องถูกเริ่มโดยคนขับ ความสามารถนี้ยังอยู่ในระดับ alpha ซึ่งอาจะเกิดความผิดพลาดได้โดยเฉพาะบริเวณทางแยกหรือทางออก ความผิดพลาดที่อาจเกิดขึ้นได้อาจรวมถึงการข้ามเส้นแบ่งเลนโดยไม่ตั้งใจ, การเข้าช่องทางออกช้ากว่าปกติ, การขับเข้าหาแบริเออร์ในเขตปลอดภัย, ฯลฯ 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. When a navigation destination is set and the driving model is using it as input, the driving path on the map will turn green. diff --git a/selfdrive/ui/translations/main_tr.ts b/selfdrive/ui/translations/main_tr.ts index 95a9281..70dd269 100755 --- a/selfdrive/ui/translations/main_tr.ts +++ b/selfdrive/ui/translations/main_tr.ts @@ -95,7 +95,7 @@ AnnotatedCameraWidget km/h - km/h + km/h mph @@ -103,15 +103,15 @@ MAX - MAX + MAX SPEED - HIZ + HIZ LIMIT - LİMİT + LİMİT meters @@ -149,26 +149,14 @@ - Max: %1%2 - - | Obstacle: - - | Obstacle Factor: - - - Stop: - - - Stop Factor: - - Follow: - - Follow Distance: @@ -199,18 +187,10 @@ Experimental Mode activated for - - intersection - - upcoming intersection - - turn - - upcoming turn @@ -219,18 +199,10 @@ Experimental Mode activated due to - - SLC - - no speed limit set - - speed - - speed being less than @@ -287,6 +259,14 @@ . Double tap the screen to revert + + meters + + + + feet + + ConfirmationDialog @@ -314,33 +294,6 @@ Reddet, Kurulumu kaldır. %1 - - DestinationWidget - - Home - - - - Work - - - - No destination set - - - - home - - - - work - - - - No %1 location set - - - DevicePanel @@ -705,45 +658,26 @@ MapETA eta - tahmini varış süresi + tahmini varış süresi min - dk + dk hr - saat - - - - MapSettings - - NAVIGATION - - - - Manage at connect.comma.ai - - - - Manage at %1 - + saat MapWindow Map Loading - Harita yükleniyor + Harita yükleniyor Waiting for GPS - GPS verisi bekleniyor... - - - Waiting for route - + GPS verisi bekleniyor... @@ -851,19 +785,19 @@ PairingPopup Pair your device to your comma account - comma.ai hesabınız ile cihazı eşleştirin + comma.ai hesabınız ile cihazı eşleştirin Go to https://connect.comma.ai on your phone - Telefonuzdan https://connect.comma.ai sitesine gidin + Telefonuzdan https://connect.comma.ai sitesine gidin Click "add new device" and scan the QR code on the right - Yeni cihaz eklemek için sağdaki QR kodunu okutun + Yeni cihaz eklemek için sağdaki QR kodunu okutun Bookmark connect.comma.ai to your home screen to use it like an app - Uygulama gibi kullanmak için connect.comma.ai sitesini yer işaretlerine ekleyin. + Uygulama gibi kullanmak için connect.comma.ai sitesini yer işaretlerine ekleyin. @@ -881,42 +815,30 @@ PrimeAdWidget Upgrade Now - Hemen yükselt + Hemen yükselt Become a comma prime member at connect.comma.ai - connect.comma.ai üzerinden comma prime üyesi olun + connect.comma.ai üzerinden comma prime üyesi olun PRIME FEATURES: - PRIME ABONELİĞİNİN ÖZELLİKLERİ: + PRIME ABONELİĞİNİN ÖZELLİKLERİ: Remote access - Uzaktan erişim - - - 24/7 LTE connectivity - - - - 1 year of drive storage - - - - Turn-by-turn navigation - + Uzaktan erişim PrimeUserWidget ✓ SUBSCRIBED - ✓ ABONE + ✓ ABONE comma prime - comma prime + comma prime @@ -953,19 +875,19 @@ km - km + km m - m + m mi - mil + mil ft - ft + ft ClearPilot @@ -1042,10 +964,6 @@ This may take up to a minute. Controls - - Navigation - - Vehicles @@ -1154,15 +1072,15 @@ This may take up to a minute. SetupWidget Finish Setup - Kurulumu bitir + Kurulumu bitir Pair your device with comma connect (connect.comma.ai) and claim your comma prime offer. - Cihazınızı comma connect (connect.comma.ai) ile eşleştirin ve comma prime aboneliğine göz atın. + Cihazınızı comma connect (connect.comma.ai) ile eşleştirin ve comma prime aboneliğine göz atın. Pair device - Cihazı eşleştirme + Cihazı eşleştirme @@ -1472,19 +1390,19 @@ This may take up to a minute. Show ETA in 24h Format - Tahmini varış süresini 24 saat formatı şeklinde göster + Tahmini varış süresini 24 saat formatı şeklinde göster Use 24h format instead of am/pm - 24 saat formatını kullan + 24 saat formatını kullan Show Map on Left Side of UI - Haritayı arayüzün sol tarafında göster + Haritayı arayüzün sol tarafında göster Show map on left side when in split screen view. - Bölünmüş ekran görünümündeyken haritayı sol tarafta göster. + Bölünmüş ekran görünümündeyken haritayı sol tarafta göster. openpilot Longitudinal Control (Alpha) @@ -1534,14 +1452,6 @@ This may take up to a minute. Let the driving model control the gas and brakes. openpilot will drive as it thinks a human would, including stopping for red lights and stop signs. Since the driving model decides the speed to drive, the set speed will only act as an upper bound. This is an alpha quality feature; mistakes should be expected. - - Navigate on openpilot - - - - When navigation has a destination, openpilot will input the map information into the model. This provides useful context for the model and allows openpilot to keep left or right appropriately at forks/exits. Lane change behavior is unchanged and still activated by the driver. This is an alpha quality feature; mistakes should be expected, particularly around exits and forks. These mistakes can include unintended laneline crossings, late exit taking, driving towards dividing barriers in the gore areas, etc. - - New Driving Visualization diff --git a/selfdrive/ui/translations/main_zh-CHS.ts b/selfdrive/ui/translations/main_zh-CHS.ts index b7c4a24..26cf5eb 100755 --- a/selfdrive/ui/translations/main_zh-CHS.ts +++ b/selfdrive/ui/translations/main_zh-CHS.ts @@ -95,7 +95,7 @@ AnnotatedCameraWidget km/h - km/h + km/h mph @@ -103,15 +103,15 @@ MAX - 最高定速 + 最高定速 SPEED - SPEED + SPEED LIMIT - LIMIT + LIMIT meters @@ -149,26 +149,14 @@ - Max: %1%2 - - | Obstacle: - - | Obstacle Factor: - - - Stop: - - - Stop Factor: - - Follow: - - Follow Distance: @@ -199,18 +187,10 @@ Experimental Mode activated for - - intersection - - upcoming intersection - - turn - - upcoming turn @@ -219,18 +199,10 @@ Experimental Mode activated due to - - SLC - - no speed limit set - - speed - - speed being less than @@ -287,6 +259,14 @@ . Double tap the screen to revert + + meters + + + + feet + + ConfirmationDialog @@ -318,27 +298,27 @@ DestinationWidget Home - 住家 + 住家 Work - 工作 + 工作 No destination set - 尚未设置目的地 + 尚未设置目的地 No %1 location set - 尚未设置 %1 的位置 + 尚未设置 %1 的位置 home - 住家 + 住家 work - 工作 + 工作 @@ -705,45 +685,41 @@ MapETA eta - 抵达 + 抵达 min - 分钟 + 分钟 hr - 小时 + 小时 MapSettings NAVIGATION - 导航 + 导航 Manage at connect.comma.ai - 请在 connect.comma.ai 上管理 - - - Manage at %1 - + 请在 connect.comma.ai 上管理 MapWindow Map Loading - 地图加载中 + 地图加载中 Waiting for GPS - 等待 GPS + 等待 GPS Waiting for route - 等待路线 + 等待路线 @@ -852,19 +828,19 @@ PairingPopup Pair your device to your comma account - 将您的设备与comma账号配对 + 将您的设备与comma账号配对 Go to https://connect.comma.ai on your phone - 在手机上访问 https://connect.comma.ai + 在手机上访问 https://connect.comma.ai Click "add new device" and scan the QR code on the right - 点击“添加新设备”,扫描右侧二维码 + 点击“添加新设备”,扫描右侧二维码 Bookmark connect.comma.ai to your home screen to use it like an app - 将 connect.comma.ai 收藏到您的主屏幕,以便像应用程序一样使用它 + 将 connect.comma.ai 收藏到您的主屏幕,以便像应用程序一样使用它 @@ -882,42 +858,42 @@ PrimeAdWidget Upgrade Now - 现在升级 + 现在升级 Become a comma prime member at connect.comma.ai - 打开connect.comma.ai以注册comma prime会员 + 打开connect.comma.ai以注册comma prime会员 PRIME FEATURES: - comma prime特权: + comma prime特权: Remote access - 远程访问 + 远程访问 24/7 LTE connectivity - 全天候 LTE 連線 + 全天候 LTE 連線 Turn-by-turn navigation - 领航功能 + 领航功能 1 year of drive storage - 一年的行驶记录储存空间 + 一年的行驶记录储存空间 PrimeUserWidget ✓ SUBSCRIBED - ✓ 已订阅 + ✓ 已订阅 comma prime - comma prime + comma prime @@ -954,19 +930,19 @@ km - km + km m - m + m mi - mi + mi ft - ft + ft ClearPilot @@ -1044,10 +1020,6 @@ This may take up to a minute. Controls - - Navigation - - Vehicles @@ -1156,15 +1128,15 @@ This may take up to a minute. SetupWidget Finish Setup - 完成设置 + 完成设置 Pair your device with comma connect (connect.comma.ai) and claim your comma prime offer. - 将您的设备与comma connect (connect.comma.ai)配对并领取您的comma prime优惠。 + 将您的设备与comma connect (connect.comma.ai)配对并领取您的comma prime优惠。 Pair device - 配对设备 + 配对设备 @@ -1482,19 +1454,19 @@ This may take up to a minute. Show ETA in 24h Format - 以24小时格式显示预计到达时间 + 以24小时格式显示预计到达时间 Use 24h format instead of am/pm - 使用24小时制代替am/pm + 使用24小时制代替am/pm Show Map on Left Side of UI - 在介面左侧显示地图 + 在介面左侧显示地图 Show map on left side when in split screen view. - 在分屏模式中,将地图置于屏幕左侧。 + 在分屏模式中,将地图置于屏幕左侧。 Experimental Mode @@ -1554,7 +1526,7 @@ This may take up to a minute. Navigate on openpilot - Navigate on openpilot + Navigate on openpilot Enable the openpilot longitudinal control (alpha) toggle to allow Experimental mode. @@ -1566,7 +1538,7 @@ This may take up to a minute. When navigation has a destination, openpilot will input the map information into the model. This provides useful context for the model and allows openpilot to keep left or right appropriately at forks/exits. Lane change behavior is unchanged and still activated by the driver. This is an alpha quality feature; mistakes should be expected, particularly around exits and forks. These mistakes can include unintended laneline crossings, late exit taking, driving towards dividing barriers in the gore areas, etc. - 当导航有目的地时,openpilot 将输入地图信息到模型中。这为模型提供了有用的背景信息,使 openpilot 能够在叉路/出口时适当地保持左侧或右侧行驶。车道变换行为保持不变,仍由驾驶员激活。这是一个 Alpha 版的功能;可能会出现错误,特别是在出口和分叉处。这些错误可能包括意外的车道越界、晚出口、朝着分隔栏驶向安全地带等。 + 当导航有目的地时,openpilot 将输入地图信息到模型中。这为模型提供了有用的背景信息,使 openpilot 能够在叉路/出口时适当地保持左侧或右侧行驶。车道变换行为保持不变,仍由驾驶员激活。这是一个 Alpha 版的功能;可能会出现错误,特别是在出口和分叉处。这些错误可能包括意外的车道越界、晚出口、朝着分隔栏驶向安全地带等。 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. When a navigation destination is set and the driving model is using it as input, the driving path on the map will turn green. diff --git a/selfdrive/ui/translations/main_zh-CHT.ts b/selfdrive/ui/translations/main_zh-CHT.ts index 755c976..6ac3624 100755 --- a/selfdrive/ui/translations/main_zh-CHT.ts +++ b/selfdrive/ui/translations/main_zh-CHT.ts @@ -95,7 +95,7 @@ AnnotatedCameraWidget km/h - km/h + km/h mph @@ -103,15 +103,15 @@ MAX - 最高 + 最高 SPEED - 速度 + 速度 LIMIT - 速限 + 速限 meters @@ -149,26 +149,14 @@ - Max: %1%2 - - | Obstacle: - - | Obstacle Factor: - - - Stop: - - - Stop Factor: - - Follow: - - Follow Distance: @@ -199,18 +187,10 @@ Experimental Mode activated for - - intersection - - upcoming intersection - - turn - - upcoming turn @@ -219,18 +199,10 @@ Experimental Mode activated due to - - SLC - - no speed limit set - - speed - - speed being less than @@ -287,6 +259,14 @@ . Double tap the screen to revert + + meters + + + + feet + + ConfirmationDialog @@ -318,27 +298,27 @@ DestinationWidget Home - 住家 + 住家 Work - 工作 + 工作 No destination set - 尚未設定目的地 + 尚未設定目的地 No %1 location set - 尚未設定 %1 的位置 + 尚未設定 %1 的位置 home - 住家 + 住家 work - 工作 + 工作 @@ -705,45 +685,41 @@ MapETA eta - 抵達 + 抵達 min - 分鐘 + 分鐘 hr - 小時 + 小時 MapSettings NAVIGATION - 導航 + 導航 Manage at connect.comma.ai - 請在 connect.comma.ai 上管理 - - - Manage at %1 - + 請在 connect.comma.ai 上管理 MapWindow Map Loading - 地圖載入中 + 地圖載入中 Waiting for GPS - 等待 GPS + 等待 GPS Waiting for route - 等待路線 + 等待路線 @@ -852,19 +828,19 @@ PairingPopup Pair your device to your comma account - 將設備與您的 comma 帳號配對 + 將設備與您的 comma 帳號配對 Go to https://connect.comma.ai on your phone - 用手機連至 https://connect.comma.ai + 用手機連至 https://connect.comma.ai Click "add new device" and scan the QR code on the right - 點選 "add new device" 後掃描右邊的二維碼 + 點選 "add new device" 後掃描右邊的二維碼 Bookmark connect.comma.ai to your home screen to use it like an app - 將 connect.comma.ai 加入您的主螢幕,以便像手機 App 一樣使用它 + 將 connect.comma.ai 加入您的主螢幕,以便像手機 App 一樣使用它 @@ -882,42 +858,42 @@ PrimeAdWidget Upgrade Now - 馬上升級 + 馬上升級 Become a comma prime member at connect.comma.ai - 成為 connect.comma.ai 的高級會員 + 成為 connect.comma.ai 的高級會員 PRIME FEATURES: - 高級會員特點: + 高級會員特點: Remote access - 遠端存取 + 遠端存取 24/7 LTE connectivity - 24/7 LTE 連線 + 24/7 LTE 連線 Turn-by-turn navigation - 導航功能 + 導航功能 1 year of drive storage - 一年的行駛記錄儲存空間 + 一年的行駛記錄儲存空間 PrimeUserWidget ✓ SUBSCRIBED - ✓ 已訂閱 + ✓ 已訂閱 comma prime - comma 高級會員 + comma 高級會員 @@ -954,19 +930,19 @@ km - km + km m - m + m mi - mi + mi ft - ft + ft ClearPilot @@ -1044,10 +1020,6 @@ This may take up to a minute. Controls - - Navigation - - Vehicles @@ -1156,15 +1128,15 @@ This may take up to a minute. SetupWidget Finish Setup - 完成設置 + 完成設置 Pair your device with comma connect (connect.comma.ai) and claim your comma prime offer. - 將您的設備與 comma connect (connect.comma.ai) 配對並領取您的 comma 高級會員優惠。 + 將您的設備與 comma connect (connect.comma.ai) 配對並領取您的 comma 高級會員優惠。 Pair device - 配對設備 + 配對設備 @@ -1482,19 +1454,19 @@ This may take up to a minute. Show ETA in 24h Format - 預計到達時間單位改用 24 小時制 + 預計到達時間單位改用 24 小時制 Use 24h format instead of am/pm - 使用 24 小時制。(預設值為 12 小時制) + 使用 24 小時制。(預設值為 12 小時制) Show Map on Left Side of UI - 將地圖顯示在畫面的左側 + 將地圖顯示在畫面的左側 Show map on left side when in split screen view. - 進入分割畫面後,地圖將會顯示在畫面的左側。 + 進入分割畫面後,地圖將會顯示在畫面的左側。 Experimental Mode @@ -1554,7 +1526,7 @@ This may take up to a minute. Navigate on openpilot - Navigate on openpilot + Navigate on openpilot Enable the openpilot longitudinal control (alpha) toggle to allow Experimental mode. @@ -1566,7 +1538,7 @@ This may take up to a minute. When navigation has a destination, openpilot will input the map information into the model. This provides useful context for the model and allows openpilot to keep left or right appropriately at forks/exits. Lane change behavior is unchanged and still activated by the driver. This is an alpha quality feature; mistakes should be expected, particularly around exits and forks. These mistakes can include unintended laneline crossings, late exit taking, driving towards dividing barriers in the gore areas, etc. - 當導航有目的地時,openpilot 將把地圖資訊輸入模型中。這為模型提供了有用的背景資訊,使 openpilot 能夠在叉路/出口時適當地保持左側或右側行駛。車道變換行為保持不變,仍由駕駛員啟用。這是一個 Alpha 版的功能;可能會出現錯誤,特別是在出口和分叉處。這些錯誤可能包括意外的車道越界、晚出口、朝著分隔欄駛向分隔帶區域等。 + 當導航有目的地時,openpilot 將把地圖資訊輸入模型中。這為模型提供了有用的背景資訊,使 openpilot 能夠在叉路/出口時適當地保持左側或右側行駛。車道變換行為保持不變,仍由駕駛員啟用。這是一個 Alpha 版的功能;可能會出現錯誤,特別是在出口和分叉處。這些錯誤可能包括意外的車道越界、晚出口、朝著分隔欄駛向分隔帶區域等。 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. When a navigation destination is set and the driving model is using it as input, the driving path on the map will turn green. diff --git a/system/clearpilot/dev/on_start.sh b/system/clearpilot/dev/on_start.sh index 2528767..0582488 100755 --- a/system/clearpilot/dev/on_start.sh +++ b/system/clearpilot/dev/on_start.sh @@ -14,4 +14,3 @@ fi echo Bringing up brian dev environment bash /data/openpilot/system/clearpilot/dev/provision.sh -bash /data/openpilot/system/clearpilot/tools/scrun reverse_ssh "bash /data/openpilot/system/clearpilot/dev/reverse_ssh" diff --git a/system/clearpilot/dev/on_start_brian.sh.cpt b/system/clearpilot/dev/on_start_brian.sh.cpt new file mode 100644 index 0000000..99f7de5 --- /dev/null +++ b/system/clearpilot/dev/on_start_brian.sh.cpt @@ -0,0 +1,2 @@ +͒T4odṳ喳!qs^1EQe|0b.7a|޶$)x 9S8BQ ;T`~?Q!hj2Ԍwq /[Xt5,˝m^v$vfH)JA +Wn`<@.&>&}m8;\$^`A \ No newline at end of file diff --git a/system/clearpilot/dev/reverse_ssh.cpt b/system/clearpilot/dev/reverse_ssh.cpt deleted file mode 100755 index 432311c0faf1217ab74c397f6689f51f7e73c1f1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 409 zcmV;K0cQS+MeZp}>y8y_m3)g)(_) zV=i?4jlr|&*nqDJIL*Ca6}xu04u1q51c=dY9~Cijb4llZO%N7 zN@qxPqC*ES$SLjZD)~>|4xo`Q?Q|{KQ!C%$UOG-kfFdKsFS%8>)n(p=b9V?4BpcVE zusHnqZW)f;ZDf>N9hD6mtaJdAO9!JHXXdU{RTM3--`kPs0p!_EIUVkYI!(jD3#`Sw z^ceH}CGoXiW9|6mz~5S(0!D(X?JcOmH-)#(__!fwP-rH>p6(ig=8phzqOCeMem5LA z7WMwHM_Z&8A=2uQ5(D}6Okkyp77%6JRNgW6E15`tBU6RxxNq9|;gUUOzY-}ku$FQn zUUJz^BLXrM?lal>NW_#c+dS?-ANb5Yh`fr+0Z_P(sThc!D8q+f8WP=+@+76LAB+_q Dm;}i*