25 scaled_channel<int16_t, 10>
Map;
27 scaled_channel<uint16_t, 1>
Rpm;
29 scaled_channel<int16_t, 10>
Clt;
31 scaled_channel<int16_t, 10> Tps;
45 scaled_channel<uint16_t, 1000> pw1;
46 scaled_channel<uint16_t, 1000> pw2;
47 scaled_channel<int16_t, 10> mat;
48 scaled_channel<int16_t, 10> adv_deg;
58 msg.adv_deg = timing > 360 ? timing - 720 : timing;
62 scaled_channel<uint8_t, 10> afrtgt1;
63 scaled_channel<uint8_t, 10> AFR1;
64 scaled_channel<int16_t, 10> EGOcor1;
65 scaled_channel<int16_t, 10>
egt1;
66 scaled_channel<int16_t, 10> pwseq1;
71 #if EFI_ENGINE_CONTROL
83 scaled_channel<uint16_t, 10> Vbat;
84 scaled_channel<uint16_t, 10> sensor1;
85 scaled_channel<uint16_t, 10> sensor2;
86 scaled_channel<uint8_t, 10> knk_rtd;
101 scaled_channel<uint16_t, 10> VSS1;
102 scaled_channel<uint16_t, 10> tc_retard;
103 scaled_channel<uint16_t, 10> launch_timing;
113 msg.launch_timing = 0;
119 uint32_t baseId = 1512;
static void populateFrame(ms1512 &msg)
void canDashboardTS(CanCycle cycle)
bool isInterval(CanInterval interval)
FuelComputer fuelComputer
float stftCorrection[STFT_BANK_COUNT]
constexpr auto & module()
floatms_t injectionDuration
angle_t timingAdvance[MAX_CYLINDER_COUNT]
static float getOrZero(SensorType type)
egt1("EGT 1", SensorCategory.SENSOR_INPUTS, FieldType.INT16, 200, 0.25, 0.0, 0.0, "deg C")
m_knockLevel("Knock: Current level", SensorCategory.SENSOR_INPUTS, FieldType.INT, 924, 1.0, 0.0, 0.0, "Volts")
scaled_channel< uint16_t, 10000, 1 > targetLambda