Hello world,
I was just about to tell someone what the possible causes are, and thought I'd put it here for others' reference, too.
Reset Line Pulled LowIf the reset line is pulled low, even briefly, the CPU will hard reset. On the Jaguar (0.7-alpha), C6 and R5 are responsible for preventing this from occurring due to noise. Therefore this is unlikely to occur.
Power Supply Briefly RemovedThis is the same as turning it off completely for a longer time and then back on again. But quicker. Can only really happen with a bad connector or connection or internally broken wire.
Power Supply Quality IssueA noisy 5V rail can cause the CPU to lockup or reset. Noise can get here in several ways:
1) Sudden load/unload
2) Oscillating regulator
3) Extreme 12V supply variations
Software Initiated ResetsThe firmware has a facility to be told to reset by external software over the serial comms line. The chances of this happening due to noise are extremely low indeed. The firmware has many independent mechanisms to reject bogus packets. Accepted packets of all types must be absolutely perfect.
Hardware Initiated ResetsThe MCU has a facility to reset the device if it's not functioning properly. I have this in place on my car, however no other car I'm aware of has this. The version I have is not of sufficient quality for general distribution, hence not shared.
System Reset GenerationSystem reset generation from the following possible sources (My comments in bold):
- Power on reset - normal behaviour
- Low voltage reset - Low quality supply, possibly during cranking with bad battery
- Illegal address reset - Corruption or bad code
- COP reset - Software controlled or firmware failure (with future fw)
- Loss of clock reset - We don't meet conditions for this. Instead we self-clock and then recover with tell-tales in the log.
- External pin reset - First thing in above list
I may have missed some, and reserve the right to edit the above over time. Feedback welcome, comment below!
Fred.
_________________DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and
its comments thread and
my turbo truck!n00bs, do
NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!