Commit Graph

276 Commits

Author SHA1 Message Date
rusefi 4d2265478d GDI Epic #1448 2020-11-22 01:14:34 -05:00
Andrey G 88e830d635 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
rusefillc a37880eb97 GDI Epic #1448 2020-10-13 00:35:04 -04:00
rusefi b4208f585c QC control mode to crash if RPM = 0 and to mark successful 3 minute test with self-stimulation RPM increase #1871 2020-10-11 19:16:41 -04:00
rusefi 4743718663 QC control mode to crash if RPM = 0 and to mark successful 3 minute test with self-stimulation RPM increase #1871 2020-10-11 19:05:56 -04:00
rusefi e3758d3790 microRusEFI used as Body Control Module BCM BCU 2020-09-07 17:59:59 -04:00
rusefi 66af0565d8 microRusEFI used as Body Control Module BCM BCU 2020-09-06 20:09:26 -04:00
rusefi f55fee38b4 microRusEFI used as Body Control Module BCM BCU 2020-09-06 19:43:54 -04:00
rusefi 581d769227 blinking more LEDs 2020-08-31 17:15:04 -04:00
rusefi d7a63575b2 blinking more LEDs 2020-08-31 14:26:34 -04:00
rusefi 8a1244b7d7 blinking more LEDs 2020-08-31 13:44:58 -04:00
rusefi 1a87b6aa71 blinking more LEDs 2020-08-31 13:27:56 -04:00
rusefi 8d024f4579 BCM 2020-08-29 14:29:34 -04:00
Matthew Kennedy 519427cce2 defaults 2020-08-02 16:21:53 -07:00
rusefi e6a15f1325 MRE 0.5.1 2020-07-04 00:02:44 -04:00
rusefi bb90c1be23 u9 u10 2020-05-23 10:50:32 -04:00
rusefi 8b00823a0f HW test progress 2020-05-21 21:45:01 -04:00
rusefi 871cee3092 test fixture progress 2020-05-21 18:36:32 -04:00
Matthew Kennedy 39c84378eb don't store self stim in config (#1356)
* kill

* add bench test

* fix
2020-04-23 22:38:14 -04:00
rusefi 44a5840bcf dreaming about 63 volts 2020-04-15 21:28:44 -04:00
rusefi d5f3147c00 test pins are needed 2020-04-15 16:20:18 -04:00
rusefi d788348d7c mc33 fix 2020-04-14 19:36:25 -04:00
rusefi ae8936b93b MC restart 2020-04-14 19:23:53 -04:00
rusefi f6986e604f MC flag0 2020-04-13 19:01:22 -04:00
Matthew Kennedy 1a59950240 support ETB disable pin (#1273)
* config & hand gen

* board configs

* add dc motor support

* initialization

* also set duty to zero

* use disable in etb

* fix proteus default

* add TS fields

* I guess we needed 8 bytes

* :D

* comment

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-04-10 17:27:13 -04:00
rusEfi c2ab5f4871 more mc33816 2020-02-25 22:38:08 -05:00
rusefi 6b3228b9f1 TEST_33816 2020-02-25 21:35:21 -05:00
rusEfi e9ac797ac9 reviving FRANKENSO_QA_ENGINE 2020-02-18 17:53:56 -05:00
rusEfi ce54ae9497 TLE8888 watchdog #917
window watchdog progress
2020-02-10 13:24:09 -05:00
rusefi 63e3e84e08 happy new year 2020-01-08 00:02:40 -05:00
Matthew Kennedy 6703705a33 Pass action_s instead of callback/param (#1084)
* change action

* consumers

* fix test

* didn't mean to add those

* simplify

* fix simulator

* fix sim for real

* oy

* maybe this time the simulator will actually be fixed, for real

* don't rely on undefined behavior
2020-01-07 00:41:18 -05:00
rusEfi 59f25e04fd improvements around weird engine types 2019-12-28 23:26:43 -05:00
rusEfi 499a39e88c improvements around weird engine types 2019-12-28 23:22:16 -05:00
rusefi f47a1a16d1 getting rid of boardConfiguration / binary compatible change 2019-12-11 17:48:55 -05:00
rusefi 34f53bd102 making things nicer with dual ETB settings 2019-11-30 17:38:33 -05:00
rusEfi 980a3d7086 all ETBs to run in same HW mode 2019-11-29 16:51:51 -05:00
rusefi 5292024a81 MapAveragingCallback schedules all cylinders at once #974
saving pennies
2019-11-24 20:48:25 -05:00
rusefi d8941eec12 moving setDefaultFrankensoConfiguration down is the way of righteousness 2019-11-03 19:36:56 -05:00
andreika-git ef23be6893 Kinetis & TLE8888 compatibility & fixes... (#991)
* TLE8888: More compatibility & postTunerStudioState

* activeConfiguration & EFI_ACTIVE_CONFIGURATION_IN_FLASH fix

* Kinetis: jump_to_bootloader() impl.

* Kinetis: UART baudrate safety check

* Kinetis: OMG!..
2019-10-31 16:06:34 -04:00
rusEfi 4c95fbd43d pin conflict in MRE test config 2019-10-10 13:32:07 -04:00
Matthew Kennedy 9b1dc07ae1 Simplify thermistor config (#962)
* simplify thermistor config

* fix test
2019-10-02 21:00:10 -04:00
rusEfi 53ae54e8cc ETB target is using integer values #945
first we will write a unit test
2019-09-22 00:16:46 -04:00
rusEfi 3970881a09 ETB progress 2019-08-31 20:17:17 -04:00
rusEfi 9ce7c4d7da NB2 MRE 2019-08-31 18:36:44 -04:00
rusefi cb488d28ce TLE8888 should be re-initialized every time we get +12 volts fix #901
fuel pump test passed, also longer start-up timeout is needed for reliable start
2019-08-16 23:21:03 -04:00
rusEfi dfc5f86e6e MRE ETB 2019-08-15 01:59:15 -04:00
rusefi 60562d2c30 making LCD great again 2019-08-13 00:03:31 -04:00
rusefi 19058e1d6c making LCD great again 2019-08-12 23:48:58 -04:00
rusefi 64e9db5683 TS refresh & better MRE test configuration 2019-08-10 16:25:42 -04:00
rusefi b5c47c13ad low side channels on MRE #900
this should NOT work but it works?

2019-08-10_15_19_19_770: EngineState: injection #1 @ ext:TLE8888.OUT22 led1
2019-08-10_15_19_19_771: EngineState: injection #2 @ PE10 led10
2019-08-10_15_19_19_773: EngineState: injection #3 @ PE12 led5
2019-08-10_15_19_19_774: EngineState: injection #4 @ PE14 led4
2019-08-10_15_19_19_775: EngineState: injection #5 @ ext:TLE8888.OUT24 led7
2019-08-10_15_19_19_775: EngineState: injection #6 @ PE11 led6
2019-08-10_15_19_19_777: EngineState: injection #7 @ PE9 led9
2019-08-10_15_19_19_777: EngineState: injection #8 @ PE8 led8
2019-08-10_15_19_19_779: EngineState: injection #9 @ PE13 led3
2019-08-10_15_19_19_780: EngineState: injection #10 @ ext:TLE8888.OUT23
 led2
2019-08-10 15:23:41 -04:00
rusefi a94eebe3ec low side channels on MRE #900
getting closer but still issues
2019-08-10 14:53:57 -04:00
rusefi 4fcecb6c26 low side channels on MRE #900
progress - now all 10 BLINK, but two are blinking together
2019-08-10 13:45:00 -04:00
rusefi 97bf87eb48 low side channels on MRE #900 2019-08-09 23:45:35 -04:00
rusEfi 6c43b273af MRE test setup 2019-08-09 21:16:27 -04:00
rusEfi b3fc4af163 MRE test 2019-08-09 19:11:15 -04:00
rusefi 946374184e WTF is wrong with MRE_miata_na6 config? operationMode complexity fix #898 2019-08-08 23:11:56 -04:00
rusefi 67637cb1b5 better method name 2019-08-06 17:12:15 -04:00
rusEfi 1e64c5a67f MRE test setup 2019-08-05 23:00:35 -04:00
andreika-git cd80fd3d0e Use BOARD_TLE8888_COUNT for more compatibility (#889) 2019-07-27 09:37:45 -04:00
rusefi 00ff37947d setDefaultBoardConfiguration shouldn't have Frankenso pinout #852 2019-07-24 22:00:48 -04:00
rusefi ac18459e3f setDefaultBoardConfiguration shouldn't have Frankenso pinout #852
merging methods since always invoked together
2019-07-24 21:24:39 -04:00
andreika-git 18f2c3c990 Small fix for simulator + bootloader (#877)
* fix simulator

* fix bootloader
2019-07-09 06:06:07 -04:00
andreika-git 56fb8531a4 More portability (GPIO_F/G + auto_generated_enums) (#876)
* GPIO ports F and G are not everywhere

* auto_generated_enums path flexibility
2019-07-09 05:29:03 -04:00
rusefi 2164661274 undoing wrong fix & better fix for #805
also generator logging improvements
This reverts commit 96270758c9.
2019-06-30 14:28:47 -04:00
rusefi 96270758c9 "Calibrate TPS" broken in TS fix #805 2019-06-17 22:00:34 -04:00
rusefi 8456bd3c23 reviving tle8888 configuration 2019-06-05 22:32:30 -04:00
rusefi 58025a8fe4 docs 2019-06-03 18:15:41 -04:00
rusefi c5087257ec the future is now :) 2019-05-05 16:43:07 -04:00
rusefi 8c7d758b34 8888 usability 2019-05-05 12:48:04 -04:00
rusefi 2c24571ddb dreams of two ETBs 2019-05-05 12:02:42 -04:00
rusEfi 559d7298b7 tiny ETB progress 2019-05-04 11:01:05 -04:00
rusefi ea5ac54bee ETB monte carlo keeps track of best result 2019-05-04 09:57:57 -04:00
rusefi 85b790edcf The Big Refactoring of 2019: DECLARE_ENGINE_PARAMETER_SUFFIX consistency and simplification #657
maybe probably pointless refactoring? reducing parameters visibility
2019-05-03 18:41:43 -04:00
rusefi f6c5f8764a fixing build & refactoring 2019-04-28 23:42:49 -04:00
rusEfi 2c78d10a7b LEDs to test configs 2019-04-28 23:18:51 -04:00
rusefi 0b0ef9e094 ETB progress 2019-04-24 23:46:49 -04:00
rusefi b4a2b299e8 Merge branch 'master' of https://github.com/rusefi/rusefi 2019-04-21 14:22:05 -04:00
rusefi f4bb936243 tiny progress 2019-04-21 14:21:47 -04:00
rusefi cb5f3af977 :( 2019-04-21 14:16:56 -04:00
rusefi 1fd1bf1300 docs 2019-04-21 14:11:39 -04:00
rusefi 23e591a253 this change is probably breaking stuff, but some stuff is already broken. something is not right in too many places :( 2019-04-21 14:00:19 -04:00
rusefi 14bee909bc docs 2019-04-21 12:24:31 -04:00
rusefi e2182a7fa4 USB and TLE8888 not working for F4 or F767 #764 2019-04-21 10:13:34 -04:00
rusefi d6cccf7615 USB and TLE8888 not working for F4 or F767 #764 2019-04-20 23:49:26 -04:00
rusefi 7dbf33a177 USB and TLE8888 not working for F4 or F767 #764
ready to try anything
2019-04-20 18:15:05 -04:00
andreika-git b5f87ae584 Default config refactor (#762)
* Refactor config

* Fix FSIO_ANALOG_INPUT_COUNT
2019-04-16 10:27:34 -04:00
andreika-git ca255a90c2 More config portability: TLE6240, Trigger_input, UART/Serial (#759)
* Add fields to UART/Serial configs

* trigger_input: can be both HAL_USE_PAL and HAL_USE_COMP

* tle6240 config: local temporary solution

* Fix for custom_engine::setFsio

* EFI_ACTIVE_CONFIGURATION_IN_FLASH
2019-04-15 08:40:12 -04:00
rusefi 48f6d9529c we need TLE8888 driver #714 2019-04-14 16:08:39 -04:00
rusefi 45c8c194e1 we need TLE8888 driver #714 2019-04-13 12:43:19 -04:00
rusefi 334b5d1992 steps towards smarter gpio 2019-04-13 12:02:34 -04:00
rusefi c018341591 ETB using tle7209 fix #746 2019-04-13 01:03:12 -04:00
rusefi 24948a2641 defined(__DOXYGEN__) ? fix #748 2019-04-12 22:10:57 -04:00
rusefi 76d3630588 ETB using tle7209 #746 2019-04-11 23:21:16 -04:00
rusefi 131533cc13 we need TLE8888 driver #714 2019-04-06 12:26:37 -04:00
rusefi b4077d72ba we need TLE8888 driver #714 2019-04-06 07:38:02 -04:00
rusefi 259ff0141a we need TLE8888 driver #714 2019-04-04 23:03:32 -04:00
rusefi d5fd0f0f86 we need TLE8888 driver #714 2019-04-04 21:34:33 -04:00
andreika-git a79175f6ef More portability & small fixes (#719)
* Use hw_stm32.mk

* Fix bootloader

* Use more common hw_ports.mk filename instead of hw_stm32.mk

* More CPU compatibility for Makefile

* TS_UART_MODE & rename TS_SERIAL_UART_DEVICE->TS_SERIAL_DEVICE

* Move lockAnyContext()/unlockAnyContext() to rfiutil.c

* USE_FATFS

* EFI_LCD

* Less compilation errors

* STATUS_LOGGING_BUFFER_SIZE & SETTINGS_LOGGING_BUFFER_SIZE

* EFI_ALTERNATOR_CONTROL, EFI_SERVO, EFI_DISABLE_CONSOLE_ACTIONS

* #ifndef PWM_PHASE_MAX_COUNT & more flexible GPIO inside portname()

* merge

* EFI_ALTERNATOR_CONTROL, EFI_ELECTRONIC_THROTTLE_BODY
2019-03-29 15:29:01 +01:00
rusEfi 849846e4ec better Electronic Throttle body control #493 2019-03-11 00:31:06 -04:00
rusefi 9e46bbf519 better Electronic Throttle body control #493
two ETBs
2019-03-10 12:02:25 -04:00
rusEfi 90bf18bcd7 better Electronic Throttle body control #493 2019-03-09 23:31:47 -05:00
rusEfi 9cfbb8d1e1 ETB progress 2019-03-03 15:27:49 -05:00
rusefi 0eb033e042 ETB_BENCH_ENGINE 2019-03-02 22:42:11 -05:00
rusEfi 91e421ebae ETB iTerm limits 2019-03-02 14:00:32 -05:00
rusEfi e93c2b5efb TPS commands & compacting 2019-03-02 13:21:12 -05:00
rusEfi 5b2476f37f ETB 2019-03-01 23:09:33 -05:00
rusEfi 0cac08b657 ETB 2019-02-27 17:54:25 -05:00
rusEfi b0377cec8e ETB 2019-02-27 09:57:03 -05:00
rusefi 78c87195c8 ETB_BENCH_ENGINE 2019-02-27 08:55:56 -05:00
rusefi b54f34fff0 F7 2019-02-06 18:53:43 -05:00
rusefi b1d8bf0dbf minimal pin configuration & EFI_COMMUNICATION_PIN fix 2019-01-26 11:38:14 -05:00
rusefi 114043243e fix #678 2019-01-20 22:50:00 -05:00
rusefi 7ffb3a2be0 refactoring: better method name 2019-01-11 00:03:42 -05:00
rusefi c1509dd0b7 The Big Refactoring of 2019: DECLARE_ENGINE_PARAMETER_SUFFIX consistency and simplification #657 2019-01-10 19:25:07 -05:00
rusefi b9f28b43aa Revert "The Big Refactoring of 2019: DECLARE_ENGINE_PARAMETER_SUFFIX consistency and simplification #657"
This reverts commit 4e5cbe3
2019-01-10 00:56:08 -05:00
rusefi 4e5cbe3764 The Big Refactoring of 2019: DECLARE_ENGINE_PARAMETER_SUFFIX consistency and simplification #657 2019-01-09 23:38:59 -05:00
rusefi 9f63ea4130 The Big Refactoring of 2019: scheduler should not be global #655 2019-01-09 08:50:51 -05:00
rusEfi d68d6e5e54 ETB mule pins 2018-11-30 00:37:32 -05:00
andreika-git 96dfebc542 STM32 Nucleo144-F767ZI board: Initial support (#620)
* More EFI_ #ifdefs for config flexibility

* Even more config flexibility

* New firmware/config/stm32f7ems/* files

* New firmware/config/boards/NUCLEO_F767/* files

* New firmware/hw_layer/stm32f7/* files

* Fix for EFI_USB_SERIAL

* Adding #if defined(STM32F7XX)

* SPI flags changed in F7: SPI_CR1_DFF --> SPI_CR1_CRCL

* I2Cv2 config changed in F7

* More versatile CCM defines

* Makefiles

* Double #ifs cleanup

* docs
2018-11-16 07:40:06 -05:00
rusefi 6e9361fb58 docs 2018-03-04 17:55:46 -05:00
rusEfi 29bd4b016f test 2018-01-29 14:25:28 -05:00
rusEfi 54b63ed02d closes #557 2018-01-28 18:09:19 -05:00
rusefi c046a0bdec #557 2018-01-28 14:16:57 -05:00
rusefi 7b3434caca #557 2018-01-28 14:03:58 -05:00
rusefi 4a40130657 happy new year 2018-01-20 20:42:19 -05:00
rusEfi ef0afb8beb #510 2017-12-03 18:29:52 -05:00
rusEfi 74a2b7fbf2 initialization bugfix 2017-12-03 18:19:07 -05:00
rusEfi 3c4ffb336f #510 2017-12-03 17:26:15 -05:00
rusEfi 417044133d fixing simulator 2017-12-03 15:37:52 -05:00
rusEfi 81f31b891b fixing unit tests 2017-12-03 15:23:39 -05:00
rusefi 2459874260 docs 2017-12-02 21:22:59 -05:00
rusEfi 059ad2c6fa progress 2017-12-02 19:47:18 -05:00
rusEfi 7c8d848981 Merge branch 'master' of https://github.com/rusefi/rusefi 2017-12-02 19:26:00 -05:00
rusEfi f80ebe410b docs 2017-12-02 19:25:36 -05:00
rusefi d6e7b0e55f better defaults 2017-12-02 19:24:49 -05:00
rusefi f8e592f454 better macro name 2017-05-15 23:28:49 -04:00
rusefi 0f43aa8129 test config fix 2017-03-23 21:59:47 -04:00
rusefi 28c939c409 docs 2017-03-21 22:45:15 -04:00
rusefi 0169e57e68 board QA engine 2017-02-24 18:55:53 -05:00
rusEfi a732c830a3 auto-sync 2017-01-28 15:05:25 -05:00
rusEfi 552c664a23 auto-sync 2017-01-03 06:05:22 -05:00
rusEfi 4f10decc81 auto-sync 2016-04-23 23:07:45 -04:00
rusEfi 84a989544a auto-sync 2016-04-03 19:01:59 -04:00
rusEfi 2187b72d70 auto-sync 2016-01-24 15:02:46 -05:00
rusEfi 3e419bef66 auto-sync 2016-01-08 15:01:38 -05:00
rusEfi ded4e74de2 auto-sync 2016-01-04 11:01:47 -05:00
rusEfi c4e314a1d1 auto-sync 2016-01-03 09:02:27 -05:00
rusEfi 42069e51ac auto-sync 2015-12-31 16:02:30 -05:00
rusEfi 5fbbe630a9 auto-sync 2015-12-30 16:02:18 -05:00
rusEfi 41e7abdd6f auto-sync 2015-07-10 09:01:56 -04:00