From 3150e2d7c47a296c2eeecb1e3f2676abc1534b01 Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Tue, 4 Feb 2020 15:36:37 +0100 Subject: [PATCH 01/32] Add BSM Signnals --- opendbc/generator/toyota/_toyota_2017.dbc | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/opendbc/generator/toyota/_toyota_2017.dbc b/opendbc/generator/toyota/_toyota_2017.dbc index 3ad15b80556732..403ba10ea44f79 100644 --- a/opendbc/generator/toyota/_toyota_2017.dbc +++ b/opendbc/generator/toyota/_toyota_2017.dbc @@ -267,6 +267,18 @@ BO_ 1163 RSA3: 8 FCM SG_ OVSPVALH : 27|4@0+ (1,-5) [0|0] "" XXX SG_ TSRSPU : 33|2@0+ (1,0) [0|0] "" XXX +BO_ 1880 DEBUG: 8 XXX + SG_ BLINDSPOTSIDE : 7|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOT : 38|1@0+ (1,0) [0|15] "" XXX + SG_ BLINDSPOTD1 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOTD2 : 55|8@0+ (1,0) [0|255] "" XXX + + +BO_ 515 JOEL_ID: 8 XXX + SG_ ACC_DISTANCE : 1|2@0+ (1,0) [1|3] "" XXX + SG_ LANE_WARNING : 8|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_SLOW : 16|1@0+ (1,0) [0|1] "" XXX + CM_ SG_ 36 ACCEL_Y "unit is tbd"; CM_ SG_ 36 YAW_RATE "verify"; CM_ SG_ 36 STEERING_TORQUE "does not seem the steer torque, tbd"; From 643fb77681688a57a90978dc0ffcc0129ee27792 Mon Sep 17 00:00:00 2001 From: Comma Device Date: Tue, 4 Feb 2020 15:45:12 +0100 Subject: [PATCH 02/32] update with BSM signal --- opendbc/lexus_ct200h_2018_pt_generated.dbc | 12 ++++++++++++ opendbc/lexus_gs300h_2017_pt_generated.dbc | 12 ++++++++++++ opendbc/lexus_is_2018_pt_generated.dbc | 12 ++++++++++++ opendbc/lexus_rx_350_2016_pt_generated.dbc | 12 ++++++++++++ opendbc/lexus_rx_hybrid_2017_pt_generated.dbc | 12 ++++++++++++ opendbc/toyota_avalon_2017_pt_generated.dbc | 12 ++++++++++++ .../toyota_camry_hybrid_2018_pt_generated.dbc | 12 ++++++++++++ opendbc/toyota_corolla_2017_pt_generated.dbc | 12 ++++++++++++ opendbc/toyota_highlander_2017_pt_generated.dbc | 12 ++++++++++++ ...yota_highlander_hybrid_2018_pt_generated.dbc | 12 ++++++++++++ opendbc/toyota_nodsu_hybrid_pt_generated.dbc | 12 ++++++++++++ opendbc/toyota_nodsu_pt_generated.dbc | 12 ++++++++++++ opendbc/toyota_prius_2017_pt_generated.dbc | 12 ++++++++++++ opendbc/toyota_rav4_2017_pt_generated.dbc | 12 ++++++++++++ .../toyota_rav4_hybrid_2017_pt_generated.dbc | 12 ++++++++++++ opendbc/toyota_sienna_xle_2018_pt_generated.dbc | 12 ++++++++++++ panda/board/obj/panda.bin.signed | Bin 33540 -> 0 bytes 17 files changed, 192 insertions(+) delete mode 100644 panda/board/obj/panda.bin.signed diff --git a/opendbc/lexus_ct200h_2018_pt_generated.dbc b/opendbc/lexus_ct200h_2018_pt_generated.dbc index 0f322dd16e49f1..4dd4ef349e5e11 100644 --- a/opendbc/lexus_ct200h_2018_pt_generated.dbc +++ b/opendbc/lexus_ct200h_2018_pt_generated.dbc @@ -301,6 +301,18 @@ BO_ 1163 RSA3: 8 FCM SG_ OVSPVALH : 27|4@0+ (1,-5) [0|0] "" XXX SG_ TSRSPU : 33|2@0+ (1,0) [0|0] "" XXX +BO_ 1880 DEBUG: 8 XXX + SG_ BLINDSPOTSIDE : 7|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOT : 38|1@0+ (1,0) [0|15] "" XXX + SG_ BLINDSPOTD1 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOTD2 : 55|8@0+ (1,0) [0|255] "" XXX + + +BO_ 515 JOEL_ID: 8 XXX + SG_ ACC_DISTANCE : 1|2@0+ (1,0) [1|3] "" XXX + SG_ LANE_WARNING : 8|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_SLOW : 16|1@0+ (1,0) [0|1] "" XXX + CM_ SG_ 36 ACCEL_Y "unit is tbd"; CM_ SG_ 36 YAW_RATE "verify"; CM_ SG_ 36 STEERING_TORQUE "does not seem the steer torque, tbd"; diff --git a/opendbc/lexus_gs300h_2017_pt_generated.dbc b/opendbc/lexus_gs300h_2017_pt_generated.dbc index 5bd0bbf5d9d577..d1fedd57ad2039 100644 --- a/opendbc/lexus_gs300h_2017_pt_generated.dbc +++ b/opendbc/lexus_gs300h_2017_pt_generated.dbc @@ -301,6 +301,18 @@ BO_ 1163 RSA3: 8 FCM SG_ OVSPVALH : 27|4@0+ (1,-5) [0|0] "" XXX SG_ TSRSPU : 33|2@0+ (1,0) [0|0] "" XXX +BO_ 1880 DEBUG: 8 XXX + SG_ BLINDSPOTSIDE : 7|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOT : 38|1@0+ (1,0) [0|15] "" XXX + SG_ BLINDSPOTD1 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOTD2 : 55|8@0+ (1,0) [0|255] "" XXX + + +BO_ 515 JOEL_ID: 8 XXX + SG_ ACC_DISTANCE : 1|2@0+ (1,0) [1|3] "" XXX + SG_ LANE_WARNING : 8|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_SLOW : 16|1@0+ (1,0) [0|1] "" XXX + CM_ SG_ 36 ACCEL_Y "unit is tbd"; CM_ SG_ 36 YAW_RATE "verify"; CM_ SG_ 36 STEERING_TORQUE "does not seem the steer torque, tbd"; diff --git a/opendbc/lexus_is_2018_pt_generated.dbc b/opendbc/lexus_is_2018_pt_generated.dbc index 0b1f5315e40e09..9437e6a56f4691 100644 --- a/opendbc/lexus_is_2018_pt_generated.dbc +++ b/opendbc/lexus_is_2018_pt_generated.dbc @@ -301,6 +301,18 @@ BO_ 1163 RSA3: 8 FCM SG_ OVSPVALH : 27|4@0+ (1,-5) [0|0] "" XXX SG_ TSRSPU : 33|2@0+ (1,0) [0|0] "" XXX +BO_ 1880 DEBUG: 8 XXX + SG_ BLINDSPOTSIDE : 7|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOT : 38|1@0+ (1,0) [0|15] "" XXX + SG_ BLINDSPOTD1 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOTD2 : 55|8@0+ (1,0) [0|255] "" XXX + + +BO_ 515 JOEL_ID: 8 XXX + SG_ ACC_DISTANCE : 1|2@0+ (1,0) [1|3] "" XXX + SG_ LANE_WARNING : 8|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_SLOW : 16|1@0+ (1,0) [0|1] "" XXX + CM_ SG_ 36 ACCEL_Y "unit is tbd"; CM_ SG_ 36 YAW_RATE "verify"; CM_ SG_ 36 STEERING_TORQUE "does not seem the steer torque, tbd"; diff --git a/opendbc/lexus_rx_350_2016_pt_generated.dbc b/opendbc/lexus_rx_350_2016_pt_generated.dbc index 2370835ae36b0c..78aebcc7dee326 100644 --- a/opendbc/lexus_rx_350_2016_pt_generated.dbc +++ b/opendbc/lexus_rx_350_2016_pt_generated.dbc @@ -301,6 +301,18 @@ BO_ 1163 RSA3: 8 FCM SG_ OVSPVALH : 27|4@0+ (1,-5) [0|0] "" XXX SG_ TSRSPU : 33|2@0+ (1,0) [0|0] "" XXX +BO_ 1880 DEBUG: 8 XXX + SG_ BLINDSPOTSIDE : 7|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOT : 38|1@0+ (1,0) [0|15] "" XXX + SG_ BLINDSPOTD1 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOTD2 : 55|8@0+ (1,0) [0|255] "" XXX + + +BO_ 515 JOEL_ID: 8 XXX + SG_ ACC_DISTANCE : 1|2@0+ (1,0) [1|3] "" XXX + SG_ LANE_WARNING : 8|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_SLOW : 16|1@0+ (1,0) [0|1] "" XXX + CM_ SG_ 36 ACCEL_Y "unit is tbd"; CM_ SG_ 36 YAW_RATE "verify"; CM_ SG_ 36 STEERING_TORQUE "does not seem the steer torque, tbd"; diff --git a/opendbc/lexus_rx_hybrid_2017_pt_generated.dbc b/opendbc/lexus_rx_hybrid_2017_pt_generated.dbc index ef9052b28133ee..85082d5718f350 100644 --- a/opendbc/lexus_rx_hybrid_2017_pt_generated.dbc +++ b/opendbc/lexus_rx_hybrid_2017_pt_generated.dbc @@ -301,6 +301,18 @@ BO_ 1163 RSA3: 8 FCM SG_ OVSPVALH : 27|4@0+ (1,-5) [0|0] "" XXX SG_ TSRSPU : 33|2@0+ (1,0) [0|0] "" XXX +BO_ 1880 DEBUG: 8 XXX + SG_ BLINDSPOTSIDE : 7|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOT : 38|1@0+ (1,0) [0|15] "" XXX + SG_ BLINDSPOTD1 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOTD2 : 55|8@0+ (1,0) [0|255] "" XXX + + +BO_ 515 JOEL_ID: 8 XXX + SG_ ACC_DISTANCE : 1|2@0+ (1,0) [1|3] "" XXX + SG_ LANE_WARNING : 8|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_SLOW : 16|1@0+ (1,0) [0|1] "" XXX + CM_ SG_ 36 ACCEL_Y "unit is tbd"; CM_ SG_ 36 YAW_RATE "verify"; CM_ SG_ 36 STEERING_TORQUE "does not seem the steer torque, tbd"; diff --git a/opendbc/toyota_avalon_2017_pt_generated.dbc b/opendbc/toyota_avalon_2017_pt_generated.dbc index 026191e9bacc77..ae218007d61f8f 100644 --- a/opendbc/toyota_avalon_2017_pt_generated.dbc +++ b/opendbc/toyota_avalon_2017_pt_generated.dbc @@ -301,6 +301,18 @@ BO_ 1163 RSA3: 8 FCM SG_ OVSPVALH : 27|4@0+ (1,-5) [0|0] "" XXX SG_ TSRSPU : 33|2@0+ (1,0) [0|0] "" XXX +BO_ 1880 DEBUG: 8 XXX + SG_ BLINDSPOTSIDE : 7|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOT : 38|1@0+ (1,0) [0|15] "" XXX + SG_ BLINDSPOTD1 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOTD2 : 55|8@0+ (1,0) [0|255] "" XXX + + +BO_ 515 JOEL_ID: 8 XXX + SG_ ACC_DISTANCE : 1|2@0+ (1,0) [1|3] "" XXX + SG_ LANE_WARNING : 8|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_SLOW : 16|1@0+ (1,0) [0|1] "" XXX + CM_ SG_ 36 ACCEL_Y "unit is tbd"; CM_ SG_ 36 YAW_RATE "verify"; CM_ SG_ 36 STEERING_TORQUE "does not seem the steer torque, tbd"; diff --git a/opendbc/toyota_camry_hybrid_2018_pt_generated.dbc b/opendbc/toyota_camry_hybrid_2018_pt_generated.dbc index f60681a17a184d..dd3be27443bbd0 100644 --- a/opendbc/toyota_camry_hybrid_2018_pt_generated.dbc +++ b/opendbc/toyota_camry_hybrid_2018_pt_generated.dbc @@ -301,6 +301,18 @@ BO_ 1163 RSA3: 8 FCM SG_ OVSPVALH : 27|4@0+ (1,-5) [0|0] "" XXX SG_ TSRSPU : 33|2@0+ (1,0) [0|0] "" XXX +BO_ 1880 DEBUG: 8 XXX + SG_ BLINDSPOTSIDE : 7|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOT : 38|1@0+ (1,0) [0|15] "" XXX + SG_ BLINDSPOTD1 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOTD2 : 55|8@0+ (1,0) [0|255] "" XXX + + +BO_ 515 JOEL_ID: 8 XXX + SG_ ACC_DISTANCE : 1|2@0+ (1,0) [1|3] "" XXX + SG_ LANE_WARNING : 8|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_SLOW : 16|1@0+ (1,0) [0|1] "" XXX + CM_ SG_ 36 ACCEL_Y "unit is tbd"; CM_ SG_ 36 YAW_RATE "verify"; CM_ SG_ 36 STEERING_TORQUE "does not seem the steer torque, tbd"; diff --git a/opendbc/toyota_corolla_2017_pt_generated.dbc b/opendbc/toyota_corolla_2017_pt_generated.dbc index f02e50195caf59..2c00a712fa3be5 100644 --- a/opendbc/toyota_corolla_2017_pt_generated.dbc +++ b/opendbc/toyota_corolla_2017_pt_generated.dbc @@ -301,6 +301,18 @@ BO_ 1163 RSA3: 8 FCM SG_ OVSPVALH : 27|4@0+ (1,-5) [0|0] "" XXX SG_ TSRSPU : 33|2@0+ (1,0) [0|0] "" XXX +BO_ 1880 DEBUG: 8 XXX + SG_ BLINDSPOTSIDE : 7|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOT : 38|1@0+ (1,0) [0|15] "" XXX + SG_ BLINDSPOTD1 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOTD2 : 55|8@0+ (1,0) [0|255] "" XXX + + +BO_ 515 JOEL_ID: 8 XXX + SG_ ACC_DISTANCE : 1|2@0+ (1,0) [1|3] "" XXX + SG_ LANE_WARNING : 8|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_SLOW : 16|1@0+ (1,0) [0|1] "" XXX + CM_ SG_ 36 ACCEL_Y "unit is tbd"; CM_ SG_ 36 YAW_RATE "verify"; CM_ SG_ 36 STEERING_TORQUE "does not seem the steer torque, tbd"; diff --git a/opendbc/toyota_highlander_2017_pt_generated.dbc b/opendbc/toyota_highlander_2017_pt_generated.dbc index a5306ac8f64d05..45d952841d6506 100644 --- a/opendbc/toyota_highlander_2017_pt_generated.dbc +++ b/opendbc/toyota_highlander_2017_pt_generated.dbc @@ -301,6 +301,18 @@ BO_ 1163 RSA3: 8 FCM SG_ OVSPVALH : 27|4@0+ (1,-5) [0|0] "" XXX SG_ TSRSPU : 33|2@0+ (1,0) [0|0] "" XXX +BO_ 1880 DEBUG: 8 XXX + SG_ BLINDSPOTSIDE : 7|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOT : 38|1@0+ (1,0) [0|15] "" XXX + SG_ BLINDSPOTD1 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOTD2 : 55|8@0+ (1,0) [0|255] "" XXX + + +BO_ 515 JOEL_ID: 8 XXX + SG_ ACC_DISTANCE : 1|2@0+ (1,0) [1|3] "" XXX + SG_ LANE_WARNING : 8|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_SLOW : 16|1@0+ (1,0) [0|1] "" XXX + CM_ SG_ 36 ACCEL_Y "unit is tbd"; CM_ SG_ 36 YAW_RATE "verify"; CM_ SG_ 36 STEERING_TORQUE "does not seem the steer torque, tbd"; diff --git a/opendbc/toyota_highlander_hybrid_2018_pt_generated.dbc b/opendbc/toyota_highlander_hybrid_2018_pt_generated.dbc index d19ac45fff0727..580e8a0fc65ac9 100644 --- a/opendbc/toyota_highlander_hybrid_2018_pt_generated.dbc +++ b/opendbc/toyota_highlander_hybrid_2018_pt_generated.dbc @@ -301,6 +301,18 @@ BO_ 1163 RSA3: 8 FCM SG_ OVSPVALH : 27|4@0+ (1,-5) [0|0] "" XXX SG_ TSRSPU : 33|2@0+ (1,0) [0|0] "" XXX +BO_ 1880 DEBUG: 8 XXX + SG_ BLINDSPOTSIDE : 7|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOT : 38|1@0+ (1,0) [0|15] "" XXX + SG_ BLINDSPOTD1 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOTD2 : 55|8@0+ (1,0) [0|255] "" XXX + + +BO_ 515 JOEL_ID: 8 XXX + SG_ ACC_DISTANCE : 1|2@0+ (1,0) [1|3] "" XXX + SG_ LANE_WARNING : 8|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_SLOW : 16|1@0+ (1,0) [0|1] "" XXX + CM_ SG_ 36 ACCEL_Y "unit is tbd"; CM_ SG_ 36 YAW_RATE "verify"; CM_ SG_ 36 STEERING_TORQUE "does not seem the steer torque, tbd"; diff --git a/opendbc/toyota_nodsu_hybrid_pt_generated.dbc b/opendbc/toyota_nodsu_hybrid_pt_generated.dbc index 28ad1d61aca454..061ce8375c443e 100644 --- a/opendbc/toyota_nodsu_hybrid_pt_generated.dbc +++ b/opendbc/toyota_nodsu_hybrid_pt_generated.dbc @@ -301,6 +301,18 @@ BO_ 1163 RSA3: 8 FCM SG_ OVSPVALH : 27|4@0+ (1,-5) [0|0] "" XXX SG_ TSRSPU : 33|2@0+ (1,0) [0|0] "" XXX +BO_ 1880 DEBUG: 8 XXX + SG_ BLINDSPOTSIDE : 7|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOT : 38|1@0+ (1,0) [0|15] "" XXX + SG_ BLINDSPOTD1 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOTD2 : 55|8@0+ (1,0) [0|255] "" XXX + + +BO_ 515 JOEL_ID: 8 XXX + SG_ ACC_DISTANCE : 1|2@0+ (1,0) [1|3] "" XXX + SG_ LANE_WARNING : 8|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_SLOW : 16|1@0+ (1,0) [0|1] "" XXX + CM_ SG_ 36 ACCEL_Y "unit is tbd"; CM_ SG_ 36 YAW_RATE "verify"; CM_ SG_ 36 STEERING_TORQUE "does not seem the steer torque, tbd"; diff --git a/opendbc/toyota_nodsu_pt_generated.dbc b/opendbc/toyota_nodsu_pt_generated.dbc index ab54939b50a4df..6f376c6bd6d66d 100644 --- a/opendbc/toyota_nodsu_pt_generated.dbc +++ b/opendbc/toyota_nodsu_pt_generated.dbc @@ -301,6 +301,18 @@ BO_ 1163 RSA3: 8 FCM SG_ OVSPVALH : 27|4@0+ (1,-5) [0|0] "" XXX SG_ TSRSPU : 33|2@0+ (1,0) [0|0] "" XXX +BO_ 1880 DEBUG: 8 XXX + SG_ BLINDSPOTSIDE : 7|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOT : 38|1@0+ (1,0) [0|15] "" XXX + SG_ BLINDSPOTD1 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOTD2 : 55|8@0+ (1,0) [0|255] "" XXX + + +BO_ 515 JOEL_ID: 8 XXX + SG_ ACC_DISTANCE : 1|2@0+ (1,0) [1|3] "" XXX + SG_ LANE_WARNING : 8|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_SLOW : 16|1@0+ (1,0) [0|1] "" XXX + CM_ SG_ 36 ACCEL_Y "unit is tbd"; CM_ SG_ 36 YAW_RATE "verify"; CM_ SG_ 36 STEERING_TORQUE "does not seem the steer torque, tbd"; diff --git a/opendbc/toyota_prius_2017_pt_generated.dbc b/opendbc/toyota_prius_2017_pt_generated.dbc index 2bd788e2d2105c..3af6c9a2f0bcf1 100644 --- a/opendbc/toyota_prius_2017_pt_generated.dbc +++ b/opendbc/toyota_prius_2017_pt_generated.dbc @@ -301,6 +301,18 @@ BO_ 1163 RSA3: 8 FCM SG_ OVSPVALH : 27|4@0+ (1,-5) [0|0] "" XXX SG_ TSRSPU : 33|2@0+ (1,0) [0|0] "" XXX +BO_ 1880 DEBUG: 8 XXX + SG_ BLINDSPOTSIDE : 7|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOT : 38|1@0+ (1,0) [0|15] "" XXX + SG_ BLINDSPOTD1 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOTD2 : 55|8@0+ (1,0) [0|255] "" XXX + + +BO_ 515 JOEL_ID: 8 XXX + SG_ ACC_DISTANCE : 1|2@0+ (1,0) [1|3] "" XXX + SG_ LANE_WARNING : 8|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_SLOW : 16|1@0+ (1,0) [0|1] "" XXX + CM_ SG_ 36 ACCEL_Y "unit is tbd"; CM_ SG_ 36 YAW_RATE "verify"; CM_ SG_ 36 STEERING_TORQUE "does not seem the steer torque, tbd"; diff --git a/opendbc/toyota_rav4_2017_pt_generated.dbc b/opendbc/toyota_rav4_2017_pt_generated.dbc index a9e8a03e517da6..47292581c9fbae 100644 --- a/opendbc/toyota_rav4_2017_pt_generated.dbc +++ b/opendbc/toyota_rav4_2017_pt_generated.dbc @@ -301,6 +301,18 @@ BO_ 1163 RSA3: 8 FCM SG_ OVSPVALH : 27|4@0+ (1,-5) [0|0] "" XXX SG_ TSRSPU : 33|2@0+ (1,0) [0|0] "" XXX +BO_ 1880 DEBUG: 8 XXX + SG_ BLINDSPOTSIDE : 7|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOT : 38|1@0+ (1,0) [0|15] "" XXX + SG_ BLINDSPOTD1 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOTD2 : 55|8@0+ (1,0) [0|255] "" XXX + + +BO_ 515 JOEL_ID: 8 XXX + SG_ ACC_DISTANCE : 1|2@0+ (1,0) [1|3] "" XXX + SG_ LANE_WARNING : 8|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_SLOW : 16|1@0+ (1,0) [0|1] "" XXX + CM_ SG_ 36 ACCEL_Y "unit is tbd"; CM_ SG_ 36 YAW_RATE "verify"; CM_ SG_ 36 STEERING_TORQUE "does not seem the steer torque, tbd"; diff --git a/opendbc/toyota_rav4_hybrid_2017_pt_generated.dbc b/opendbc/toyota_rav4_hybrid_2017_pt_generated.dbc index 27ced0f9cdb393..af6d235f67caea 100644 --- a/opendbc/toyota_rav4_hybrid_2017_pt_generated.dbc +++ b/opendbc/toyota_rav4_hybrid_2017_pt_generated.dbc @@ -301,6 +301,18 @@ BO_ 1163 RSA3: 8 FCM SG_ OVSPVALH : 27|4@0+ (1,-5) [0|0] "" XXX SG_ TSRSPU : 33|2@0+ (1,0) [0|0] "" XXX +BO_ 1880 DEBUG: 8 XXX + SG_ BLINDSPOTSIDE : 7|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOT : 38|1@0+ (1,0) [0|15] "" XXX + SG_ BLINDSPOTD1 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOTD2 : 55|8@0+ (1,0) [0|255] "" XXX + + +BO_ 515 JOEL_ID: 8 XXX + SG_ ACC_DISTANCE : 1|2@0+ (1,0) [1|3] "" XXX + SG_ LANE_WARNING : 8|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_SLOW : 16|1@0+ (1,0) [0|1] "" XXX + CM_ SG_ 36 ACCEL_Y "unit is tbd"; CM_ SG_ 36 YAW_RATE "verify"; CM_ SG_ 36 STEERING_TORQUE "does not seem the steer torque, tbd"; diff --git a/opendbc/toyota_sienna_xle_2018_pt_generated.dbc b/opendbc/toyota_sienna_xle_2018_pt_generated.dbc index 2cbd918ce3e08a..386fa0d83f181b 100644 --- a/opendbc/toyota_sienna_xle_2018_pt_generated.dbc +++ b/opendbc/toyota_sienna_xle_2018_pt_generated.dbc @@ -301,6 +301,18 @@ BO_ 1163 RSA3: 8 FCM SG_ OVSPVALH : 27|4@0+ (1,-5) [0|0] "" XXX SG_ TSRSPU : 33|2@0+ (1,0) [0|0] "" XXX +BO_ 1880 DEBUG: 8 XXX + SG_ BLINDSPOTSIDE : 7|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOT : 38|1@0+ (1,0) [0|15] "" XXX + SG_ BLINDSPOTD1 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ BLINDSPOTD2 : 55|8@0+ (1,0) [0|255] "" XXX + + +BO_ 515 JOEL_ID: 8 XXX + SG_ ACC_DISTANCE : 1|2@0+ (1,0) [1|3] "" XXX + SG_ LANE_WARNING : 8|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_SLOW : 16|1@0+ (1,0) [0|1] "" XXX + CM_ SG_ 36 ACCEL_Y "unit is tbd"; CM_ SG_ 36 YAW_RATE "verify"; CM_ SG_ 36 STEERING_TORQUE "does not seem the steer torque, tbd"; diff --git a/panda/board/obj/panda.bin.signed b/panda/board/obj/panda.bin.signed deleted file mode 100644 index f48f6203cb7a40ae1b39925d5c6b5fadfeeab4e1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33540 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 Sa?{nj-<`EH-*>EO&wl|BCdfzt From 1b63fcf27d8bb7ce76dbb19094bb6665d92b4e94 Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Tue, 4 Feb 2020 18:16:55 +0100 Subject: [PATCH 03/32] Enable BSM Code Now with option to keep it on all the time --- selfdrive/car/toyota/carcontroller.py | 60 ++++++++++++++++++++++++++- 1 file changed, 59 insertions(+), 1 deletion(-) diff --git a/selfdrive/car/toyota/carcontroller.py b/selfdrive/car/toyota/carcontroller.py index ee52c0821abf07..b864d4e55c15e3 100644 --- a/selfdrive/car/toyota/carcontroller.py +++ b/selfdrive/car/toyota/carcontroller.py @@ -28,6 +28,22 @@ 0x373, 0x374, 0x375, 0x380, 0x381, 0x382, 0x383] +# Blindspot codes +LEFT_BLINDSPOT = '\x41' +RIGHT_BLINDSPOT = '\x42' +BLINDSPOTDEBUG = True +BLINDSPOTALWAYSON = False + +def set_blindspot_debug_mode(lr,enable): + if enable: + m = lr + "\x02\x10\x60\x00\x00\x00\x00" + else: + m = lr + "\x02\x10\x01\x00\x00\x00\x00" + return make_can_msg(1872, m, 0, False) + +def poll_blindspot_status(lr): + m = lr + "\x02\x21\x69\x00\x00\x00\x00" + return make_can_msg(1872, m, 0, False) def accel_hysteresis(accel, accel_steady, enabled): @@ -94,6 +110,11 @@ def __init__(self, dbc_name, car_fingerprint, enable_camera, enable_dsu, enable_ self.last_standstill = False self.standstill_req = False self.angle_control = False + self.blindspot_poll_counter = 0 + self.blindspot_blink_counter_left = 0 + self.blindspot_blink_counter_right = 0 + self.blindspot_debug_enabled_left = False + self.blindspot_debug_enabled_right = False self.steer_angle_enabled = False self.ipas_reset_counter = 0 @@ -196,7 +217,44 @@ def update(self, enabled, CS, frame, actuators, pcm_cancel_cmd, hud_alert, self.last_standstill = CS.standstill can_sends = [] - + + # Enable blindspot debug mode once + if BLINDSPOTDEBUG: + self.blindspot_poll_counter += 1 + if self.blindspot_poll_counter > 1000: # 10 seconds after start + if CS.left_blinker_on or BLINDSPOTALWAYSON: + self.blindspot_blink_counter_left += 1 + #print "debug Left Blinker on" + elif CS.right_blinker_on or BLINDSPOTALWAYSON: + self.blindspot_blink_counter_right += 1 + else: + self.blindspot_blink_counter_left = 0 + self.blindspot_blink_counter_right = 0 + #print "debug Left Blinker off" + if self.blindspot_debug_enabled_left: + can_sends.append(set_blindspot_debug_mode(LEFT_BLINDSPOT, False)) + self.blindspot_debug_enabled_left = False + #print "debug Left blindspot debug disabled" + if self.blindspot_debug_enabled_right: + can_sends.append(set_blindspot_debug_mode(RIGHT_BLINDSPOT, False)) + self.blindspot_debug_enabled_right = False + #print "debug Right blindspot debug disabled" + if self.blindspot_blink_counter_left > 9 and not self.blindspot_debug_enabled_left: #check blinds + can_sends.append(set_blindspot_debug_mode(LEFT_BLINDSPOT, True)) + #print "debug Left blindspot debug enabled" + self.blindspot_debug_enabled_left = True + if self.blindspot_blink_counter_right > 5 and not self.blindspot_debug_enabled_right: #enable blindspot debug mode + if CS.v_ego > 6: #polling at low speeds switches camera off + can_sends.append(set_blindspot_debug_mode(RIGHT_BLINDSPOT, True)) + #print "debug Right blindspot debug enabled" + self.blindspot_debug_enabled_right = True + if self.blindspot_debug_enabled_left: + if self.blindspot_poll_counter % 20 == 0 and self.blindspot_poll_counter > 1001: # Poll blindspots at 5 Hz + can_sends.append(poll_blindspot_status(LEFT_BLINDSPOT)) + if self.blindspot_debug_enabled_right: + if self.blindspot_poll_counter % 20 == 10 and self.blindspot_poll_counter > 1005: # Poll blindspots at 5 Hz + can_sends.append(poll_blindspot_status(RIGHT_BLINDSPOT)) + #*** control msgs *** #print("steer {0} {1} {2} {3}".format(apply_steer, min_lim, max_lim, CS.steer_torque_motor) From 73dce4259f8b1187f42b81d12e4a211b84825a8e Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Tue, 4 Feb 2020 18:19:04 +0100 Subject: [PATCH 04/32] add two blindspot booleans --- cereal/arne182.capnp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cereal/arne182.capnp b/cereal/arne182.capnp index 13fda807a69287..02e27ad7ec60ac 100644 --- a/cereal/arne182.capnp +++ b/cereal/arne182.capnp @@ -90,7 +90,7 @@ struct CarStateArne182 { struct Arne182Status { - blindspot @0 :Bool; + rightBlindspot @0 :Bool; distanceToggle @1 :Float32; laneDepartureToggle @2 :Bool; accSlowToggle @3 :Bool; @@ -98,6 +98,7 @@ struct Arne182Status { readdistancelines @5 :Float32; gasbuttonstatus @6 :Float32; lkMode @7 :Bool; + leftBlindspot@8 :Bool; } struct LiveTrafficData { From e128ec7f4df49be0543f8eee63730df30ab2938f Mon Sep 17 00:00:00 2001 From: Shane Date: Wed, 5 Feb 2020 00:31:06 -0600 Subject: [PATCH 05/32] fix for travis, make_can_msg only takes 3 args --- selfdrive/car/toyota/carcontroller.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/selfdrive/car/toyota/carcontroller.py b/selfdrive/car/toyota/carcontroller.py index b864d4e55c15e3..92affffc4aea74 100644 --- a/selfdrive/car/toyota/carcontroller.py +++ b/selfdrive/car/toyota/carcontroller.py @@ -34,19 +34,21 @@ BLINDSPOTDEBUG = True BLINDSPOTALWAYSON = False + def set_blindspot_debug_mode(lr,enable): if enable: m = lr + "\x02\x10\x60\x00\x00\x00\x00" else: m = lr + "\x02\x10\x01\x00\x00\x00\x00" - return make_can_msg(1872, m, 0, False) + return make_can_msg(1872, m, 0) + def poll_blindspot_status(lr): m = lr + "\x02\x21\x69\x00\x00\x00\x00" - return make_can_msg(1872, m, 0, False) + return make_can_msg(1872, m, 0) -def accel_hysteresis(accel, accel_steady, enabled): +def accel_hysteresis(accel, accel_steady, enabled): # for small accel oscillations within ACCEL_HYST_GAP, don't change the accel command if not enabled: # send 0 when disabled, otherwise acc faults From 2da00ce7d4186734ea4348676f8beda35f7f38a3 Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Wed, 5 Feb 2020 11:48:55 +0100 Subject: [PATCH 06/32] Do not shutdown eon --- selfdrive/boardd/boardd.cc | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/selfdrive/boardd/boardd.cc b/selfdrive/boardd/boardd.cc index c341600bb72895..560df26c144a82 100644 --- a/selfdrive/boardd/boardd.cc +++ b/selfdrive/boardd/boardd.cc @@ -66,7 +66,7 @@ cereal::HealthData::HwType hw_type = cereal::HealthData::HwType::UNKNOWN; bool is_pigeon = false; const uint32_t NO_IGNITION_CNT_MAX = 2 * 60 * 60 * 30; // turn off charge after 30 hrs const float VBATT_START_CHARGING = 11.5; -const float VBATT_PAUSE_CHARGING = 11.0; +const float VBATT_PAUSE_CHARGING = 10.5; float voltage_f = 12.5; // filtered voltage uint32_t no_ignition_cnt = 0; bool connected_once = false; @@ -407,8 +407,6 @@ void can_health(PubSocket *publisher) { pthread_mutex_lock(&usb_lock); libusb_control_transfer(dev_handle, 0xc0, 0xe6, (uint16_t)(cereal::HealthData::UsbPowerMode::CLIENT), 0, NULL, 0, TIMEOUT); pthread_mutex_unlock(&usb_lock); - printf("POWER DOWN DEVICE\n"); - system("service call power 17 i32 0 i32 1"); } if (!no_ignition_exp && (voltage_f > VBATT_START_CHARGING) && !cdp_mode) { printf("TURN ON CHARGING!\n"); From 334c18bd027095c8b36eb66c2e4faa7b35bb3f95 Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Wed, 5 Feb 2020 14:12:05 +0100 Subject: [PATCH 07/32] change string to bytes make_can_msg now only support bytes of strings --- selfdrive/car/toyota/carcontroller.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/selfdrive/car/toyota/carcontroller.py b/selfdrive/car/toyota/carcontroller.py index 92affffc4aea74..96059b1f9285d3 100644 --- a/selfdrive/car/toyota/carcontroller.py +++ b/selfdrive/car/toyota/carcontroller.py @@ -29,22 +29,22 @@ 0x383] # Blindspot codes -LEFT_BLINDSPOT = '\x41' -RIGHT_BLINDSPOT = '\x42' +LEFT_BLINDSPOT = b'\x41' +RIGHT_BLINDSPOT = b'\x42' BLINDSPOTDEBUG = True BLINDSPOTALWAYSON = False def set_blindspot_debug_mode(lr,enable): if enable: - m = lr + "\x02\x10\x60\x00\x00\x00\x00" + m = lr + b"\x02\x10\x60\x00\x00\x00\x00" else: - m = lr + "\x02\x10\x01\x00\x00\x00\x00" + m = lr + b"\x02\x10\x01\x00\x00\x00\x00" return make_can_msg(1872, m, 0) def poll_blindspot_status(lr): - m = lr + "\x02\x21\x69\x00\x00\x00\x00" + m = lr + b"\x02\x21\x69\x00\x00\x00\x00" return make_can_msg(1872, m, 0) From 2309eb3dc1fefbfbbcd1fc6d6e5774b92e0b7f35 Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Wed, 5 Feb 2020 15:57:51 +0100 Subject: [PATCH 08/32] Recognise Blindspot --- selfdrive/car/toyota/carstate.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/selfdrive/car/toyota/carstate.py b/selfdrive/car/toyota/carstate.py index f1c58c083ae8bd..f55d77ce7f4ba0 100644 --- a/selfdrive/car/toyota/carstate.py +++ b/selfdrive/car/toyota/carstate.py @@ -54,6 +54,14 @@ def get_can_parser(CP): ("IPAS_STATE", "EPS_STATUS", 1), ("BRAKE_LIGHTS_ACC", "ESP_CONTROL", 0), ("AUTO_HIGH_BEAM", "LIGHT_STALK", 0), + ("BLINDSPOT","DEBUG", 0), + ("BLINDSPOTSIDE","DEBUG",65), + ("BLINDSPOTD1","DEBUG", 0), + ("BLINDSPOTD2","DEBUG", 0), + ("ACC_DISTANCE", "JOEL_ID", 2), + ("LANE_WARNING", "JOEL_ID", 1), + ("ACC_SLOW", "JOEL_ID", 0), + ("DISTANCE_LINES", "PCM_CRUISE_SM", 0), ] checks = [ @@ -216,6 +224,19 @@ def update(self, cp, cp_cam): self.gasbuttonstatus = 0 msg = messaging_arne.new_message() msg.init('arne182Status') + if cp.vl["DEBUG"]['BLINDSPOTSIDE']==65: #Left + if (cp.vl["DEBUG"]['BLINDSPOTD1'] > 10) or (cp.vl["DEBUG"]['BLINDSPOTD1'] > 10): + msg.arne182Status.leftBlindspot = bool(1) + print("Left Blindspot Detected") + else: + msg.arne182Status.leftBlindspot = bool(0) + elif cp.vl["DEBUG"]['BLINDSPOTSIDE']==66: #Right + if (cp.vl["DEBUG"]['BLINDSPOTD1'] > 10) or (cp.vl["DEBUG"]['BLINDSPOTD1'] > 10): + msg.arne182Status.rightBlindspot = bool(1) + print("Right Blindspot Detected") + else: + msg.arne182Status.rightBlindspot = bool(0) + msg.arne182Status.gasbuttonstatus = self.gasbuttonstatus if not travis: self.arne_pm.send('arne182Status', msg) From a2a1938ec2dadd3e8af07a477dacf3555e108b10 Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Thu, 6 Feb 2020 09:37:34 +0100 Subject: [PATCH 09/32] Enable debugging and refactor blindspot code --- selfdrive/car/toyota/carcontroller.py | 31 +++++++++++---------------- 1 file changed, 13 insertions(+), 18 deletions(-) diff --git a/selfdrive/car/toyota/carcontroller.py b/selfdrive/car/toyota/carcontroller.py index 96059b1f9285d3..3701a5a96d02c6 100644 --- a/selfdrive/car/toyota/carcontroller.py +++ b/selfdrive/car/toyota/carcontroller.py @@ -31,21 +31,20 @@ # Blindspot codes LEFT_BLINDSPOT = b'\x41' RIGHT_BLINDSPOT = b'\x42' -BLINDSPOTDEBUG = True -BLINDSPOTALWAYSON = False +BLINDSPOTALWAYSON = True def set_blindspot_debug_mode(lr,enable): if enable: - m = lr + b"\x02\x10\x60\x00\x00\x00\x00" + m = lr + b'\x02\x10\x60\x00\x00\x00\x00' else: - m = lr + b"\x02\x10\x01\x00\x00\x00\x00" - return make_can_msg(1872, m, 0) + m = lr + b'\x02\x10\x01\x00\x00\x00\x00' + return make_can_msg(0x750, m, 0) def poll_blindspot_status(lr): - m = lr + b"\x02\x21\x69\x00\x00\x00\x00" - return make_can_msg(1872, m, 0) + m = lr + b'\x02\x21\x69\x00\x00\x00\x00' + return make_can_msg(0x750, m, 0) def accel_hysteresis(accel, accel_steady, enabled): @@ -112,7 +111,6 @@ def __init__(self, dbc_name, car_fingerprint, enable_camera, enable_dsu, enable_ self.last_standstill = False self.standstill_req = False self.angle_control = False - self.blindspot_poll_counter = 0 self.blindspot_blink_counter_left = 0 self.blindspot_blink_counter_right = 0 self.blindspot_debug_enabled_left = False @@ -221,9 +219,7 @@ def update(self, enabled, CS, frame, actuators, pcm_cancel_cmd, hud_alert, can_sends = [] # Enable blindspot debug mode once - if BLINDSPOTDEBUG: - self.blindspot_poll_counter += 1 - if self.blindspot_poll_counter > 1000: # 10 seconds after start + if frame > 1000: # 10 seconds after start if CS.left_blinker_on or BLINDSPOTALWAYSON: self.blindspot_blink_counter_left += 1 #print "debug Left Blinker on" @@ -232,29 +228,28 @@ def update(self, enabled, CS, frame, actuators, pcm_cancel_cmd, hud_alert, else: self.blindspot_blink_counter_left = 0 self.blindspot_blink_counter_right = 0 - #print "debug Left Blinker off" if self.blindspot_debug_enabled_left: can_sends.append(set_blindspot_debug_mode(LEFT_BLINDSPOT, False)) self.blindspot_debug_enabled_left = False - #print "debug Left blindspot debug disabled" + print ("debug Left blindspot debug disabled") if self.blindspot_debug_enabled_right: can_sends.append(set_blindspot_debug_mode(RIGHT_BLINDSPOT, False)) self.blindspot_debug_enabled_right = False - #print "debug Right blindspot debug disabled" + print("debug Right blindspot debug disabled") if self.blindspot_blink_counter_left > 9 and not self.blindspot_debug_enabled_left: #check blinds can_sends.append(set_blindspot_debug_mode(LEFT_BLINDSPOT, True)) - #print "debug Left blindspot debug enabled" + print("debug Left blindspot debug enabled") self.blindspot_debug_enabled_left = True if self.blindspot_blink_counter_right > 5 and not self.blindspot_debug_enabled_right: #enable blindspot debug mode if CS.v_ego > 6: #polling at low speeds switches camera off can_sends.append(set_blindspot_debug_mode(RIGHT_BLINDSPOT, True)) - #print "debug Right blindspot debug enabled" + print("debug Right blindspot debug enabled") self.blindspot_debug_enabled_right = True if self.blindspot_debug_enabled_left: - if self.blindspot_poll_counter % 20 == 0 and self.blindspot_poll_counter > 1001: # Poll blindspots at 5 Hz + if frame % 20 == 0 and frame > 1001: # Poll blindspots at 5 Hz can_sends.append(poll_blindspot_status(LEFT_BLINDSPOT)) if self.blindspot_debug_enabled_right: - if self.blindspot_poll_counter % 20 == 10 and self.blindspot_poll_counter > 1005: # Poll blindspots at 5 Hz + if frame % 20 == 10 and frame > 1005: # Poll blindspots at 5 Hz can_sends.append(poll_blindspot_status(RIGHT_BLINDSPOT)) #*** control msgs *** From 427b66b5a03ca4f1f5400d80f6716ffd19861a18 Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Thu, 6 Feb 2020 11:42:12 +0100 Subject: [PATCH 10/32] Add more debug --- selfdrive/car/toyota/carcontroller.py | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/selfdrive/car/toyota/carcontroller.py b/selfdrive/car/toyota/carcontroller.py index 3701a5a96d02c6..d5557d57cbcc13 100644 --- a/selfdrive/car/toyota/carcontroller.py +++ b/selfdrive/car/toyota/carcontroller.py @@ -220,11 +220,16 @@ def update(self, enabled, CS, frame, actuators, pcm_cancel_cmd, hud_alert, # Enable blindspot debug mode once if frame > 1000: # 10 seconds after start - if CS.left_blinker_on or BLINDSPOTALWAYSON: + if BLINDSPOTALWAYSON: self.blindspot_blink_counter_left += 1 - #print "debug Left Blinker on" - elif CS.right_blinker_on or BLINDSPOTALWAYSON: self.blindspot_blink_counter_right += 1 + print("debug blindspot alwayson!") + elif CS.left_blinker_on: + self.blindspot_blink_counter_left += 1 + print("debug Left Blinker on") + elif CS.right_blinker_on: + self.blindspot_blink_counter_right += 1 + print("debug Right Blinker on") else: self.blindspot_blink_counter_left = 0 self.blindspot_blink_counter_right = 0 @@ -245,12 +250,18 @@ def update(self, enabled, CS, frame, actuators, pcm_cancel_cmd, hud_alert, can_sends.append(set_blindspot_debug_mode(RIGHT_BLINDSPOT, True)) print("debug Right blindspot debug enabled") self.blindspot_debug_enabled_right = True + else: + can_sends.append(set_blindspot_debug_mode(RIGHT_BLINDSPOT, False)) + self.blindspot_debug_enabled_right = False + print("debug Right blindspot debug disabled") if self.blindspot_debug_enabled_left: if frame % 20 == 0 and frame > 1001: # Poll blindspots at 5 Hz can_sends.append(poll_blindspot_status(LEFT_BLINDSPOT)) + print("debug Left blindspot poll") if self.blindspot_debug_enabled_right: if frame % 20 == 10 and frame > 1005: # Poll blindspots at 5 Hz can_sends.append(poll_blindspot_status(RIGHT_BLINDSPOT)) + print("debug Right blindspot poll") #*** control msgs *** #print("steer {0} {1} {2} {3}".format(apply_steer, min_lim, max_lim, CS.steer_torque_motor) From 200ff0b48c8a842f7a6de7dd5bca5cda1aac516c Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Thu, 6 Feb 2020 12:58:32 +0100 Subject: [PATCH 11/32] Require 20% more torque and 40% less torque MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When increasing steering angle require 20% more torque if at 100° and require 40% less torque if returning back to straight --- selfdrive/controls/lib/latcontrol_lqr.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/selfdrive/controls/lib/latcontrol_lqr.py b/selfdrive/controls/lib/latcontrol_lqr.py index 668d76275c8eeb..701cb83bb48494 100644 --- a/selfdrive/controls/lib/latcontrol_lqr.py +++ b/selfdrive/controls/lib/latcontrol_lqr.py @@ -48,12 +48,12 @@ def update(self, active, v_ego, angle_steers, angle_steers_rate, eps_torque, ste steers_max = get_steer_max(CP, v_ego) if (self.output_steer > 0.0) and (angle_steers > 0.0): - factor = -1.0 + factor = -0.4 elif (self.output_steer < 0.0) and (angle_steers < 0.0): - factor = -1.0 + factor = -0.4 else: - factor = 1.0 - torque_scale = (1-factor*max(abs(angle_steers)/100,1.0)*0.3)*(0.45 + v_ego / 60.0)**2 # Scale actuator model with speed + factor = 0.2 + torque_scale = (1-factor*max(abs(angle_steers)/100,1.0))*(0.45 + v_ego / 60.0)**2 # Scale actuator model with speed # Subtract offset. Zero angle should correspond to zero torque self.angle_steers_des = path_plan.angleSteers - path_plan.angleOffset From d6485099bd0abe2edaa1c6df72562df220f5324f Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Thu, 6 Feb 2020 13:10:11 +0100 Subject: [PATCH 12/32] try without alwayson --- selfdrive/car/toyota/carcontroller.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/selfdrive/car/toyota/carcontroller.py b/selfdrive/car/toyota/carcontroller.py index d5557d57cbcc13..54f43da1ada481 100644 --- a/selfdrive/car/toyota/carcontroller.py +++ b/selfdrive/car/toyota/carcontroller.py @@ -31,7 +31,7 @@ # Blindspot codes LEFT_BLINDSPOT = b'\x41' RIGHT_BLINDSPOT = b'\x42' -BLINDSPOTALWAYSON = True +BLINDSPOTALWAYSON = False def set_blindspot_debug_mode(lr,enable): @@ -250,10 +250,10 @@ def update(self, enabled, CS, frame, actuators, pcm_cancel_cmd, hud_alert, can_sends.append(set_blindspot_debug_mode(RIGHT_BLINDSPOT, True)) print("debug Right blindspot debug enabled") self.blindspot_debug_enabled_right = True - else: - can_sends.append(set_blindspot_debug_mode(RIGHT_BLINDSPOT, False)) - self.blindspot_debug_enabled_right = False - print("debug Right blindspot debug disabled") + if CS.v_ego < 6 and self.blindspot_debug_enabled_right: # if enabled and speed falls below 6m/s + can_sends.append(set_blindspot_debug_mode(RIGHT_BLINDSPOT, False)) + self.blindspot_debug_enabled_right = False + print("debug Right blindspot debug disabled") if self.blindspot_debug_enabled_left: if frame % 20 == 0 and frame > 1001: # Poll blindspots at 5 Hz can_sends.append(poll_blindspot_status(LEFT_BLINDSPOT)) From fc9f8d24b29b586b18f1b45fa7ba3193d2532fac Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Thu, 6 Feb 2020 13:40:34 +0100 Subject: [PATCH 13/32] pass make_can_msg direct values --- selfdrive/car/toyota/carcontroller.py | 59 +++++++++++++++------------ 1 file changed, 33 insertions(+), 26 deletions(-) diff --git a/selfdrive/car/toyota/carcontroller.py b/selfdrive/car/toyota/carcontroller.py index 54f43da1ada481..184dda79c223bf 100644 --- a/selfdrive/car/toyota/carcontroller.py +++ b/selfdrive/car/toyota/carcontroller.py @@ -34,17 +34,17 @@ BLINDSPOTALWAYSON = False -def set_blindspot_debug_mode(lr,enable): - if enable: - m = lr + b'\x02\x10\x60\x00\x00\x00\x00' - else: - m = lr + b'\x02\x10\x01\x00\x00\x00\x00' - return make_can_msg(0x750, m, 0) +#def set_blindspot_debug_mode(lr,enable): +# if enable: +# m = lr + b'\x02\x10\x60\x00\x00\x00\x00' +# else: +# m = lr + b'\x02\x10\x01\x00\x00\x00\x00' +# return make_can_msg(0x750, m, 0) -def poll_blindspot_status(lr): - m = lr + b'\x02\x21\x69\x00\x00\x00\x00' - return make_can_msg(0x750, m, 0) +#def poll_blindspot_status(lr): +# m = lr + b'\x02\x21\x69\x00\x00\x00\x00' +# return make_can_msg(0x750, m, 0) def accel_hysteresis(accel, accel_steady, enabled): @@ -223,45 +223,52 @@ def update(self, enabled, CS, frame, actuators, pcm_cancel_cmd, hud_alert, if BLINDSPOTALWAYSON: self.blindspot_blink_counter_left += 1 self.blindspot_blink_counter_right += 1 - print("debug blindspot alwayson!") + #print("debug blindspot alwayson!") elif CS.left_blinker_on: self.blindspot_blink_counter_left += 1 - print("debug Left Blinker on") + #print("debug Left Blinker on") elif CS.right_blinker_on: self.blindspot_blink_counter_right += 1 - print("debug Right Blinker on") + #print("debug Right Blinker on") else: self.blindspot_blink_counter_left = 0 self.blindspot_blink_counter_right = 0 if self.blindspot_debug_enabled_left: - can_sends.append(set_blindspot_debug_mode(LEFT_BLINDSPOT, False)) + #can_sends.append(set_blindspot_debug_mode(LEFT_BLINDSPOT, False)) + can_sends.append(make_can_msg(0x750, b'\x41\x02\x10\x01\x00\x00\x00\x00', 0)) self.blindspot_debug_enabled_left = False - print ("debug Left blindspot debug disabled") + #print ("debug Left blindspot debug disabled") if self.blindspot_debug_enabled_right: - can_sends.append(set_blindspot_debug_mode(RIGHT_BLINDSPOT, False)) + #can_sends.append(set_blindspot_debug_mode(RIGHT_BLINDSPOT, False)) + can_sends.append(make_can_msg(0x750, b'\x42\x02\x10\x01\x00\x00\x00\x00', 0)) self.blindspot_debug_enabled_right = False - print("debug Right blindspot debug disabled") + #print("debug Right blindspot debug disabled") if self.blindspot_blink_counter_left > 9 and not self.blindspot_debug_enabled_left: #check blinds - can_sends.append(set_blindspot_debug_mode(LEFT_BLINDSPOT, True)) - print("debug Left blindspot debug enabled") + #can_sends.append(set_blindspot_debug_mode(LEFT_BLINDSPOT, True)) + can_sends.append(make_can_msg(0x750, b'\x41\x02\x10\x60\x00\x00\x00\x00', 0)) + #print("debug Left blindspot debug enabled") self.blindspot_debug_enabled_left = True if self.blindspot_blink_counter_right > 5 and not self.blindspot_debug_enabled_right: #enable blindspot debug mode if CS.v_ego > 6: #polling at low speeds switches camera off - can_sends.append(set_blindspot_debug_mode(RIGHT_BLINDSPOT, True)) - print("debug Right blindspot debug enabled") + can_sends.append(make_can_msg(0x750, b'\x42\x02\x10\x60\x00\x00\x00\x00', 0)) + #can_sends.append(set_blindspot_debug_mode(RIGHT_BLINDSPOT, True)) + #print("debug Right blindspot debug enabled") self.blindspot_debug_enabled_right = True if CS.v_ego < 6 and self.blindspot_debug_enabled_right: # if enabled and speed falls below 6m/s - can_sends.append(set_blindspot_debug_mode(RIGHT_BLINDSPOT, False)) + can_sends.append(make_can_msg(0x750, b'\x42\x02\x10\x01\x00\x00\x00\x00', 0)) + #can_sends.append(set_blindspot_debug_mode(RIGHT_BLINDSPOT, False)) self.blindspot_debug_enabled_right = False - print("debug Right blindspot debug disabled") + #print("debug Right blindspot debug disabled") if self.blindspot_debug_enabled_left: if frame % 20 == 0 and frame > 1001: # Poll blindspots at 5 Hz - can_sends.append(poll_blindspot_status(LEFT_BLINDSPOT)) - print("debug Left blindspot poll") + #can_sends.append(poll_blindspot_status(LEFT_BLINDSPOT)) + can_sends.append(make_can_msg(0x750, b'\x41\x02\x21\x69\x00\x00\x00\x00', 0)) + #print("debug Left blindspot poll") if self.blindspot_debug_enabled_right: if frame % 20 == 10 and frame > 1005: # Poll blindspots at 5 Hz - can_sends.append(poll_blindspot_status(RIGHT_BLINDSPOT)) - print("debug Right blindspot poll") + can_sends.append(make_can_msg(0x750, b'\x42\x02\x21\x69\x00\x00\x00\x00', 0)) + #can_sends.append(poll_blindspot_status(RIGHT_BLINDSPOT)) + #print("debug Right blindspot poll") #*** control msgs *** #print("steer {0} {1} {2} {3}".format(apply_steer, min_lim, max_lim, CS.steer_torque_motor) From 4bd142ed29d3c2630a69f2aba9c1a2a63f7a7d68 Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Fri, 7 Feb 2020 08:45:02 +0100 Subject: [PATCH 14/32] Try get correct string --- selfdrive/boardd/boardd_api_impl.pyx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/selfdrive/boardd/boardd_api_impl.pyx b/selfdrive/boardd/boardd_api_impl.pyx index 3f50fbaab6c5ca..37debd89a5124b 100644 --- a/selfdrive/boardd/boardd_api_impl.pyx +++ b/selfdrive/boardd/boardd_api_impl.pyx @@ -18,7 +18,7 @@ def can_list_to_can_capnp(can_msgs, msgtype='can', valid=True): for can_msg in can_msgs: f.address = can_msg[0] f.busTime = can_msg[1] - f.dat = can_msg[2] + f.dat = can_msg[2].hex() f.src = can_msg[3] can_list.push_back(f) cdef string out From b8ca5e0e4e690c706d1f5210683a48c1f753fbac Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Fri, 7 Feb 2020 12:01:49 +0100 Subject: [PATCH 15/32] Print can messages --- selfdrive/boardd/boardd_api_impl.pyx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/selfdrive/boardd/boardd_api_impl.pyx b/selfdrive/boardd/boardd_api_impl.pyx index 37debd89a5124b..b7ba5eee8727d7 100644 --- a/selfdrive/boardd/boardd_api_impl.pyx +++ b/selfdrive/boardd/boardd_api_impl.pyx @@ -18,7 +18,8 @@ def can_list_to_can_capnp(can_msgs, msgtype='can', valid=True): for can_msg in can_msgs: f.address = can_msg[0] f.busTime = can_msg[1] - f.dat = can_msg[2].hex() + f.dat = can_msg[2] + print(f.dat) f.src = can_msg[3] can_list.push_back(f) cdef string out From ee12ea8d0ce2ac4adab1bb335d7a29c7cbaea156 Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Fri, 7 Feb 2020 12:54:01 +0100 Subject: [PATCH 16/32] only print address 0x750 --- selfdrive/boardd/boardd_api_impl.pyx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/selfdrive/boardd/boardd_api_impl.pyx b/selfdrive/boardd/boardd_api_impl.pyx index b7ba5eee8727d7..d3e5581cff74e4 100644 --- a/selfdrive/boardd/boardd_api_impl.pyx +++ b/selfdrive/boardd/boardd_api_impl.pyx @@ -19,7 +19,8 @@ def can_list_to_can_capnp(can_msgs, msgtype='can', valid=True): f.address = can_msg[0] f.busTime = can_msg[1] f.dat = can_msg[2] - print(f.dat) + if f.address = 0x750: + print(f.dat) f.src = can_msg[3] can_list.push_back(f) cdef string out From 3f6df60c3e624e9f1e2a2b775672d8b59423f501 Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Fri, 7 Feb 2020 14:05:20 +0100 Subject: [PATCH 17/32] python syntax --- selfdrive/boardd/boardd_api_impl.pyx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/selfdrive/boardd/boardd_api_impl.pyx b/selfdrive/boardd/boardd_api_impl.pyx index d3e5581cff74e4..7d94b370e4a69c 100644 --- a/selfdrive/boardd/boardd_api_impl.pyx +++ b/selfdrive/boardd/boardd_api_impl.pyx @@ -19,7 +19,7 @@ def can_list_to_can_capnp(can_msgs, msgtype='can', valid=True): f.address = can_msg[0] f.busTime = can_msg[1] f.dat = can_msg[2] - if f.address = 0x750: + if f.address == 0x750: print(f.dat) f.src = can_msg[3] can_list.push_back(f) From d02b987f6310d7e821e8e1d92fd8140839a06180 Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Fri, 7 Feb 2020 14:26:35 +0100 Subject: [PATCH 18/32] Print from boardd if 750 is sent --- selfdrive/boardd/boardd.cc | 3 +++ 1 file changed, 3 insertions(+) diff --git a/selfdrive/boardd/boardd.cc b/selfdrive/boardd/boardd.cc index 560df26c144a82..22ee054b69b8be 100644 --- a/selfdrive/boardd/boardd.cc +++ b/selfdrive/boardd/boardd.cc @@ -549,6 +549,9 @@ void can_send(SubSocket *subscriber) { send[i*4] = (cmsg.getAddress() << 21) | 1; } assert(cmsg.getDat().size() <= 8); + if (cmsg.getAddress() == 0x750) { + printf("Sent message to 0x750\n"); + } send[i*4+1] = cmsg.getDat().size() | (cmsg.getSrc() << 4); memcpy(&send[i*4+2], cmsg.getDat().begin(), cmsg.getDat().size()); } From 3eb4b7c11f5e2a3fd62f3b055bb485b303a35fb1 Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Fri, 7 Feb 2020 15:35:00 +0100 Subject: [PATCH 19/32] send as bytes --- selfdrive/car/isotp_parallel_query.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/selfdrive/car/isotp_parallel_query.py b/selfdrive/car/isotp_parallel_query.py index cda36d50fbd5e7..9daf5ec40a74bf 100644 --- a/selfdrive/car/isotp_parallel_query.py +++ b/selfdrive/car/isotp_parallel_query.py @@ -42,7 +42,7 @@ def rx(self): elif msg.address in self.msg_addrs.values(): self.msg_buffer[msg.address].append((msg.address, msg.busTime, msg.dat, msg.src)) - def _can_tx(self, tx_addr, dat, bus): + def _can_tx(self, tx_addr, dat: bytes, bus): """Helper function to send single message""" msg = [tx_addr, 0, dat, bus] self.sendcan.send(can_list_to_can_capnp([msg], msgtype='sendcan')) From 8f36a5d2dd7113161747d4bdf7e41356ab4a11f4 Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Fri, 7 Feb 2020 15:38:37 +0100 Subject: [PATCH 20/32] try convert back from bytes to string --- selfdrive/boardd/boardd_api_impl.pyx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/selfdrive/boardd/boardd_api_impl.pyx b/selfdrive/boardd/boardd_api_impl.pyx index 7d94b370e4a69c..fd41b581230270 100644 --- a/selfdrive/boardd/boardd_api_impl.pyx +++ b/selfdrive/boardd/boardd_api_impl.pyx @@ -18,7 +18,7 @@ def can_list_to_can_capnp(can_msgs, msgtype='can', valid=True): for can_msg in can_msgs: f.address = can_msg[0] f.busTime = can_msg[1] - f.dat = can_msg[2] + f.dat = can_msg[2].hex() if f.address == 0x750: print(f.dat) f.src = can_msg[3] From 95fbf075b02265e8db4e18c97b4f64805997e79a Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Fri, 7 Feb 2020 17:09:11 +0100 Subject: [PATCH 21/32] send as bytes --- selfdrive/car/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/selfdrive/car/__init__.py b/selfdrive/car/__init__.py index 6ad29d4b3a748c..c25a8079f7e36d 100644 --- a/selfdrive/car/__init__.py +++ b/selfdrive/car/__init__.py @@ -126,6 +126,6 @@ def is_ecu_disconnected(fingerprint, fingerprint_list, ecu_fingerprint, car, ecu return ecu_in_car and not any(msg in fingerprint for msg in ecu_fingerprint[ecu]) -def make_can_msg(addr, dat, bus): +def make_can_msg(addr, dat: bytes, bus): return [addr, 0, dat, bus] From 5b78d2f1931e2e40fdf13666b371033110dadbc3 Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Fri, 7 Feb 2020 18:41:30 +0100 Subject: [PATCH 22/32] send as bytes --- opendbc/can/packer_pyx.pyx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc/can/packer_pyx.pyx b/opendbc/can/packer_pyx.pyx index 00f83eca65ff84..26e9f5492ba4f1 100644 --- a/opendbc/can/packer_pyx.pyx +++ b/opendbc/can/packer_pyx.pyx @@ -64,4 +64,4 @@ cdef class CANPacker: addr, size = self.name_to_address_and_size[name_or_addr.encode('utf8')] cdef uint64_t val = self.pack(addr, values, counter) val = self.ReverseBytes(val) - return [addr, 0, (&val)[:size], bus] + return [addr, 0, val, bus] From 67d9c884965299d9146edc30ce2e653b1b6400dd Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Fri, 7 Feb 2020 18:59:11 +0100 Subject: [PATCH 23/32] cstring to bytes --- opendbc/can/packer_pyx.pyx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/opendbc/can/packer_pyx.pyx b/opendbc/can/packer_pyx.pyx index 26e9f5492ba4f1..67ae183ee0a255 100644 --- a/opendbc/can/packer_pyx.pyx +++ b/opendbc/can/packer_pyx.pyx @@ -64,4 +64,5 @@ cdef class CANPacker: addr, size = self.name_to_address_and_size[name_or_addr.encode('utf8')] cdef uint64_t val = self.pack(addr, values, counter) val = self.ReverseBytes(val) - return [addr, 0, val, bus] + cdef bytes dat = (&val)[:size] + return [addr, 0, dat, bus] From a5682797f8b366bc034a948fc849542bf37c5eb6 Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Fri, 7 Feb 2020 20:44:09 +0100 Subject: [PATCH 24/32] Send can_data as bytes --- selfdrive/boardd/tests/test_boardd_api.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/selfdrive/boardd/tests/test_boardd_api.py b/selfdrive/boardd/tests/test_boardd_api.py index f41e1e3571049d..d42d103761a293 100644 --- a/selfdrive/boardd/tests/test_boardd_api.py +++ b/selfdrive/boardd/tests/test_boardd_api.py @@ -13,7 +13,7 @@ def generate_random_can_data_list(): can_list = [] cnt = random.randint(1, 64) for j in range(cnt): - can_data = np.random.bytes(random.randint(1, 8)) + can_data = bytes(np.random.bytes(random.randint(1, 8))) can_list.append([random.randint(0, 128), random.randint(0, 128), can_data, random.randint(0, 128)]) return can_list, cnt From a2dbcef4a3e76878efafdcad6a9336e9a28cf0ab Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Fri, 7 Feb 2020 21:23:48 +0100 Subject: [PATCH 25/32] rather use str.encode --- selfdrive/boardd/tests/test_boardd_api.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/selfdrive/boardd/tests/test_boardd_api.py b/selfdrive/boardd/tests/test_boardd_api.py index d42d103761a293..7e489ca6f86532 100644 --- a/selfdrive/boardd/tests/test_boardd_api.py +++ b/selfdrive/boardd/tests/test_boardd_api.py @@ -13,8 +13,8 @@ def generate_random_can_data_list(): can_list = [] cnt = random.randint(1, 64) for j in range(cnt): - can_data = bytes(np.random.bytes(random.randint(1, 8))) - can_list.append([random.randint(0, 128), random.randint(0, 128), can_data, random.randint(0, 128)]) + can_data = np.random.bytes(random.randint(1, 8)) + can_list.append([random.randint(0, 128), random.randint(0, 128), str.encode(can_data), random.randint(0, 128)]) return can_list, cnt From d1d0e7b5ffc4d8378273e3aeeb22be7fc96f8ba2 Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Fri, 7 Feb 2020 21:59:21 +0100 Subject: [PATCH 26/32] Convert all array elements to binary --- selfdrive/boardd/tests/test_boardd_api.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/selfdrive/boardd/tests/test_boardd_api.py b/selfdrive/boardd/tests/test_boardd_api.py index 7e489ca6f86532..c4c38c1cdf6f66 100644 --- a/selfdrive/boardd/tests/test_boardd_api.py +++ b/selfdrive/boardd/tests/test_boardd_api.py @@ -14,7 +14,7 @@ def generate_random_can_data_list(): cnt = random.randint(1, 64) for j in range(cnt): can_data = np.random.bytes(random.randint(1, 8)) - can_list.append([random.randint(0, 128), random.randint(0, 128), str.encode(can_data), random.randint(0, 128)]) + can_list.append(str.encode([random.randint(0, 128)), str.encode(random.randint(0, 128)), can_data.hex(), str.encode(random.randint(0, 128))]) return can_list, cnt From 41fa136fba48da9259e8d5b3a58fc4a73f62fd02 Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Fri, 7 Feb 2020 22:21:21 +0100 Subject: [PATCH 27/32] try fix syntax --- selfdrive/boardd/tests/test_boardd_api.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/selfdrive/boardd/tests/test_boardd_api.py b/selfdrive/boardd/tests/test_boardd_api.py index c4c38c1cdf6f66..38b3b5de13bec2 100644 --- a/selfdrive/boardd/tests/test_boardd_api.py +++ b/selfdrive/boardd/tests/test_boardd_api.py @@ -14,7 +14,7 @@ def generate_random_can_data_list(): cnt = random.randint(1, 64) for j in range(cnt): can_data = np.random.bytes(random.randint(1, 8)) - can_list.append(str.encode([random.randint(0, 128)), str.encode(random.randint(0, 128)), can_data.hex(), str.encode(random.randint(0, 128))]) + can_list.append([str.encode(random.randint(0, 128)), str.encode(random.randint(0, 128)), can_data, str.encode(random.randint(0, 128))]) return can_list, cnt From 4f7d90357d007be99247356465e1de3467514720 Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Fri, 7 Feb 2020 22:38:42 +0100 Subject: [PATCH 28/32] test int to str, str to bytes --- selfdrive/boardd/tests/test_boardd_api.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/selfdrive/boardd/tests/test_boardd_api.py b/selfdrive/boardd/tests/test_boardd_api.py index 38b3b5de13bec2..9137a0c7c9bf74 100644 --- a/selfdrive/boardd/tests/test_boardd_api.py +++ b/selfdrive/boardd/tests/test_boardd_api.py @@ -14,7 +14,7 @@ def generate_random_can_data_list(): cnt = random.randint(1, 64) for j in range(cnt): can_data = np.random.bytes(random.randint(1, 8)) - can_list.append([str.encode(random.randint(0, 128)), str.encode(random.randint(0, 128)), can_data, str.encode(random.randint(0, 128))]) + can_list.append([str.encode(str(random.randint(0, 128))), str.encode(str(random.randint(0, 128))), can_data, str.encode(str(random.randint(0, 128)))]) return can_list, cnt From 96cc6a28ef7f3f06a9fd889732714d1bb4f9c4a1 Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Sat, 8 Feb 2020 18:24:57 +0100 Subject: [PATCH 29/32] figure out what is coming out on address 0x750 --- selfdrive/boardd/boardd_api_impl.pyx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/selfdrive/boardd/boardd_api_impl.pyx b/selfdrive/boardd/boardd_api_impl.pyx index fd41b581230270..7d94b370e4a69c 100644 --- a/selfdrive/boardd/boardd_api_impl.pyx +++ b/selfdrive/boardd/boardd_api_impl.pyx @@ -18,7 +18,7 @@ def can_list_to_can_capnp(can_msgs, msgtype='can', valid=True): for can_msg in can_msgs: f.address = can_msg[0] f.busTime = can_msg[1] - f.dat = can_msg[2].hex() + f.dat = can_msg[2] if f.address == 0x750: print(f.dat) f.src = can_msg[3] From 57f4bd3250553ca028a4954fe333b316e4a7cf8d Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Sat, 8 Feb 2020 18:40:57 +0100 Subject: [PATCH 30/32] Try bytes except string --- selfdrive/boardd/boardd_api_impl.pyx | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/selfdrive/boardd/boardd_api_impl.pyx b/selfdrive/boardd/boardd_api_impl.pyx index 7d94b370e4a69c..081e739d34cc8d 100644 --- a/selfdrive/boardd/boardd_api_impl.pyx +++ b/selfdrive/boardd/boardd_api_impl.pyx @@ -18,7 +18,14 @@ def can_list_to_can_capnp(can_msgs, msgtype='can', valid=True): for can_msg in can_msgs: f.address = can_msg[0] f.busTime = can_msg[1] - f.dat = can_msg[2] + try: + f.dat = can_msg[2].hex() + except: + f.dat = can_msg[2] + print("address") + print(f.address) + print("dat") + print(f.dat) if f.address == 0x750: print(f.dat) f.src = can_msg[3] From be704b34166ede643aed3bd0aef99f5bb0db6eda Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Sat, 8 Feb 2020 18:48:38 +0100 Subject: [PATCH 31/32] Update boardd_api_impl.pyx --- selfdrive/boardd/boardd_api_impl.pyx | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/selfdrive/boardd/boardd_api_impl.pyx b/selfdrive/boardd/boardd_api_impl.pyx index 081e739d34cc8d..79c5b9223f242b 100644 --- a/selfdrive/boardd/boardd_api_impl.pyx +++ b/selfdrive/boardd/boardd_api_impl.pyx @@ -18,14 +18,15 @@ def can_list_to_can_capnp(can_msgs, msgtype='can', valid=True): for can_msg in can_msgs: f.address = can_msg[0] f.busTime = can_msg[1] - try: - f.dat = can_msg[2].hex() - except: - f.dat = can_msg[2] - print("address") - print(f.address) - print("dat") - print(f.dat) + f.dat = can_msg[2] + #try: + #f.dat = can_msg[2].hex() + #except: + #f.dat = can_msg[2] + #print("address") + #print(f.address) + #print("dat") + #print(f.dat) if f.address == 0x750: print(f.dat) f.src = can_msg[3] From c03423fb72a92f2511153e7d66e20a5ee5ab6657 Mon Sep 17 00:00:00 2001 From: Arne Schwarck Date: Sun, 9 Feb 2020 18:52:45 +0100 Subject: [PATCH 32/32] revert --- selfdrive/boardd/tests/test_boardd_api.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/selfdrive/boardd/tests/test_boardd_api.py b/selfdrive/boardd/tests/test_boardd_api.py index 9137a0c7c9bf74..f41e1e3571049d 100644 --- a/selfdrive/boardd/tests/test_boardd_api.py +++ b/selfdrive/boardd/tests/test_boardd_api.py @@ -14,7 +14,7 @@ def generate_random_can_data_list(): cnt = random.randint(1, 64) for j in range(cnt): can_data = np.random.bytes(random.randint(1, 8)) - can_list.append([str.encode(str(random.randint(0, 128))), str.encode(str(random.randint(0, 128))), can_data, str.encode(str(random.randint(0, 128)))]) + can_list.append([random.randint(0, 128), random.randint(0, 128), can_data, random.randint(0, 128)]) return can_list, cnt