rusefi_documentation/Vault-Smart-ECU.md

110 lines
7.8 KiB
Markdown
Raw Permalink Normal View History

# Vault of Smart ECU Info
## Collected Limp Mode info
2021-03-06 16:30:03 -08:00
List of threads with existing limp info:
[https://github.com/rusefi/rusefi/issues/2244](https://github.com/rusefi/rusefi/issues/2244) - Limp mode affecting the unit tests
[https://github.com/rusefi/rusefi/issues/932](https://github.com/rusefi/rusefi/issues/932) - Limp mode for MAP failure
[https://github.com/rusefi/rusefi/issues/2125](https://github.com/rusefi/rusefi/issues/2125) - Fail second ETB when other is down
[https://github.com/rusefi/rusefi/issues/2258](https://github.com/rusefi/rusefi/issues/2258) - Time since boot should be included in main relay logic
[https://github.com/rusefi/rusefi/issues/2073](https://github.com/rusefi/rusefi/issues/2073) - Try to check which trigger wheel the signal is coming from to allow limp from second trigger
[https://github.com/rusefi/rusefi/issues/2058](https://github.com/rusefi/rusefi/issues/2058) - better handling of FSIO fails
[https://github.com/rusefi/rusefi/issues/1604](https://github.com/rusefi/rusefi/issues/1604) - Allow negative values for the TPS
[https://github.com/rusefi/rusefi/issues/1535](https://github.com/rusefi/rusefi/issues/1535) - Rev limit with ETB
[https://github.com/rusefi/rusefi/issues/1444](https://github.com/rusefi/rusefi/issues/1444) - Use pin input to trigger a log
[https://github.com/rusefi/rusefi/issues/1236](https://github.com/rusefi/rusefi/issues/1236) - ETB feedback logic
[https://github.com/rusefi/rusefi/issues/987](https://github.com/rusefi/rusefi/issues/987) - Better handling of unexpected trigger shape
[https://github.com/rusefi/rusefi/issues/936](https://github.com/rusefi/rusefi/issues/936) - Misfire detection
[https://github.com/rusefi/rusefi/issues/932](https://github.com/rusefi/rusefi/issues/932) - Fail safe mode/limp mode for MAP failure
[https://github.com/rusefi/rusefi/issues/680](https://github.com/rusefi/rusefi/issues/680) - Document TS FSIO formulas
[https://github.com/rusefi/rusefi/issues/468](https://github.com/rusefi/rusefi/issues/468) - TPS vs MAP error detection logic
[https://github.com/rusefi/rusefi/issues/455](https://github.com/rusefi/rusefi/issues/455) - RPM hard limit depending on CLT
[https://github.com/rusefi/rusefi/issues/202](https://github.com/rusefi/rusefi/issues/202) - Knock reaction
[https://github.com/rusefi/rusefi/issues/95](https://github.com/rusefi/rusefi/issues/95) - per-injector performance correction
[https://rusefi.com/forum/viewtopic.php?f=5&t=1952&p=40009](https://rusefi.com/forum/viewtopic.php?f=5&t=1952&p=40009) - Fw. improvement - PANIC BUTTON
[https://rusefi.com/forum/viewtopic.php?f=5&t=1900&p=39412](https://rusefi.com/forum/viewtopic.php?f=5&t=1900&p=39412) - Limp Home and Engine Protection
[https://rusefi.com/forum/viewtopic.php?f=5&t=1469&p=39327](https://rusefi.com/forum/viewtopic.php?f=5&t=1469&p=39327) - Software knock processing
2021-03-08 19:59:54 -08:00
## Control methods and logic
2021-03-08 19:59:54 -08:00
2021-03-11 08:05:03 -08:00
### Malfunction light behavior
2023-01-02 11:22:23 -08:00
2021-03-11 08:05:03 -08:00
One of the most critical things in terms of driver feedback is making the error warnings as clear as possible. In a critical engine protection situation the last thing you want is the driver not being sure what he needs to do.
Because of this the EML light should have 2 stages:
2023-01-02 11:22:23 -08:00
2021-03-11 08:05:03 -08:00
1. Solid on light - meaning there is an issue and reducing speed/demand/aggression is advised but there is no need to immediately stop driving.
2. Flashing light - Lift off immediately and check error.
2021-03-08 19:59:54 -08:00
### Knock Intervention
2023-01-02 11:22:23 -08:00
2021-03-08 19:59:54 -08:00
Current status - Knock sensors work, we have reliable logging of signals, we have some level of noise threshold working, we have know windowing working, we have auto calculation of the second harmonic?
2021-03-10 19:12:36 -08:00
Knock mitigation - few ways to do this:
2023-01-02 11:22:23 -08:00
2021-03-10 19:12:36 -08:00
1. Retard timing to reduce rate of pressure rise, requires:
Value for max total retard allowed, value for retard per knock event, strategy to re-advance one or two degrees per no-knock cycle.
Should probably be done as soon as knock is detected above the noise threshold.
2. Enrich mixture. Works by cooling the cylinder and reducing the chance of being lean.
Should be done in the event that initial spark intervention is not enough to stop knock by the retard limit.
Should also be the first action if AFR is below target when knock is detected. Suggest this setting an enrichment of 0.1 lambda.
This should probably activate and stay on for x number of engine cycles.
2023-01-02 11:22:23 -08:00
Requires:
2021-03-10 19:12:36 -08:00
2023-01-02 11:22:23 -08:00
3. MAP pressure reduction.
2021-03-10 19:12:36 -08:00
2 ways to do this, either close ETB or open wastegate (or both).
Should be designed to be user configurable as to the level of intervention and which method to take.
Requires: max allowed pressure reduction by ETB, toggle option for etb, toggle option for wastegate, maybe a max pwm duty cycle increase for wastegate.
Should remain on until driver lifts throttle to prevent surging. Should be the next action after the enrichment if knock still present.
2021-03-10 19:48:49 -08:00
4. Use water meth.
In cases where vehicle has water meth injection then this should be activated in addition to the initial spark retard.
2021-03-11 08:05:03 -08:00
In a situation where EGT results are available and the engine is near EGT limit then this should take preference to retarding spark.
2021-03-10 19:48:49 -08:00
I.e. above user defined EGT spark max retard is reduced to user defined level and meth is activated as soon as knock is detected.
Requires: flag "has water meth", user defined EGT limit, maybe water meth pin assignment, user defined water meth pwm? Trigger water meth from gpio table?
2021-03-11 08:05:03 -08:00
5. Extreme case cut fuel and ignition for x cycles to reduce the in cylinder temperatures before re-enabling as a last ditch to keep auto ignition down.
2021-03-10 19:48:49 -08:00
EML severity: no action until the need to reduce boost, at which point flash light.
2023-01-02 11:22:23 -08:00
### Overboost protection
2021-03-10 19:48:49 -08:00
This one is more easy, take similar action to knock stages 3 and 4.
EML severity: Solid on for light as boost reduction will take care of it, if after x cycles boost still high then flash light.
2023-01-02 11:22:23 -08:00
### High coolant temperature
2021-03-10 19:48:49 -08:00
Intended to help prevent mishaps with overstretched cooling systems.
Use knock stage 2 and 3, if 4 available then activating has benefit to reduce in cylinder temps.
If EWP then also demand increased or MAX pump duty cycle for x time (1 min).
If electric fan then enable fan until temp is restored.
Requires: user defined maximum coolant temperature, boost cut and enrichment optional.
EML severity: solid on for light while temp is over set limit.
2023-01-02 11:22:23 -08:00
### High EGT
2021-03-10 19:48:49 -08:00
2021-03-12 11:11:34 -08:00
Where vehicle has EGT sensing allow user to set a preferred EGT limit and max exceed value.
2021-03-10 19:48:49 -08:00
If EGT limit is reached light eml and enrich. If EGT max exceed value is breached flash EML.
2021-03-11 08:05:03 -08:00
As we schedule events individually we could cut the cylinder that was detected to be high, this would require killing the injector for just that cylinder or for the batch.
### Low fuel pressure or max injector duty cycle
2023-01-02 11:22:23 -08:00
2021-03-11 08:05:03 -08:00
Main thing to avoid here is leanout, fuel pressure compensation is going to deal with a lot of the problem as the pressure drop but at some point it will reach the max injector duty cycle.
Possible ways to mitigate this are to limit RPM, limit boost and/or limit pedal to achieve the previous.
### ETB deviation error
2023-01-02 11:22:23 -08:00
Implies a loss or lack of accurate control of the ETB, this should probably be considered a serious error resulting in a flashing EML.
2021-03-11 08:05:03 -08:00
### Fatal errors
2023-01-02 11:22:23 -08:00
2021-03-12 11:11:34 -08:00
As these are "fatal" we should likely treat them as such and perform a controlled shutdown.
In this case it would be to deactivate injection and ignition and close ETB.
This MUST only be the case for truly fatal errors where the consequences of keeping the engine running are worse than leaving someone with a total loss of power (even if it is done in a controlled fashion), again this is a case where a flashing EML is needed.
2021-03-11 08:05:03 -08:00
### Load sensor failure
2021-03-08 19:59:54 -08:00
2023-01-02 11:22:23 -08:00
Loss of primary load sensor (MAP, TPS or MAF) is currently a problem that will leave the engine inoperable.