Cleanup examples, tests, configuration and plugins
[apps/agl-service-can-low-level.git] / examples / tests / signal.json
1 {   "name": "AGL Virtual Car",
2     "version": "2.0",
3         "extra_sources": [],
4         "initializers": [],
5         "loopers": [],
6         "buses": {},
7         "commands": [],
8         "messages": {
9                 "0x620": {
10                         "bus": "hs",
11                         "is_fd" : false,
12                         "is_extended": false,
13                         "is_j1939" : false,
14                         "length" : 8,
15                         "signals": {
16                                 "doors.driver.open": {
17                                         "generic_name": "doors.front_left.open",
18                                         "bit_position": 43,
19                                         "bit_size": 1,
20                                         "factor": 1.0,
21                                         "offset": 0,
22                                         "writable": true,
23                                         "decoder": "decoder_t::decode_boolean"},
24                                 "doors.passenger.open": {
25                                         "generic_name": "doors.front_right.open",
26                                         "bit_position": 44,
27                                         "bit_size": 1,
28                                         "factor": 1.0,
29                                         "offset": 0,
30                                         "writable": true,
31                                         "decoder": "decoder_t::decode_boolean"},
32                                 "doors.rearleft.open": {
33                                         "generic_name": "doors.rear_left.open",
34                                         "bit_position": 46,
35                                         "bit_size": 1,
36                                         "factor": 1.0,
37                                         "offset": 0,
38                                         "writable": true,
39                                         "decoder": "decoder_t::decode_boolean"},
40                                 "doors.rearright.open": {
41                                         "generic_name": "doors.rear_right.open",
42                                         "bit_position": 45,
43                                         "bit_size": 4,
44                                         "factor": 1.0,
45                                         "offset": 0,
46                                         "writable": true,
47                                         "decoder": "decoder_t::decode_boolean"},
48                                 "doors.coffer.open": {
49                                         "generic_name": "doors.boot.open",
50                                         "bit_position": 47,
51                                         "bit_size": 1,
52                                         "factor": 1.0,
53                                         "offset": 0,
54                                         "writable": true,
55                                         "decoder": "decoder_t::decode_boolean"}
56                 }
57         },
58                 "0x799": {
59                         "bus": "hs",
60                         "is_fd" : false,
61                         "is_extended": false,
62                         "is_j1939" : false,
63                         "length" : 8,
64                         "signals": {
65                                 "windows.driver.open": {
66                                         "generic_name": "windows.front_left.open",
67                                         "bit_position": 43,
68                                         "bit_size": 1,
69                                         "factor": 1.0,
70                                         "offset": 0,
71                                         "writable": true,
72                                         "decoder": "decoder_t::decode_boolean"},
73                                 "windows.passenger.open": {
74                                         "generic_name": "windows.front_right.open",
75                                         "bit_position": 44,
76                                         "bit_size": 1,
77                                         "factor": 1.0,
78                                         "offset": 0,
79                                         "writable": true,
80                                         "decoder": "decoder_t::decode_boolean"},
81                                 "windows.rearleft.open": {
82                                         "generic_name": "windows.rear_left.open",
83                                         "bit_position": 46,
84                                         "bit_size": 1,
85                                         "factor": 1.0,
86                                         "offset": 0,
87                                         "writable": true,
88                                         "decoder": "decoder_t::decode_boolean"},
89                                 "windows.rearright.open": {
90                                         "generic_name": "windows.rear_right.open",
91                                         "bit_position": 45,
92                                         "bit_size": 4,
93                                         "factor": 1.0,
94                                         "offset": 0,
95                                         "writable": true,
96                                         "decoder": "decoder_t::decode_boolean"}
97                 }
98         },
99         "0x3D9": {
100         "bus": "hs",
101         "is_fd" : true,
102         "is_extended": false,
103         "is_j1939" : false,
104         "length" : 8,
105         "signals": {
106                 "PT_FuelLevelPct": {
107                         "generic_name": "fuel.level",
108                         "bit_position": 8,
109                         "bit_size": 8,
110                         "factor": 0.392157,
111                         "offset": 0,
112                         "writable": true
113                 },
114                 "PT_EngineSpeed": {
115                         "generic_name": "engine.speed",
116                         "bit_position": 16,
117                         "bit_size": 16,
118                         "factor": 0.25,
119                         "offset": 0,
120                         "writable": true
121                 },
122                 "PT_FuelLevelLow": {
123                         "generic_name": "fuel.level.low",
124                         "bit_position": 55,
125                         "bit_size": 1,
126                         "factor": 1,
127                         "offset": 0,
128                         "writable": true,
129                         "decoder": "decoder_t::decode_boolean"
130                 }
131         }
132         },
133         "0x4D1": {
134         "bus": "hs",
135         "is_fd" : false,
136         "is_extended": false,
137         "is_j1939" : false,
138         "length" : 8,
139         "signals": {
140                 "PT_EngineOilTempHigh": {
141                         "generic_name": "engine.oil.temp.high",
142                         "bit_position": 7,
143                         "bit_size": 1,
144                         "factor": 1,
145                         "offset": 0,
146                         "writable": true,
147                         "decoder": "decoder_t::decode_boolean"
148                 },
149                 "PT_EngineOilTemp": {
150                         "generic_name": "engine.oil.temp",
151                         "bit_position": 16,
152                         "bit_size": 8,
153                         "factor": 1,
154                         "offset": 0,
155                         "writable": true
156                 }
157         }
158         },
159         "0x3E9": {
160         "bus": "hs",
161         "is_fd" : false,
162         "is_extended": false,
163         "is_j1939" : false,
164         "length" : 8,
165         "signals": {
166                 "PT_VehicleAvgSpeed": {
167                         "generic_name": "vehicle.average.speed",
168                         "bit_position": 0,
169                         "bit_size": 15,
170                         "factor": 0.015625,
171                         "offset": 0,
172                         "writable": false
173                 }
174         }
175         },
176         "0x30": {
177         "bus": "ls",
178         "is_fd" : false,
179         "is_extended": true,
180         "is_j1939" : false,
181         "length" : 8,
182         "signals": {
183                 "LeftTemperature": {
184                         "generic_name": "hvac.temperature.left",
185                         "bit_position": 0,
186                         "bit_size": 8,
187                         "factor": 1,
188                         "offset": 0,
189                         "writable": true
190                 },
191                 "RightTemperature": {
192                         "generic_name": "hvac.temperature.right",
193                         "bit_position": 8,
194                         "bit_size": 8,
195                         "factor": 1,
196                         "offset": 0,
197                         "writable": true
198                 },
199                 "Temperature": {
200                         "generic_name": "hvac.temperature.average",
201                         "bit_position": 16,
202                         "bit_size": 8,
203                         "factor": 1,
204                         "offset": 0,
205                         "writable": true
206                 },
207                 "FanSpeed": {
208                         "generic_name": "hvac.fan.speed",
209                         "bit_position": 32,
210                         "bit_size": 8,
211                         "factor": 23.529411765,
212                         "offset": 0,
213                         "writable": true
214                 }
215         }
216     },
217     "0x111": {
218         "bus": "ls",
219         "is_fd" : false,
220         "is_extended": false,
221         "is_j1939" : false,
222         "is_isotp" : true,
223         "length" : 16,
224         "signals": {
225             "sig11": {
226                 "generic_name": "sig1.1",
227                 "bit_position": 0,
228                 "bit_size": 16,
229                 "factor": 1,
230                 "offset": 0,
231                 "writable": true
232             },
233             "sig12": {
234                 "generic_name": "sig1.2",
235                 "bit_position": 16,
236                 "bit_size": 16,
237                 "factor": 1,
238                 "offset": 0,
239                 "writable": true
240             },
241             "sig21": {
242                 "generic_name": "sig2.1",
243                 "bit_position": 32,
244                 "bit_size": 16,
245                 "factor": 1,
246                 "offset": 0,
247                 "writable": true
248             },
249             "sig22": {
250                 "generic_name": "sig2.2",
251                 "bit_position": 48,
252                 "bit_size": 16,
253                 "factor": 1,
254                 "offset": 0,
255                 "writable": true
256             },
257             "sig31": {
258                 "generic_name": "sig3.1",
259                 "bit_position": 64,
260                 "bit_size": 16,
261                 "factor": 1,
262                 "offset": 0,
263                 "writable": true
264             },
265             "sig32": {
266                 "generic_name": "sig3.2",
267                 "bit_position": 80,
268                 "bit_size": 16,
269                 "factor": 1,
270                 "offset": 0,
271                 "writable": true
272             },
273             "sig41": {
274                 "generic_name": "sig4.1",
275                 "bit_position": 96,
276                 "bit_size": 16,
277                 "factor": 1,
278                 "offset": 0,
279                 "writable": true
280             },
281             "sig42": {
282                 "generic_name": "sig4.2",
283                 "bit_position": 112,
284                 "bit_size": 16,
285                 "factor": 1,
286                 "offset": 0,
287                 "writable": true
288             }
289         }
290     },
291     "61442": {
292         "comment": "Electronic Transmission Controller 1",
293         "length": 8,
294         "name": "ETC1",
295         "bus" : "j1939",
296         "is_fd" : false,
297         "is_extended": false,
298         "is_j1939" : true,
299         "signals" : {
300             "Trns.Trque.Converter.Lockup.Engaged" : {
301                 "generic_name": "Trns.Trque.Converter.Lockup.Engaged",
302                 "bit_position": 2,
303                 "bit_size": 2,
304                 "factor": 1,
305                 "offset": 0,
306                 "comment": "State signal which indicates whether the torque converter lockup is engaged.",
307                 "is_big_endian": false,
308                 "sign": 0,
309                 "writable" : true,
310                 "states": {
311                     "TorqueConverterLockupDisengaged": [0],
312                     "TorqueConverterLockupEngaged": [1],
313                     "Error": [2],
314                     "NotAvailable": [3]
315                 }
316             },
317             "Trns.Trq.Cnvrtr.Lckp.Trnstn.In.Prcess" : {
318                 "generic_name": "Trns.Trq.Cnvrtr.Lckp.Trnstn.In.Prcess",
319                 "bit_position": 6,
320                 "bit_size": 2,
321                 "factor": 1,
322                 "offset": 0,
323                 "comment": "State signal indicating whether or not the transmission torque converter lock up clutch is transitioning between being",
324                 "is_big_endian": false,
325                 "sign": 0,
326                 "writable" : true,
327                 "states": {
328                     "TransitionIsNotInProcess": [0],
329                     "TransitionIsInProcess": [1],
330                     "Error": [2],
331                     "NotAvailable": [3]
332                 }
333             },
334             "Src.Addrss.Of.Ctrllng.Dvc.Fr.Trns.Cntrl" : {
335                 "generic_name": "Src.Addrss.Of.Ctrllng.Dvc.Fr.Trns.Cntrl",
336                 "bit_position": 56,
337                 "bit_size": 8,
338                 "factor": 1,
339                 "offset": 0,
340                 "comment": "The source address of the SAE J1939 device currently controlling the transmission.",
341                 "is_big_endian": false,
342                 "sign": 0,
343                 "writable" : true
344             },
345             "Momentary.Eng.Max.Power.Enable" : {
346                 "generic_name": "Momentary.Eng.Max.Power.Enable",
347                 "bit_position": 36,
348                 "bit_size": 2,
349                 "factor": 1,
350                 "offset": 0,
351                 "comment": "Momentarily Requesting highest torque map from the engine control",
352                 "is_big_endian": false,
353                 "sign": 0,
354                 "writable" : true,
355                 "states": {
356                     "notRqingMaxPowerAvailable": [0],
357                     "mmntarilyRqingMaxPowerAvailable": [1],
358                     "fault": [2],
359                     "notAvailable": [3]
360                 }
361             },
362             "Trans.Input.Shaft.Speed" : {
363                 "generic_name": "Trans.Input.Shaft.Speed",
364                 "bit_position": 40,
365                 "bit_size": 16,
366                 "factor": 0.125,
367                 "offset": 0,
368                 "comment": "Rotational velocity of the primary shaft transferring power into the transmission.",
369                 "unit": "rpm",
370                 "is_big_endian": false,
371                 "sign": 0,
372                 "writable" : true
373             },
374             "Progressive.Shift.Disable" : {
375                 "generic_name": "Progressive.Shift.Disable",
376                 "bit_position": 34,
377                 "bit_size": 2,
378                 "factor": 1,
379                 "offset": 0,
380                 "comment": "Command signal used to indicate that progressive shifting by the engine should be disallowed.",
381                 "is_big_endian": false,
382                 "sign": 0,
383                 "writable" : true,
384                 "states": {
385                     "ProgressiveShiftIsNotDisabled": [0],
386                     "ProgressiveShiftIsDisabled": [1],
387                     "Reserved": [2],
388                     "TakeNoAction": [3]
389                 }
390             },
391             "Eng.Momentary.Overspeed.Enable" : {
392                 "generic_name": "Eng.Momentary.Overspeed.Enable",
393                 "bit_position": 32,
394                 "bit_size": 2,
395                 "factor": 1,
396                 "offset": 0,
397                 "comment": "Command signal used to indicate that the engine speed may be boosted up to the maximum engine overspeed value to",
398                 "is_big_endian": false,
399                 "sign": 0,
400                 "writable" : true,
401                 "states": {
402                     "MomentaryEngOverspeedIsDisabled": [0],
403                     "MomentaryEngOverspeedIsEnabled": [1],
404                     "Reserved": [2],
405                     "TakeNoAction": [3]
406                 }
407             },
408             "Percent.Clutch.Slip" : {
409                 "generic_name": "Percent.Clutch.Slip",
410                 "bit_position": 24,
411                 "bit_size": 8,
412                 "factor": 0.4,
413                 "offset": 0,
414                 "comment": "Parameter which represents the ratio of input shaft speed to current engine speed (in percent).",
415                 "unit": "%",
416                 "is_big_endian": false,
417                 "sign": 0,
418                 "writable" : true
419             },
420             "Trans.Output.Shaft.Speed" : {
421                 "generic_name": "Trans.Output.Shaft.Speed",
422                 "bit_position": 8,
423                 "bit_size": 16,
424                 "factor": 0.125,
425                 "offset": 0,
426                 "comment": "Calculated speed of the transmission output shaft.",
427                 "unit": "rpm",
428                 "is_big_endian": false,
429                 "sign": 0,
430                 "writable" : true
431             },
432             "Trans.Shift.In.Process" : {
433                 "generic_name": "Trans.Shift.In.Process",
434                 "bit_position": 4,
435                 "bit_size": 2,
436                 "factor": 1,
437                 "offset": 0,
438                 "comment": "Indicates that the transmission is in process of shifting from the current gear to the selected gear.",
439                 "is_big_endian": false,
440                 "sign": 0,
441                 "writable" : true,
442                 "states": {
443                     "ShiftIsNotInProcess": [0],
444                     "ShiftInProcess": [1],
445                     "Error": [2],
446                     "NotAvailable": [3]
447                 }
448             },
449             "Trans.Driveline.Engaged" : {
450                 "generic_name": "Trans.Driveline.Engaged",
451                 "bit_position": 0,
452                 "bit_size": 2,
453                 "factor": 1,
454                 "offset": 0,
455                 "comment": "Driveline engaged indicates the transmission controlled portion of the driveline is engaged sufficiently to allow a transfer",
456                 "is_big_endian": false,
457                 "sign": 0,
458                 "writable" : true,
459                 "states": {
460                     "DrivelineDisengaged": [0],
461                     "DrivelineEngaged": [1],
462                     "Error": [2],
463                     "NotAvailable": [3]
464                 }
465             }
466         }
467         },
468         "61444": {
469                 "comment": "Electronic Engine Controller 1",
470                 "length": 8,
471                 "name": "EEC1",
472                 "bus" : "j1939",
473                 "is_fd" : false,
474                 "is_j1939" : true,
475                 "signals" : {
476                         "Src.AddrssOf.Ctrllng.Dvc.Fr.Eng.Cntrl" : {
477                                 "generic_name": "Src.AddrssOf.Ctrllng.Dvc.Fr.Eng.Cntrl",
478                                 "bit_position": 40,
479                                 "bit_size": 8,
480                                 "factor": 1,
481                                 "offset": 0,
482                                 "comment": "The source address of the SAE J1939 device currently controlling the engine.",
483                                 "is_big_endian": false,
484                                 "sign": 0
485                         },
486                         "Actl.Eng.Prcnt.Trque.High.Resolution" : {
487                                 "generic_name": "Actl.Eng.Prcnt.Trque.High.Resolution",
488                                 "bit_position": 4,
489                                 "bit_size": 4,
490                                 "factor": 0.125,
491                                 "offset": 0,
492                                 "comment": "This parameter displays an additional torque in percent of the reference engine torque.",
493                                 "unit": "%",
494                                 "is_big_endian": false,
495                                 "sign": 0,
496                                 "states": {
497                                         "0000": [0],
498                                         "0125": [1],
499                                         "0875": [7],
500                                         "1111NotAvailable": [8]
501                                 }
502                         },
503                         "Eng.Demand.Percent.Torque" : {
504                                 "generic_name": "Eng.Demand.Percent.Torque",
505                                 "bit_position": 56,
506                                 "bit_size": 8,
507                                 "factor": 1,
508                                 "offset": -125,
509                                 "comment": "The requested torque output of the engine by all dynamic internal inputs, including smoke control, noise control and low",
510                                 "unit": "%",
511                                 "is_big_endian": false,
512                                 "sign": 0
513                         },
514                         "Eng.Starter.Mode" : {
515                                 "generic_name": "Eng.Starter.Mode",
516                                 "bit_position": 48,
517                                 "bit_size": 4,
518                                 "factor": 1,
519                                 "offset": 0,
520                                 "comment": "There are several phases in a starting action and different reasons why a start cannot take place.",
521                                 "is_big_endian": false,
522                                 "sign": 0,
523                                 "states": {
524                                         "startNotRqed": [0],
525                                         "starterActiveGearNotEngaged": [1],
526                                         "starterActiveGearEngaged": [2],
527                                         "strtFnshdStrtrNtActvAftrHvngBnA": [3],
528                                         "strtrInhbtdDToEngAlreadyRunning": [4],
529                                         "strtrInhbtdDTEngNtReadyForStart": [5],
530                                         "strtrInhbtdDTDrvlnEnggdOthrTrns": [6],
531                                         "strtrInhbtdDToActiveImmobilizer": [7],
532                                         "strtrInhbtdDueToStarterOvertemp": [8],
533                                         "1011Reserved": [9],
534                                         "starterInhibitedReasonUnknown": [12],
535                                         "error": [14],
536                                         "notAvailable": [15]
537                                 }
538                         },
539                         "Eng.Speed" : {
540                                 "generic_name": "Eng.Speed",
541                                 "bit_position": 24,
542                                 "bit_size": 16,
543                                 "factor": 0.125,
544                                 "offset": 0,
545                                 "comment": "Actual engine speed which is calculated over a minimum crankshaft angle of 720 degrees divided by the number of cylinders.",
546                                 "unit": "rpm",
547                                 "is_big_endian": false,
548                                 "sign": 0
549                         },
550                         "Actual.Eng.Percent.Torque" : {
551                                 "generic_name": "Actual.Eng.Percent.Torque",
552                                 "bit_position": 16,
553                                 "bit_size": 8,
554                                 "factor": 1,
555                                 "offset": -125,
556                                 "comment": "The calculated output torque of the engine.",
557                                 "unit": "%",
558                                 "is_big_endian": false,
559                                 "sign": 0
560                         },
561                         "Drivers.Demand.Eng.Percent.Torque" : {
562                                 "generic_name": "Drivers.Demand.Eng.Percent.Torque",
563                                 "bit_position": 8,
564                                 "bit_size": 8,
565                                 "factor": 1,
566                                 "offset": -125,
567                                 "comment": "The requested torque output of the engine by the driver.",
568                                 "unit": "%",
569                                 "is_big_endian": false,
570                                 "sign": 0
571                         },
572                         "Eng.Torque.Mode" : {
573                                 "generic_name": "Eng.Torque.Mode",
574                                 "bit_position": 0,
575                                 "bit_size": 4,
576                                 "factor": 1,
577                                 "offset": 0,
578                                 "comment": "State signal which indicates which engine torque mode is currently generating, limiting, or controlling the torque.",
579                                 "is_big_endian": false,
580                                 "sign": 0,
581                                 "states": {
582                                         "Low idle governor/no request (de": [0],
583                                         "Accelerator pedal/operator selec": [1],
584                                         "Cruise control": [2],
585                                         "PTO governor": [3],
586                                         "Road speed governor": [4],
587                                         "ASR control": [5],
588                                         "Transmission control": [6],
589                                         "ABS control": [7],
590                                         "Torque limiting": [8],
591                                         "High speed governor": [9],
592                                         "Braking system": [10],
593                                         "Remote accelerator": [11],
594                                         "Not available": [15]
595                                 }
596                         }
597                 }
598         },
599         "130306": {
600                 "name": "Wind.Data",
601                 "bus":"j1939",
602                 "comment":"Wind Data",
603                 "length": 8,
604                 "is_fd": false,
605                 "is_extended": false,
606                 "is_j1939": true,
607                 "byte_frame_is_big_endian": true,
608                 "bit_position_reversed": true,
609                 "signals": {
610                         "Sid": {
611                                 "bit_position": 0,
612                                 "bit_size": 8,
613                                 "sign": 0,
614                                 "generic_name": "Wind.Data.Sid"
615                         },
616                         "Wind.Speed": {
617                                 "bit_position": 8,
618                                 "bit_size": 16,
619                                 "factor": 0.01,
620                                 "sign": 0,
621                                 "unit":"m/s",
622                                 "generic_name": "Wind.Data.Wind.Speed"
623                         },
624                         "Wind.Angle": {
625                                 "bit_position": 24,
626                                 "bit_size": 16,
627                                 "factor": 0.0001,
628                                 "sign": 0,
629                                 "unit":"rad",
630                                 "generic_name": "Wind.Data.Wind.Angle"
631                         },
632                         "Reference": {
633                                 "bit_position": 40,
634                                 "bit_size": 3,
635                                 "decoder": "decoder_t::decode_state",
636                                 "sign": 0,
637                                 "states": {
638                                         "True (ground referenced to North)": [0],
639                                         "Magnetic (ground referenced to Magnetic North)": [1],
640                                         "Apparent": [2],
641                                         "True (boat referenced)": [3],
642                                         "True (water referenced)": [4]
643                                 },
644                                 "generic_name": "Wind.Data.Reference"
645                         },
646                         "Reserved": {
647                                 "bit_position": 43,
648                                 "bit_size": 21,
649                                 "decoder": "decoder_t::decode_bytes",
650                                 "sign": 0,
651                                 "generic_name": "Wind.Data.Reserved"
652                         }
653                 }
654         }
655 },
656 "diagnostic_messages": [
657                 {
658                         "bus": "hs",
659                         "pid": 4,
660                         "name": "engine.load",
661                         "frequency": 5,
662                         "decoder": "decoder_t::decode_obd2_response"
663                 },
664                 {
665                         "bus": "hs",
666                         "pid": 5,
667                         "name": "engine.coolant.temperature",
668                         "frequency": 1,
669                         "decoder": "decoder_t::decode_obd2_response"
670                 },
671                 {
672                         "bus": "hs",
673                         "pid": 10,
674                         "name": "fuel.pressure",
675                         "frequency": 1,
676                         "decoder": "decoder_t::decode_obd2_response"
677                 },
678                 {
679                         "bus": "hs",
680                         "pid": 11,
681                         "name": "intake.manifold.pressure",
682                         "frequency": 1,
683                         "decoder": "decoder_t::decode_obd2_response"
684                 },
685                 {
686                         "bus": "hs",
687                         "pid": 12,
688                         "name": "engine.speed",
689                         "frequency": 5,
690                         "decoder": "decoder_t::decode_obd2_response"
691                 },
692                 {
693                         "bus": "hs",
694                         "pid": 13,
695                         "name": "vehicle.speed",
696                         "frequency": 5,
697                         "decoder": "decoder_t::decode_obd2_response"
698                 },
699                 {
700                         "bus": "hs",
701                         "pid": 15,
702                         "name": "intake.air.temperature",
703                         "frequency": 1,
704                         "decoder": "decoder_t::decode_obd2_response"
705                 },
706                 {
707                         "bus": "hs",
708                         "pid": 16,
709                         "name": "mass.airflow",
710                         "frequency": 5,
711                         "decoder": "decoder_t::decode_obd2_response"
712                 },
713                 {
714                         "bus": "hs",
715                         "pid": 17,
716                         "name": "throttle.position",
717                         "frequency": 5,
718                         "decoder": "decoder_t::decode_obd2_response"
719                 },
720                 {
721                         "bus": "hs",
722                         "pid": 31,
723                         "name": "running.time",
724                         "frequency": 1,
725                         "decoder": "decoder_t::decode_obd2_response"
726                 },
727                 {
728                         "bus": "hs",
729                         "pid": 45,
730                         "name": "EGR.error",
731                         "frequency": 0,
732                         "decoder": "decoder_t::decode_obd2_response"
733                 },
734                 {
735                         "bus": "hs",
736                         "pid": 47,
737                         "name": "fuel.level",
738                         "frequency": 1,
739                         "decoder": "decoder_t::decode_obd2_response"
740                 },
741                 {
742                         "bus": "hs",
743                         "pid": 51,
744                         "name": "barometric.pressure",
745                         "frequency": 1,
746                         "decoder": "decoder_t::decode_obd2_response"
747                 },
748                 {
749                         "bus": "hs",
750                         "pid": 70,
751                         "name": "ambient.air.temperature",
752                         "frequency": 1,
753                         "decoder": "decoder_t::decode_obd2_response"
754                 },
755                 {
756                         "bus": "hs",
757                         "pid": 76,
758                         "name": "commanded.throttle.position",
759                         "frequency": 1,
760                         "decoder": "decoder_t::decode_obd2_response"
761                 },
762                 {
763                         "bus": "hs",
764                         "pid": 82,
765                         "name": "ethanol.fuel.percentage",
766                         "frequency": 1,
767                         "decoder": "decoder_t::decode_obd2_response"
768                 },
769                 {
770                         "bus": "hs",
771                         "pid": 90,
772                         "name": "accelerator.pedal.position",
773                         "frequency": 5,
774                         "decoder": "decoder_t::decode_obd2_response"
775                 },
776                 {
777                         "bus": "hs",
778                         "pid": 91,
779                         "name": "hybrid.battery-pack.remaining.life",
780                         "frequency": 5,
781                         "decoder": "decoder_t::decode_obd2_response"
782                 },
783                 {
784                         "bus": "hs",
785                         "pid": 92,
786                         "name": "engine.oil.temperature",
787                         "frequency": 1,
788                         "decoder": "decoder_t::decode_obd2_response"
789                 },
790                 {
791                         "bus": "hs",
792                         "pid": 94,
793                         "name": "engine.fuel.rate",
794                         "frequency": 1,
795                         "decoder": "decoder_t::decode_obd2_response"
796                 },
797                 {
798                         "bus": "hs",
799                         "pid": 99,
800                         "name": "engine.torque",
801                         "frequency": 1,
802                         "decoder": "decoder_t::decode_obd2_response"
803                 }
804         ]
805 }