Commit Graph

691 Commits

Author SHA1 Message Date
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
rusefi 0075f9492c ETB documentation improvement? 2019-12-30 10:25:52 -05:00
rusefi fde9a449cf 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
Matthew Kennedy db3ae5b03f DRAFT simplify dequeue logic (#1050)
* simplify dequeue logic

* unnecessary

* format

* doc
2019-12-14 18:00:39 -05:00
rusefi 9403b2a8fc fixing build is my most favourite time! 2019-12-13 18:02:24 -05:00
rusefi 236d952335 progress towards ETB controller mocking 2019-12-13 13:52:34 -05:00
rusefi af4f20551b getting rid of boardConfiguration / binary compatible change 2019-12-11 17:48:55 -05:00
rusefi 5055797f6b The Big Refactoring of 2019: folder structure #723 2019-12-04 01:15:52 -05:00
rusefi 813b6aa6ce The Big Refactoring of 2019: folder structure #723 2019-12-04 01:11:10 -05:00
rusefi f6a50b7375 The Big Refactoring of 2019: folder structure #723 2019-12-04 00:35:05 -05:00
andreika-git 1808642af1 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 9a0b66791b 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
Matthew Kennedy bb22296f61 DC motor improvements (#1025)
* extract interface, comments, conform names

* fwd declare
2019-11-22 16:30:44 -05:00
Matthew Kennedy 93d24dfc0b Merge remote-tracking branch 'origin/master' into perf-tracing 2019-11-19 16:28:58 -08:00
rusefi 7dfdfc6378 docs & code formatting 2019-11-19 18:17:03 -05:00
Matthew Kennedy 8969efaffe fix (#1005) 2019-11-13 08:42:16 -05:00
rusefi 4b1c1e72ab time to panic and revert more 2019-11-12 21:42:44 -05:00
rusefi 0af0190468 what's the probability of efi::size breaking build? 2019-11-12 19:40:33 -05:00
Matthew Kennedy 0570ef4c42 Fix (#1004)
* Revert "fixing build"

This reverts commit 22da8a7dfe.

* undo overzealous ifdef cplusplus
2019-11-12 01:13:13 -05:00
rusefi 22da8a7dfe fixing build 2019-11-12 00:50:30 -05:00
Matthew Kennedy 9ce18d11fe use static asserts (#1003) 2019-11-12 00:39:38 -05:00
rusefi 79e049a5f8 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 0e01355c15 steps towards #975 2019-10-18 18:54:32 -04:00
Matthew Kennedy f52bdecb80 profile all the things 2019-10-13 13:14:08 -07:00
Matthew Kennedy 763b17fb50 experiment 2019-10-11 17:43:21 -07:00
rusefi f588224559 NB2 miata on Frankenso with ETB 2019-09-21 01:21:53 -04:00
rusefi c59d8164c6 unit tests progress 2019-09-19 21:41:52 -04:00
rusEfi 67c25a6f12 A/C relay cleanup 2019-09-15 11:32:38 -04:00
rusefi 86e421e0ee fatalErrorPin setting is not used #926
reducing configuration fragility
2019-09-09 21:44:48 -04:00
rusefi 0b8ebdbf96 A/C NA6 compressor progress 2019-09-08 16:45:02 -04:00
rusEfi c29f038b83 bugfix: pin names were not shown in engine sniffer 2019-08-18 15:27:10 -04:00
rusEfi 7a7dbb8c30 refactoring: engine sniffer magic constants 2019-08-18 15:04:02 -04:00
rusEfi 1a1fe77ff8 MRE ETB 2019-08-15 01:59:15 -04:00
rusefi 56236754c3 random typo 2019-08-10 14:40:51 -04:00
rusefi 84c6232b25 docs 2019-07-13 10:16:47 -04:00
rusefi 4ef2a72930 refactoring: wider usage of new periodic task 2019-07-09 16:08:49 -04:00
rusefi 2f68badc47
Periodic timer controller (#875)
* More than one aux pid #866

* More than one aux pid #866

* More than one aux pid #866

* More than one aux pid #866

* More than one aux pid #866
2019-07-09 08:33:40 -04:00
rusefi 34acd20833 More than one aux pid #866
renaming this class since we will probably have two different implementations for two different cases
2019-07-08 03:35:41 -04:00
rusefi 05fac9e869 Refactoring: OS access should be explicit #867 2019-07-05 19:00:44 -04:00
Matthew Kennedy e81beaf81b fix (#865) 2019-07-03 03:18:04 -04:00
rusefi 04c7cdebb6 input has sizes hard-coded #836 2019-06-10 15:11:53 -04:00
Matthew Kennedy 95003e9a7b const, explicit, and override (#831)
* const, explicit, and override

* more const

* more const

* missed a spot
2019-06-08 09:51:36 -04:00
andreika-git 970f67862c STM32-specific GPIO refactor (stm32_pins.cpp) (#817)
* stm32_pins.cpp

* PIN_USED & other
2019-06-02 16:48:38 -04:00
rusefi 1c36b89141 nicer pin names for messages while same short names for engine sniffer 2019-05-15 04:26:41 -04:00
Matthew Kennedy 5a15b449c0 rename enum (#791) 2019-05-05 00:53:24 -04:00
Matthew Kennedy 6810aa3268 fix etb (#789) 2019-05-05 00:42:50 -04:00
dron0gus 76cc822b1e Smart gpios (#752)
* efi_gpio: update cached pin value for ext gpios to

* tle6240: update and fix

* gpiochips_init should be called after all gpio chips are added

or we can lost calls to _init of chips

* smart_gpio.c: fix for tle6240 and mc33972

now config structs are not const. waste of ram...
2019-04-14 01:32:46 +02:00
rusefi fb0bbc075c steps towards smarter gpio 2019-04-13 12:02:34 -04:00
rusefi 16cf6388b6 ETB using tle7209 fix #746 2019-04-13 01:03:12 -04:00
rusefi 541c445a2d defined(__DOXYGEN__) ? #748 2019-04-12 22:07:03 -04:00
dron0gus 2768583ec1 gpiochips integration: remove incorrect code (rebase issue) (#742) 2019-04-10 16:25:50 +02:00
dron0gus 1b39480e64 Gpiochips integration (#740)
* gpio-chips core function renames

* efi_gpio, pin_repository: add support for external gpios

* gpio-chips update

* gpio-chips: add api to name each pin of gpiochip

* tle6240: provide individual names for each pin
2019-04-10 14:43:54 +02:00
rusefi 5316d7ad6a The Big Refactoring of 2019: folder structure #723 2019-04-09 23:01:45 -04:00
rusefi f6d2f47bd1 fixing continues integraion? 2019-04-09 21:36:53 -04:00
dron0gus c6a1d0cbe0 gpios rework (#739)
* Some more include fixes for linux

* Pass cross-compile path through CROSS_COMPILE

* Lower-upper case conversion fixes for linux

* Rename unmarkPin to brain_pin_markUnused

This is part of external gpiochip integration

* Add gpio_pin prefix to markUsed and markUnused

To distinguish from similar functions using brain_pin

* pin_repository: add helpers

this is part of gpio chips integration

* efi_gpio: simplify getHwPin using brain_pin_is_onchip
2019-04-10 01:31:10 +02:00
rusefi e0c9493dd9 The Big Refactoring of 2019: folder structure #723 2019-04-05 01:41:24 -04:00
rusefi 334af50f3f we need TLE8888 driver #714 2019-04-04 19:56:03 -04:00
rusefi be9651cb95 The Big Refactoring of 2019: folder structure #723 2019-03-31 17:44:34 -04:00
andreika-git b80806182f More portability & small fixes (#719)
* Use hw_stm32.mk

* Fix bootloader

* Use more common hw_ports.mk filename instead of hw_stm32.mk

* More CPU compatibility for Makefile

* TS_UART_MODE & rename TS_SERIAL_UART_DEVICE->TS_SERIAL_DEVICE

* Move lockAnyContext()/unlockAnyContext() to rfiutil.c

* USE_FATFS

* EFI_LCD

* Less compilation errors

* STATUS_LOGGING_BUFFER_SIZE & SETTINGS_LOGGING_BUFFER_SIZE

* EFI_ALTERNATOR_CONTROL, EFI_SERVO, EFI_DISABLE_CONSOLE_ACTIONS

* #ifndef PWM_PHASE_MAX_COUNT & more flexible GPIO inside portname()

* merge

* EFI_ALTERNATOR_CONTROL, EFI_ELECTRONIC_THROTTLE_BODY
2019-03-29 15:29:01 +01:00
rusefi bd2b992918 unifying_file_naming 2019-03-29 09:11:13 -04:00
rusefi 07c964af78 better Electronic Throttle body control #493 2019-03-10 12:58:27 -04:00
rusefi 60a5b2c5ea better Electronic Throttle body control #493
two ETBs
2019-03-10 12:02:25 -04:00
rusEfi 9a11d26cc3 better Electronic Throttle body control #493 2019-03-09 23:31:47 -05:00
dron0gus c9edbf4225 Cleanup fixes (#700)
* Kill some more warnings

* pin_repository: add markUnused, allow use from plain C

* ehiGpio.cpp: add forgotten GPIOG port
2019-03-08 07:01:15 -05:00
rusEfi e9a88c18f6 ETB progress 2019-03-03 15:27:49 -05:00
rusEfi e452b6802b ETB 2019-03-01 23:09:33 -05:00
rusEfi 830e733053 fix #698 2019-02-27 17:12:52 -05:00
rusefi 46bdbf82d1 refactoring: reducing code duplication 2019-02-23 12:33:49 -05:00
rusefi 9547c44ff1
688 brainpins (#694)
* GPIOF, GPIOG and GPIOH ports are not available #688
2019-02-22 22:10:41 -05:00
rusefi de0fb8aa92 wider usage of PeriodicController 2019-02-10 23:54:41 -05:00
rusefi 9325cd6d23 better (?) variable names 2019-02-10 22:47:49 -05:00
rusefi de6d9d6f8d ETB PeriodicController refactoring 2019-02-10 19:52:06 -05:00
rusefi dc0ae33a54 ETB progress 2019-02-10 19:13:04 -05:00
rusefi 4187f4b081 Refactor Trigger System #635 2019-02-03 01:27:47 -05:00
rusefi 935a9fa706 Refactor Trigger System #635 2019-02-03 01:19:16 -05:00
rusefi af7f6454bc Refactor Trigger System #635 2019-02-03 01:14:19 -05:00
rusefi f7c8fafdd7 Refactor Trigger System #635 2019-02-03 01:11:50 -05:00
rusefi d247c13283 Refactor Trigger System #635 2019-02-03 01:04:24 -05:00
rusefi 2b852ea48e CJ125 unit-tests coverage #617 2019-02-01 23:48:11 -05:00
rusefi 5ced490687 CJ125 heater zero PWM improvement 2019-02-01 22:37:21 -05:00
rusefi a1e4880bb9 CJ125 heater zero PWM improvement 2019-02-01 22:27:17 -05:00
rusefi 56f0260414 CJ125 heater zero PWM improvement 2019-02-01 22:20:15 -05:00
rusefi de2eb04519 #657 2019-01-28 02:59:14 -05:00
Matthew Kennedy fbc15b4bd2 const (#675) 2019-01-16 08:24:37 -05:00
rusefi 6bb8da7b39 Question: something strange trigger errors #662 2019-01-11 09:24:24 -05:00
rusefi cbd2d69731 The Big Refactoring of 2019: DECLARE_ENGINE_PARAMETER_SUFFIX consistency and simplification #657 2019-01-09 22:57:33 -05:00
rusefi def54ae1ea The Big Refactoring of 2019: scheduler should not be global #655 2019-01-09 10:17:35 -05:00
rusefi 8b74ccf8bd The Big Refactoring of 2019: scheduler should not be global #655 2019-01-09 09:39:02 -05:00
rusefi 9ddea58e47 fixing build 2019-01-09 09:38:23 -05:00
rusefi 68d172a8f1 The Big Refactoring of 2019: scheduler should not be global #655 2019-01-09 09:37:16 -05:00
rusefi 970d120a41 The Big Refactoring of 2019: scheduler should not be global #655 2019-01-09 08:50:51 -05:00
rusefi 5ffcc396eb The Big Refactoring of 2019: scheduler should not be global #655 2019-01-09 07:57:43 -05:00
rusefi dbac37c59d The Big Refactoring of 2019: scheduler should not be global #655 2019-01-09 01:07:50 -05:00
rusefi 2f01f8759c The Big Refactoring of 2019: scheduler should not be global #655 2019-01-09 00:53:54 -05:00
rusefi ba1e1f3275 #655 clean-up 2019-01-09 00:25:45 -05:00
Matthew Kennedy b037a6e0ca Implement common for controllers (#645)
* controller

* remove stopping thread

* move microsecond timer watchdog

* docs

* typo snuck in

* go back to the old way
2019-01-06 21:15:49 -05:00
Fabien Poussin 72fe39ff32 Workarounds for GCC 8 (#637) 2018-12-27 09:40:40 -05:00
rusefi a4efd47ba1 #635 better names 2018-12-25 10:13:00 -05:00
rusefi 881fad4e59 #635 refactoring: better name 2018-12-25 08:27:52 -05:00
rusefi 9fc0825d4c docs 2018-12-24 19:36:03 -05:00
Matthew Kennedy 5d6d36732a Documentation for DcMotor (#632)
* Docs, support failure detection

* typo
2018-12-23 21:10:30 -05:00
rusefi e602c7a76b docs 2018-12-23 10:45:28 -05:00
rusefi 852852b19f one step back 2018-12-23 02:44:41 -05:00
rusefi 938728bd0a moving towards https://github.com/mck1117/rusefi/tree/mck1117/etb/firmware/testing 2018-12-22 23:57:28 -05:00
rusefi 81837cad7d EXTI refactoring 2018-12-18 23:50:29 -05:00
rusefi 52998725c3 extra caution 2018-12-09 09:23:31 -05:00