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
Matthew Kennedy
f128b33694
General purpose PWM: implementation & tests ( #1366 )
...
* config
* significant digits
* renumber enum, no need for a "none"
* ui
* impl base
* error handle MAP
* init & update
* don't need arg
* don't lie about sensor
* fix test build
* test stub
* initialize
* null check
* fix clamping
* test output
* types & enums
* don't need param
* test getOutput
* fix
* output pin instead of brain pin
* default config
2020-04-26 14:06:28 -04:00
Matthew Kennedy
a8db44d48a
Remove scheduler debug pins ( #1359 )
...
* trigger gen refactoring
* missed one
* remove microsecond timer debug pins
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-04-24 23:13:05 -04:00
Matthew Kennedy
f704bf22cb
use the linker! ( #1363 )
2020-04-24 21:21:04 -04:00
rusEfi
4854d123bb
PWM name into warning message
2020-04-19 21:48:14 -04:00
Matthew Kennedy
3407a4b216
doesn't need to be virtual ( #1315 )
2020-04-18 07:56:54 -04:00
Matthew Kennedy
ff867b9301
fix warnings ( #1282 )
...
* warnings
* don't need to template those
2020-04-12 09:39:14 -04:00
Matthew Kennedy
001ef27eb8
support ETB disable pin ( #1273 )
...
* config & hand gen
* board configs
* add dc motor support
* initialization
* also set duty to zero
* use disable in etb
* fix proteus default
* add TS fields
* I guess we needed 8 bytes
* :D
* comment
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-04-10 17:27:13 -04:00
rusefi
4056cf1022
extracting method
2020-04-08 22:36:18 -04:00
rusefi
d3745c0f9e
smart gpio clean-up
2020-04-06 14:13:29 -04:00
Matthew Kennedy
c33079eb46
cleanup ( #1259 )
2020-04-04 15:59:13 -04:00
rusefi
65e362740b
start/stop progress
2020-03-31 01:06:19 -04:00
Matthew Kennedy
d541e04a7d
Friendlier pin names ( #1233 )
...
* enable TS error readout
* friendlier text for common errors
* improve comment
* friendlier ADC errors
* ign/inj names
* more pin names
2020-03-29 19:07:07 -04:00
Matthew Kennedy
53679fab54
Finally rename injector_central to bench_test ( #1229 )
...
* bench test rename
* rename consumers
* good lord what are all of these externs doing
* fix tests
2020-03-26 08:03:55 -04:00
Matthew Kennedy
2349d74f0b
Default to applyPinState ( #1219 )
...
* make applyPinState default
* consumers
* format
2020-03-25 18:14:09 -04:00
rusefi
36ec8e565f
start/stop progress
2020-03-25 01:41:15 -04:00
rusefi
ee7c0895bf
start/stop progress
2020-03-25 01:28:37 -04:00
rusefi
1012df4511
progress towards start/stop
2020-03-18 16:32:03 -04:00
rusefi
482967b8db
progress towards start/stop
2020-03-18 15:56:17 -04:00
rusefi
f93ac0751d
better invalid configuration handling
2020-03-05 21:16:45 -05:00
Matthew Kennedy
986b80671b
warnings ( #1169 )
2020-03-03 08:37:02 -05:00
rusefi
6888b09c53
Three wire idle air valve #1122
...
ugly but should work to begin with
2020-02-04 01:22:04 -05:00
960
4b4e683957
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
rusefi
7c714e5727
opening the door to boost controller!
2020-01-31 14:29:52 -05:00
rusefi
0c3f73c2b4
code style
2020-01-21 01:47:58 -05:00
rusefi
83b1ca00a4
code style
2020-01-21 01:40:11 -05:00
Matthew Kennedy
09dc2f2390
don't use us for pwm calculation ( #1106 )
2020-01-19 07:02:49 -05:00
rusefi
7da4196f9c
NT not US not MS
...
thank you Matt
2020-01-19 03:49:35 -05:00
rusefi
85a0490796
one step back
2020-01-19 02:58:54 -05:00
rusefi
2ae53d1681
better constraint validation
2020-01-19 00:28:58 -05:00
rusefi
bb217b01dd
happy new year unification
2020-01-13 21:57:43 -05:00
rusefi
03a48455ed
fear he who sees dead code: 'overlappingScheduleOffTime' was never assigned so the whole logic around it is dead
2020-01-10 23:39:30 -05:00
rusefi
b7807cba39
docs
2020-01-10 23:24:17 -05:00
rusefi
645f51a038
better method names
2020-01-10 23:17:58 -05:00
Matthew Kennedy
a6a1335adb
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
rusefi
b83a5310be
happy new year
2020-01-08 00:02:40 -05:00
Matthew Kennedy
95a7a9a8e1
Strongly typed action constructor ( #1087 )
...
* strong typing
* maybe we needed that one
2020-01-07 18:10:31 -05:00
Matthew Kennedy
5c85d53e16
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