Commit Graph

154 Commits

Author SHA1 Message Date
rusefi a801d57495 need ETB reset button
only:alphax-4chan
2023-03-16 00:14:59 -04:00
rusefi bbc27e466a need ETB reset button
only:alphax-4chan
2023-03-16 00:02:33 -04:00
rusefi 62e12354c3 need ETB reset button
only:alphax-4chan
2023-03-15 23:01:20 -04:00
Andrey 6fc48222c8 random simulation todo
only:mre_f4
2023-03-02 23:33:47 -05:00
Matthew Kennedy 5250b177c2
Allow scheduling_s to come from a pool (#4841)
* injection events use scheduling pool

* knock and prime

* bench test

* dropped this: *

* extract action before execute

* comment

* init allocated timers

* metrics

* dropped this: ,

* guard

* injection events use scheduling pool

* knock and prime

* bench test

* dropped this: *

* extract action before execute

* comment

* init allocated timers

* metrics

* dropped this: ,

* guard

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2022-12-10 17:55:51 -05:00
Andrey ab4b451195 os_access.h dead? 2022-09-07 15:56:45 -04:00
Matthew Kennedy b0cbe01673
use defs instead of magic numbers (#4523)
* use defs instead of magic numbers

* consecutive
2022-09-04 09:52:14 -04:00
rusefillc 733f9b4659 this code is too dead 2022-08-25 22:09:22 -04:00
rusefi eb976de07d lua outputs bench test 2022-08-24 13:20:14 -04:00
rusefi 35120e07da refactoring 2022-08-24 12:02:39 -04:00
Matthew Kennedy 2096a22319
report injector, ignition faults (#4408)
* report injector, ignition faults

* guard
2022-08-01 15:41:47 -04:00
Andrey G 59eee6641c
Add "Reset to OpenBLT" button (#4364)
Similar to "Reset to DFU", but uses different seed
2022-07-22 08:21:11 +03:00
Matthew Kennedy b99d90b006
Start -> start (#4366) 2022-07-21 15:17:32 -04:00
rusefillc 97def4b01f TS injector bench test pulse is too short #4192 2022-05-22 11:08:34 -04:00
rusefillc a2af7895bb TS injector bench test pulse is too short fix #4192 2022-05-22 09:43:09 -04:00
rusefi f9c7a48369 Lua is new FSIO 2022-04-23 17:15:34 -04:00
rusefi e5d666a968 Lua is new FSIO 2022-04-23 17:02:50 -04:00
rusefillc 4ddb328e21 i will confess: i need to fit a debug build into discovery 2022-04-16 17:10:53 -04:00
Andrey G bca63957b1
Test bench: implement injector test for dead time calculation (#3960)
* Add output channel for TestBench iter counter

* Update testBenchIter from runBench

* rusefi.input: testBenchIter gauge

* rusefi.input: initial Injector test dialog
2022-03-08 19:25:58 -06:00
Andrey G f3e67a61db
Bench test clean (#3961)
* bench test: helper

* bench test: convert fuel tests

* bench test: convert spark tests

* bench test: convert TCU solenoid tests

* bench test: convert rest of tests

* bench test: final cleanup

* no contractions
2022-02-27 13:14:42 -05:00
Matthew Kennedy c6f45c5022
warnings fixes (#3851)
* unused things

* !!! actual bug !!!

* dead

* unused

* unused

* multi-bus lua RX was just broken

* make the compiler angry about it

* dead config

* alphax 2

* just call, no store

* compiler too angry
2022-01-31 18:37:42 -05:00
rusefillc cf627979a3 moving curves to defaults
wow nasty
2022-01-03 19:57:34 -05:00
rusefillc 2b7357cc68 smart diag into bench test 2022-01-03 18:07:22 -05:00
rusefillc f5b1191d85 smart diag into bench test 2022-01-03 16:46:15 -05:00
rusefillc a223ec7ab9 smart diag into bench test 2022-01-03 14:21:54 -05:00
rusefillc 21f3f26506 benchTest flexibility 2022-01-03 03:35:26 -05:00
rusefillc 47444519d6 typo 2022-01-03 03:09:14 -05:00
Andrey 940b04ab24 Let's always have TS structure so that unit tests can check values in outputChannels, kind of making outputChannels a god dump for state but whatever since Live View is coming 2021-12-07 20:18:47 -05:00
rusefillc 6ff42cc031 automation around outputs section #197 2021-11-26 20:46:42 -05:00
Scott Smith 823d9a07e0
Programmatically replace ENGINE() and CONFIG() with engine-> etc (#3565)
git grep -l -w ENGINE | xargs sed -i -r "s/ENGINE\(([]a-zA-Z_0-9.[]+)\)/engine->\1/g"

git grep -l -w CONFIG | xargs sed -i -r "s/([^a-zA-Z_])CONFIG\(([]a-zA-Z_0-9.[]+)\)/\1engineConfiguration->\2/g"
2021-11-17 03:54:21 -05:00
rusefillc 22c872d8d8 Epic: Remove FSIO #2928 2021-11-14 10:57:19 -05:00
rusefillc eb1af46655 Epic: Remove FSIO #2928 2021-11-14 08:37:50 -05:00
Andrey df98eb69d4 Bench Test IAC Valve fails #3534 2021-11-11 20:28:01 -05:00
rusefillc 1f98e53972 Idle valve outputs not available in TS #3523 2021-11-10 21:07:38 -05:00
Andrey c57f9c325f https://rusefi.com/forum/viewtopic.php?f=19&t=2177 2021-10-28 13:49:44 -04:00
rusefillc b4884498cb OBD error renames 2021-10-03 01:30:42 -04:00
rusefillc 490d8c1f8e "Burn without flash" button #3127 2021-08-10 07:30:12 -04:00
rusefillc afcef0410d "Burn without flash" button #3127 2021-08-10 07:11:41 -04:00
Matthew Kennedy b52d50bbf2
Use pch in lots of files (#3066)
* most engine.h

* most engine_configuration

* more

* more

* more

* more

* more

* moooooore

* ok I'm done for now

* oops
2021-07-26 01:05:17 -04:00
Matthew Kennedy 6f80bc72ae
fan indicators + test buttons (#3002)
* sd bits

* rusefi.input

* second fan bit

* fans
2021-07-20 23:26:06 -04:00
Andrey 44d7c3605c Button to apply nDBANK #2996
docs
2021-07-20 14:23:57 -04:00
Andrey c93e7e7d3a Button to apply nDBANK #2996 2021-07-20 13:20:34 -04:00
Matthew Kennedy 2ce7777865
don't require EXTERN_ENGINE in every file (#2969)
* move enginePins

* no more extern engine

* uses

* more

* extern config too

* put this where it belongs

* include correct header

* merge
2021-07-16 18:13:33 -04:00
Andrey e1c41ff798 FATAL on NB2 tune jim stim input signal #2965 2021-07-14 16:03:00 -04:00
Matthew Kennedy e3ed413e06
send voltage and heater enable to WBO controller (#2956)
* add info send function

* fatal if CAN not configured correctly

* build

* s

* 20hz

* update wideband firmware

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-07-13 07:32:41 -04:00
Matthew Kennedy 9377a01aec
store cylinder count as plain number (#2915)
* update test framework

* eh

* hey look it's fewer warnings

* unwind

* fix

* config

* configs

* logic

* even java had some

* no need to be a typedef

* paste in actual cylinder count
2021-07-07 08:31:05 -04:00
Andrey a6dae486e0 fan2 bench 2021-06-23 17:16:11 -04:00
Matthew Kennedy c26987b96b
Destroy all shared logger (#2574)
* most of shared logger

* a few more

* one more

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-21 14:28:48 -04:00
Matthew Kennedy ad71016862
rip the bandaid: find-replace most of scheduleMsg (#2572)
* biiiig find replace

* more trivial find replace

* pwm

* almost all of them

* few more

* gpio

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-21 12:53:13 -04:00
Matthew Kennedy 5145ee4b62
logging cleanup 2: sensors, pid, etb, etc (#2567)
* ts logger

* sensors

* wideband too

* missed one

* init

* motors, pid, etc

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-18 20:02:32 -04:00
Andrey G 70e0723626
use cylinders_count_t in loops through cylinders (#2563)
to supress signed vs usigned warnings
2021-04-18 08:58:56 -04:00
Matthew Kennedy 831d272be3
Add set wideband index buttons (#2455)
* update wideband firmware

* implement index set

* bench test, error on failure

* guard wideband
2021-03-14 17:20:50 -04:00
Matthew Kennedy b087f328f7
default config, UI tweaks (#2444)
* s

* fix this while we're at it

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-03-12 00:16:24 -05:00
rusefillc 0c293384dd my bad 2021-03-11 22:42:59 -05:00
rusefillc f070382d6c "onTime above limit %dus", TOO_FAR_INTO_FUTURE_US 2021-03-11 14:05:15 -05:00
Matthew Kennedy e0763c6994
stop trigger emulator PWM when disabled (#2443)
* simplify trig emulator

* spelling is hard

* fix various builds

* spelling again

* add command/button for external stimulation

* enable hw stim for HW-in-loop test

* s

* I does spelling good

* clear flag when disabled

* generate enough for console build

* don't disable that

* this test needs external stimulation enabled

* import

* ui improvements

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-03-11 08:38:52 -05:00
Matthew Kennedy 208088847b
accurate bench test (#2441)
* accurate bench test

* allow shorter pulses
2021-03-10 17:30:13 -05:00
Matthew Kennedy 40c4238f13
enable CAN on H7 (#2393)
* enable

* guard correctly

* h7 bit timing

* allow longer frames

* allow data smaller than maximum

* mcu temperature

* typo

* tx message

* testing

* check for CAN or FDCAN

* don't need that any more

* h7 bitrate config

* undo testing

* h7-ify msg tx

* comment

* break out SID/EID macros

* guard differently

* update ChibiOS

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-03-09 18:54:01 -05:00
Matthew Kennedy 435f8f7e2b
h7 flash, guard against no CAN (#2317)
* h7 flash

* guard some other stuff

* I guess it just builds now?

* maybe ci too
2021-02-08 16:24:38 -05:00
Andrey 74d4001bdb poke 2021-02-08 10:49:15 -05:00
rusefillc 4416d1c7dc cmd_test_main_relay 2021-01-10 23:46:50 -05:00
rusefillc 494b6caf3b cmd_test_main_relay 2021-01-10 20:30:08 -05:00
Matthew Kennedy 5f1a13aed4
Fix fan bench (#2198)
* fix fan, complain if missing bench mode

* more complaining about unexpected codes

* unused
2021-01-07 08:23:31 -05:00
rusefillc eec8a723ee TS bench test trans solenoid buttons #2191
more fix
2021-01-06 14:16:45 -05:00
rusefillc a4e9319027 TS bench test trans solenoid buttons #2191
more fix
2021-01-06 14:04:37 -05:00
rusefillc 7393f13b8a TS bench test trans solenoid buttons #2191
fix?
2021-01-06 13:55:57 -05:00
David Holdeman 7117c6f5aa
TS bench test trans solenoid buttons (#2191)
* maybe

* semicolon stupid

* whoops

* whoops 2
2021-01-05 22:30:38 -05:00
David Holdeman a43bf01ecd
Solenoid test in console (#2178)
* give it a try

* create component

* add command maybe

* try

* try

* add pic

* try TCU_SOLENOID_COUNT

* try

* use injection and ignition count fields
2021-01-02 17:18:44 -05:00
Matthew Kennedy d62618c5f8
prototype wideband firmware update (#2074)
* add submodule for firmware

* ts

* add updater

* add bench_test

* don't collide idx

* feature flag

* send acks

* fix timeout logic

* ui

* do it on the bench thread

* guard

* guard

* only do twice

* guard

* bump version

* update

* file name

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-16 08:28:53 -05:00
rusefillc bca35aa2f9 avoid float -> int64 conversion #1977
cherry picking...
2020-11-24 14:11:41 -05:00
rusefi 4bd14ed974 better hpfpValve bench settings 2020-11-22 12:43:28 -05:00
rusefi 1df2dc121d GDI Epic #1448 2020-11-22 00:47:43 -05:00
rusefi f6bff90f86 GDI Epic #1448 2020-11-22 00:40:21 -05:00
rusefi 79188c954a GDI Epic #1448 2020-11-22 00:13:55 -05:00
rusefi daf1ec83a7 GDI Epic #1448 2020-11-22 00:09:36 -05:00
Matthew Kennedy f9357d209a
fatal error + inhibit read on TS preset (#1922)
* fatal error + inhibit read on preset

* inhibit more stuff when flag is set

* don't need that message

* extract function, improve msg

* changelog entry
2020-11-03 19:03:46 -05:00
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
Matthew Kennedy d2d0ffa1ee
remove tach output pin (#1779)
* remove from cfg

* cfg

* rip out impl

* efi gpio
2020-09-09 16:52:23 -04:00
rusefi 4d3ba4850c Bench-testing for ALL assigned output pins #1758 2020-09-08 17:41:32 -04:00
rusefi 67f305f48a microRusEFI used as Body Control Module BCM BCU 2020-09-07 17:59:59 -04:00
rusefi a1625bd2e2 microRusEFI used as Body Control Module BCM BCU 2020-09-07 17:38:51 -04:00
rusefi c8c90ed16b microRusEFI used as Body Control Module BCM BCU 2020-09-07 17:12:00 -04:00
rusefi d9100b3cce Merge remote-tracking branch 'origin/Hellen_fork_point' into master
# Conflicts:
#	firmware/controllers/algo/engine.cpp
2020-09-07 15:15:34 -04:00
rusefi ba31cef223 Bench-testing for ALL assigned output pins #1758 2020-09-06 00:27:02 -04:00
Matthew Kennedy 12bc5eb28b
Auto cal dual etb (#1725)
* implement

* add bench mode

* add ts cal mode

* TS impl

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-08-23 23:41:35 -04:00
rusefi 785b8b97db reducing code duplication 2020-08-19 21:05:08 -04:00
Matthew Kennedy 1840afdd4a
Fuel ts reorder (#1699)
* reorder

* redo injector stuff

* reorder & deadtime limits

* make 2d table bounds reasonable

* more

* only allow bench if not running

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-08-18 13:51:20 -04:00
rusefi 4280e3327f Stack usage is still all over the place #1662 2020-08-02 10:52:52 -04:00
Matthew Kennedy 5114c4089b Merge remote-tracking branch 'upstream/master' into geez 2020-07-26 15:40:31 -07:00
Matthew Kennedy 370dc06285 I can't type 2020-07-26 15:39:26 -07:00
rusefi 21dcf19db5 maybe now? 2020-07-26 18:34:47 -04:00
rusefi e1d7abbafa fixing build 2020-07-26 18:24:02 -04:00
rusefi b04646f599 he says he wants a dot 2020-07-26 18:17:06 -04:00
Matthew Kennedy ffa14cd800 clear cal mode upon leaving ETB autocal 2020-07-26 15:10:15 -07:00
Matthew Kennedy 20a95bdcf1
ETB auto-PID: auto set values in TS (#1400)
* switch to thread

* actually use default frequency define

* crank ADC too

* make space in RAM

* remove TS field

* this should work for test

* auto cal

* wire up bench testing

* auto gains too

* s

* fix

* rearrange a bit

* inject

* remove unused bit

* mock repair

* move

* add maintainconstantvalue

* add disable button

* cleaning

* move state inside

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-05-06 08:39:02 -04:00
rusefi d371af5b89 CJ125 PI commands 2020-05-01 20:22:49 -04:00
rusefi 669322311f cj125 progress 2020-05-01 19:42:09 -04:00
Matthew Kennedy ba6ec4ac51
TPS Auto Calibration with ETB (#1382)
* switch to thread

* actually use default frequency define

* crank ADC too

* make space in RAM

* remove TS field

* this should work for test

* auto cal

* wire up bench testing

* s

* fix

* rearrange a bit

* inject

* remove unused bit

* mock repair

* guard for ECUs without ETB
2020-04-28 19:31:41 -04:00
Matthew Kennedy 1bad5f3047
don't store self stim in config (#1356)
* kill

* add bench test

* fix
2020-04-23 22:38:14 -04:00
Matthew Kennedy 1e79bc84ea
add button (#1303) 2020-04-15 18:22:30 -04:00