Commit Graph

529 Commits

Author SHA1 Message Date
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