rusEFI
The most advanced open source ECU
|
Definition in file error_handling.h.
Data Structures | |
struct | backupErrorState |
Typedefs | |
using | critical_msg_t = char[CRITICAL_BUFFER_SIZE] |
Enumerations | |
enum class | ErrorCookie : uint32_t { None = 0 , FirmwareError = 0xcafebabe , HardFault = 0xdeadbeef , ChibiOsPanic = 0xdeadfa11 } |
Functions | |
bool | warning (ObdCode code, const char *fmt,...) |
bool | warningTsReport (ObdCode code, const char *fmt,...) |
void | firmwareError (ObdCode code, const char *fmt,...) |
const char * | getCriticalErrorMessage () |
void | configError (const char *fmt,...) |
void | clearConfigErrorMessage () |
const char * | getConfigErrorMessage () |
bool | hasConfigError () |
bool | hasErrorReportFile () |
int | getRusEfiVersion () |
const char * | errorCookieToName (ErrorCookie cookie) |
void | errorHandlerInit () |
bool | errorHandlerIsStartFromError () |
void | errorHandlerShowBootReasonAndErrors () |
Variables | |
bool | hasCriticalFirmwareErrorFlag |
using critical_msg_t = char[CRITICAL_BUFFER_SIZE] |
Definition at line 27 of file error_handling.h.
|
strong |
Enumerator | |
---|---|
None | |
FirmwareError | |
HardFault | |
ChibiOsPanic |
Definition at line 88 of file error_handling.h.
void clearConfigErrorMessage | ( | ) |
Definition at line 62 of file error_handling.cpp.
void configError | ( | const char * | fmt, |
... | |||
) |
Definition at line 593 of file error_handling.cpp.
const char * errorCookieToName | ( | ErrorCookie | cookie | ) |
Definition at line 134 of file error_handling.cpp.
void errorHandlerInit | ( | ) |
Definition at line 77 of file error_handling.cpp.
Referenced by runRusEfi().
bool errorHandlerIsStartFromError | ( | ) |
Definition at line 126 of file error_handling.cpp.
void errorHandlerShowBootReasonAndErrors | ( | ) |
Definition at line 232 of file error_handling.cpp.
Referenced by runRusEfi().
Something really bad had happened - firmware cannot function, we cannot run the engine We definitely use this critical error approach in case of invalid configuration. If user sets a self-contradicting configuration we have to just put a hard stop on this.
see also warning()
Definition at line 670 of file error_handling.cpp.
Referenced by TriggerWaveform::addEvent(), applyUnknownEngineType(), TriggerScheduler::assertNotInList(), assertTimeIsLinear(), TriggerWaveform::calculateExpectedEventCounts(), calculateTriggerSynchPoint(), MultiChannelStateSequence::checkSwitchTimes(), TripOdometer::consumeFuel(), AemXSeriesWideband::decodeRusefiStandard(), TriggerDecoderBase::decodeTriggerEvent(), EtbImpl< TBase >::doAutocal(), doInitElectronicThrottle(), efiExtiEnablePin(), ensureArrayIsAscending(), errorHandlerInit(), SingleTimerExecutor::executeAllPendingActions(), findIndexMsg(), TriggerCentral::findNextTriggerToothAngle(), TriggerStimulatorHelper::findTriggerSyncPoint(), getAdcChannelBrainPin(), getAirmassModel(), getCylinderNumberAtIndex(), getFiringOrderLength(), getFiringOrderTable(), getHwPin(), getHwPort(), getIgnitionPinForIndex(), getInjectionModeDurationMultiplier(), getMapCfg(), getNumberOfInjections(), getNumberOfSparks(), getPortIndex(), getPortIndex(), getPortIndex(), getSpiDevice(), gpio_pin_markUsed(), PwmConfig::handleCycleStart(), initAuxValves(), initEgoSensor(), initHistogram(), initializeSkippedToothTrigger(), OutputPin::initPin(), look_up_rpm_can_id(), look_up_vss_can_id(), onCliCaseError(), onCliDuplicateError(), onCliOverflowError(), TachometerModule::onFastCallback(), FLStack< T, MAXSIZE >::pop(), portSetHardwareSchedulerTimer(), FLStack< T, MAXSIZE >::push(), recalculateAuxValveTiming(), EventQueue::remove(), runBench(), SingleTimerExecutor::schedule(), setHardwareSchedulerTimer(), GppwmChannel::setOutput(), startCanPins(), swapOutputBuffers(), timerCallback(), timerValidationCallback(), turnOnTriggerInputPin(), InjectionEvent::update(), validateHardwareTimer(), validateThermistorConfig(), and wrapAngle().
const char * getConfigErrorMessage | ( | ) |
Definition at line 601 of file error_handling.cpp.
Referenced by handleGetConfigErorr().
const char * getCriticalErrorMessage | ( | ) |
Definition at line 54 of file error_handling.cpp.
Referenced by handleGetConfigErorr(), handleTestCommand(), and updateDevConsoleState().
int getRusEfiVersion | ( | ) |
See also SIGNATURE_HASH
Definition at line 766 of file engine_controller.cpp.
Referenced by errorHandlerInit(), errorHandlerWriteReportFile(), firmwareErrorV(), handleGetVersion(), printVersionForConsole(), readFromFlash(), sayHello(), and updateTunerStudioState().
bool hasConfigError | ( | ) |
Definition at line 58 of file error_handling.cpp.
Referenced by updateTunerStudioState().
bool hasErrorReportFile | ( | ) |
Definition at line 66 of file error_handling.cpp.
Referenced by updateTunerStudioState().
Something is wrong, but we can live with it: some minor sensor is disconnected or something like that
see also firmwareError()
Definition at line 528 of file error_handling.cpp.
Referenced by TriggerWaveform::addEvent(), TriggerScheduler::assertNotInList(), assertPinAssigned(), TriggerStimulatorHelper::assertSyncPosition(), buildTimingMap(), check(), customTrigger(), CanTsListener::decodeFrame(), AemXSeriesWideband::decodeRusefiDiag(), Engine::efiWatchdog(), findIndexMsg(), fireSparkBySettingPinLow(), flexCallback(), IgnitionState::getAdvance(), SpeedDensityAirmass::getAirmass(), getBaroCorrection(), getCrankingFuel3(), getCylinderNumberAtIndex(), InjectorModelWithConfig::getFuelDifferentialPressure(), getInjectionOffset(), getInternalAdcValue(), getRunningAdvance(), IgnitionState::getSparkDwell(), IFuelComputer::getTCharge(), Pid::getUnclampedOutput(), TriggerCentral::handleShaftSignal(), handleVvtCamSignal(), interpolateMsg(), TriggerCentral::isToothExpectedNow(), mapAveragingAdcCallback(), PrimaryTriggerDecoder::onNotEnoughTeeth(), VvtTriggerDecoder::onNotEnoughTeeth(), SensorChecker::onSlowCallback(), PrimaryTriggerDecoder::onTooManyTeeth(), VvtTriggerDecoder::onTooManyTeeth(), onTriggerEventSparkLogic(), InjectionEvent::onTriggerTooth(), EngineState::periodicFastCallback(), prepareIgnitionSchedule(), readFromFlash(), sdFormat(), sdLoggerCreateFile(), setHardwareSchedulerTimer(), OutputPin::setOnchipValue(), SimplePwm::setSimplePwmDutyCycle(), startDwellByTurningSparkPinHigh(), startSimplePwm(), MapAverager::stop(), tooSoonToHandleSignal(), InjectionEvent::update(), LimpManager::updateState(), validateBaroMap(), and TriggerCentral::validateCamVvtCounters().
Same as above, but also report to user by pop-up window in TunerStudio
Definition at line 536 of file error_handling.cpp.
Referenced by Engine::periodicSlowCallback().
|
extern |
Definition at line 35 of file error_handling.cpp.
Referenced by firmwareErrorV(), and warningVA().