Go to file
Andrey G 8e11675afd
Tle8888 big update 1 (#1892)
* smart gpio: fix tle8888 direct pin mapping for MRE

* MRE: use TLE8888 pins instead of MCU gpios that drives TLE8888

* TLE8888: cleanup

* TLE8888: do not reset driver private data on WD/undervoltage reset

* TLE8888: diagnostic updates

* TLE8888 driver: BIG driver rework

* TLE8888: check SPI answers for abnormal states

Reply with other than requested register can be a sign of:
-Power-On-Reset, then OpStat0 will be replyed
-WatchDog reset, then FWDStat1 will be replyed
-Invalid communication frame, then Diag0 will be replyed

Keep tracking last accessed register and check with the next reply.

* TLE8888: debug clean-up

* TLE8888: implement spi array write

This reduce CS inactive state time between two consequent accesses
from 8.8 uS to 1.4 uS

* TLE8888: fix PP outputs in OD mode

* TLE8888: cleanup register definitions

* TLE8888: run separate driver thread for each chip instance

Calculating poll interval for few chips become more complex, avoid
this running thread for each device.

* TLE8888: fix cypress and kinetic compilation

Both platforms define its own MAX and cause redifination error if
common.h is included in driver.

* MRE: update mapping.yaml and fix direct pin mapping for TLE8888

* TLE8888: diagnnostic: disable switch off in case of overcurrent

For all output, use current limiting instead

* TLE8888: check for overvoltage on OUT8..OUT13

* TLE8888: add TODO note about how to recover from failure condition

Currently TLE8888 automaticly recovers only from overcurrent and
(may be) overtemperature conditions.
Short to bat cause output disable (bit in OECONFIG is reset) and
needs driver/host intervention.

* TLE8888: save few bytes of RAM

* TLE8888: Lada Kalina is test mule for IDLE stepper on TLE8888

Don't forget to enable PP mode for TLE8888 outputs 21..24:
uncomment line 1087 in tle8888.c

* TLE8888: reorder code, cleanup

* TLE8888: mode all debug/statisctic to per-chip struct

* TLE8888: rework poll interval calculation

* MRE: use TLE8888 pins instead of MCU gpios that drives TLE8888 #2
2020-10-23 12:25:30 -04:00
.github Fix .ini files for cypress & kinetis bundles (#1828) 2020-09-28 07:24:48 -04:00
.vscode
android helping build 2020-10-07 19:17:05 -04:00
firmware Tle8888 big update 1 (#1892) 2020-10-23 12:25:30 -04:00
hardware GDI 2020-10-21 13:23:15 -04:00
java_console Auto-generated configs and docs 2020-10-23 16:25:10 +00:00
java_tools SD download panel progress 2020-10-11 17:46:51 -04:00
misc site progress 2020-10-22 20:54:49 -04:00
simulator disable i2c, other unused features (#1891) 2020-10-20 22:24:32 -04:00
unit_tests second PID config for wastegate (#1889) 2020-10-19 08:04:27 -04:00
.gitattributes
.gitignore
.gitmodules
README.md Readme updates (#1827) 2020-09-27 19:55:37 -04:00
lgtm.yml
work_in_progress.md

README.md

rusEFI

GPL open-source DIY ECU

Release Last Commit Rusefi on Slack

rusEFI

Current binaries are always available on our build server

paypal

Tindie

Cloning the repository

Important note - we now use submodules:

git submodule update --init

What do we have here?

External Links

Building the Code

See https://rusefi.com/forum/viewtopic.php?f=5&t=9

Release Notes

Release date Revision Details
07/26/2020 r24635 improvement #1637: DC motor idle air valve for late 90s German vehicles
07/21/2020 bugfix #1592 injectors could stay open on transition from cranking to running under certain conditions
06/17/2020 r23656 bugfix #1491 major performance/scheduling improvement
05/21/2020 r22961 rusEFI console start-up time improvements
04/18/2020 r22231 Renix 44-2-2 trigger support added
04/02/2020 Start button feature
03/28/2020 Critical error text is now displayed in TunerStudio
03/26/2020 Multi-spark feature
09/05/2019 r19849 Electronic Throttle Body including idle control seems to work
07/28/2019 r19612 improvement #809: software jump to DFU
04/25/2019 r17317 bugfix #775: electrical noise reboot during settings change causes with full tune loss
04/07/2019 r17098 improvement #714: TLE8888 Enable Outputs SPI integration
02/27/2019 r16886 bugfix #698: concurrency defect with single timer executor initialization
02/23/2019 r16857 improvement #688: better support for 144 and 176 pin packages
02/05/2019 r16713 improvement #631: ChibiOS 18
01/11/2019 r16346 bugfix #663: SPI fixes for CJ125 for stm32 errata STM32f405/7/15/17
12/09/2018 r16057 electronic throttle body control is now BETA version
08/19/2018 r15811 bugfix #604: no interpolation outside of the table
01/29/2018 r15514 improvement #215: CJ125 wideband contoller
01/23/2018 r15442 improvement #463: ChibiOS 17 / 4
01/07/2018 r14952 usability & minor bugfix #532 idle defaults are broken
12/17/2017 r14892 bugfix #513: console: erase on older chips does not work
11/26/2017 r14789 bugfix #500: set_rpn_expression command is broken
11/23/2017 r14779 bugfix #497: engine does not start with SD card
11/19/2017 r14766 improvement #496: console flasher to support older boards
11/19/2017 r14760 improvement #495: incomppatible change - larger settings area
11/06/2017 r14733 improvement #487: single-point injection mode
10/26/2017 r14700 improvement #385: narrow band to wide band conversion table
08/31/2017 improvement #442: ADC_VCC should be configurable
07/24/2017 r14513 bugfix #307: TS bench test blinks three times
07/13/2017 r14476 bugfix #461: SAXParserException on console start-up due to damaged settings.xml file
07/09/2017 r14473 improvement: IAC solenoid frequencty changeable on the fly
06/19/2017 r14393 bugfix: pinMode, milMode
05/27/2017 r14221 improvement: ochGetCommand to support offset and count
05/05/2017 r13974 bugfix #404: 36/1 FATAL error: angle range trgSync
05/03/2017 r13967 improvement: ChibiOS 3.2
04/06/2017 r13759 major improvement #72: ChibiOS 3.1
03/26/2017 r13330 super annoying bug #336 fixed
03/20/2017 r13233 improvements #375 & #376: hard FPU mode & migrating to fresh version of arm gcc
03/19/2017 r13223 bugfix #374: persistent configuration starts to touch firmware - settings would need to be reloaded
03/09/2017 r13146 bugfix #370: duty cycle vs error code 6050
03/06/2017 r13123 bugfix #363: 2/1 skipped wheel is a corner-case
03/05/2017 r13108 bugfix #363: trigger front only processing
02/22/2017 r12980 bugfix: false error message in case of single coil or simultaneous injection
02/22/2017 r12973 unused property 'custom Use Rise Edge' removed
02/22/2017 r12972 protocol signature changed to 'v0.02' (this would happen from time to time to ensure version match between console and TS project
02/20/2017 r12939 https://github.com/rusefi/rusefi is now the official primary repository
02/18/2017 r11565 improvement: level1 default brown out https://sourceforge.net/p/rusefi/tickets/354/
02/18/2017 r11554 bugfix: rusEfi console program/erase buttons fixed with ST-LINK 2.1
12/09/2016 r10991 bugfixes, bugfixes, bugfixes & releave 1.0
02/15/2016 r9600 automatic warm-up fuel correction, performance improvements
08/31/2015 r8725 acceleration fuel correction, console improvements
07/06/2015 r8554 more CAN, better console, bugfixes, performance
04/26/2015 r7938 vehicle speed sensor, stepper idle valve, lots of improvements
11/13/2014 r5327 ChibiOS/RT 2.6.6, better cold start logic, bugfixes, bugfixes, bugfixes...
06/12/2014 r3477 Precise event scheduling, protocol selection
03/26/2014 r2413 C++, refactoring & improvements
02/23/2013 r1777 trigger is now configurable via TunerStudio
01/30/2014 r1309 true trigger angles, VBatt signal
01/12/2014 r1007 refactoring, refactoring & refactoring
12/19/2013 r605 ignition control & a little bit of CAN bus
11/08/2013 r100 Tuner Studio fuel map tuning, fuel pump control
10/14/2013 r39 USB serial bug, missing IAR files, self-containted Makefile
10/13/2013 r33 IAR project file
10/04/2013 r26 Patched ChibiOS/RT 2.6.1 sources are now included
09/23/2013 r20 Tuner Studio integration, configuraton persistence
08/30/2013 r14 initial documentation & refactoring. tunerstudio integration
08/03/2013 r13 wideband O2 input, better idling algorithm, serial-over-USB
07/05/2013 r10 Second CKP, sequential injection.
06/19/2013 r9 Initial version - batch injection & ignition with advance table lookup.