39 case DIGITAL_SWITCH_INPUT: {
94 const float afr = lambda1.Value * STOICH_RATIO;
110 if (rpmSensorReading.Valid) {
111 const float rpm = rpmSensorReading.Value;
112 if (rpmHysteresis.checkIfLimitIsExceeded(
132 result =
efiReadPin(triggerPin, triggerPinMode);
141 if (currentSensorResult.Valid) {
142 const float currentValue = currentSensorResult.Value;
145 case LUA_GAUGE_LOWER_BOUND: {
146 result = (armingValue <= currentValue);
149 case LUA_GAUGE_UPPER_BOUND: {
150 result = (currentValue <= armingValue);
RegisteredOutputPin nitrousRelay
bool checkTriggerPinState() const
void updateRpmConditionSatisfied()
float getFuelCoefficient() const
void onSlowCallback() override
void updateMapConditionSatisfied()
void updateAfrConditionSatisfied()
bool checkLuaGauge() const
void updateSpeedConditionSatisfied()
SensorType getLuaGauge() const
void updateCltConditionSatisfied()
void updateTpsConditionSatisfied()
void setValue(const char *msg, int logicValue, bool isForce=false)
virtual SensorResult get() const =0
static constexpr engine_configuration_s * engineConfiguration
static CCM_OPTIONAL FunctionalSensor clt(SensorType::Clt, MS2NT(10))
bool efiReadPin(brain_pin_e pin)
bool isBrainPinValid(brain_pin_e brainPin)
expected< float > SensorResult
bool isNitrousMapCondition
bool isNitrousAfrCondition
bool isNitrousRpmCondition
bool isNitrousCltCondition
bool isNitrousTpsCondition
bool isNitrousSpeedCondition