rusefillc
0283351d6c
send more of Engine Sniffer data #4560
2022-10-29 21:55:35 -04:00
rusefillc
066ac7e2ea
send more of Engine Sniffer data #4560
2022-10-29 21:27:49 -04:00
Matthew Kennedy
2924d98609
use offsetof instead of generated offset defines ( #4696 )
...
* constify efi_gpio, use size_t
* use offsetof instead of macros
* don't generate offsets in rusefi_generated.h
* comment explaining the madness
* java fixes
* casing
2022-10-23 16:39:18 -04:00
Matthew Kennedy
0838fd5dc4
constify efi_gpio, use size_t ( #4695 )
2022-10-23 08:25:47 -04:00
Matthew Kennedy
b089825a4a
schedule ignition charge by angle instead of tooth ( #4513 )
...
* schedule ignition charge by angle
* same mistake as #4536
* s
* wrap sparkAngle too
* AngleBasedEventNew
* function moved
* implement scheduleOrQueue
* prints
2022-09-25 11:00:55 -04:00
Matthew Kennedy
af7e4f6fe5
two modes trigger scheduler ( #4598 )
...
* two modes trigger scheduler
* asOld
* hpfp
2022-09-20 05:28:23 -04:00
Andrey
b69d613192
moving IO-only away from scheduling logic
2022-09-14 00:52:24 -04:00
Matthew Kennedy
35997c6318
pwm iteration limit to avoid float math accuracy loss ( #4578 )
2022-09-13 21:16:35 -04:00
Andrey G
55c1f53c75
dead code, reduce typedefs ( #4566 )
...
* Do lightweight checks first
* Dead getTimeIgnitionSeconds()
Dead since 81fffe87b7
* Get rid of efitime_t.
Purpose are not clear. Use efitick_t where ticks are used,
use efitimeus_t for uS, use efitimems_t or efitimems64_t for mS.
* Fix unit tests
* Fix misc: stm32f1_test_project
2022-09-11 16:08:11 -04:00
rusefillc
851e8e48d3
refactoring: type safety
2022-09-11 02:57:35 -04:00
rusefillc
6bcd29c727
send more of Engine Sniffer data #4560
...
new API & first usage
2022-09-10 23:42:59 -04:00
Andrey
5962cbd5c2
brutal encapsulation
2022-09-07 20:31:04 -04:00
Andrey
52869d63bb
tear down Engine god object #4511
...
just trying different things
2022-09-07 20:25:49 -04:00
Andrey
ae93591755
brutal encapsulation
2022-09-07 20:20:29 -04:00
Andrey
8c21b4ef41
brutal encapsulation
2022-09-07 19:37:11 -04:00
Andrey
6e8d248408
brutal encapsulation
2022-09-07 19:37:11 -04:00
Andrey
2d9dbbd6b8
extracting prime_injection
2022-09-07 16:25:50 -04:00
Andrey
ab4b451195
os_access.h dead?
2022-09-07 15:56:45 -04:00
rusefillc
a7af8ecec9
Engine Sniffer into TS data logs fix #4535 ( #4537 )
2022-09-05 19:49:27 -04:00
rusefi
eb976de07d
lua outputs bench test
2022-08-24 13:20:14 -04:00
rusefillc
c7c443ea24
https://github.com/rusefi/hellen154hyundai/issues/57
2022-08-09 13:26:11 -04:00
Matthew Kennedy
435fd9538b
Simpler thread controller ( #4327 )
...
* s
* Start -> start
* maybe tests are happy
* s
* s
2022-08-02 01:16:13 +03:00
Matthew Kennedy
2096a22319
report injector, ignition faults ( #4408 )
...
* report injector, ignition faults
* guard
2022-08-01 15:41:47 -04:00
rusefillc
6f767f603a
(insert passive-aggressive smart prefix here) HARDWARE VALIDATION has disappeared fix #4405
2022-07-30 15:03:45 -04:00
rusefillc
94738f4a16
FATAL does not light up red LED on MRE with OpenBLT fix #4404
2022-07-30 14:58:43 -04:00
Matthew Kennedy
b99d90b006
Start -> start ( #4366 )
2022-07-21 15:17:32 -04:00
Matthew Kennedy
e9d092f975
big delete ICU ( #4270 )
...
* big delete
* icu vestiges
* changelog
2022-07-07 15:27:59 -04:00
Matthew Kennedy
769f7ec558
get correct stamp ( #4174 )
2022-05-14 23:01:02 -04:00
rusefillc
500c443a15
Timestamp Error scheduleByTimestampNt too far #3395
...
improving error message
2022-05-14 21:24:19 -04:00
Matthew Kennedy
9b820cf1dc
remove suspicious cast that could maybe cause an overflow ( #4169 )
...
* suspicious cast
* don't print 64b
* explicit type
2022-05-13 06:40:37 +03:00
Matthew Kennedy
e4a0979dc2
Brain pin is enum class ( #4108 )
...
* change most usages to Gpio::
* board configs
* engine configs etc
* isBrainPinValid, smart gpio
* generator
* generator
* generator
* connector yamls
* kinetis enums
* cypress txt
* kinetis config
* frankenso
* config generator
* actually do it for the others
* disable skips for pr ci
* fix tle8888
* misc
* weird cast from int
* needs this operator too
* this can be an unsigned subtract
* happy tests
* s
* kinetis isConfigurationChanged weirdness
* missed J/K
* cypress efifeatures
* build script mistake (!)
* mistake in smart gpio
* debounce
* eg33
* kinetis, so needy
* it's pretty green, we can skip these again
2022-04-28 17:32:39 -04:00
Matthew Kennedy
bc6a87cadc
allow enum_class in rusefi_hw_enums.h ( #4104 )
...
* make things c++ friendly
* install various canaries in coal mines
* using is much clearer than typedef
* fixing builds
* lps25
* trigger includes were a mess
* c -> c++ cleanup
* os util
* why did so many include os_util.h?
* fwd declare
* cypress/kinetis
* s
* eg33 happy
* happy sim
* cypress usb
* pch
* cypress
* doesn't need to include all that
* h7
2022-04-25 20:38:16 -04:00
David Holdeman
7de7ea6ad0
TCU features and fixes ( #4082 )
...
* add tcc pwm freq field
* add pc fields, make trans fields conditional
* make button shift fields conditional, remove duplicates
* add 3-2 solenoid fields
* add PC curves
* try combining tcc curves
* try combining pc curves
* use airmass instead of tps for pc
* reduce airmass axis
* increase axis digits
* duplicate for per shift, change names
* add pc per shift arrays
* try moving tables
* move more tables
* init solenoid pins
* start adding pwm stuff, change some array names
* fix gear issue
* fix multiple shift issue
* fix transmission controllers not working
* fix transmission controllers not working 2
* rearrange and virtual some things
* make getMode const
* fix pwm
2022-04-18 20:09:27 -04:00
David Holdeman
fe39f58022
Some untested TCC control ( #4066 )
...
* rebase
* save changes
* save changes
* fix whitespace
* try enum class
* change field name
* Add TCC pin fields
* add TCC tables
* add a bit of TCC control logic
2022-04-12 19:15:09 -04:00
rusefillc
014b8293a5
User board-specific terms in error messages #3886
...
progress
2022-02-03 12:45:26 -05:00
Andrey
08c1c5d969
Remove legacy check fix #3808
2022-01-18 16:01:27 -05:00
Andrey
7e007cc534
https://rusefi.com/forum/viewtopic.php?p=44100#p44100
2022-01-18 10:24:08 -05:00
rusefillc
64387689ff
On m_event vs lobe vs scheduling #3804
2022-01-18 00:45:24 -05:00
rusefillc
e76aa1cc60
https://github.com/rusefi/alphax-2chan/issues/14
2022-01-16 23:03:14 -05:00
rusefillc
f43ef3a8b6
warning(CUSTOM_ERR_6586, "attempting to change unassigned pin")
2022-01-16 15:53:27 -05:00
rusefillc
7f0357ffcb
mk files refactoring
2022-01-06 20:06:31 -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
4b8c5f1671
harley
2021-11-26 14:41:35 -05:00
rusefillc
c29bb71556
spelling
2021-11-23 07:57:43 -05:00
Scott Smith
ba4a00d3bb
Drop SingleChannelStateSequence in favor of MultiChannelStateSequenceWithData ( #3519 )
...
* Drop SingleChannelStateSequence in favor of MultiChannelStateSequenceWithData
Most all the users were Multi* anyways, so just improve that:
1. Allow up to 8 waveforms to share one byte per timestamp. It could be better but this is simple
and gets most of the benefit.
2. Use a wrapper structure to handle reserving space for the arrays. Makes the interface simpler
and more rigid. Also saves 4 bytes per Multi*. Downside is access is now via -> and *,
not . and (nothing).
Saves 224 bytes of BSS, 1832 bytes of RAM4/CCM, 952 bytes of TEXT, and 103 bytes of RODATA
* Instantiate a base_t to make debugging easier.
Also fixes crash on real firmware by using &m_base instead - LTO optimization issue?
* No magical templated StaticAlloc thingy. Just virtual functions.
2021-11-21 04:56:07 -05:00
rusefillc
e54d3b9e06
On -fpermissive in Windows in unit tests #3581
2021-11-20 00:16:03 -05:00
Scott Smith
5bc1949aef
Basic framework for high pressure fuel pump control ( #3476 )
...
* Basic framework for high pressure fuel pump control
* Many changes
Move calculations to fast callback
Move main object into Engine
Respond to pin changes without requiring a reboot
* Use EngineModule for HpfpController
Schedule pin off after executing pin on so we are sure it ends, even if the motor stops.
Test scheduling.
Less RAM use by only having one event and reordering fields.
* Make scheduling test actually useful - need non-0 activation angle.
Co-authored-by: rusefillc <48498823+rusefillc@users.noreply.github.com>
2021-11-19 23:06:51 -05:00
Scott Smith
18c27a6e9c
Separate out scheduleOrQueue into it's own standalone scheduler. ( #3573 )
...
It's a large enough entity that it shouldn't be buried in ignition logic.
2021-11-18 14:27:21 -05:00
rusefillc
b579b33082
Startup Pin State Error - maybe hardware damage of STM32 pin connected to a 12v-powered TC4427? #3558
2021-11-17 04:45:55 -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
Scott Smith
cc95bd6c8e
Programmatically remove EnginePtr/inject, EXPAND_Engine, and WITH_ENGINE_TEST_HELPER* ( #3560 )
...
* Programmatically remove EnginePtr/inject, EXPAND_Engine, and WITH_ENGINE_TEST_HELPER*
for i in ": public EnginePtr " ", public EnginePtr" "EXPAND_Engine;" "EXPAND_Engine"; do
git grep -l "$i" | xargs sed -i "s/$i//g"
done
git grep -l "inject" | xargs sed -i "/inject[(][)]/d"
for i in WITH_ENGINE_TEST_HELPER_SENS WITH_ENGINE_TEST_HELPER_BOARD_CALLBACK WITH_ENGINE_TEST_HELPER; do
git grep -l "$i" | xargs sed -i "s/$i/EngineTestHelper eth/g"
done
git checkout firmware/controllers/core/engine_ptr.h
git checkout unit_tests/global.h
* Review fixups.
2021-11-16 16:52:11 -05:00
Matthew Kennedy
8cdac4cac0
remove engine pointer passing ( #3556 )
...
* some
* more
* more
* the last?!
2021-11-16 04:15:29 -05:00
Scott Smith
62daac73c7
Use Valgrind to detect unitialized variable references. ( #3555 )
...
* Use Valgrind to detect unitialized variable references.
Fix the edge cases that pop up
* Comment and disable Mac run
2021-11-15 23:42:23 -05:00
Matthew Kennedy
145316c497
less macro, more c++ ( #3549 )
...
* less macro
* s
2021-11-15 12:44:40 +01: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
Scott Smith
d4c4db9a12
Move phaseCount into MultiChannelStateSequence ( #3520 )
...
We can them drop the field from a bunch of callers, simplifying the code.
2021-11-10 19:47:27 -05:00
Scott Smith
dac67235c4
Don't keep a separate MultiChannelStateSequence for the trigger emulator, version 2. ( #3517 )
...
All it wants is to use the main trigger state, so don't bother copying it. Instead, change
PwmConfig to take a const pointer to a Multi.*Sequence, then make all the users adapt. Worse
fallout is that SimplePwm now has its own Multi.*Sequence, but PwmConfig is downgraded to a
pointer, so that's only a net +4 bytes. And we can make the overhead of Multi.*Sequence much lower
using embedded arrays, which only the caller can do since it knows the maximum size... (for another
day...)
Also remove SimplePwm's 2nd copy of SingleChannelStateSequence. It served no purpose.
Saves 1992 bytes of BSS and 24 bytes of RAM4 (latter probably due to SimplePwm change)
2021-11-10 07:01:20 -05:00
rusefillc
1db9a02f1d
Revert "Don't keep a separate MultiChannelStateSequence for the trigger emulator. ( #3513 )"
...
This reverts commit 280dfa94e7
.
2021-11-09 20:42:23 -05:00
Scott Smith
280dfa94e7
Don't keep a separate MultiChannelStateSequence for the trigger emulator. ( #3513 )
...
All it wants is to use the main trigger state, so don't bother copying it. Instead, change
PwmConfig to take a const pointer to a Multi.*Sequence, then make all the users adapt. Worse
fallout is that SimplePwm now has its own Multi.*Sequence, but PwmConfig is downgraded to a
pointer, so that's only a net +4 bytes. And we can make the overhead of Multi.*Sequence much lower
using embedded arrays, which only the caller can do since it knows the maximum size... (for another
day...)
Also remove SimplePwm's 2nd copy of SingleChannelStateSequence. It served no purpose.
Saves 1992 bytes of BSS and 24 bytes of RAM4 (latter probably due to SimplePwm change)
2021-11-09 14:35:07 -05:00
rusefi
22e78a97a5
nicer messages
2021-11-08 20:49:12 -05:00
Matthew Kennedy
0fe2721556
use name of pwm ( #3393 )
2021-10-22 15:23:53 -04:00
Matthew Kennedy
efa08b329d
Fix simulator ( #3360 )
...
* fix simulator
* print out halt reason
* option to close simulator after time
* workflow calls it
* test with the bug still present
* ...and fix the bug
2021-10-17 20:07:25 -04:00
Andreika
bc4a068c9c
[DRAFT] IAC H-Bridge Microstepping ( #3213 )
...
* fix for stepperHbridgeHardware
* new config fields for microstepping
* add stepper dir pin mode to the dialog
* refactor stepper hw dialog & add microstepping panel
* microstepper modes enum
* stepperDcInvertedPins needed by Hellen
* add sleep() for stepper and divisor for pause()
* microstepping impl.
* make unit-tests more happy
* small progress
* fix etb-stepper dlg conflict
Co-authored-by: Andrei <andreikagit@users.noreply.github.com>
2021-10-06 13:57:04 -04:00
Andrey
2a2722c3cc
SPARK_EXTREME_LOGGING
2021-10-01 23:50:32 -04:00
rusefillc
3ff9568521
more details into CUSTOM_OBD_LOW_FREQUENCY message
2021-09-05 14:21:02 -04:00
Matthew Kennedy
da5aaeda2b
detect "not scheduled" faster ( #3200 )
...
* fatal if not found
* handle not-scheduled
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-08-27 11:46:01 +03:00
Matthew Kennedy
0c6297e926
add cancel to scheduler ( #3201 )
...
* fw
* for tests
* simulator
* sim
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-08-27 11:30:06 +03:00
Matthew Kennedy
98a98e920d
init the timer before we try to use it ( #3205 )
...
* init the timer before we try to use it
* format
* guard
2021-08-27 10:59:00 +03:00
Matthew Kennedy
cf5d4cbe1c
add & test remove from linked list ( #3199 )
2021-08-26 23:03:09 +03:00
Matthew Kennedy
25414ebdad
yet more pch ( #3068 )
...
* big pch energy
* put back ramdisk stub
* tests are happy
* h743 nucleo
* kinetis
* I love deleting code!
* make stepper happy
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-08-03 22:05:01 -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
Andrey
2ec8c3090f
trailing spark outputs #2931
2021-07-21 20:51:51 -04:00
Matthew Kennedy
e2a01b4c3e
force init LEDs even with fatal ( #2998 )
2021-07-20 17:09:52 -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
rusefi
7945faa93a
FATAL on NB2 tune jim stim input signal #2965
2021-07-14 17:45:54 -04:00
Andrey
e1c41ff798
FATAL on NB2 tune jim stim input signal #2965
2021-07-14 16:03:00 -04:00
Matthew Kennedy
64177cf899
put names in flash ( #2939 )
...
* put names in flash
* probing freed ram
* this one too
* probing memory
* more like that much
2021-07-09 17:05:16 -04:00
Matthew Kennedy
7a21f7fbc0
inject ( #2938 )
2021-07-09 17:02:25 -04:00
Matthew Kennedy
e00c7d0b98
trailing coils ( #2937 )
...
* gpio wiring
* plumbing
2021-07-09 15:51:30 -04:00
Andrey
02d002f081
random progress
2021-07-09 14:43:58 -04:00
rusefillc
70fd233740
random progress
2021-07-09 14:27:10 -04:00
Andrey
b8857f5ba8
trailing spark outputs #2931
2021-07-09 10:14:00 -04:00
Matthew Kennedy
86683afca2
trailing spark scheduling ( #2932 )
...
* enable bit
* implement trailing sparks
* test trailing spark
* it helps to call the correct function
* add pins
* gobblin ram
2021-07-09 08:37:46 -04:00
Matthew Kennedy
2eb0b2a631
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
Matthew Kennedy
1bca4843fe
test dc_motor.cpp ( #2890 )
...
* use ipwm where possible
* mock ipwm
* initialize
* test
2021-07-01 09:21:18 -04:00
Matthew Kennedy
cd055a687d
dc motor api ( #2869 )
...
* iwpm
* dc motor has configure
* consume
* format
* spelling
2021-06-26 21:42:40 -04:00
rusefillc
6605935015
unit_tests: mapAveragingTriggerCallback causes segmentation fault #2858
2021-06-25 10:21:31 -04:00
Matthew Kennedy
7eb3b9890d
misc threading/safety improvements ( #2854 )
...
* allow termination of thread controller
* no gpio if fatal
* stub for test
2021-06-24 20:18:23 -04:00
Matthew Kennedy
097bf85faf
dual fans ( #2806 )
...
* remove fsio
* hard code impl
* test it
* enable fan with AC
* make commented stuff match
* second fan config
* second fan ui
* defaults
* impl
2021-06-13 08:06:45 -04:00
David Holdeman
6d4060d824
Doxygen titles ( #2728 )
...
* move addRow call
* undo submo bump
* add header titles
2021-05-22 22:10:58 +03:00
Matthew Kennedy
5a5f25244a
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
4f63d2b476
More low-level firmware coverage for the simulator/unit-tests #2656
2021-05-15 05:27:33 -04:00
Matthew Kennedy
8b30776016
remove stateChangeCallback from simplepwm ( #2644 )
...
* remove callback parameter from cj125
* remove from ext
* remove stateChangeCallback
* alt doesn't need that
* demorgan
* remove call
* bad cut/paste
* check the actual pin in the test
2021-05-07 09:38:41 -04:00
Matthew Kennedy
461903f7e4
pack scheduling_s ( #2642 )
...
* pack scheduling_s
* ramz
2021-05-07 08:22:35 -04:00
rusefillc
f7d1f2dfac
code style
2021-05-06 10:43:42 -04:00
rusefillc
02d4cde3c4
https://rusefi.com/forum/viewtopic.php?f=16&t=1996
2021-04-25 09:18:35 -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
rusefillc
41804736e2
engine sniffer into unit tests
2021-04-04 22:41:38 -04:00
Andrey G
89b631a794
Hip9011 and cleanups ( #2477 )
...
* hip9011: move hipCs out of EnginePins to hip9011 driver
* hip9011: cleanup debug output, save few RAM bytes
* Supress few signed vs unsigned warnings
2021-03-20 08:40:36 -04:00
rusefillc
8584256677
trying to fix AuxValves
2021-02-17 08:57:18 -05:00
Andrey G
3166076839
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
rusefillc
4bb9762e2e
extracting runtime state from trigger central
2021-01-31 22:41:17 -05:00
Andrey G
2af32084f4
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
rusefillc
a3173e68d9
typo
2021-01-04 21:20:40 -05:00
rusefillc
bbf161752e
TCU usability #2118
2020-12-22 14:03:54 -05:00
rusefillc
af9bb07eba
dead code
2020-12-22 07:10:09 -05:00
Matthew Kennedy
6168bcea80
Fix gpio reinit race condition ( #2098 )
...
* fix unregister api for gpio
* consumers
* guard with a critical section
* index
* guard less
* unregister under lock
* fix reinit
* dead flag
* fix most tests
* initialize properly
* initialize properly
* assertions in tests
* fix message
* we must lock earlier to be truly safe
* this was using huge memory
* devirtualize
2020-12-18 17:18:12 -05:00
Matthew Kennedy
7277b04039
force a pwm cycle start (skip cycles) if late ( #2097 )
...
* skip cycles if late
* fail at lower count
* start at -1
2020-12-18 08:21:18 -05:00
rusefillc
ca79f99be5
More explicit handling of CPU exhaustion #2093
2020-12-17 22:21:12 -05:00
rusefillc
99392d7951
More explicit handling of CPU exhaustion #2093
2020-12-17 21:15:28 -05:00
rusefillc
ca0f3ba240
HW CI is flaky :( #2063
...
more detailed error messages
2020-12-17 20:22:04 -05:00
rusefi
2f690ca6b2
nicer "pins" names
2020-12-17 17:00:00 -05:00
Matthew Kennedy
a159ecbf0a
reduce GPIO complexity ( #2051 )
2020-12-10 19:18:14 -05:00
Matthew Kennedy
f2426677db
start fuel pump as soon as trigger events happen ( #2038 )
...
* switch pump fsio logic
* value collision
* fuel pump in tests
* mock time since trigger
* test fp
* init pin in test
* fix gpio outputs in tests
* comment
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-10 01:23:24 -05:00
rusefillc
e226024a5c
MRE pin reuse state validation fails #2006
2020-12-03 15:42:48 -05:00
rusefillc
ba33a758e8
avoid float -> int64 conversion #1977
...
both cases have to be relatively small durations of time cherry picking...
2020-12-03 13:30:17 -05:00
Matthew Kennedy
a3a49b02ed
fix gpio the right way ( #1990 )
...
* fix the right way
* use the api
* explain
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-11-27 00:24:41 -05:00
rusefillc
641959b9a3
Starter is engaged on start-up in pull-up configuration #1969
2020-11-26 17:48:09 -05:00
rusefillc
24c9e54cde
Starter is engaged on start-up in pull-up configuration #1969
2020-11-26 16:20:13 -05:00
rusefi
1238758c0f
Starter is engaged on start-up in pull-up configuration #1969
2020-11-26 00:16:59 -05:00
rusefi
63900429a6
Starter is engaged on start-up in pull-up configuration #1969
2020-11-25 23:59:11 -05:00
rusefi
b189d85228
Starter is engaged on start-up in pull-up configuration #1969
2020-11-25 23:38:43 -05:00
rusefillc
3878cbb550
Starter is engaged on start-up in pull-up configuration #1969
...
maintainability
2020-11-19 23:57:06 -05:00
Matthew Kennedy
f3b7a1d9da
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
47fbb92bff
Starter seems to be engaged forever fix #1965
2020-11-18 23:54:30 -05:00
rusefillc
a9e0bffbbd
Starter seems to be engaged forever #1965
2020-11-18 22:47:40 -05:00
rusefillc
53f6f1e661
Starter seems to be engaged forever #1965
2020-11-18 22:42:41 -05:00
Matthew Kennedy
6e4517be8c
adjust microsecond_timer api ( #1952 )
...
* change timer api
* don't need all that
2020-11-16 18:50:13 -05:00
rusefillc
77b70f47f7
GDI Epic #1448
2020-11-09 21:41:13 -05:00
rusefillc
9aff6e3103
Output pin init/deinit needs a linked list #1803
2020-11-09 21:10:48 -05:00
rusefillc
b2ad14fa63
docs
2020-11-09 19:47:10 -05:00
rusefi
73b18b4a01
Output pin init/deinit needs a linked list #1803
2020-11-06 15:45:15 -05:00
rusefillc
cbb00a1a85
Output pin init/deinit needs a linked list #1803
2020-11-05 18:42:45 -05:00
rusefillc
8e8b5256c8
Output pin init/deinit needs a linked list #1803
2020-11-05 17:52:30 -05:00
rusefillc
edb016a76e
Output pin init/deinit needs a linked list #1803
2020-11-05 17:23:09 -05:00
rusefi
a51b68bbed
GDI Epic #1448
2020-11-03 13:19:56 -05:00
rusefillc
a7c97b3508
Output pin init/deinit needs a linked list #1803
2020-11-03 12:28:13 -05:00
rusefillc
256650aa88
Output pin init/deinit needs a linked list #1803
2020-11-03 11:31:40 -05:00
rusefillc
c0ac1649e2
Output pin init/deinit needs a linked list #1803
2020-11-03 11:01:43 -05:00
rusefillc
3d7a6c6729
Output pin init/deinit needs a linked list #1803
2020-11-03 10:51:54 -05:00
rusefi
7de1fc8e2a
Output pin init/deinit needs a linked list #1803
...
trying to make things more consistent & smarter
2020-11-03 00:46:03 -05:00
rusefi
e5ad8eb5c0
Output pin init/deinit needs a linked list #1803
2020-11-03 00:21:39 -05:00
rusefi
2c322006d8
Output pin init/deinit needs a linked list #1803
2020-11-03 00:09:42 -05:00
rusefi
13b4b02873
typo
2020-11-02 23:52:26 -05:00
rusefi
0f5f0a549b
this stuff is just too dead
2020-11-02 23:46:41 -05:00
Matthew Kennedy
7eeb60a8a0
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
605e2590f1
buffered writer - progress on #1463 ( #1875 )
...
* add buffered writer
* rename
2020-10-12 15:10:34 -04:00
Matthew Kennedy
018db0df94
Fix #1873 - compute dynamic PWM iterationLimit ( #1874 )
...
* fix
* remove define
* add an assert
* typo
* don't do a 64bit divide
* oh that's a float
2020-10-11 20:25:38 -04:00
Matthew Kennedy
c885db32f0
use expected for event queue next event ( #1859 )
...
* use expected for event queue next event
* minor cleanup
* tests
2020-10-05 13:53:34 -04:00
Matthew Kennedy
dd6b02d555
we don't need two loops ( #1855 )
2020-10-05 08:57:00 -04:00
Matthew Kennedy
aad5d987a2
pwm perf ( #1858 )
...
* pwm perf
* this trace is now redundant
2020-10-05 08:23:30 -04:00
rusefillc
a9d669ba83
HW CI has failed 11 times since Oct 2 #1849
2020-10-03 20:53:23 -04:00
rusefillc
dd7dd3b8eb
HW CI has failed 11 times since Oct 2 #1849
2020-10-03 20:25:37 -04:00
Matthew Kennedy
c8b4fac456
move scheduling to its own file ( #1842 )
...
* move scheduling to its own file
* header
* protip don't include a cpp file
2020-10-01 17:55:03 -04:00
rusefi
eae7995782
Output pin init/deinit needs a linked list #1803
2020-09-27 07:48:38 -04:00
rusefi
97982cc22f
Output pin init/deinit needs a linked list #1803
2020-09-27 07:26:56 -04:00
rusefi
0b628cea75
Output pin init/deinit needs a linked list #1803
2020-09-27 07:22:09 -04:00
rusefi
1e503c2ada
Output pin init/deinit needs a linked list #1803
...
more fun around pin referencing
2020-09-26 05:04:27 -04:00
rusefi
dfbbdff4b1
Output pin init/deinit needs a linked list #1803
2020-09-18 13:29:17 -04:00
rusefi
35db68a6ae
Output pin init/deinit needs a linked list #1803
2020-09-18 13:01:09 -04:00
rusefi
6c88cbe533
Output pin init/deinit needs a linked list #1803
2020-09-17 19:41:28 -04:00
rusefi
c37e1c8b70
Output pin config #1803
...
alternative to #1800
2020-09-17 19:35:43 -04:00
rusefi
e3056bb397
Engine runs we can disengage the starter #1795
2020-09-14 00:45:15 -04:00
rusefi
8bcc387fa7
Merge remote-tracking branch 'origin/Hellen_fork_point' into master
...
# Conflicts:
# firmware/controllers/core/error_handling.cpp
# firmware/controllers/system/efi_gpio.cpp
2020-09-09 18:23:04 -04:00
rusefi
3af04d7824
Hellen says merge #1772 error pin
2020-09-09 18:18:59 -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
8197209719
https://github.com/rusefi/rusefi/issues/1775
2020-09-08 17:20:14 -04:00
Matthew Kennedy
4527b7694a
expose the problem
2020-07-31 14:41:29 -07:00
Matthew Kennedy
93d631b911
init & override
2020-07-29 02:45:39 -07:00
Matthew Kennedy
cd62774be1
dead
2020-07-29 02:45:30 -07:00
rusefi
f42e08c8e5
bootloader not well? temporary bad workaround #1638
2020-07-25 19:14:09 -04:00
rusefi
a81a5e3c04
bootloader not well? fix #1638
2020-07-25 19:04:15 -04:00
Matthew Kennedy
131f4c4e8f
Merge remote-tracking branch 'upstream/master' into reset-overlap
2020-07-20 18:43:17 -07:00
rusefi
48cc155144
changing crazy in composite logger
2020-07-20 21:20:58 -04:00
Matthew Kennedy
8b0d6a26cf
Merge remote-tracking branch 'upstream/master' into reset-overlap
2020-07-20 13:27:51 -07:00
Matthew Kennedy
9c736a2c3d
test
2020-07-20 03:29:43 -07:00
Matthew Kennedy
428f2fe247
Merge remote-tracking branch 'upstream/master' into reset-overlap
2020-07-19 13:52:45 -07:00
Matthew Kennedy
94635f9f33
encapsulate ( #1617 )
2020-07-19 16:46:28 -04:00
rusefi
222655517b
better unit test logging
2020-07-19 15:25:49 -04:00
rusefi
54c9bf21ca
better unit test logging
2020-07-19 14:58:46 -04:00
Matthew Kennedy
77294ae542
encapsulate overlap logic
2020-07-18 23:03:12 -07:00
Matthew Kennedy
b7336e953e
comments & improve logic
2020-07-16 23:55:41 -07:00
rusefi
fb5756fe3e
nope, unit tests did not just fix themselves
2020-06-17 08:42:37 -04:00
Matthew Kennedy
f6bae09ee7
spinwait for events in the near future ( #1491 )
...
* add spinwait
* simplify and reduce lateDelay
* maybe probably fix tests
* comments
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-06-16 22:13:42 -04:00
rusefi
200575ec87
Trigger decoding issues (60-2) #1488
...
100us is too much, 10us is more reasonable
2020-06-15 00:12:50 -04:00
rusefi
f3344753e8
Trigger decoding issues (60-2) #1488
...
interesting stuff potentially with a not so great setting
2020-06-14 23:41:39 -04:00
rusefi
f9087fdf72
Trigger decoding issues (60-2) #1488
...
very mild refactoring - better names & moving initializers
2020-06-14 23:34:45 -04:00
Matthew Kennedy
b906d12268
Fix gppwm properly ( #1487 )
...
* directly control output in onoff mode
* test fixing
2020-06-11 20:43:26 -04:00
Matthew Kennedy
3a7c6f242b
Hardware pwm ( #1283 )
...
* hard pwm
* fix, comments
* PC6-9 and PD12-15
* PB6-9
* dynamic frequency
* f7 mcuconf
* format
* relocate to common, support variable frequency
* error handling
* oops
* fix test build
* noop kinetis
* better guards
* guard for bl
* guards don't work if they have typos
* more mapping
* oops
* don't use for slow pwm
* enable pwm
* guard properly
* save a little memory
* use less mem
* correct timers
* all your ram are belong to us
* update limit & comment
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-05-28 16:02:41 -04:00
rusefi
a4329169e9
better file name
2020-05-25 13:02:05 -04:00
Matthew Kennedy
445f1c28f4
dead datalog code ( #1439 )
...
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-05-16 00:11:52 -04:00
rusefi
23c6ec59a3
docs
2020-05-15 18:08:11 -04:00
rusefi
047d2e0ce1
refactoring related to RED FATAL/CRITICAL LED is a bit dim when it should be OFF
...
#157
2020-05-11 18:22:51 -04:00
Matthew Kennedy
96a800acb9
fix gppwm on-off mode ( #1406 )
...
* fix
* put it back
* do it with PWM instead
* comments
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-05-09 09:25:45 -04:00
rusefi
4ea0a3de26
nicer error messages
2020-05-09 01:49:17 -04:00
Matthew Kennedy
ebde7a29d5
don't fail on multiple Start calls ( #1396 )
...
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-05-05 15:45:07 -04:00
rusefi
965c06c079
https://github.com/rusefi/rusefi_documentation/issues/37
2020-04-29 18:41:40 -04:00
rusefi
1b84406e77
dead code
2020-04-26 17:40:12 -04:00