summaryrefslogtreecommitdiffstats
path: root/examples/agl-vcar
diff options
context:
space:
mode:
authorRomain Forlot <romain.forlot@iot.bzh>2019-11-26 16:20:10 +0100
committerRomain Forlot <romain.forlot@iot.bzh>2019-11-28 16:11:48 +0100
commitf21170a4304a7948f130a477f4c58165a126f001 (patch)
tree1f7d411937da2793722876f6680c3bb0cc42a053 /examples/agl-vcar
parenteaf2a4fd170bce5358bfaf7a5cdde701b11f802f (diff)
Add steering wheel LIN message signal definitions
Add signal definitions for the button status information in the steering wheel demo LIN message. Bug-AGL: SPEC-2951 Bug-AGL: SPEC-2976 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: Id4909161f8f159858a3d29e310a3b43a787f2d03 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Diffstat (limited to 'examples/agl-vcar')
-rw-r--r--examples/agl-vcar/application-generated.cpp478
-rw-r--r--examples/agl-vcar/signals.json171
2 files changed, 608 insertions, 41 deletions
diff --git a/examples/agl-vcar/application-generated.cpp b/examples/agl-vcar/application-generated.cpp
index bfe3d861..f4d2635d 100644
--- a/examples/agl-vcar/application-generated.cpp
+++ b/examples/agl-vcar/application-generated.cpp
@@ -7,7 +7,407 @@ application_t::application_t()
, message_set_{
{std::make_shared<message_set_t>(message_set_t{0,"AGL Virtual Car",
{ // beginning message_definition_ vector
- {std::make_shared<message_definition_t>(message_definition_t{"ls",0x30,"",8,4,frequency_clock_t(5.00000f),true,
+ {std::make_shared<message_definition_t>(message_definition_t{"ls",0x21,"",0,2,frequency_clock_t(5.00000f),true,
+ { // beginning signals vector
+ {std::make_shared<signal_t> (signal_t{
+ "steering_wheel.cruise.cancel",// generic_name
+ 52,// bit_position
+ 1,// bit_size
+ 1.00000f,// factor
+ 0.00000f,// offset
+ 0,// min_value
+ 0,// max_value
+ frequency_clock_t(0.00000f),// frequency
+ true,// send_same
+ false,// force_send_changed
+ {
+ },// states
+ false,// writable
+ decoder_t::decode_boolean,// decoder
+ nullptr,// encoder
+ false,// received
+ std::make_pair<bool, int>(false, 0),// multiplex
+ false,// is_big_endian
+ false,// is_signed
+ ""// unit
+ })},
+ {std::make_shared<signal_t> (signal_t{
+ "steering_wheel.cruise.distance",// generic_name
+ 55,// bit_position
+ 1,// bit_size
+ 1.00000f,// factor
+ 0.00000f,// offset
+ 0,// min_value
+ 0,// max_value
+ frequency_clock_t(0.00000f),// frequency
+ true,// send_same
+ false,// force_send_changed
+ {
+ },// states
+ false,// writable
+ decoder_t::decode_boolean,// decoder
+ nullptr,// encoder
+ false,// received
+ std::make_pair<bool, int>(false, 0),// multiplex
+ false,// is_big_endian
+ false,// is_signed
+ ""// unit
+ })},
+ {std::make_shared<signal_t> (signal_t{
+ "steering_wheel.cruise.enable",// generic_name
+ 48,// bit_position
+ 1,// bit_size
+ 1.00000f,// factor
+ 0.00000f,// offset
+ 0,// min_value
+ 0,// max_value
+ frequency_clock_t(0.00000f),// frequency
+ true,// send_same
+ false,// force_send_changed
+ {
+ },// states
+ false,// writable
+ decoder_t::decode_boolean,// decoder
+ nullptr,// encoder
+ false,// received
+ std::make_pair<bool, int>(false, 0),// multiplex
+ false,// is_big_endian
+ false,// is_signed
+ ""// unit
+ })},
+ {std::make_shared<signal_t> (signal_t{
+ "steering_wheel.cruise.limit",// generic_name
+ 54,// bit_position
+ 1,// bit_size
+ 1.00000f,// factor
+ 0.00000f,// offset
+ 0,// min_value
+ 0,// max_value
+ frequency_clock_t(0.00000f),// frequency
+ true,// send_same
+ false,// force_send_changed
+ {
+ },// states
+ false,// writable
+ decoder_t::decode_boolean,// decoder
+ nullptr,// encoder
+ false,// received
+ std::make_pair<bool, int>(false, 0),// multiplex
+ false,// is_big_endian
+ false,// is_signed
+ ""// unit
+ })},
+ {std::make_shared<signal_t> (signal_t{
+ "steering_wheel.cruise.resume",// generic_name
+ 49,// bit_position
+ 1,// bit_size
+ 1.00000f,// factor
+ 0.00000f,// offset
+ 0,// min_value
+ 0,// max_value
+ frequency_clock_t(0.00000f),// frequency
+ true,// send_same
+ false,// force_send_changed
+ {
+ },// states
+ false,// writable
+ decoder_t::decode_boolean,// decoder
+ nullptr,// encoder
+ false,// received
+ std::make_pair<bool, int>(false, 0),// multiplex
+ false,// is_big_endian
+ false,// is_signed
+ ""// unit
+ })},
+ {std::make_shared<signal_t> (signal_t{
+ "steering_wheel.cruise.set",// generic_name
+ 51,// bit_position
+ 1,// bit_size
+ 1.00000f,// factor
+ 0.00000f,// offset
+ 0,// min_value
+ 0,// max_value
+ frequency_clock_t(0.00000f),// frequency
+ true,// send_same
+ false,// force_send_changed
+ {
+ },// states
+ false,// writable
+ decoder_t::decode_boolean,// decoder
+ nullptr,// encoder
+ false,// received
+ std::make_pair<bool, int>(false, 0),// multiplex
+ false,// is_big_endian
+ false,// is_signed
+ ""// unit
+ })},
+ {std::make_shared<signal_t> (signal_t{
+ "steering_wheel.horn",// generic_name
+ 56,// bit_position
+ 1,// bit_size
+ 1.00000f,// factor
+ 0.00000f,// offset
+ 0,// min_value
+ 0,// max_value
+ frequency_clock_t(0.00000f),// frequency
+ true,// send_same
+ false,// force_send_changed
+ {
+ },// states
+ false,// writable
+ decoder_t::decode_boolean,// decoder
+ nullptr,// encoder
+ false,// received
+ std::make_pair<bool, int>(false, 0),// multiplex
+ false,// is_big_endian
+ false,// is_signed
+ ""// unit
+ })},
+ {std::make_shared<signal_t> (signal_t{
+ "steering_wheel.info",// generic_name
+ 38,// bit_position
+ 1,// bit_size
+ 1.00000f,// factor
+ 0.00000f,// offset
+ 0,// min_value
+ 0,// max_value
+ frequency_clock_t(0.00000f),// frequency
+ true,// send_same
+ false,// force_send_changed
+ {
+ },// states
+ false,// writable
+ decoder_t::decode_boolean,// decoder
+ nullptr,// encoder
+ false,// received
+ std::make_pair<bool, int>(false, 0),// multiplex
+ false,// is_big_endian
+ false,// is_signed
+ ""// unit
+ })},
+ {std::make_shared<signal_t> (signal_t{
+ "steering_wheel.lane_departure_warning",// generic_name
+ 63,// bit_position
+ 1,// bit_size
+ 1.00000f,// factor
+ 0.00000f,// offset
+ 0,// min_value
+ 0,// max_value
+ frequency_clock_t(0.00000f),// frequency
+ true,// send_same
+ false,// force_send_changed
+ {
+ },// states
+ false,// writable
+ decoder_t::decode_boolean,// decoder
+ nullptr,// encoder
+ false,// received
+ std::make_pair<bool, int>(false, 0),// multiplex
+ false,// is_big_endian
+ false,// is_signed
+ ""// unit
+ })},
+ {std::make_shared<signal_t> (signal_t{
+ "steering_wheel.mode",// generic_name
+ 34,// bit_position
+ 1,// bit_size
+ 1.00000f,// factor
+ 0.00000f,// offset
+ 0,// min_value
+ 0,// max_value
+ frequency_clock_t(0.00000f),// frequency
+ true,// send_same
+ false,// force_send_changed
+ {
+ },// states
+ false,// writable
+ decoder_t::decode_boolean,// decoder
+ nullptr,// encoder
+ false,// received
+ std::make_pair<bool, int>(false, 0),// multiplex
+ false,// is_big_endian
+ false,// is_signed
+ ""// unit
+ })},
+ {std::make_shared<signal_t> (signal_t{
+ "steering_wheel.next",// generic_name
+ 36,// bit_position
+ 1,// bit_size
+ 1.00000f,// factor
+ 0.00000f,// offset
+ 0,// min_value
+ 0,// max_value
+ frequency_clock_t(0.00000f),// frequency
+ true,// send_same
+ false,// force_send_changed
+ {
+ },// states
+ false,// writable
+ decoder_t::decode_boolean,// decoder
+ nullptr,// encoder
+ false,// received
+ std::make_pair<bool, int>(false, 0),// multiplex
+ false,// is_big_endian
+ false,// is_signed
+ ""// unit
+ })},
+ {std::make_shared<signal_t> (signal_t{
+ "steering_wheel.phone.call",// generic_name
+ 47,// bit_position
+ 1,// bit_size
+ 1.00000f,// factor
+ 0.00000f,// offset
+ 0,// min_value
+ 0,// max_value
+ frequency_clock_t(0.00000f),// frequency
+ true,// send_same
+ false,// force_send_changed
+ {
+ },// states
+ false,// writable
+ decoder_t::decode_boolean,// decoder
+ nullptr,// encoder
+ false,// received
+ std::make_pair<bool, int>(false, 0),// multiplex
+ false,// is_big_endian
+ false,// is_signed
+ ""// unit
+ })},
+ {std::make_shared<signal_t> (signal_t{
+ "steering_wheel.phone.hangup",// generic_name
+ 46,// bit_position
+ 1,// bit_size
+ 1.00000f,// factor
+ 0.00000f,// offset
+ 0,// min_value
+ 0,// max_value
+ frequency_clock_t(0.00000f),// frequency
+ true,// send_same
+ false,// force_send_changed
+ {
+ },// states
+ false,// writable
+ decoder_t::decode_boolean,// decoder
+ nullptr,// encoder
+ false,// received
+ std::make_pair<bool, int>(false, 0),// multiplex
+ false,// is_big_endian
+ false,// is_signed
+ ""// unit
+ })},
+ {std::make_shared<signal_t> (signal_t{
+ "steering_wheel.previous",// generic_name
+ 32,// bit_position
+ 1,// bit_size
+ 1.00000f,// factor
+ 0.00000f,// offset
+ 0,// min_value
+ 0,// max_value
+ frequency_clock_t(0.00000f),// frequency
+ true,// send_same
+ false,// force_send_changed
+ {
+ },// states
+ false,// writable
+ decoder_t::decode_boolean,// decoder
+ nullptr,// encoder
+ false,// received
+ std::make_pair<bool, int>(false, 0),// multiplex
+ false,// is_big_endian
+ false,// is_signed
+ ""// unit
+ })},
+ {std::make_shared<signal_t> (signal_t{
+ "steering_wheel.voice",// generic_name
+ 45,// bit_position
+ 1,// bit_size
+ 1.00000f,// factor
+ 0.00000f,// offset
+ 0,// min_value
+ 0,// max_value
+ frequency_clock_t(0.00000f),// frequency
+ true,// send_same
+ false,// force_send_changed
+ {
+ },// states
+ false,// writable
+ decoder_t::decode_boolean,// decoder
+ nullptr,// encoder
+ false,// received
+ std::make_pair<bool, int>(false, 0),// multiplex
+ false,// is_big_endian
+ false,// is_signed
+ ""// unit
+ })},
+ {std::make_shared<signal_t> (signal_t{
+ "steering_wheel.volume.down",// generic_name
+ 35,// bit_position
+ 1,// bit_size
+ 1.00000f,// factor
+ 0.00000f,// offset
+ 0,// min_value
+ 0,// max_value
+ frequency_clock_t(0.00000f),// frequency
+ true,// send_same
+ false,// force_send_changed
+ {
+ },// states
+ false,// writable
+ decoder_t::decode_boolean,// decoder
+ nullptr,// encoder
+ false,// received
+ std::make_pair<bool, int>(false, 0),// multiplex
+ false,// is_big_endian
+ false,// is_signed
+ ""// unit
+ })},
+ {std::make_shared<signal_t> (signal_t{
+ "steering_wheel.volume.mute",// generic_name
+ 39,// bit_position
+ 1,// bit_size
+ 1.00000f,// factor
+ 0.00000f,// offset
+ 0,// min_value
+ 0,// max_value
+ frequency_clock_t(0.00000f),// frequency
+ true,// send_same
+ false,// force_send_changed
+ {
+ },// states
+ false,// writable
+ decoder_t::decode_boolean,// decoder
+ nullptr,// encoder
+ false,// received
+ std::make_pair<bool, int>(false, 0),// multiplex
+ false,// is_big_endian
+ false,// is_signed
+ ""// unit
+ })},
+ {std::make_shared<signal_t> (signal_t{
+ "steering_wheel.volume.up",// generic_name
+ 33,// bit_position
+ 1,// bit_size
+ 1.00000f,// factor
+ 0.00000f,// offset
+ 0,// min_value
+ 0,// max_value
+ frequency_clock_t(0.00000f),// frequency
+ true,// send_same
+ false,// force_send_changed
+ {
+ },// states
+ false,// writable
+ decoder_t::decode_boolean,// decoder
+ nullptr,// encoder
+ false,// received
+ std::make_pair<bool, int>(false, 0),// multiplex
+ false,// is_big_endian
+ false,// is_signed
+ ""// unit
+ })}
+ } // end signals vector
+ })} // end message_definition entry
+, {std::make_shared<message_definition_t>(message_definition_t{"ls",0x30,"",8,4,frequency_clock_t(5.00000f),true,
{ // beginning signals vector
{std::make_shared<signal_t> (signal_t{
"hvac.fan.speed",// generic_name
@@ -27,8 +427,8 @@ application_t::application_t()
nullptr,// encoder
false,// received
std::make_pair<bool, int>(false, 0),// multiplex
- 0,// is_big_endian
- 0,// is_signed
+ false,// is_big_endian
+ false,// is_signed
""// unit
})},
{std::make_shared<signal_t> (signal_t{
@@ -49,8 +449,8 @@ application_t::application_t()
nullptr,// encoder
false,// received
std::make_pair<bool, int>(false, 0),// multiplex
- 0,// is_big_endian
- 0,// is_signed
+ false,// is_big_endian
+ false,// is_signed
""// unit
})},
{std::make_shared<signal_t> (signal_t{
@@ -71,8 +471,8 @@ application_t::application_t()
nullptr,// encoder
false,// received
std::make_pair<bool, int>(false, 0),// multiplex
- 0,// is_big_endian
- 0,// is_signed
+ false,// is_big_endian
+ false,// is_signed
""// unit
})},
{std::make_shared<signal_t> (signal_t{
@@ -93,8 +493,8 @@ application_t::application_t()
nullptr,// encoder
false,// received
std::make_pair<bool, int>(false, 0),// multiplex
- 0,// is_big_endian
- 0,// is_signed
+ false,// is_big_endian
+ false,// is_signed
""// unit
})}
} // end signals vector
@@ -119,8 +519,8 @@ application_t::application_t()
nullptr,// encoder
false,// received
std::make_pair<bool, int>(false, 0),// multiplex
- 0,// is_big_endian
- 0,// is_signed
+ false,// is_big_endian
+ false,// is_signed
""// unit
})},
{std::make_shared<signal_t> (signal_t{
@@ -141,8 +541,8 @@ application_t::application_t()
nullptr,// encoder
false,// received
std::make_pair<bool, int>(false, 0),// multiplex
- 0,// is_big_endian
- 0,// is_signed
+ false,// is_big_endian
+ false,// is_signed
""// unit
})},
{std::make_shared<signal_t> (signal_t{
@@ -163,8 +563,8 @@ application_t::application_t()
nullptr,// encoder
false,// received
std::make_pair<bool, int>(false, 0),// multiplex
- 0,// is_big_endian
- 0,// is_signed
+ false,// is_big_endian
+ false,// is_signed
""// unit
})}
} // end signals vector
@@ -189,8 +589,8 @@ application_t::application_t()
nullptr,// encoder
false,// received
std::make_pair<bool, int>(false, 0),// multiplex
- 0,// is_big_endian
- 0,// is_signed
+ false,// is_big_endian
+ false,// is_signed
""// unit
})}
} // end signals vector
@@ -215,8 +615,8 @@ application_t::application_t()
nullptr,// encoder
false,// received
std::make_pair<bool, int>(false, 0),// multiplex
- 0,// is_big_endian
- 0,// is_signed
+ false,// is_big_endian
+ false,// is_signed
""// unit
})},
{std::make_shared<signal_t> (signal_t{
@@ -237,8 +637,8 @@ application_t::application_t()
nullptr,// encoder
false,// received
std::make_pair<bool, int>(false, 0),// multiplex
- 0,// is_big_endian
- 0,// is_signed
+ false,// is_big_endian
+ false,// is_signed
""// unit
})}
} // end signals vector
@@ -263,8 +663,8 @@ application_t::application_t()
nullptr,// encoder
false,// received
std::make_pair<bool, int>(false, 0),// multiplex
- 0,// is_big_endian
- 0,// is_signed
+ false,// is_big_endian
+ false,// is_signed
""// unit
})},
{std::make_shared<signal_t> (signal_t{
@@ -285,8 +685,8 @@ application_t::application_t()
nullptr,// encoder
false,// received
std::make_pair<bool, int>(false, 0),// multiplex
- 0,// is_big_endian
- 0,// is_signed
+ false,// is_big_endian
+ false,// is_signed
""// unit
})},
{std::make_shared<signal_t> (signal_t{
@@ -307,8 +707,8 @@ application_t::application_t()
nullptr,// encoder
false,// received
std::make_pair<bool, int>(false, 0),// multiplex
- 0,// is_big_endian
- 0,// is_signed
+ false,// is_big_endian
+ false,// is_signed
""// unit
})},
{std::make_shared<signal_t> (signal_t{
@@ -329,8 +729,8 @@ application_t::application_t()
nullptr,// encoder
false,// received
std::make_pair<bool, int>(false, 0),// multiplex
- 0,// is_big_endian
- 0,// is_signed
+ false,// is_big_endian
+ false,// is_signed
""// unit
})},
{std::make_shared<signal_t> (signal_t{
@@ -351,8 +751,8 @@ application_t::application_t()
nullptr,// encoder
false,// received
std::make_pair<bool, int>(false, 0),// multiplex
- 0,// is_big_endian
- 0,// is_signed
+ false,// is_big_endian
+ false,// is_signed
""// unit
})}
} // end signals vector
@@ -377,8 +777,8 @@ application_t::application_t()
nullptr,// encoder
false,// received
std::make_pair<bool, int>(false, 0),// multiplex
- 0,// is_big_endian
- 0,// is_signed
+ false,// is_big_endian
+ false,// is_signed
""// unit
})},
{std::make_shared<signal_t> (signal_t{
@@ -399,8 +799,8 @@ application_t::application_t()
nullptr,// encoder
false,// received
std::make_pair<bool, int>(false, 0),// multiplex
- 0,// is_big_endian
- 0,// is_signed
+ false,// is_big_endian
+ false,// is_signed
""// unit
})},
{std::make_shared<signal_t> (signal_t{
@@ -421,8 +821,8 @@ application_t::application_t()
nullptr,// encoder
false,// received
std::make_pair<bool, int>(false, 0),// multiplex
- 0,// is_big_endian
- 0,// is_signed
+ false,// is_big_endian
+ false,// is_signed
""// unit
})},
{std::make_shared<signal_t> (signal_t{
@@ -443,8 +843,8 @@ application_t::application_t()
nullptr,// encoder
false,// received
std::make_pair<bool, int>(false, 0),// multiplex
- 0,// is_big_endian
- 0,// is_signed
+ false,// is_big_endian
+ false,// is_signed
""// unit
})}
} // end signals vector
diff --git a/examples/agl-vcar/signals.json b/examples/agl-vcar/signals.json
index 9fecd922..51bf1607 100644
--- a/examples/agl-vcar/signals.json
+++ b/examples/agl-vcar/signals.json
@@ -53,8 +53,8 @@
"offset": 0,
"writable": true,
"decoder": "decoder_t::decode_boolean"}
- }
- },
+ }
+ },
"0x799": {
"bus": "hs",
"is_fd" : false,
@@ -213,6 +213,173 @@
"writable": true
}
}
+ },
+ "0x21": {
+ "bus": "ls",
+ "signals": {
+ "SW_Previous": {
+ "generic_name": "steering_wheel.previous",
+ "bit_position": 32,
+ "bit_size": 1,
+ "factor": 1,
+ "offset": 0,
+ "decoder": "decoder_t::decode_boolean",
+ "writable": false
+ },
+ "SW_VolumeUp": {
+ "generic_name": "steering_wheel.volume.up",
+ "bit_position": 33,
+ "bit_size": 1,
+ "factor": 1,
+ "offset": 0,
+ "decoder": "decoder_t::decode_boolean",
+ "writable": false
+ },
+ "SW_Mode": {
+ "generic_name": "steering_wheel.mode",
+ "bit_position": 34,
+ "bit_size": 1,
+ "factor": 1,
+ "offset": 0,
+ "decoder": "decoder_t::decode_boolean",
+ "writable": false
+ },
+ "SW_VolumeDown": {
+ "generic_name": "steering_wheel.volume.down",
+ "bit_position": 35,
+ "bit_size": 1,
+ "factor": 1,
+ "offset": 0,
+ "decoder": "decoder_t::decode_boolean",
+ "writable": false
+ },
+ "SW_Next": {
+ "generic_name": "steering_wheel.next",
+ "bit_position": 36,
+ "bit_size": 1,
+ "factor": 1,
+ "offset": 0,
+ "decoder": "decoder_t::decode_boolean",
+ "writable": false
+ },
+ "SW_Info": {
+ "generic_name": "steering_wheel.info",
+ "bit_position": 38,
+ "bit_size": 1,
+ "factor": 1,
+ "offset": 0,
+ "decoder": "decoder_t::decode_boolean",
+ "writable": false
+ },
+ "SW_VolumeMute": {
+ "generic_name": "steering_wheel.volume.mute",
+ "bit_position": 39,
+ "bit_size": 1,
+ "factor": 1,
+ "offset": 0,
+ "decoder": "decoder_t::decode_boolean",
+ "writable": false
+ },
+ "SW_Voice": {
+ "generic_name": "steering_wheel.voice",
+ "bit_position": 45,
+ "bit_size": 1,
+ "factor": 1,
+ "offset": 0,
+ "decoder": "decoder_t::decode_boolean",
+ "writable": false
+ },
+ "SW_PhoneHangup": {
+ "generic_name": "steering_wheel.phone.hangup",
+ "bit_position": 46,
+ "bit_size": 1,
+ "factor": 1,
+ "offset": 0,
+ "decoder": "decoder_t::decode_boolean",
+ "writable": false
+ },
+ "SW_PhoneCall": {
+ "generic_name": "steering_wheel.phone.call",
+ "bit_position": 47,
+ "bit_size": 1,
+ "factor": 1,
+ "offset": 0,
+ "decoder": "decoder_t::decode_boolean",
+ "writable": false
+ },
+ "SW_CruiseEnable": {
+ "generic_name": "steering_wheel.cruise.enable",
+ "bit_position": 48,
+ "bit_size": 1,
+ "factor": 1,
+ "offset": 0,
+ "decoder": "decoder_t::decode_boolean",
+ "writable": false
+ },
+ "SW_CruiseResume": {
+ "generic_name": "steering_wheel.cruise.resume",
+ "bit_position": 49,
+ "bit_size": 1,
+ "factor": 1,
+ "offset": 0,
+ "decoder": "decoder_t::decode_boolean",
+ "writable": false
+ },
+ "SW_CruiseSet": {
+ "generic_name": "steering_wheel.cruise.set",
+ "bit_position": 51,
+ "bit_size": 1,
+ "factor": 1,
+ "offset": 0,
+ "decoder": "decoder_t::decode_boolean",
+ "writable": false
+ },
+ "SW_CruiseCancel": {
+ "generic_name": "steering_wheel.cruise.cancel",
+ "bit_position": 52,
+ "bit_size": 1,
+ "factor": 1,
+ "offset": 0,
+ "decoder": "decoder_t::decode_boolean",
+ "writable": false
+ },
+ "SW_CruiseLimit": {
+ "generic_name": "steering_wheel.cruise.limit",
+ "bit_position": 54,
+ "bit_size": 1,
+ "factor": 1,
+ "offset": 0,
+ "decoder": "decoder_t::decode_boolean",
+ "writable": false
+ },
+ "SW_CruiseDistance": {
+ "generic_name": "steering_wheel.cruise.distance",
+ "bit_position": 55,
+ "bit_size": 1,
+ "factor": 1,
+ "offset": 0,
+ "decoder": "decoder_t::decode_boolean",
+ "writable": false
+ },
+ "SW_Horn": {
+ "generic_name": "steering_wheel.horn",
+ "bit_position": 56,
+ "bit_size": 1,
+ "factor": 1,
+ "offset": 0,
+ "decoder": "decoder_t::decode_boolean",
+ "writable": false
+ },
+ "SW_LaneDepartureWarning": {
+ "generic_name": "steering_wheel.lane_departure_warning",
+ "bit_position": 63,
+ "bit_size": 1,
+ "factor": 1,
+ "offset": 0,
+ "decoder": "decoder_t::decode_boolean",
+ "writable": false
+ }
+ }
}
},
"diagnostic_messages": [