Skip to content

Commit 2c9a13b

Browse files
Merge branch 'main' into precharge-floating-message
2 parents c11cf4e + 256bdac commit 2c9a13b

5 files changed

Lines changed: 161 additions & 12 deletions

File tree

can-messages/bms.json

Lines changed: 69 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3783,24 +3783,89 @@
37833783
},
37843784
{
37853785
"id": "0x95",
3786-
"desc": "shutdown as read by BMS",
3786+
"desc": "Shutdown as read by BMS",
37873787
"points": [
37883788
{
3789-
"size": 8,
3789+
"size": 1,
3790+
"signed": false,
3791+
"name": "shutdown_state",
3792+
"c_type": "bool"
3793+
},
3794+
{
3795+
"size": 1,
37903796
"signed": false,
3791-
"name": "shutdown",
3797+
"name": "shutdown_ts_minus_sense",
37923798
"c_type": "bool"
3799+
},
3800+
{
3801+
"size": 1,
3802+
"signed": false,
3803+
"name": "shutdown_ts_plus_sense",
3804+
"c_type": "bool"
3805+
},
3806+
{
3807+
"size": 1,
3808+
"signed": false,
3809+
"name": "shutdown_acc_sense",
3810+
"c_type": "bool"
3811+
},
3812+
{
3813+
"size": 1,
3814+
"signed": false,
3815+
"name": "shutdown_tsip_sense",
3816+
"c_type": "bool"
3817+
},
3818+
{
3819+
"size": 3,
3820+
"signed": false,
3821+
"parse": false
37933822
}
37943823
],
37953824
"fields": [
37963825
{
3797-
"name": "BMS/shutdown/state",
3826+
"name": "BMS/Shutdown/State",
37983827
"unit": "",
37993828
"values": [
38003829
1
38013830
],
38023831
"doc": "Current shutdown state",
38033832
"desc": "0=TS ON, 1=TS OFF"
3833+
},
3834+
{
3835+
"name": "BMS/Shutdown/TS_Minus_Sense",
3836+
"unit": "",
3837+
"values": [
3838+
2
3839+
],
3840+
"doc": "",
3841+
"desc": ""
3842+
},
3843+
{
3844+
"name": "BMS/Shutdown/TS_Plus_Sense",
3845+
"unit": "",
3846+
"values": [
3847+
3
3848+
],
3849+
"doc": "",
3850+
"desc": ""
3851+
},
3852+
{
3853+
"name": "BMS/Shutdown/Acc_Sense",
3854+
"unit": "",
3855+
"values": [
3856+
4
3857+
],
3858+
"doc": "",
3859+
"desc": ""
3860+
},
3861+
{
3862+
"name": "BMS/Shutdown/TSIP_Sense",
3863+
"unit": "",
3864+
"values": [
3865+
5
3866+
],
3867+
"doc": "",
3868+
"desc": ""
38043869
}
38053870
]
38063871
},

can-messages/lightning.json

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -268,5 +268,30 @@
268268
}
269269
],
270270
"sim_freq": 1000
271+
},
272+
{
273+
"id": "0xAAE",
274+
"desc": "Lightning Pulse Message",
275+
"points": [
276+
{
277+
"size": 32,
278+
"signed": false,
279+
"name": "count",
280+
"c_type": "uint32_t",
281+
"endianness": "big"
282+
}
283+
],
284+
"fields": [
285+
{
286+
"name": "Lightning/Pulse/Count",
287+
"unit": "",
288+
"values": [
289+
1
290+
],
291+
"doc": "Number of times the lightning pulse has been sent.",
292+
"desc": ""
293+
}
294+
],
295+
"is_ext": true
271296
}
272297
]

can-messages/vcu.json

Lines changed: 62 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2517,12 +2517,31 @@
25172517
{
25182518
"size": 16,
25192519
"signed": true,
2520-
"name": "brake_psi",
2520+
"name": "brake_psi_brake1",
25212521
"c_type": "float",
25222522
"formatter": {
25232523
"key": "divide",
25242524
"arg": 10
25252525
},
2526+
"sim": {
2527+
"min": 0,
2528+
"max": 5000,
2529+
"inc_min": 0.1,
2530+
"inc_max": 500,
2531+
"round": false
2532+
},
2533+
"endianness": "big"
2534+
},
2535+
{
2536+
"size": 16,
2537+
"signed": true,
2538+
"name": "brake_psi_brake2",
2539+
"c_type": "float",
2540+
"endianness": "big",
2541+
"formatter": {
2542+
"key": "divide",
2543+
"arg": 10
2544+
},
25262545
"sim": {
25272546
"min": 0,
25282547
"max": 5000,
@@ -2552,12 +2571,21 @@
25522571
"desc": "'0' corresponds to 0% (pedal is not pressed down at all). '1' corresponds to 100% (pedal is pressed down as far as possible)."
25532572
},
25542573
{
2555-
"name": "VCU/Pedals/brake_psi",
2574+
"name": "VCU/Pedals/PSI/Brake_Front",
25562575
"unit": "psig",
25572576
"values": [
25582577
3
25592578
],
2560-
"doc": "Brake Pedal, as PSI",
2579+
"doc": "Front Brake Sensor (BRAKE1) as PSI.",
2580+
"desc": ""
2581+
},
2582+
{
2583+
"name": "VCU/Pedals/PSI/Brake_Back",
2584+
"unit": "psig",
2585+
"values": [
2586+
4
2587+
],
2588+
"doc": "Back Brake Sensor (BRAKE2) as PSI.",
25612589
"desc": ""
25622590
}
25632591
],
@@ -2864,7 +2892,7 @@
28642892
"endianness": "big",
28652893
"formatter": {
28662894
"key": "divide",
2867-
"arg": 100
2895+
"arg": 4
28682896
},
28692897
"sim": {
28702898
"min": 0,
@@ -2882,7 +2910,7 @@
28822910
"endianness": "big",
28832911
"formatter": {
28842912
"key": "divide",
2885-
"arg": 100
2913+
"arg": 4
28862914
},
28872915
"sim": {
28882916
"min": 0,
@@ -2900,7 +2928,7 @@
29002928
"endianness": "big",
29012929
"formatter": {
29022930
"key": "divide",
2903-
"arg": 100
2931+
"arg": 4
29042932
},
29052933
"sim": {
29062934
"min": 0,
@@ -4226,7 +4254,25 @@
42264254
}
42274255
},
42284256
{
4229-
"size": 2,
4257+
"size": 1,
4258+
"signed": false,
4259+
"name": "BMS_NOT_PRECHARGED_YET",
4260+
"c_type": "bool",
4261+
"sim": {
4262+
"options": [
4263+
[
4264+
0,
4265+
0.5
4266+
],
4267+
[
4268+
1,
4269+
0.5
4270+
]
4271+
]
4272+
}
4273+
},
4274+
{
4275+
"size": 1,
42304276
"signed": false,
42314277
"name": "empty",
42324278
"parse": false
@@ -4286,6 +4332,15 @@
42864332
],
42874333
"doc": "",
42884334
"desc": ""
4335+
},
4336+
{
4337+
"name": "VCU/Pedals/Drive_Locks/BMS_NOT_PRECHARGED_YET",
4338+
"unit": "",
4339+
"values": [
4340+
7
4341+
],
4342+
"doc": "",
4343+
"desc": ""
42894344
}
42904345
],
42914346
"sim_freq": 250

code-gen/templates/decoders.c.j2

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ void receive_{{ macros.function_name(msg) }}(const can_msg_t *message, {{macros.
3838
{%- for point in msg.points %}
3939
{%- if point.name is defined %}
4040
{%- set shift = total_bits - bit_pos.value - point.size %}
41+
{%- if point.parse is not defined or point.parse is not false %}
4142
{%- if point.signed is defined and point.signed %}
4243
{%- if point.size >= 64 %}
4344
int64_t {{ point.name }}_raw = (int64_t)(data >> {{ shift }});
@@ -74,6 +75,7 @@ void receive_{{ macros.function_name(msg) }}(const can_msg_t *message, {{macros.
7475
{{macros.function_name(msg) -}}->{{ point.name }} = ({{ point.c_type }}){{ point.name }}_raw;
7576
{%- endif %}
7677
{%- endif %}
78+
{%- endif %}
7779
{%- set bit_pos.value = bit_pos.value + point.size %}
7880
{%- endif %}
7981
{%- endfor %}
@@ -87,6 +89,7 @@ void receive_{{ macros.function_name(msg) }}(const can_msg_t *message, {{macros.
8789
memcpy(&bitstream_data, message->data, sizeof(bitstream_data));
8890

8991
{% for point in msg.points -%}
92+
{% if point.parse is not defined or point.parse is not false %}
9093
{% if point.endianness is defined and point.endianness == "big" %}
9194
endian_swap(&bitstream_data.{{ point.name }}, sizeof(bitstream_data.{{ point.name }}));
9295
{% endif %}
@@ -99,6 +102,7 @@ void receive_{{ macros.function_name(msg) }}(const can_msg_t *message, {{macros.
99102
{% else %}
100103
{{macros.function_name(msg) -}}->{{ point.name }} = ({{ point.c_type }})bitstream_data.{{ point.name }};
101104
{% endif %}
105+
{% endif %}
102106
{% endfor %}
103107
{%- endif %}
104108
}

code-gen/templates/decoders.h.j2

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
{% for msg in can_msgs %}
88
typedef struct {
99
{% for point in msg.points -%}
10-
{% if point.name is defined %} {{ point.c_type }} {{ point.name }};
10+
{% if point.name is defined and (point.parse is not defined or point.parse is not false) %} {{ point.c_type }} {{ point.name }};
1111
{% endif -%}
1212
{% endfor -%}
1313
} {{ macros.function_name(msg) -}}_t;

0 commit comments

Comments
 (0)