Commit Graph

1160 Commits

Author SHA1 Message Date
Matthew Kennedy ff31301284 trailing coils (#2937)
* gpio wiring

* plumbing
2021-07-09 15:51:30 -04:00
rusefillc 1cfdf68ecf fix vvt indication #2926
TS project part of the change
2021-07-08 09:37:56 -04:00
Andrey 09fee427c4 fix vvt indication #2926
only field rename
2021-07-08 09:25:31 -04:00
Matthew Kennedy 717d4dd7ac Unified cyl count macro (#2914)
* update test framework

* eh

* hey look it's fewer warnings

* unwind

* fix

* config

* configs

* logic

* even java had some

* console needs help
2021-07-06 20:14:08 -04:00
Andrey G fdfec5ea3c Fix swap macro (#2904)
* convert swap macroses to inline functions

* clean-up workarounds
2021-07-04 18:03:17 -04:00
Andrey 9ad5ec8044 refactoring: getShaftSynchronized 2021-07-03 10:37:03 -04:00
Andrey 9339f0169d Nissan progress 2021-07-02 20:12:31 -04:00
Andrey e1c6e19577 less broken code? 2021-07-02 19:28:09 -04:00
Matthew Kennedy fe6f123be5 Move AC logic out of FSIO (#2872)
* new impl

* remove fsio

* inject "is ac active" to fan

* include the correct code

* include

* test

* more AC features

* AC switch vs. actual AC indicators

* include

* duh
2021-06-27 18:51:34 -04:00
Matthew Kennedy b0ef8313cd warnings (#2862)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-06-25 20:58:38 -04:00
Andrey G 5c552e196a TS communication minor fixes (#2847)
* console: noone use this

* console: do not stop blinking if TS command executes too long

Set and clear flag from the same place

Co-authored-by: rusefillc <48498823+rusefillc@users.noreply.github.com>
2021-06-23 04:36:55 -04:00
Andrey 270905fa8b removing dead code 2021-06-23 04:26:32 -04:00
Andrey 25168809f3 performance optimization by dron0gus 2021-06-21 09:27:09 -04:00
Andrey d7789bc2a0 those and many other offsets are no longer correct 2021-06-21 02:11:36 -04:00
Matthew Kennedy c77686ce3b gauges for raw TPS (#2831)
* ecu part

* gauges

* debug info for ford throttle

* sensible order
2021-06-18 16:27:44 -04:00
Andrey ba8ad555c2 reverting TCU cherry pick 2021-06-12 13:52:18 -04:00
Andrey aa9f609df5 random trick 2021-06-12 13:48:37 -04:00
rusefillc 9caa794e6c TCU cherry 2021-06-11 23:48:57 -04:00
rusefillc 68d2fdb6ce https://rusefi.com/forum/viewtopic.php?f=16&t=2027 2021-05-27 05:50:59 -04:00
Matthew Kennedy 4b0d75ff92 make the simulator usable (#2717)
* these start themselves now

* dead

* configure ports

* start serial

* dead

* minimal pins

* simulator logging works

* why not enable lua

* speeeeeed

* start lua

* spammy print
2021-05-17 12:44:02 +03:00
Andrey G 6d849d05c7 Hw layer rearrangement (#2703)
* max31855: move to sensors

* uart GPS driver: move to sensors and rename

* i2c_bb: move to drivers

* LCD HD44780: move to drivers

* ping?
2021-05-16 06:01:00 -04:00
Matthew Kennedy ad505bfb1b idle indicators (#2692)
* add coasting bit

* remove useless bit
2021-05-13 17:35:00 -04:00
Matthew Kennedy 047f62b2b9 remove deprecated getEngineLoadT (#2676)
* remove

* few more
2021-05-10 08:30:41 -04:00
Matthew Kennedy 76f2f063d2 Maf in sensor model (#2672)
* init

* consumers

* hasMafSensor

* consumers

* remove

* remove

* s

* guard

* tiny bit of ram

* ram
2021-05-09 20:59:06 -04:00
Andrey G dd46591ad5 hip9011 (#2658)
* hip9011: isolate debug stuff

* hip9011: renames

* hip9011: start sensing knockDetectionWindowStart degres from fire

* engine: more realistic values for knock window

* hip9011: remove magic CS toggling

* hip9011: EFI_HIP_9011_DEBUG should depend on EFI_HIP_9011
2021-05-08 18:43:55 -04:00
Matthew Kennedy d7f9d42e07 Hook up multi bank fuel trim (#2532)
* multi bank trim

* cleaning

* output channels

* output channels
2021-05-08 17:41:50 -04:00
rusefillc 4b9dd02056 check MCU flash size at runtime fix #2648 2021-05-07 17:05:47 -04:00
Andrey G f2a194e035 Kill warnings (#2623)
* dead code

* rtc_helper: clean-up warnings

* kill unused
2021-05-04 18:55:27 -04:00
Andrey G 2176d1656b ADC: internalIndex should be used as getAvgAdcValue argument (#2618)
* ADC: internalIndex should be used as getAvgAdcValue argument

-plus output messages re-formated

* ADC: logger -> efiPrintf
2021-05-03 16:44:19 -04:00
rusefillc 87e0b28cc4 https://rusefi.com/forum/viewtopic.php?f=16&t=1996 2021-04-25 09:18:35 -04:00
rusefi 7300bbe750 improving QC process 2021-04-23 00:45:36 -04:00
rusefi 6c75a3d7b4 improving QC process 2021-04-22 22:04:39 -04:00
rusefi be0f2210c5 improving QC process 2021-04-22 21:23:20 -04:00
Matthew Kennedy 737ee444b8 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 8cfb63455d Logging remove 3 (#2568)
* ts logger

* sensors

* wideband too

* missed one

* init

* motors, pid, etc

* vvt

* more

* idle

* missed one

* dynoview

* launch

* can

* console IO

* s

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-20 14:09:41 -04:00
Matthew Kennedy 967383dd8e remove simple cases of LoggingWithStorage (#2569)
* remove simple cases

* more simple

* serial

* s

* more

* try memory

* easy

* mmc acc

* that's how much memory

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-19 08:11:59 -04:00
Matthew Kennedy 177f3afd05 ts logger (#2566)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-18 19:13:48 -04:00
Matthew Kennedy 1c4c7fe62c remove duplicate SD log fields (#2556)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-15 01:07:59 -04:00
Matthew Kennedy 774f4416a7 constexpr-ify log field list (#2548)
* constexprify

* reclaim ram

* more constexpr

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-13 20:16:18 -04:00
Matthew Kennedy d7e95cd31f improve sensor chart flush behavior (#2545)
* disable sensor chart

* type signature, guards

* we can't log the message as that confuses the parser

* dead

* this syntax was technically illegal

* more

* turn it back on

* remove config

* api

* implement

* ui

* java ui
2021-04-12 14:05:52 -04:00
Matthew Kennedy 96e655ff4e sd buffer (#2540) 2021-04-11 10:15:54 -04:00
Matthew Kennedy b20ead8d18 More binary log fields (#2518)
* gauge names

* binary log

* it only takes scaled channel
2021-04-03 20:28:55 -04:00
Andrey G 112b4d1182 Hip9011 (#2512)
* hip9011: coexistance with other spi devices

* hip9011: rework so SPI transfer is invoked from thread

also use polling spi exchange to avoid cache problems

* hip9011: move calculations from ADC callback to thread

* hip9011: big cleanup

* hip9011: simplify spi communication

* No need to set knockBandCustom if it is not custom

HIP9011 calculates knockBand from cylinderBore same way

* hip9011: make unit test happy

* hip9011: fix unit test

* hip9011: remove duplicated initialization, reorder

* hip9011: just renames and data type adjustments

* hip9011: rename BAND() to HIP9011_BAND()

* hip9011: move some code from lookup.cpp to logic.cpp

* hip9011: move initEngineNoiseTable to engine_configuration.cpp

* hip9011: move lookup tables to hip9011_logic.c

* hip9011: remove empty files

* hip9011: additional checks
2021-03-30 10:56:25 -04:00
Matthew Kennedy 72dac58f9b fix multi-serial-port insanity (#2476)
* carve out UART specific

* implement channel

* config cleanup

* use new config

* bootloader

* dead code

* s

* h7 inherits f7

* oops

* ok now it's right

* tests

* cleanup

* call setup

* put that in its own file

* cleanup

* format

* guard

* not needed

* improve guarding

* portable

* allow override of uart mode

* fixes for bootloader

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-03-28 09:06:36 -04:00
Matthew Kennedy ce142907a0 replace print/printMsg with scheduleMsg (#2497)
* start cleaning

* disabled feature means don't print that it's disabled

* cli

* usages

* printMsg -> scheduleMsg

* this is alllll dead now

* no crlf please

* all hope is lost if you manage to hit this line

* tests

* tests

* ok we did actually need that part

* sim

* d

* kinetis

* it did ifdef, not if

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-03-26 17:23:26 -04:00
Matthew Kennedy 368415972e read configuration from flash exactly once (#2481)
* early hw init

* s

* read configuration exactly once

* cleanup

* housekeeping

* test friendly

* ugh bad merge

* that is a noop

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-03-25 18:16:26 -04:00
Matthew Kennedy 4e1d30f86d plumbing for multiple vvt (#2488)
* plumb multiple vvt

* fix test

* s

* fix barra while we're at it

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-03-25 07:39:23 -04:00
Matthew Kennedy 7cdad67f3f USB uses its own channel, add implementations for serial channels (#2472)
* USB uses its own channel

* revise channels

* put serial ports in their own file

* h7 uart incompatible for now

* guard for sim
2021-03-19 17:05:04 -04:00
Matthew Kennedy 2bf833a1ee Usable fuel consumption data/gauges (#2474)
* fuel consumption

* gauge names

* consumers

* obd

* binary logging

* doesn't need explicit constructor

* getters

* it works

* correct for injections per cycle

* datalog

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-03-19 17:04:42 -04:00
Matthew Kennedy 5e6746c3aa Implement nonlinear fuel level sender (#2473)
* table function

* config fields

* sensor type

* switch consumers

* init the sensor

* ui

* 1mv resolution

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-03-19 08:39:08 -04:00
Matthew Kennedy cb33bb77ae Dedicated code path for USB console/TS (#2465)
* new apis

* dedicated USB path

* move decl

* init

* don't init usb twice

* guard

* check that we're initialized before using TS

* comment

* guard

* guard USB

* brain doesn't go good

* make tests happy

* dead define

* cypress

* ifdef != if

* s

* include priority

* don't start a thread we know we don't need

* bad-ish merge

* const

* why did this code exist...?

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-03-18 14:07:22 -04:00
Matthew Kennedy 925a6ca086 harden against various no-boot scenarios (#2468)
* zero length trigger

* validate config

* validate cylinder count

* wrong type on cylinder count

* invalid comment

* invalid SPI
2021-03-17 09:24:13 -04:00
Matthew Kennedy 34b678728a extract CAN TS channel (#2469)
* extract CAN channel

* this is gross
2021-03-17 08:39:13 -04:00
Matthew Kennedy a26002bc02 type signature, guards 2021-03-15 17:11:11 -04:00
rusefillc 212b9d6684 fix error/warning buffer overflow #2456 2021-03-14 09:52:27 -04:00
Matthew Kennedy 962e0b32e7 fix error/warning buffer overflow (#2456)
* fix error printing overflow

* make the worst offender shorter

* error as warning

* these don't need that flag set
2021-03-14 09:31:11 -04:00
Matthew Kennedy 943e6078c8 logging cleanup before refactor (#2438)
* minor cleanup

* more cleaning

* signature

* spelling

* doy
2021-03-09 08:43:29 -05:00
Matthew Kennedy d7536bf059 finish off vbatt -> sensor model (#2433)
* more vbatt

* s

* goodbye voltage

* makefile

* apparently that part was in use

* include

* mocking
2021-03-07 20:18:32 -05:00
Matthew Kennedy f8747a35bf set all thread priorities in the same place (#2412)
* unify thread priority

* header

* mmc
2021-02-28 07:30:45 -05:00
Matthew Kennedy 726be2232e yet more TS sanity (#2382)
* ts cleanup part 1

* move more stuff in to the class

* extract base class

* switch to TsChannelBase where we can

* dfu

* more to TsChannelBase

* bad merge

* another bad merge

* bootloader

* bluetooth

* format

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-02-20 02:11:39 -05:00
Matthew Kennedy 12a31e5132 start making tunerstudio more sane: part 2 (#2381)
* ts cleanup part 1

* move more stuff in to the class

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-02-19 20:48:21 -05:00
Matthew Kennedy 10efd25764 dead code (#2379)
* dead code

* do nothing

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-02-19 07:58:52 -05:00
Matthew Kennedy 43f39fa616 start making tunerstudio more sane: part 1 (#2378)
* ts cleanup part 1

* unused unused

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-02-19 07:40:59 -05:00
rusefi 483bee389b https://github.com/andreika-git/hellen-one/issues/3 2021-02-17 10:18:46 -05:00
rusefi 06dc9a9210 happy new year 2021-02-16 21:44:55 -05:00
Matthew Kennedy c75af2ac75 properly put buffers in no-cache regions (#2357)
* configure for no cache

* this doesn't need a setting

* now we don't need invalidate

* reorder and comment

* mmc

* sw knock
2021-02-15 17:39:11 -05:00
Matthew Kennedy a576c2e109 USB mass storage tweaking (#2352)
* disable TS in case of USB MSD

* housekeeping while we're here

* enable on MRE

* changelog
2021-02-14 15:03:07 -05:00
Matthew Kennedy 71d68b51f4 cleanup too while we're at it (#2336) 2021-02-12 20:27:43 -05:00
rusefi 1012b61e02 M62T vanos support #2243 2021-02-08 20:38:38 -05:00
Matthew Kennedy 983d75444e baro in sensor model (#2306)
* baro in sensor model

* missed

* typo

* init baro

* needs an include there
2021-02-07 17:54:41 -06:00
Andrey G 04c7ad67aa Some fixes prior to board pull request (#2291)
* ChibiOS: add support for STM32F765

This chip is used on Subaru EG33 p'n'p RusEFI board from Dron_Gus

* drivers: gpio: mc33810: commulative update

- use BIT macro
- fix wake-up method
- fix order of arguments in _add function

* port: stm32f4/7: detectCanDevice check for enabled interfaces only

* ADC: fix internal array size

internalAdcIndexByHardwareIndex should be EFI_ADC_LAST_CHANNEL size
couse adc_channel_e is used as index

* status LEDs: support status LEDs that driven by low level
2021-02-06 12:22:57 -05:00
Matthew Kennedy cd03443dea Limp handles inj/ign disable (#2245)
* status loop just asks limp mgr

* put logic in limp manager

* don't need that function any more

* bye

* TIL these bits already exist in the configuration
2021-01-27 21:28:53 -05:00
rusefillc de5a98880a limp mode too good for bench testing #2244 2021-01-27 00:02:37 -05:00
Andrey G 27905c6817 Chibi os 20 (#2212)
* Update ChibiOS

* Fix Makefiles includes paths

* halconf.h: remove flash hack

* mcuconf: fix EXTI ptiorityes

* Digital Input: ICU: use designated initializers, initialize 'arr'

* ChibiOS: lis302dl fix

* ADC: update to new API

* UARTConfig: timeout_cb field, formating

* ChibiOS: remove _exit, _kill, _getpid

* Fix lis302dl

* Bump config versions

* chconfig_common: cosmetic changes

* stm32f4ems: commulative config update

* Update Simulator

* ALLCSRC already contain all needed ChibiOS files.

Same for ALLINC and ALLCPPSRC

* ChibiOS fix for Simulator

* ChibiOS: port lock/unlock hook and MMC over SPI timeout

* STM32F7: update configs

* STM32F7: update linker file

* Cypress: port ADC lld to ChibiOS-20

* Cypress: port SPI lld to ChibiOS-20

* Cypress: port CAN lld to ChibiOS-20

* Cypress: fix include path for rules.ld

* Cypress: update chconf.h and halconf.h for ChibiOS-20

* Kinetis: update ADC lld to ChibiOS-20

* Kinetis: update SPI lld to ChibiOS-20

* Kinetis: update UART lld driver for ChibiOS-20

* Kinetis: update chconf.h and halconf.h for ChibiOS-20

* Kinetis: fix include path for rules.ld

* Nucleo F746: update ld script

* Nucleo F746: fix compile

* Bootloader: fix compilation with ChibiOS-20, cleanup

* Bootloader: add way to pass crosscompiler using CROSS_COMPILE

* Debug build arguments

* Simulator: fix windows compilation

Exclude syscalls_cpp.cpp from compilation
2021-01-19 15:20:35 -05:00
rusefillc e722f52d39 journey of self discovery 2021-01-14 23:34:10 -05:00
Matthew Kennedy 5bfee13c21 fix instant rpm (#2180)
* consumers

* impl

* instant rpm in idle timing
2021-01-14 20:45:55 -05:00
Andrey G 052e2e558b Supress annoing unused warnings (#2216) 2021-01-11 08:49:20 -05:00
rusefillc 6fef10bd6d Revert "Revert "rpm rate of change (#2159)""
This reverts commit d3c49578
2021-01-09 20:06:19 -05:00
rusefillc d3c49578b7 Revert "rpm rate of change (#2159)"
This reverts commit eecb7ce9

#2207 yes, this makes no sense but just to confirm
2021-01-09 19:45:07 -05:00
rusefillc 5b7a59928a cherry pick from https://github.com/dron0gus/rusefi/tree/ChibiOS-20 2021-01-09 18:55:58 -05:00
Andrey G b61ae75fe2 gpio helper (#2195)
* gpios: isBrainPinValid helper

* LCD HD44780: do not touch pins if DM_NONE or invalid gpio

* Fix isEnabled checks for GPS and Joystick

* LCD HD44780: writePad use this method wider
2021-01-08 20:01:26 -05:00
Andrey G 71fe582ce5 Adc isAdcChannelValid helper (#2188)
* Guard define argument

* ADC: isAdcChannelValid

Check for both <= EFI_ADC_NONE and >= EFI_ADC_LAST_CHANNEL
Also check for value out of enum range (corrupted settings)

* Fix unit tests
2021-01-05 16:02:20 -05:00
Matthew Kennedy eba6ae2e8f Flex fuel stubs (#2187)
* config & ui

* stub sensor

* stub init

* output channel, gauge, SD log

* linky linky

* fix

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-01-05 07:57:26 -05:00
Matthew Kennedy eecb7ce97f rpm rate of change (#2159)
* compute rpm rate of change

* fix units on gauge

* oops

* correct order

* scaling and limits

* correct for engine cycle length

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-01-03 09:55:44 -05:00
Matthew Kennedy add0dcd390 switch more map to read from sensor model (#2162)
* hook up map

* check for init

* switch some consumers

* that's the rest of them

* test

* tests

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-01-02 19:13:10 -05:00
Matthew Kennedy 83266c904b Put map in the sensor model (#2161)
* hook up map

* check for init

* switch some consumers

* don't do limp for now

* oops

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-30 08:43:49 -05:00
Matthew Kennedy 8492f99b91 show when idle is closed loop (#2160)
* show when idle is closed loop

* semicolon

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-30 08:42:40 -05:00
Matthew Kennedy 59d725a113 fix (#2094) 2020-12-18 01:30:51 -05:00
shadowm60 5bd1da17c1 Logic analyzer ts report (#2080)
* Logic analyzer

progress of integration with debug channels

* Update logic_analyzer.cpp

fixed duty report in %

* Update logic_analyzer.cpp

* Update logic_analyzer.cpp

fix for setting one channel to unused, and use the same pin for another channel. this way we clear out hw pointer and we do not have the risk of reporting wrong values.
2020-12-15 14:52:48 -05:00
Matthew Kennedy e0c7d550f4 sd log afr 2 (#2052) 2020-12-10 14:05:52 -05:00
Matthew Kennedy ba1ba1452d second lambda (x-series CAN only, for now) (#2048)
* add sensor

* second sensor

* switch sensor name

* gobblin up your memory

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-09 20:26:23 -05:00
Matthew Kennedy cf91351c4a config for second lambda (#2047)
* config

* size

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-09 14:30:51 -05:00
Matthew Kennedy e38a160644 start peeling out ts commands (#2045)
* start peeling out commands

* guard

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-09 02:23:02 -05:00
rusefi df4f738401 Merge remote-tracking branch 'origin/master' into master
# Conflicts:
#	firmware/controllers/engine_cycle/high_pressure_fuel_pump.cpp
2020-12-08 21:37:45 -05:00
rusefillc 3f17d84b44 fix warnings found by clang #2014 2020-12-08 13:59:40 -05:00
Matthew Kennedy 2e1dad3650 start making TS protocol testable (#2043)
* start pulling out a class

* pull function out of loop

* there we go

* ok there we go for real

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-08 03:05:43 -05:00
rusefi 412e2b1d40 Revert "Revert "Split ETB in to interface + implementation headers (#2040)""
This reverts commit dae0b606
2020-12-07 01:27:27 -05:00
rusefi dae0b606cb Revert "Split ETB in to interface + implementation headers (#2040)"
This reverts commit 53cbeedb
2020-12-07 01:11:19 -05:00
Matthew Kennedy 53cbeedb99 Split ETB in to interface + implementation headers (#2040)
* split etb interface

* mocks

* fix master while we're at it

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-07 00:29:09 -05:00
Andrey G 4980fc49d9 Fixes after clenup (#2019)
* We still need consoleEventListener for boards with EFI_CONSOLE_SERIAL_DEVICE

* MC33810: add MC_ prefix for command defines

As CMD_PWM define is now used by console command
2020-12-05 11:54:09 -05:00
Matthew Kennedy 9d2471e9ff add indicator for tps2 fail (#2016)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-05 00:01:24 -05:00
rusefillc a1fe39b89d unit tests in clang #2012 2020-12-04 23:59:21 -05:00
rusefi b2493e3181 Merge remote-tracking branch 'origin/master' into master 2020-12-04 21:52:22 -05:00
shadowm60 45205e7da7 Dyno view proposal (#1999)
* DynoView creation

module implementation and unit_tests

* update acc algo

we only calcualte new acceleration value if speed has changed, not on every callback.

* added acceleration ts_channel

* fixed broken unit tests

* fixed accel sign

* review updates

* Update test_dynoview.cpp

fix unit_tests

* Update engine_controller.cpp

Fix .ram4 unused size

* Update test_dynoview.cpp
2020-12-04 20:28:48 -05:00
rusefillc b03779e0ac time to bump TS_OUTPUT_SIZE! 2020-12-02 14:10:02 -05:00
shadowm60 1725efc7e3 introduce vehicle acceleration in TS (#1997)
* introduce vehicle acceleration in TS

* Update rusefi.input

added gauge as well
2020-12-02 11:12:19 -05:00
rusefillc ea1c4f9e25 engine sniffer - pins are not displayed #1995 2020-12-01 22:58:27 -05:00
rusefi 6bf93b653f Merge remote-tracking branch 'origin/master' into master 2020-11-29 12:51:04 -05:00
rusefi a853d99d1a start/stop debug process 2020-11-25 16:44:08 -05:00
Matthew Kennedy ebb8ede1da squash warnings (#1984)
* warnings

* unused

* a few more

* too much

* uint16_t-ify
2020-11-23 09:43:16 -05:00
rusefi a54f3e5289 GDI Epic #1448 2020-11-23 01:10:12 -05:00
Matthew Kennedy 2792828dce Remove lockAnyContext, replace with CriticalSectionLocker (#1938)
* switch to CriticalSectionLocker

* that's just about all

* clean up last usage

* include hpp for sim

* need the cpp wrappers in the makefile too

* include dir

* include
2020-11-19 06:56:02 -05:00
rusefillc 28e65e8fea occasional tunerstudio CRC errors #1943
third time a charm?
2020-11-17 23:47:35 -05:00
rusefillc 9fb7540ece sporadic crc error #1943
un-removing, one step forward
2020-11-17 15:24:00 -05:00
rusefi 70a94ee1f7 occasional tunerstudio CRC errors #1943
second step back
2020-11-15 22:41:04 -05:00
rusefillc c3b680b408 occasional tunerstudio CRC errors #1943
one step back
2020-11-15 21:41:38 -05:00
Matthew Kennedy 80edfe64ce Fix crc again, for real this time (#1948)
* re enable

* changelog

* fix

* fix test

* put some tests back
2020-11-15 16:59:02 -05:00
rusefillc 1eb0f8808f occasional tunerstudio CRC errors #1943
unit test progress
2020-11-15 12:36:07 -05:00
rusefillc 05e7792ad4 occasional tunerstudio CRC errors #1943
now with a bit of a unit test
2020-11-15 12:27:47 -05:00
rusefillc 53bcd448cf occasional tunerstudio CRC errors #1943
getting ready for unit test
2020-11-15 11:55:26 -05:00
rusefillc 952e019b01 occasional tunerstudio CRC errors #1943
getting ready for unit test
2020-11-15 11:53:09 -05:00
rusefillc 0cc30b4239 Re-applying part of "fix CRC errors #1944" 2020-11-15 10:28:23 -05:00
rusefillc 0ec945dc4c fix CRC errors #1944
partial rollback in order to isolate the defect
2020-11-15 10:02:40 -05:00
Matthew Kennedy 3a052682dd fix large response packets (#1947)
* fix console text mode

* oops I should actually write the crc
2020-11-15 07:14:50 -05:00
Matthew Kennedy ebcd4f73af fix CRC errors (#1944)
* fix crc mismatch

* cleanup

* use size_t, add null check

* bounds check for good measure

* rename to scratchBuffer

* comment
2020-11-14 19:21:29 -05:00
Matthew Kennedy 74d2af9c6c Move all DECLARE_ENGINE_PTR etc to one place (#1937)
* restructure

* guard c++

* idle too

* status_loop.h
2020-11-11 19:06:04 -05:00
rusefillc e8446bd73c Output pin init/deinit needs a linked list #1803 2020-11-05 18:47:45 -05:00
Matthew Kennedy 5f11390f58 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
rusefi c464dfdca6 Output pin init/deinit needs a linked list #1803 2020-11-03 00:21:39 -05:00
Matthew Kennedy a29f73f467 log afr in addition to lambda (#1920)
* log afr

* log it

* weird double commas
2020-10-31 17:52:07 -04:00
Matthew Kennedy c0ed7cab62 log target lambda (#1919) 2020-10-30 17:42:00 -04:00
rusefillc 31256f6559 fluid gauges 2020-10-28 00:20:35 -04:00
Matthew Kennedy b8c2041467 Everything in lambda! (#1893)
* lambda

* default configs, fix build

* config, gauge, UI

* more digits

* change menu text

* fix that while I'm here

* doesn't need extra word

* todo note

* tests

* last test

* missed a config

* update java

* store target lambda

* more java

* format

* hopefully enough java for CI to pass
2020-10-26 18:15:17 -04:00
Matthew Kennedy 6abc80e74c convert mass -> duration later in the pipeline (#1906)
* cranking duration to mass

* implement

* units

* patch types

* suppress warning

* fix output channels

* add note about how to set it
2020-10-26 07:23:13 -04:00
shadowm60 8b92537e2a Trigger logger (#1902)
* Update tachometer.cpp

Initial implementation of E30 M3 Tach output solution #907, unit_test plus debugging next

* tacho unit tests

First successfull unit test for tachometer

* RAM adjustment so it would link

* refactoring tacho, broken!

* starting to make some progress...still fails after a few seconds

* Rework with SW PWM

* Update after code review

* unit_test update

* First working unit_test

* Update .gitignore

* Update engine_controller.cpp

* Update engine_controller.cpp

* Update tachometer.h

* Update test_tacho.cpp

* Switched UART DMA on

* Revert "Switched UART DMA on"

This reverts commit 4a23974c431e0e7fd760595d2161e74e6854897e.

* tooth logger update

Updated the way we send the buffer to TS
Updated the way we log cam signals
removed TDC, inj and ign direct log... this causes some flicker in TS, this way we log inj and ign comapred to a cranck or camshaft trigger.

* Update tooth_logger.cpp

Fix unit_tests

* Update tooth_logger.h

clean-up

* Update tooth_logger.cpp

remove dead code, actually i forgot to uncomment these lines.
rename isTDC to trigger, since it is trigger (cam) for TS.

Co-authored-by: rusefi <rusefi@users.noreply.github.com>
2020-10-25 22:26:20 -04:00
Matthew Kennedy dbdeca93b0 implement fuel pressure sensors (#1897)
* add

* remove old

* remove more old

* makefile

* fix init

* patch up other stuff

* actually fix it this time

* raw output channels

* gauges, UI

* scaled channel

* fix field ordering
2020-10-23 07:31:47 -04:00
rusefillc fd30576dca GDI Epic #1448 2020-10-22 23:17:29 -04:00
Matthew Kennedy f6f3e514d2 trigger/scheduler perf improvements (#1885)
* avoid 64b on hot path

* no tooth log when fast

* use crit section locker

* final

* only flip pins if not also self stim

* only trace if doing work

* slightly drop lateDelay

* trace if not bailing out
2020-10-16 11:04:27 -04:00
Matthew Kennedy 02c47eeec8 write SD header using new Writer class (#1882)
* write header

* hooray, free memory!

* fix test

* is there really this much free space...?

* no, there is not
2020-10-15 16:00:13 -04:00
Matthew Kennedy 4868068e2f start using BufferedWriter (#1878)
* do the part up to actual usage

* borrow some memory for now
2020-10-14 20:06:05 -04:00
Matthew Kennedy 89ac8508b9 Check for sd buffer overrun (#1867)
* use actual header size

* and the buffer can be a little smaller
2020-10-08 21:02:15 -04:00
rusefillc b1c0b72aa7 SD card logs not valid for REO #1864 2020-10-08 20:17:32 -04:00
rusefillc 08efb1f43d SD card logs not valid for REO #1864 2020-10-08 20:06:07 -04:00
rusefi af19c020c7 SD card logs not valid for REO #1864 2020-10-08 17:58:58 -04:00
rusefi a2f3ee8d06 SD card logs not valid for REO #1864 2020-10-08 17:50:43 -04:00
rusefillc d9102b3c3c 60/2 perf grab #1850 2020-10-04 00:15:40 -04:00
rusefi f8d5463064 making error codes available 2020-10-01 00:03:54 -04:00
Matthew Kennedy 3e64861c14 display base fuel mass in milligrams (#1838)
* switch to mg

* use the correct thing

* gauge scaling

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-09-30 20:19:51 -04:00
Matthew Kennedy 3374db1658 Remove dead & useless config (#1834)
* remove dead config

* remove enum
2020-09-29 06:34:39 -04:00
andreika-git 2d4d34291c Hellen says fix cypress build (#1818)
* fix compilation

* fresh generated files

* more files

Co-authored-by: Andrei <andreikagit@users.noreply.github.com>
2020-09-23 14:06:22 -04:00
Matthew Kennedy d23a48fc53 Dedicated sensors for wastegate + idle position (#1805)
* config

* add sensor

* listen to new adc channels

* fix

* add gauges to TS

* add gauge values

* TS UI
2020-09-18 10:04:07 +03:00
Matthew Kennedy 36234961c1 logging simplification: switch bare functions to member functions: try the second (#1794)
* first pass

* first pass

* const means we don't have to check!

* static

* test fixup

* fix sniffer
2020-09-13 11:49:25 +03:00
rusefi ead14bd1ca Revert "logging simplification: switch bare functions to member functions (#1788)"
This reverts commit 39280fb2
2020-09-12 04:36:24 -04:00
Matthew Kennedy 39280fb2c6 logging simplification: switch bare functions to member functions (#1788)
* first pass

* first pass

* const means we don't have to check!

* static

* test fixup
2020-09-12 03:08:11 +03:00
rusefi 082ab11dfb Hellen says let's fix Prometheus part #3 2020-09-11 08:25:42 -04:00
rusefi c0f5dec636 Hellen says let's fix Prometheus 2020-09-11 07:51:49 -04:00
rusefi ea363c61b9 Hellen says let's fix Prometheus 2020-09-11 07:19:04 -04:00
rusefi 5521249dc9 Hellen says let's fix master 2020-09-11 07:05:32 -04:00
rusefi 63b1a6652b Merge remote-tracking branch 'origin/Hellen_fork_point' into master
# Conflicts:
#	firmware/console/binary/tunerstudio_io.cpp
#	firmware/console/console_io.cpp
2020-09-11 05:54:21 -04:00
rusefi 58be12bf0e Hellen says merge #1772 TS 2020-09-11 05:50:48 -04:00
Matthew Kennedy c2eb7c9f4a remove tach output pin (#1779)
* remove from cfg

* cfg

* rip out impl

* efi gpio
2020-09-09 16:52:23 -04:00
rusefi 0b1b2f991c Hellen says merge #1772 helping merge 2020-09-09 16:25:50 -04:00
rusefi b4a33ef59a Hellen says merge #1772 helping merge 2020-09-09 15:08:01 -04:00
rusefi a3c9871d58 Hellen says merge #1772 helping merge 2020-09-09 14:35:01 -04:00
rusefi d580869a4d Hellen says serial can 2020-09-07 12:19:32 -04:00
rusefi ee2096d5d6 Hellen says serial can 2020-09-07 12:10:39 -04:00
Matthew Kennedy 8adfef930f Selectable VE axis override (#1769)
* add config fields

* config options

* new output channels

* dump out state to ts

* s

* implement override

* enums

* this test is no longer used

* test new behavior

* old

* comments
2020-09-07 10:15:42 -04:00
rusefi 0e3d16b5d5 microRusEFI used as Body Control Module BCM BCU 2020-09-06 23:19:32 -04:00
Matthew Kennedy a3db817f6e Move ve logic (#1762)
* move ve

* fix build

* fix rendering

* duh

* cleaning

* correct scaling

* put some back

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-09-06 19:06:32 -04:00
Matthew Kennedy fc02c2bdf4 fix broken master, inject engine ptr to rpmcalculator (#1759)
* fix

* oops
2020-09-05 18:49:42 -04:00
rusefi c476cd3b95 refactoring 2020-09-03 19:29:15 -04:00
David Holdeman 51258d2cbc [TCU] TS interface and output channels (#1747)
* add tcu ts outputs

* accidental change?

* rearrange
2020-09-02 13:30:54 -04:00
Matthew Kennedy bad69c812e move lambda in to sensor model (#1736)
* lambda sens

* fix init

* fix

* a test for good measure

* he's climbin in your windows, snatchin you ram up

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-09-01 16:22:31 -04:00
Matthew Kennedy 95f858265b detect which cylinder knocked (#1732)
* s

* science

* set pin mode

* turn stuff off so it fits

* filtering maybe

* filtering actually works

* generate filter parameters internally

* shorter window

* guard behind enable flag

* use checked in filter

* add biquad reset

* tracing

* const

* exec order

* do it from a thread

* smaller buffer, comment

* configure with header

* only for proteus

* oops

* unused

* not needed

* guards

* pin config

* don't need that include

* precook filter steady state

* define sample rate

* multi cylinder knock

* TS

* only sense when running
2020-08-31 21:05:33 -04:00
Matthew Kennedy 1b07647e72 Software knock detection (#1730)
* s

* science

* set pin mode

* turn stuff off so it fits

* filtering maybe

* filtering actually works

* generate filter parameters internally

* shorter window

* guard behind enable flag

* use checked in filter

* add biquad reset

* tracing

* const

* exec order

* do it from a thread

* smaller buffer, comment

* configure with header

* only for proteus

* oops

* unused

* not needed

* guards

* pin config

* don't need that include

* precook filter steady state

* define sample rate

* config enable switch
2020-08-28 21:13:50 -04:00
rusefi 8f8d8ed8f9 Revert "reducing confusion?"
This reverts commit f80b27ab

this was NOT reducing the confusion
2020-08-28 21:03:01 -04:00
rusefi f80b27ab12 reducing confusion? 2020-08-28 08:58:51 -04:00
rusefi bdbee0d38b VVT support for VAG trigger #883 2020-08-24 02:01:50 -04:00
Matthew Kennedy f20126ba7a more data (#1727)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-08-24 01:26:33 -04:00
Matthew Kennedy cc25333fae 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
Matthew Kennedy 207aafe262 harmonize blocking factor (#1709)
* harmonize blocking factor

* static assert
2020-08-21 14:12:28 -04:00
Matthew Kennedy c03e0eb302 add (#1711) 2020-08-21 08:53:23 -04:00
Matthew Kennedy d2c93afff8 Ts error codes (#1706)
* correct TS errors

* tidy

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-08-21 08:24:31 -04:00
Matthew Kennedy eb7888fba3 improve (#1702) 2020-08-18 22:37:08 -04:00
Matthew Kennedy 4ac3ded498 consume 2020-08-10 21:41:03 -07:00
rusefi b3f013b483 TS SD integration #1653 2020-08-07 17:24:02 -04:00
rusefi 0ebe7ba059 TS SD integration #1653 2020-08-06 22:05:26 -04:00
rusefi 8f2f8bc132 TS SD integration #1653 2020-08-06 01:15:41 -04:00
rusefi ac7caf3228 TS SD integration #1653 2020-08-05 20:43:16 -04:00
Matthew Kennedy cd547ceb00 no more setFuelMap 2020-08-03 12:14:11 -07:00
rusefi e4a4377780 TS SD integration #1653 2020-08-02 22:31:11 -04:00
rusefi e634564a8a TS SD integration #1653 2020-08-02 21:38:32 -04:00
rusefi c55477bfa6 Stack usage is still all over the place #1662 2020-08-02 11:39:20 -04:00
rusefi 8c471df389 Stack usage is still all over the place #1662 2020-08-02 10:52:52 -04:00
rusefi c9a598af73 Stack usage is still all over the place #1662 2020-08-01 21:31:23 -04:00
rusefillc cd9844132d Merge pull request #1632 from mck1117/remove-plain-maf
goodbye, plain maf
2020-08-01 09:16:38 -04:00
rusefi 015a6bce3f let's enlarge... outputs area 2020-07-31 20:08:26 -04:00
Matthew Kennedy 7009c82993 Merge remote-tracking branch 'upstream/master' into remove-plain-maf 2020-07-31 14:56:29 -07:00
Matthew Kennedy eabdd9f458 cleanup 2020-07-30 21:20:10 -07:00
Matthew Kennedy 61519e24b1 log second tps 2020-07-30 11:31:49 -07:00