1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
|
{ "name": "example",
"extra_sources": [
"handlers.cpp"
],
"initializers": [
"initializeMyStuff"
],
"loopers": [
"myLooper"
],
"buses": {
"hs": {
"controller": 1,
"speed": 500000
},
"ms": {
"controller": 2,
"speed": 125000
}
},
"commands": [
{ "name": "turn_signal_status",
"handler": "handleTurnSignalCommand"
}
],
"messages": {
"0x128": {
"name": "ECM_z_5D2",
"bus": "hs",
"signals": {
"StrAnglAct": {
"generic_name": "SteeringWheelAngle",
"bit_position": 52,
"bit_size": 12,
"factor": 0.15392,
"offset": 0,
"decoder": "handleUnsignedSteeringWheelAngle"},
"StrAnglSign": {
"generic_name": "steering_angle_sign",
"decoder": "ignoreDecoder",
"bit_position": 52,
"bit_size": 12},
"EngSpd": {
"generic_name": "engine_speed",
"max_frequency": 15,
"bit_position": 12,
"bit_size": 8},
"GrshftPos": {
"generic_name": "GearshiftPosition",
"bit_position": 41,
"bit_size": 3,
"states": {
"FIRST": [1],
"SECOND": [2],
"THIRD": [3],
"FOURTH": [4],
"REVERSE": [5],
"NEUTRAL": [6]}
},
"StrAnglErr": {
"decoder": "ignoreDecoder",
"generic_name": "steering_wheel_angle_error",
"bit_position": 44,
"bit_size": 12
}
},
"handlers": ["handleSteeringWheelMessage"]
}
}
}
|