Commit Graph

1250 Commits

Author SHA1 Message Date
rusEfi edc7ad69ae TLE8888 watchdog #917
time to start working?!
2020-02-10 18:32:32 -05:00
rusEfi 948cc7743e TLE8888 watchdog #917
maybe better start-up sequence
2020-02-10 17:08:37 -05:00
rusEfi fdb9e97fd3 TLE8888 watchdog #917 2020-02-10 14:37:52 -05:00
rusEfi ce54ae9497 TLE8888 watchdog #917
window watchdog progress
2020-02-10 13:24:09 -05:00
rusefi 223fe8ab70 TLE8888 watchdog #917
first steps
2020-02-10 11:11:00 -05:00
rusefi bc118ecede code style 2020-02-10 09:29:11 -05:00
rusEfi cfd7397e46 FATAL error running MRE blinking test fix #1137 2020-02-09 21:16:31 -05:00
rusEfi 3c874398ff tle8888 start-up clean-up 2020-02-09 20:41:25 -05:00
Matthew Kennedy c9e439e650 we already have a timestamp, don't take another one (#1133) 2020-02-08 17:48:15 -05:00
Matthew Kennedy fa8553b00d Stricter compile options (#1132)
* stricter

* don't warn on that one

* this code was dead
2020-02-08 08:05:40 -03:00
Matthew Kennedy 3a99dcd6dc move flash addr in to mpu_util (#1123)
* move flash addr in to mpu_util

* this _may_ work

* don't use offsetof

* proper header + defines
2020-02-05 08:06:38 +05:30
960 580e725d11 Boost pr (#1114)
* boost control

* cleanup

* Delete rusefi_config.txt

* Add files via upload

* Delete rusefi_config.txt

* Add files via upload

* Update rusefi.input

* Update boost_control.cpp
2020-02-02 03:56:21 -05:00
Matthew Kennedy c51f3ad303 Dont cache dma buffers (#1110)
* add no_cache

* don't disable cache

* conventions

* formatting
2020-01-29 00:32:43 -05:00
rusefi bc3797d9ef code style 2020-01-26 13:58:47 -05:00
rusefi a5f3b3f33e SCB_DisableDCache rollback 2020-01-25 21:30:19 -05:00
rusefi 5ec42fd6bc F7 SPI challenges 2020-01-24 23:52:56 -05:00
rusefi 43eb2ef9d0 refactoring trigger 2020-01-24 13:42:09 -05:00
rusefi 586eb9e6e3 code style: trying to get used to this syntax 2020-01-22 00:45:09 -05:00
Matthew Kennedy f8cd2ad3ce use NT_PER_SECOND instead of convert from microseconds (#1107)
* add NT_PER_SECOND

* missed a few

* inject tooth logger timestamp

* inject
2020-01-19 22:23:41 -05:00
rusefi a1e837d763 NT not US not MS
thank you Matt
2020-01-19 03:49:35 -05:00
rusefi 8165bfc8ed better constraint validation 2020-01-19 00:28:58 -05:00
rusefi 7927f7c035 better variable name & docs 2020-01-19 00:16:19 -05:00
Matthew Kennedy 94e30b0b38 Separate stepper control logic from hardware (#1101)
* divorce stepper from hw

* oops

* ptr not ref

* ptr not ref

* whitespace

* null check
2020-01-15 02:18:15 -05:00
rusefi a222ecdfe1 happy new year unification 2020-01-13 21:57:43 -05:00
dron0gus 406703b1b5 Gpio diagnostic (#1100)
* enums: add brain_pin_diag_e enum for pin diagnostic

* gpio core: add pin diagnostic call

* gpio: mc33810: add diagnostic support

* gpio: mc33972: add diagnostic support

* gpio: tle6240: add diagnostic

* pin_repository: output diagnostic data for gpio chips

* enums: kinetis: add brain_pin_diag_e enum for pin diagnostic
2020-01-12 10:20:10 -05:00
Matthew Kennedy 8200a3da64 AEM X-Series CAN Wideband Support (#1096)
* aem xseries

* parens to avoid operator precedence issues

* put in cfg

* disable that too

* fix sim/unit

* enough generated for ci

* this will guard correctly
2020-01-12 03:44:37 -05:00
Matthew Kennedy 0256b0358e Add timeout + raw value access for sensors (#1098)
* timeout

* inject stamp

* allow getting raw value

* plumb timeout

* fix tests
2020-01-12 03:25:23 -05:00
dron0gus 1b19aa1c57 hw: gpio: use unsigned int as pin number inside gpiochip drives (#1097)
Not brain_pin_e. Drivers like to see pin number within current
chip.
2020-01-11 10:29:41 -05:00
Matthew Kennedy e2841e689d Require tooth reference time for scheduleByAngle (#1091)
* injection

* injectors

* add edge timestamp to ShaftPositionListener

* scheduleByAngle require edgeTimestamp

* schedule with nt not us

* oops, these were missing from this branch
2020-01-09 23:45:13 +03:00
Matthew Kennedy cb1039fe23 Inject timestamps in to hwHandleShaftSignal (#1090)
* injection

* injectors
2020-01-09 21:19:11 +03:00
Matthew Kennedy 4c523b7bba stepper as thread task (#1089) 2020-01-09 09:03:23 +03:00
rusefi 63e3e84e08 happy new year 2020-01-08 00:02:40 -05:00
Matthew Kennedy 3d8c4f4179 Strongly typed action constructor (#1087)
* strong typing

* maybe we needed that one
2020-01-07 18:10:31 -05:00
dron0gus ddc071f611 Gpio fixes (#1086)
* drivers: gpio: add MC33810 driver (skeleton)

* pin_repository: debug: do not show absent chips
2020-01-07 07:55:50 -05:00
dron0gus 489e0df3c9 triggers: fix coexistence of ICU and EXTI trigger drivers (#1085) 2020-01-07 03:42:08 -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
dron0gus d218b4e8e6 Spi fixes (#1083)
* spi: add support for SPI4

* mpu_util: spi: add 8BIT mode definitions for F4, F7 and kineris (?)
2020-01-06 08:44:23 -05:00
dron0gus 0eabad2c6f icu trigger: do not crash on incorrect brainPin (#1082)
* icu trigger: do not crash on incorrect brainPin

* Update trigger_input_icu.cpp
2020-01-03 09:13:55 -05:00
rusefi c0831e22be TL,DR 2019-12-26 23:07:15 -05:00
rusefi afc038f58b MC33816 default firmware 2019-12-26 23:06:31 -05:00
rusefi 464518403e would URLs work? 2019-12-26 22:30:18 -05:00
rusefi 5eae7e50f4 enabling TIM8 ICU 2019-12-25 09:28:51 -05:00
rusefi 4605c64a07 that's not a worth a file 2019-12-24 00:03:53 -05:00
Matthew Kennedy 976ce221fe Split CAN in to separate threads for rx/tx (#1078)
* rewrite can

* default parameters
2019-12-22 12:17:53 -05:00
Matthew Kennedy df57b24e3f Shrink output channels, now with passing CI (#1077)
* reorder fields

* temporary tle8888 fix

* comment, simplify

* hand tweak generated

* oops, those are reciprocal

* fix engineLoadAccelExtra

* aggressive priority order

* fix output size

* comments

* reorder fields, no sizes yet

* should've been signed

* simplify constructor mess, hook up scaling

* notes

* typo

* if -> switch

* rev signature

* correct map offset

* handle unsigned properly

* RPM is unsigned

* vss isn't scaled

* extract magic

* required generated for build

* de-scale rpm

* field type cases
2019-12-22 08:12:45 -05:00
rusefi cf0b13041f random refactoring: hopefully not changing byte size of any variables but clarifying/fixing type between ticks, US and MS 2019-12-21 21:11:09 -05:00
rusefi 9ffda831a7 Revert "DRAFT Shrink output channels, again (#1074)"
This reverts commit ad7a383d
2019-12-21 15:02:49 -05:00
Matthew Kennedy ad7a383d74 DRAFT Shrink output channels, again (#1074)
* reorder fields

* temporary tle8888 fix

* comment, simplify

* hand tweak generated

* oops, those are reciprocal

* fix engineLoadAccelExtra

* aggressive priority order

* fix output size

* comments

* reorder fields, no sizes yet

* should've been signed

* simplify constructor mess, hook up scaling

* notes

* typo

* if -> switch
2019-12-21 08:55:19 -05:00
rusefi 7dc6057ac7 Revert "Shrink output channels, use scaling (#1069)"
This reverts commit 1e0f1a26
2019-12-19 22:35:06 -05:00
Matthew Kennedy 1e0f1a2628 Shrink output channels, use scaling (#1069)
* reorder fields

* temporary tle8888 fix

* comment, simplify

* hand tweak generated

* oops, those are reciprocal

* fix engineLoadAccelExtra

* aggressive priority order
2019-12-19 20:37:42 -05:00
Matthew Kennedy c56bd4cc97 Terrible ADC3 hack for Proteus vbatt support (#1066)
* this is a great idea!

* typo

* simplify

* simplify, cache coherency

* enable adc3 in board file

* copyright

* fix tests, probably
2019-12-17 08:34:56 -05:00
rusefi ae73ee3d65 Merge branch 'master' of https://github.com/rusefi/rusefi 2019-12-14 09:36:46 -05:00
Matthew Kennedy 4866a78e63 Re-shrink stacks (#1060)
* small stacks

* giant servo stack

* reclaim ram
2019-12-14 09:31:13 -05:00
rusefi 8cf255402f codes clean-up 2019-12-14 00:14:36 -05:00
rusefi 44c98029d7 fixing build is my most favourite time! 2019-12-13 18:02:24 -05:00
rusefi f47a1a16d1 getting rid of boardConfiguration / binary compatible change 2019-12-11 17:48:55 -05:00
Matthew Kennedy b25f50c6ee Move slow ADC to thread #630 (#1042)
* adc with thread

* enable

* check result

* stacktual embiggenment

* tracing

* let's be type safe

* improve assert

* format, comment

* remove EFI_INTERNAL_SLOW_ADC_PWM fully
2019-12-11 09:28:11 -05:00
rusefi bcec694eb1 just a trivial massive rename: TriggerState > TriggerWaveform 2019-12-08 01:09:39 -05:00
rusefi 9521a7d6d0 PAL repair 2019-12-05 21:10:29 -05:00
rusefi 0e570b8b83 steps towards fixing PAL inputs 2019-12-05 21:04:24 -05:00
rusefi 6fb7a30ab4 following the pattern 2019-12-04 07:33:56 -05:00
andreika-git ae9c619c50 iacPidMultTbl + EFI_IDLE_PID_CIC + kinetis_hysteresis (#1043)
* rename EFI_IDLE_INCREMENTAL_PID_CIC -> EFI_IDLE_PID_CIC

* Impl. IacPidMultTable

* Kinetis: Trigger Comparator Hysteresis settings (+adaptive mode)
2019-12-04 00:37:32 -05:00
rusefi a09ee15b08 The Big Refactoring of 2019: folder structure #723 2019-12-04 00:22:34 -05:00
rusefi 9907119cd7 docs 2019-12-03 23:55:18 -05:00
rusefi 1287f187c1 lovely write-out-of-bounds in case of invalid configuration bugfix 2019-12-02 20:32:21 -05:00
rusefi d5bfd76922 "sensor chart" for aux fast analog input 2019-12-02 20:31:49 -05:00
rusefi 63d8f050bc auxFastSensor 2019-12-02 17:49:01 -05:00
rusefi 7fb375b15f fixing build 2019-12-02 09:59:53 -05:00
rusefi f9c387b42e cj125 unit test progress! 2019-12-02 01:52:54 -05:00
andreika-git 70fcb50a62 5V-compatible adcVcc + trigger_input_comp + Kinetis COMP driver impr. (#1036)
* adcVcc is not only for 3V STM32

* update ini files

* Kinetis: improve COMP driver

* Improve trigger_input_comp.cpp (hysteresis)
2019-12-01 12:08:55 -05:00
rusefi 2738fefa48 that's how we can move all fields one by one from boardConfiguration to engineConfiguration
my approach is to move fields from the bottom of BC struct
2019-11-30 10:24:37 -05:00
rusefi 349eac34de better state validation, better error codes 2019-11-29 23:41:26 -05:00
rusefi 1e1d2939ed refactoring 2019-11-29 22:09:08 -05:00
rusefi 815589825c extracing constant & more information for HW CI 2019-11-29 21:57:59 -05:00
rusefi f1acede97e steps towards dual ETB 2019-11-28 23:51:47 -05:00
andreika-git 7220735530 Starter relay + Hardcoded 'FSIO' + simulator fix (#1032)
* Starter Relay: gui + built-in FSIO impl.

* Hardcoded 'FSIO' replacement for RAM-limited boards

* fix simulator
2019-11-25 20:08:01 -05:00
andreika-git 984711655e Kinetis: fix ENABLE_PERF_TRACE and trigger_input_comp (#1031)
* Kinetis: fix ENABLE_PERF_TRACE

* Kinetis: fix trigger_input_comp
2019-11-25 00:22:26 -05:00
andreika-git 53eeb79ea9 unregisterOutput() + isPinOrModeChanged() + Stepper::stepPin+enablePin + Kinetis fix (#1029)
* Fix isConfigurationChanged() for EFI_ACTIVE_CONFIGURATION_IN_FLASH

* unregisterOutput() -> unregisterOutputIfPinOrModeChanged()

* clutchUpPinMode for unregisterPin()

* Fix Kinetis: EFI_ACTIVE_CONFIGURATION_IN_FLASH & EFI_MAIN_RELAY_CONTROL

* Stepper: enablePin & stepPin with modes support
2019-11-25 00:02:53 -05:00
rusefi 0a891017ec Sporadic error: FATAL error: handleCycleStart #1030
more details
2019-11-24 21:59:29 -05:00
rusefi 612649e191 Sporadic error: FATAL error: handleCycleStart #1030
more details
2019-11-24 21:45:32 -05:00
rusefi 5292024a81 MapAveragingCallback schedules all cylinders at once #974
saving pennies
2019-11-24 20:48:25 -05:00
rusefi 44c04755d8 not needed since included in common_headers.h 2019-11-23 18:16:41 -05:00
Matthew Kennedy 8fd603dca9 Merge remote-tracking branch 'origin/master' into perf-tracing 2019-11-19 16:28:58 -08:00
rusefi 19bdb9a35f docs & code formatting 2019-11-19 18:17:03 -05:00
rusefi b865698e23 reducing warnings 2019-11-17 08:44:07 -05:00
rusefi 9bc6d71238 Revert "OK trying partial revert now"
This reverts commit 2fe49896
2019-11-13 22:56:43 -05:00
rusefi 30c1cb89aa refactoring: time to unify digital pin API 2019-11-13 22:50:37 -05:00
rusefi f5ba5d81de looks like this part of refactoring is good? 2019-11-12 23:38:02 -05:00
rusefi 225864808b re-applying change 2019-11-12 22:56:56 -05:00
rusefi a23f6bb23e time to panic and revert more 2019-11-12 21:42:44 -05:00
rusefi 2fe4989666 OK trying partial revert now 2019-11-12 21:05:51 -05:00
rusefi 630f706f39 I have no idea what's broken 2019-11-12 20:35:07 -05:00
rusefi 12746ca91d ops that's not what I mean 2019-11-12 19:58:14 -05:00
rusefi 73003f8b64 what's the probability of efi::size breaking build? 2019-11-12 19:40:33 -05:00
rusefi 1ad591742b refactoring: time to unify digital pin API
trying to fix build
2019-11-12 19:04:33 -05:00
rusefi 586c913592 refactoring: time to unify digital pin API 2019-11-12 01:08:45 -05:00
rusefi 59130de601 refactoring: time to unify digital pin API 2019-11-12 01:08:31 -05:00
rusefi 9cb18e89f7 refactoring: time to unify digital pin API 2019-11-12 00:56:51 -05:00
rusefi 4ba7842f52 refactoring: time to unify digital pin API 2019-11-12 00:25:10 -05:00
rusefi 8bbd06d165 refactoring: time to unify digital pin API 2019-11-11 23:32:09 -05:00
rusefi 3ff2b2271a refactoring: time to unify digital pin API 2019-11-11 23:04:27 -05:00
rusefi 80ef79eded this is not great :(
#639
#971
2019-11-11 22:19:35 -05:00
rusefi 52bb665365 fixing unit tests build 2019-11-11 21:45:15 -05:00
rusefi 950d8309b9 different take on #971 2019-11-11 21:26:09 -05:00
rusefi 99c5fcbd90 different take on #971 2019-11-11 21:25:40 -05:00
DonaldBecker f345faa9d7 Compile warning clean-ups.
Removed mistakenly-added README~

(cherry picked from commit 84b30c992ac77a1563f7449e45b9fa353612fba9)
2019-11-11 20:35:20 -05:00
rusefi a1f828162a evil manual cherry 2019-11-11 20:34:09 -05:00
rusefi 7c453fb199 Strange INJ1 signal behavior (when the frequency of scheduler's timer is less than 1MHz) fix #996 2019-11-10 23:54:08 -05:00
rusefi ca0984007d Strange INJ1 signal behavior (when the frequency of scheduler's timer is less than 1MHz) #996
new advanced debugging: hardware pins
2019-11-10 12:39:47 -05:00
rusefi 8898553955 consistency 2019-11-07 15:22:17 -05:00
rusefi 2530f31498 evil manual merge of https://github.com/DonaldBecker/rusefi 2019-11-06 20:01:53 -05:00
rusefi 17a2847424 evil manual merge of https://github.com/DonaldBecker/rusefi 2019-11-06 18:26:50 -05:00
rusefi 7c2f9a7c5d refactoring: removing unused parameter 2019-11-05 22:49:11 -05:00
Matthew Kennedy 19f09bb6f4 move to slow adc (#997) 2019-11-04 17:03:21 -05:00
andreika-git e20bdf4386 TLE6240 outputs fix (#994) 2019-11-01 15:49:55 -04:00
andreika-git 18395f1cb3 Kinetis: smarter SPI_CS control (#993) 2019-11-01 10:50:22 -04: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 db24091933 60/2 VW trigger has running issue on 19/10/19 snapshot fix #986 2019-10-30 20:51:20 -04:00
rusefi 2f38e78218 ADC sample time & rate #976 2019-10-19 08:01:28 -04:00
rusefi 26fc391ffe half-solution would not pass CI, have to merge full solution without real HW test
#975
2019-10-19 07:35:21 -04:00
rusefi 1602bdbebc steps towards #975 2019-10-18 19:45:32 -04:00
rusefi e73dd317b7 steps towards #975 2019-10-18 19:39:06 -04:00
rusefi eff84bcfeb steps towards #975 2019-10-18 18:54:32 -04:00
Matthew Kennedy eb418f764b trace all the things 2019-10-14 23:34:12 -07:00
Matthew Kennedy 97d848bb3e profile all the things 2019-10-13 13:14:08 -07:00
Matthew Kennedy 076b10fcb6 experiment 2019-10-11 17:43:21 -07:00
rusefi abfdfe6896 preparation for #961
more unified access to pre-calculated value
2019-10-10 08:25:58 -04:00
Matthew Kennedy 821ca6156f move tsOutputChannels to header (#970) 2019-10-08 21:02:51 -04:00
Matthew Kennedy 9471a23484 low hanging performance fruit (#969) 2019-10-08 20:44:59 -04:00
rusefi 15ae9b1580 fancy C++ s/NULL/nullptr/ 2019-10-08 01:26:35 -04:00
Matthew Kennedy 325a9e3fd1 Hmm, that didn't quite work right (#955)
* maybe that wasn't a good idea

* we don't need a copy because you can't clear the func after setting it

* no longer a template - move logic to cpp

* fix tests

* rename to avoid object collision
2019-09-25 07:26:56 -04:00
Matthew Kennedy ccb4c51e50 Sensors: composition >> inheritance (#953)
* functional sensors

* format

* tests

* sim makefile

* eol

* format tests
2019-09-24 21:11:41 -04:00
rusefi 97dd2a57d6 HardFault related to auto r = convertFromInputValue(inputValue); #948 2019-09-23 02:02:42 -04:00
rusefi b28710c908 HardFault related to auto r = convertFromInputValue(inputValue); #948
wow, it's a miracle anything ever worked!
2019-09-23 01:55:23 -04:00
rusefi 1ff2a320ab ETB target is using integer values #945
refactoring - ADC mocking is a mess
2019-09-22 16:52:22 -04:00
rusefi e1b537935d ETB target is using integer values #945
refactoring - ADC mocking is a mess
2019-09-22 16:41:10 -04:00
rusefi c6bca8e77a ETB target is using integer values #945
refactoring - ADC mocking is a mess
2019-09-22 10:02:07 -04:00
rusefi 658dac889c ETB target is using integer values #945
refactoring - ADC mocking is a mess
2019-09-22 09:56:06 -04:00
rusEfi 4c39a207a9 s/NULL/nullptr/ 2019-09-22 08:22:35 -04:00
rusEfi 0fd1f27e1b ETB target is using integer values #945
first we will write a unit test
2019-09-22 00:36:13 -04:00
rusefi ee074b9fe7 fixing build 2019-09-21 15:33:13 -04:00
Matthew Kennedy dfcc9dba04 add sensor framework, tests (#929)
* add framework, tests

* move oil pressure to new way

* add init logic

* brackets on the same line

* spaces -> tabs

* spaces -> tabs for tests

* bracket on same line

* hook up sensor mocking

* add nan check

* fix nan check

* I wrote an essay

* casing

* only init if we have a sensor to init

* style, actually call init

* format

* fix casing

* typo

* implement linear sensor

* wire up producer

* smarter limiting

* setup comments

* add reporting

* doxyfile

* oops

* add adc subscription

* clarity

* fix logic

* multiply voltage

* test styling

* test guards

* remove dependencies

* linear sensor test

* remove unused

* fix merge

* format, implicit convert op

* explicit

* format tests

* fix merge
2019-09-21 14:33:38 -04:00
rusefi 8e71ca1dc9 SD card: trying to automatically unmount and trying to re-mount 2019-09-21 12:41:17 -04:00
rusefi de03d283bd refactoring - better method name 2019-09-21 11:34:28 -04:00
rusefi 44818e5863 refactoring 2019-09-21 11:20:04 -04:00
rusefi 50850ca0c9 fixing bug from yesterday 2019-09-21 11:09:03 -04:00
rusefi 1789b8f2bf maybe logging performance improvement maybe not 2019-09-21 01:55:27 -04:00
rusefi 1ce255639e spelling 2019-09-21 01:49:46 -04:00
rusefi aa8d0eb640 configurable SD card logging speed 2019-09-20 20:18:22 -04:00
rusefi 0c9a8b58ca unit tests progress 2019-09-19 22:10:39 -04:00