forked from rusefi/rusefi
/
engine_configuration_generated_structures.h
2320 lines (2299 loc) · 40.3 KB
/
engine_configuration_generated_structures.h
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Wed Jan 03 07:47:04 EST 2018
// begin
#ifndef ENGINE_CONFIGURATION_GENERATED_H_
#define ENGINE_CONFIGURATION_GENERATED_H_
#include "rusefi_types.h"
typedef struct {
/**
* offset 0
*/
float pFactor;
/**
* offset 4
*/
float iFactor;
/**
* offset 8
*/
float dFactor;
/**
* Linear addition to PID logic
* offset 12
*/
int16_t offset;
/**
* PID dTime
* offset 14
*/
int16_t period;
/**
* offset 16
*/
int16_t minValue;
/**
* offset 18
*/
int16_t maxValue;
/** total size 20*/
} pid_s;
typedef struct {
/**
* Fuel squirt duration while cranking
* A number of curves adjust this value according to CLT/IAT/TPS etc
* offset 0
*/
float baseFuel;
/**
* Cranking mode threshold. Special cranking logic controls fuel and spark while RPM is below this threshold
* set cranking_rpm X
* offset 4
*/
int16_t rpm;
/**
* need 4 byte alignment
* offset 6
*/
uint8_t alignmentFill[2];
/** total size 8*/
} cranking_parameters_s;
typedef struct {
/**
* kPa value at low volts
* offset 0
*/
float lowValue;
/**
* kPa value at high volts
* offset 4
*/
float highValue;
/**
* offset 8
*/
air_pressure_sensor_type_e type;
/**
* offset 12
*/
adc_channel_e hwChannel;
/** total size 16*/
} air_pressure_sensor_config_s;
/**
* @brief MAP averaging configuration
*/
typedef struct {
/**
* offset 0
*/
float samplingAngleBins[MAP_ANGLE_SIZE];
/**
* @brief MAP averaging sampling start angle, by RPM
* offset 32
*/
float samplingAngle[MAP_ANGLE_SIZE];
/**
* offset 64
*/
float samplingWindowBins[MAP_WINDOW_SIZE];
/**
* @brief MAP averaging angle duration, by RPM
* offset 96
*/
float samplingWindow[MAP_WINDOW_SIZE];
/**
* offset 128
*/
air_pressure_sensor_config_s sensor;
/** total size 144*/
} MAP_sensor_config_s;
/**
* @brief Thermistor known values
*/
typedef struct {
/**
* these values are in Celcuus
* offset 0
*/
float tempC_1;
/**
* offset 4
*/
float tempC_2;
/**
* offset 8
*/
float tempC_3;
/**
* offset 12
*/
float resistance_1;
/**
* offset 16
*/
float resistance_2;
/**
* offset 20
*/
float resistance_3;
/**
* offset 24
*/
float bias_resistor;
/** total size 28*/
} thermistor_conf_s;
/**
* @brief Oil pressure sensor interpolation
*/
typedef struct {
/**
* offset 0
*/
adc_channel_e hwChannel;
/**
* offset 4
*/
float v1;
/**
* offset 8
*/
float value1;
/**
* offset 12
*/
float v2;
/**
* offset 16
*/
float value2;
/** total size 20*/
} oil_pressure_config_s;
/**
* @brief Thermistor curve parameters
*/
typedef struct {
/**
* offset 0
*/
thermistor_conf_s config;
/**
* offset 28
*/
adc_channel_e adcChannel;
/** total size 32*/
} ThermistorConf;
typedef struct {
/**
* cc/min, cubic centimeter per minute
* By the way, g/s = 0.125997881 * (lb/hr)
* g/s = 0.125997881 * (cc/min)/10.5
* g/s = 0.0119997981 * cc/min
* offset 0
*/
float flow;
/**
* set_flat_injector_lag LAG
* set_injector_lag VOLTAGE LAG
* offset 4
*/
float battLagCorrBins[VBAT_INJECTOR_CURVE_SIZE];
/**
* ms delay between injector open and close dead times
* offset 36
*/
float battLagCorr[VBAT_INJECTOR_CURVE_SIZE];
/** total size 68*/
} injector_s;
typedef struct {
/**
* offset 0
*/
float a0;
/**
* offset 4
*/
float a1;
/**
* offset 8
*/
float a2;
/**
* offset 12
*/
float b1;
/**
* offset 16
*/
float b2;
/** total size 20*/
} bi_quard_s;
typedef struct {
/**
* Engine displacement, in liters
* see also cylindersCount
* offset 0
*/
float displacement;
/**
* offset 4
*/
cylinders_count_t cylindersCount;
/**
* offset 8
*/
firing_order_e firingOrder;
/** total size 12*/
} specs_s;
/**
* @brief Trigger wheel(s) configuration
*/
typedef struct {
/**
* set trigger_type X
* offset 0
*/
trigger_type_e type;
/**
offset 4 bit 0 */
bool unusedCustomIsSynchronizationNeeded : 1;
/**
offset 4 bit 1 */
bool unusedCustomNeedSecondTriggerInput : 1;
/**
* This option could be used if your second trigger channel is broken
offset 4 bit 2 */
bool useOnlyFirstChannel : 1;
/**
* offset 8
*/
int customTotalToothCount;
/**
* offset 12
*/
int customSkippedToothCount;
/** total size 16*/
} trigger_config_s;
typedef struct {
/**
* offset 0
*/
adc_channel_e hwChannel;
/**
* offset 4
*/
float v1;
/**
* offset 8
*/
float value1;
/**
* offset 12
*/
float v2;
/**
* offset 16
*/
float value2;
/** total size 20*/
} afr_sensor_s;
typedef struct {
/**
* offset 0
*/
brain_pin_e solenoidPin;
/**
* offset 4
*/
pin_output_mode_e solenoidPinMode;
/**
* offset 8
*/
int solenoidFrequency;
/**
* offset 12
*/
brain_pin_e stepperDirectionPin;
/**
* offset 16
*/
brain_pin_e stepperStepPin;
/** total size 20*/
} idle_hardware_s;
typedef struct {
/**
* offset 0
*/
idle_hardware_s idle;
/**
* value between 0 and 100 used in Manual mode
* offset 20
*/
float manIdlePosition;
/**
* offset 24
*/
brain_pin_e fuelPumpPin;
/**
* offset 28
*/
pin_output_mode_e fuelPumpPinMode;
/**
* offset 32
*/
brain_pin_e injectionPins[INJECTION_PIN_COUNT];
/**
* offset 80
*/
pin_output_mode_e injectionPinMode;
/**
* offset 84
*/
brain_pin_e ignitionPins[IGNITION_PIN_COUNT];
/**
* offset 132
*/
pin_output_mode_e ignitionPinMode;
/**
* offset 136
*/
brain_pin_e malfunctionIndicatorPin;
/**
* offset 140
*/
pin_output_mode_e malfunctionIndicatorPinMode;
/**
* offset 144
*/
brain_pin_e fanPin;
/**
* offset 148
*/
pin_output_mode_e fanPinMode;
/**
* offset 152
*/
float mapFrequency0Kpa;
/**
* offset 156
*/
float mapFrequency100Kpa;
/**
* some cars have a switch to indicate that clutch pedal is all the way down
* offset 160
*/
brain_pin_e clutchDownPin;
/**
* offset 164
*/
pin_input_mode_e clutchDownPinMode;
/**
* offset 168
*/
brain_pin_e alternatorControlPin;
/**
* offset 172
*/
pin_output_mode_e alternatorControlPinMode;
/**
* offset 176
*/
brain_pin_e HD44780_rs;
/**
* offset 180
*/
brain_pin_e HD44780_e;
/**
* offset 184
*/
brain_pin_e HD44780_db4;
/**
* offset 188
*/
brain_pin_e HD44780_db5;
/**
* offset 192
*/
brain_pin_e HD44780_db6;
/**
* offset 196
*/
brain_pin_e HD44780_db7;
/**
* offset 200
*/
brain_pin_e gps_rx_pin;
/**
* offset 204
*/
brain_pin_e gps_tx_pin;
/**
* rpm X
* offset 208
*/
int triggerSimulatorFrequency;
/**
* Digital Potentiometer is used by stock ECU stimulation code
* offset 212
*/
spi_device_e digitalPotentiometerSpiDevice;
/**
* offset 216
*/
brain_pin_e digitalPotentiometerChipSelect[DIGIPOT_COUNT];
/**
* offset 232
*/
brain_pin_e etbDirectionPin1;
/**
* offset 236
*/
brain_pin_e etbDirectionPin2;
/**
* offset 240
*/
brain_pin_e etbControlPin1;
/**
* offset 244
*/
brain_pin_e etbControlPin2;
/**
* offset 248
*/
pin_output_mode_e electronicThrottlePin1Mode;
/**
* offset 252
*/
brain_pin_e wboHeaterPin;
/**
* offset 256
*/
brain_pin_e cj125CsPin;
/**
* offset 260
*/
float fuelLevelEmptyTankVoltage;
/**
* offset 264
*/
float fuelLevelFullTankVoltage;
/**
* AFR, WBO, EGO - whatever you like to call it
* offset 268
*/
ego_sensor_e afr_type;
/**
* offset 272
*/
float fuelClosedLoopAfrLowThreshold;
/**
* offset 276
*/
pin_output_mode_e hip9011CsPinMode;
/**
* This implementation produces one pulse per engine cycle. See also dizzySparkOutputPin.
* offset 280
*/
brain_pin_e tachOutputPin;
/**
* offset 284
*/
pin_output_mode_e tachOutputPinMode;
/**
* offset 288
*/
brain_input_pin_e triggerInputPins[3];
/**
* offset 300
*/
brain_pin_e mainRelayPin;
/**
* offset 304
*/
int idleThreadPeriod;
/**
* offset 308
*/
int consoleLoopPeriod;
/**
* offset 312
*/
int lcdThreadPeriod;
/**
* offset 316
*/
brain_pin_e sdCardCsPin;
/**
* offset 320
*/
int generalPeriodicThreadPeriod;
/**
* offset 324
*/
uint32_t tunerStudioSerialSpeed;
/**
* offset 328
*/
brain_pin_e boardTestModeJumperPin;
/**
* offset 332
*/
can_device_mode_e canDeviceMode;
/**
* offset 336
*/
brain_pin_e canTxPin;
/**
* offset 340
*/
brain_pin_e canRxPin;
/**
* offset 344
*/
brain_pin_e triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT];
/**
* offset 356
*/
pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT];
/**
* offset 368
*/
brain_pin_e o2heaterPin;
/**
* offset 372
*/
pin_output_mode_e o2heaterPinModeTodO;
/**
offset 376 bit 0 */
bool is_enabled_spi_1 : 1;
/**
offset 376 bit 1 */
bool is_enabled_spi_2 : 1;
/**
offset 376 bit 2 */
bool is_enabled_spi_3 : 1;
/**
offset 376 bit 3 */
bool isSdCardEnabled : 1;
/**
offset 376 bit 4 */
bool isFastAdcEnabled : 1;
/**
offset 376 bit 5 */
bool isEngineControlEnabled : 1;
/**
offset 376 bit 6 */
bool isHip9011Enabled : 1;
/**
offset 376 bit 7 */
bool isVerboseAlternator : 1;
/**
offset 376 bit 8 */
bool useSerialPort : 1;
/**
offset 376 bit 9 */
bool useStepperIdle : 1;
/**
offset 376 bit 10 */
bool enabledStep1Limiter : 1;
/**
offset 376 bit 11 */
bool useTpicAdvancedMode : 1;
/**
offset 376 bit 12 */
bool useLcdScreen : 1;
/**
offset 376 bit 13 */
bool startConsoleInBinaryMode : 1;
/**
offset 376 bit 14 */
bool useWarmupPidAfr : 1;
/**
offset 376 bit 15 */
bool onOffAlternatorLogic : 1;
/**
offset 376 bit 16 */
bool isCJ125Enabled : 1;
/**
* Use rise or fall signal front
offset 376 bit 17 */
bool vvtCamSensorUseRise : 1;
/**
offset 376 bit 18 */
bool unused_board_984_18 : 1;
/**
offset 376 bit 19 */
bool unused_board_984_19 : 1;
/**
offset 376 bit 20 */
bool unused_board_984_20 : 1;
/**
offset 376 bit 21 */
bool unused_board_984_21 : 1;
/**
offset 376 bit 22 */
bool unused_board_984_22 : 1;
/**
offset 376 bit 23 */
bool unused_board_984_23 : 1;
/**
offset 376 bit 24 */
bool unused_board_984_24 : 1;
/**
offset 376 bit 25 */
bool unused_board_984_25 : 1;
/**
offset 376 bit 26 */
bool unused_board_984_26 : 1;
/**
offset 376 bit 27 */
bool unused_board_984_27 : 1;
/**
offset 376 bit 28 */
bool unused_board_984_28 : 1;
/**
offset 376 bit 29 */
bool unused_board_984_29 : 1;
/**
offset 376 bit 30 */
bool unused_board_984_30 : 1;
/**
* offset 380
*/
brain_input_pin_e logicAnalyzerPins[LOGIC_ANALYZER_CHANNEL_COUNT];
/**
* default or inverted input
* offset 396
*/
uint8_t logicAnalyzerMode[LOGIC_ANALYZER_CHANNEL_COUNT];
/**
* offset 400
*/
int unrealisticRpmThreashold;
/**
* offset 404
*/
pin_output_mode_e mainRelayPinMode;
/**
* offset 408
*/
brain_pin_e max31855_cs[EGT_CHANNEL_COUNT];
/**
* offset 440
*/
spi_device_e max31855spiDevice;
/**
* todo: more comments
* offset 444
*/
brain_pin_e fsioOutputPins[FSIO_COMMAND_COUNT];
/**
* offset 508
*/
pin_output_mode_e gpioPinModes[FSIO_COMMAND_COUNT];
/**
* offset 572
*/
uart_device_e consoleUartDevice;
/**
* offset 576
*/
int mapMinBufferLength;
/**
* offset 580
*/
int16_t idlePidDeactivationTpsThreshold;
/**
* offset 582
*/
int16_t idleStepperPulseDuration;
/**
* offset 584
*/
float nb2ratioFrom;
/**
* offset 588
*/
float nb2ratioTo;
/**
* This pin is used for debugging - snap a logic analyzer on it and see if it's ever high
* offset 592
*/
brain_pin_e triggerErrorPin;
/**
* offset 596
*/
pin_output_mode_e triggerErrorPinMode;
/**
* offset 600
*/
brain_pin_e acRelayPin;
/**
* offset 604
*/
pin_output_mode_e acRelayPinMode;
/**
* offset 608
*/
fsio_pwm_freq_t fsioFrequency[FSIO_COMMAND_COUNT];
/**
* offset 640
*/
brain_pin_e hip9011CsPin;
/**
* offset 644
*/
brain_pin_e hip9011IntHoldPin;
/**
* offset 648
*/
pin_output_mode_e hip9011IntHoldPinMode;
/**
* offset 652
*/
fsio_setting_t fsio_setting[FSIO_COMMAND_COUNT];
/**
* offset 716
*/
brain_pin_e spi1mosiPin;
/**
* offset 720
*/
brain_pin_e spi1misoPin;
/**
* offset 724
*/
brain_pin_e spi1sckPin;
/**
* offset 728
*/
brain_pin_e spi2mosiPin;
/**
* offset 732
*/
brain_pin_e spi2misoPin;
/**
* offset 736
*/
brain_pin_e spi2sckPin;
/**
* offset 740
*/
brain_pin_e spi3mosiPin;
/**
* offset 744
*/
brain_pin_e spi3misoPin;
/**
* offset 748
*/
brain_pin_e spi3sckPin;
/**
* offset 752
*/
float hip9011Gain;
/**
* offset 756
*/
brain_pin_e joystickCenterPin;
/**
* offset 760
*/
brain_pin_e joystickAPin;
/**
* offset 764
*/
brain_pin_e joystickBPin;
/**
* offset 768
*/
brain_pin_e joystickCPin;
/**
* offset 772
*/
brain_pin_e joystickDPin;
/**
* rusEfi console Sensor Sniffer mode
* offset 776
*/
sensor_chart_e sensorChartMode;
/**
* offset 780
*/
maf_sensor_type_e mafSensorType;
/**
* offset 784
*/
brain_input_pin_e vehicleSpeedSensorInputPin;
/**
* Some vehicles have a switch to indicate that clutch pedal is all the way up
* offset 788
*/
brain_pin_e clutchUpPin;
/**
* offset 792
*/
pin_input_mode_e clutchUpPinMode;
/**
* todo:not finshed
* These input pins allow us to pull toggle buttons state
* offset 796
*/
brain_pin_e fsioDigitalInputs[FSIO_COMMAND_COUNT];
/**
* offset 860
*/
brain_input_pin_e frequencyReportingMapInputPin;
/** total size 864*/
} board_configuration_s;
typedef struct {
/**
* http://rusefi.com/wiki/index.php?title=Manual:Engine_Type
* set engine_type X
* offset 0
*/
engine_type_e engineType;
/**
* Engine sniffer would be disabled above this rpm
* set engineSnifferRpmThreshold X
* offset 4
*/
int engineSnifferRpmThreshold;
/**
* offset 8
*/
injector_s injector;
/**
* Should trigger emulator push data right into trigger handling logic, eliminating the need for physical jumper wires?
* PS: Funny name, right? :)
offset 76 bit 0 */
bool directSelfStimulation : 1;
/**
offset 76 bit 1 */
bool activateAuxPid1 : 1;
/**
offset 76 bit 2 */
bool isVerboseAuxPid1 : 1;
/**
offset 76 bit 3 */
bool activateAuxPid2 : 1;
/**
offset 76 bit 4 */
bool isVerboseAuxPid2 : 1;
/**
offset 76 bit 5 */
bool activateAuxPid3 : 1;
/**
offset 76 bit 6 */
bool isVerboseAuxPid3 : 1;
/**
offset 76 bit 7 */
bool activateAuxPid4 : 1;
/**
offset 76 bit 8 */
bool isVerboseAuxPid4 : 1;
/**
offset 76 bit 9 */
bool useBiQuadAnalogFiltering : 1;
/**
offset 76 bit 10 */
bool issue_294_10 : 1;
/**
offset 76 bit 11 */
bool issue_294_11 : 1;
/**
offset 76 bit 12 */
bool issue_294_12 : 1;
/**
offset 76 bit 13 */
bool issue_294_13 : 1;
/**
offset 76 bit 14 */
bool issue_294_14 : 1;
/**
offset 76 bit 15 */
bool issue_294_15 : 1;
/**
offset 76 bit 16 */
bool issue_294_16 : 1;
/**
offset 76 bit 17 */
bool issue_294_17 : 1;
/**
offset 76 bit 18 */
bool issue_294_18 : 1;
/**
offset 76 bit 19 */
bool issue_294_19 : 1;
/**
offset 76 bit 20 */
bool issue_294_21 : 1;
/**
offset 76 bit 21 */
bool issue_294_22 : 1;
/**
offset 76 bit 22 */
bool issue_294_23 : 1;
/**
offset 76 bit 23 */
bool issue_294_24 : 1;
/**
offset 76 bit 24 */
bool issue_294_25 : 1;
/**
offset 76 bit 25 */
bool issue_294_26 : 1;
/**
offset 76 bit 26 */
bool issue_294_27 : 1;
/**
offset 76 bit 27 */
bool issue_294_28 : 1;
/**
offset 76 bit 28 */
bool issue_294_29 : 1;
/**
* Closed throttle. todo: extract these two fields into a structure
* todo: we need two sets of TPS parameters - modern ETBs have two sensors
* offset 80
*/
int16_t tpsMin;
/**
* Full throtle. tpsMax value as 10 bit ADC value. Not Voltage!
* offset 82
*/
int16_t tpsMax;
/**
* TPS error detection, what TPS % value is unrealistically low
* offset 84
*/
int16_t tpsErrorDetectionTooLow;
/**
* offset 86
*/
int16_t tpsErrorDetectionTooHigh;
/**
* offset 88
*/
cranking_parameters_s cranking;
/**
* offset 96
*/
float primingSquirtDurationMs;
/**
* offset 100