Commit Graph

78 Commits

Author SHA1 Message Date
David Holdeman b6ccc6d5d2 Add generic 4-speed trans controller 2024-04-19 23:13:18 -04:00
David Holdeman 7bccb6cbb3 Automatic shifting class 2024-04-19 22:32:57 -04:00
rusefillc e931bd850d signal_executor_sleep is not part of real firmware 2024-01-07 15:51:49 -05:00
Matthew Kennedy ee381b2f34 speedo output 2023-10-15 22:07:31 -04:00
Matthew Kennedy 02f4a09d56 basic harley acr (#48)
* acr

* cleanup

* handle m_hasPinMode

* output channel

* ui

* wrap phase

* don't inject during ACR

* skip extra calculation

---------

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2023-10-09 18:51:47 -04:00
David Holdeman ddc003cc04 add generic gear controller with range sensor inputs 2023-06-16 22:59:25 -04:00
Andrey Gusakov d0a77bd898 CAN: MS Simplified Dash Bradcasting 2023-05-08 21:55:54 -04:00
Matthew Kennedy bb49b22294 joystick, lcd
(cherry picked from commit 61c17791b8)
2023-04-28 22:32:37 -04:00
Andrey 20d10ea0bb moving sensors files a bit 2023-02-20 21:21:03 -05:00
rusefillc 234862b2b7 CAN side of automated testing #4630 2022-09-29 23:01:06 -04:00
Andrey baaec6a603 refactoring: encapsulation 2022-09-28 22:42:08 -04:00
Andrey 151b23eff5 TCU to have it's own corner 2022-09-28 20:16:01 -04:00
Andrey 2d9dbbd6b8 extracting prime_injection 2022-09-07 16:25:50 -04:00
rusefillc 243fde13fa knock reaction #202
steps towards new LiveData convention
2022-04-29 13:47:31 -04:00
David Holdeman f305db2575
Add interface for selecting GearController and TransmissionController classes (#4048)
* save changes

* save changes

* save changes

* fix mistakes

* try adding empty method

* copy simpleTransmissionController to GM 4L6X controller

* Import 4l6x header

* add to makefile

* fix whitespace

* try enum class

* change field name

* change field name in rusefi.input

* check for gear controller mode

* add mode fields to catch if mode was changed
2022-04-06 17:37:30 -04:00
Matthew Kennedy 91ec135cf8
ignition controller detects rising edge on voltage (#3636)
* ignition controller detects rising edge on voltage

* update test

* comment

* ignore negative transients

* tweak

* test
2021-12-07 21:28:04 -05:00
Matthew Kennedy 81fffe87b7
main relay doesn't use fsio (#3580)
* fuel pump

* s

* call correct callback

* more dead

* test adjustment

* don't overflow

* don't need separate function

* java

* give it a name

* generated

* generated

* add to generate script

* import *

* this is so cheap we don't need a flag

* main relay

* plumbing

* dead fsio stuff

* test it

* by 100%, we mean 99.98%
2021-11-24 07:47:51 -05:00
Matthew Kennedy d40ca0f581
fuel pump doesn't use fsio (#3576)
* fuel pump

* s

* call correct callback

* more dead

* test adjustment

* don't overflow

* don't need separate function

* java

* give it a name

* generated

* generated

* add to generate script

* import *

* this is so cheap we don't need a flag
2021-11-19 22:23:12 -05:00
rusefillc 2431fa79b3 refactoring - extracting idle state 2021-10-17 00:30:26 -04:00
Matthew Kennedy e3ed413e06
send voltage and heater enable to WBO controller (#2956)
* add info send function

* fatal if CAN not configured correctly

* build

* s

* 20hz

* update wideband firmware

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-07-13 07:32:41 -04:00
Matthew Kennedy cd5eb6a77c
Move AC logic out of FSIO (#2872)
* new impl

* remove fsio

* inject "is ac active" to fan

* include the correct code

* include

* test

* more AC features

* AC switch vs. actual AC indicators

* include

* duh
2021-06-27 18:51:34 -04:00
Matthew Kennedy c27549b2e8
hard coded fan logic (#2805)
* remove fsio

* hard code impl

* test it

* enable fan with AC

* make commented stuff match
2021-06-11 06:25:12 -04:00
Matthew Kennedy 981e8f5047
defaults cleanup: base engine & fuel (#2790)
* build

* fuel and base

* fix build

* cleanup

* extern

* tps/tps

* alternator

* tps

* iat timing

* cranking RPM

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-06-03 00:50:07 +03:00
Matthew Kennedy 5cb659a7b0
lua pwm hooks (#2687)
* pwm hook

* dedicated pins

* write hook

* UI

* more info

* zero based, clamp

* memory

* don't compile lua in bootloader at all
2021-05-20 19:01:17 -04:00
Matthew Kennedy 17719c5da0
prep for lua (#2589)
* thread priority

* build

* makefile prep

* call startup

* s
2021-04-27 07:57:08 -04:00
Andrey G fa840a7593
hip9011 and friends (#2527)
* engine math: extrant getFiringOrderTable for reuse

* engine math: getNextFiringCylinderId helper

* introduce knock_logic: first member is getCylinderKnockBank()

moved from software_knock.cpp

* hip9011: support two inputs/banks

* fix CI

* Board Subaru EG33: populated with TPIC8101 with Advanced mode

* hip9011: test communication in advanced mode

* hip9011: handle situation when chip is already in advanced mode

* Board Subaru EG33: cylinder to knock bank mapping

* hip9011: count spi transactions in advansed mode too

* hip9011: reset incalid responce counter after chip initialization

* hip9011: make debug output more structured
2021-04-04 18:13:21 -04:00
Matthew Kennedy 1dd2180f76
VVT uses closed loop controller framework (#2453)
* vvt uses framework

* builds

* rename, update headers

* s

* testable

* write some basic tests

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-03-14 19:31:46 -04:00
rusefi 6f065274e4 aux pid is now VVT 2021-02-10 12:41:38 -05:00
Matthew Kennedy ff4ce2fb1f
create limp manager (#2142)
* move rev limit to limp manager

* call fatal error

* include order

* fix bug

* tests

* comment

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-26 17:30:46 -05:00
Matthew Kennedy d62618c5f8
prototype wideband firmware update (#2074)
* add submodule for firmware

* ts

* add updater

* add bench_test

* don't collide idx

* feature flag

* send acks

* fix timeout logic

* ui

* do it on the bench thread

* guard

* guard

* only do twice

* guard

* bump version

* update

* file name

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-16 08:28:53 -05:00
rusefillc fa58d75364 GDI Epic #1448 2020-11-05 16:34:25 -05:00
Matthew Kennedy 3241a43a2d
extract idle hardware to its own file (#1923)
* extract idle hardware

* should fix the build
2020-11-03 18:06:32 -05:00
David Holdeman 29c2d692ee
Simple transmission 2 (#1870)
* simple trans controller

* don't need check

* we can loop!

* use efi::size

* pin mode configuration

* set pin mode

* switch to RegisteredOutputPin

* size

* add to makefile

* fixes

* fixes

* wat

* output pin, and ts stuff

* use SimpleTransmissionController

* include

* grrr

* grrr

* move to separate file

* fix includes

* try

* semicolon stupid

* try pointers

* try

* add to makefile

* wat

* try

* try

* try

* try

* try

* try

* try

* try

* try

* try

* try

* try

* try

* try

* undo

* more idiomatic maybe

* remove logger

* try init func

* try

* try

* try init fn

* try

* switch

* try

* try

* ifndef

* try

* try

* ifndef

* use def dug

* INJECT FIRST

* try

* try

* duh
2020-10-09 23:34:45 -04:00
David Holdeman f5d9263ad1
switch start/stop to ButtonDebounce (#1777) 2020-09-09 08:22:15 +01:00
David Holdeman b8838de309
[TCU] Button Shifting (#1750)
* add buttonshift files

* buttonshift includes, targets, and init
2020-09-02 20:17:58 -04:00
David Holdeman 499a430347
[TCU] GearController and TransmissionController base classes (#1749)
* add tcu ts outputs

* accidental change?

* add tcu base classes

* rearrange

* accidental change?

* add files

* missing backslash

* undo accidental change

* buttonshift includes, targets, and init

* Revert "buttonshift includes, targets, and init"

This reverts commit 1b0630511e.

* use unused bit

* add return documentation

Co-authored-by: rusefillc <48498823+rusefillc@users.noreply.github.com>
2020-09-02 15:39:50 -04:00
Matthew Kennedy 1d0a244fa4 add fuel computer 2020-08-10 21:40:19 -07:00
Matthew Kennedy 626f55a08a refacto 2020-07-24 18:26:24 -07:00
Matthew Kennedy 76745412c6
Factor out airmass logic (#1483)
* refactor

* extract more airmass

* rename, fix tests
2020-06-06 07:25:19 -04:00
kon 8d35c35035
Aux serial (#1422)
* aux serial updates from last PR

* trying to guess

* wow that's old! also not working maybe?

* hiding diag code which was messing with GP2/GP3 i.e. TLE8888_PIN_22 TLE8888_PIN_23

* date

* Mc33 undervolt (#1421)

* mc33 flash check

* DI sanity checks for setting HV config

* mc33 under voltage check

* mc33 under voltage check

Co-authored-by: Christopher W. Anderson <gitstuff@pswitch.com>

* fixed {}

Co-authored-by: rusefi <rusefillc@gmail.com>
Co-authored-by: NOx-z <50815960+NOx-z@users.noreply.github.com>
Co-authored-by: Christopher W. Anderson <gitstuff@pswitch.com>
Co-authored-by: kon <dev@triggerdevel>
2020-05-11 12:17:42 -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
shadowm60 fe3030bb23
Vss over Can implementation proposal (#1340)
* Vss over Can implementation proposal

Working for BMW e46

* fixed Firmware CI?

* kinetis fix.

* minor fixes
2020-04-21 20:48:37 -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
rusefi 66ec0fdea6 moving a bit of crazy aside 2020-03-23 00:01:59 -04:00
Matthew Kennedy 7b44f618e7
custom verbose can format (#1200)
* config

* ts

* default cfg

* hand generate

* tx struct helper

* add data sending

* wire up

* value_or helper

* add file

* more sensors

* header

* compactify

* add status frame

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-03-19 17:58:46 -04:00
Matthew Kennedy 30cdeb0d7f
split out can tx logic (#1197)
* move to can folder

* split out can rx

* only print in debug mode

* guard on feature flag

* split out tx

* headers

* headers

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-03-19 14:01:07 -04:00
Matthew Kennedy aeee5a1391
split out can rx logic (#1196)
* move to can folder

* split out can rx

* only print in debug mode

* guard on feature flag

* headers

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-03-19 08:43:37 -04:00
Matthew Kennedy a96bf18604
move to can folder (#1195)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-03-18 23:20:00 -04:00
Matthew Kennedy 40b0783205
Split out EtbHardware (#1168)
* start tear out motor

* fix

* nuke reconfig

* guard for test

* test fixing

* format, condense headers

* fix todos

* undo todo

* format
2020-03-03 17:56:50 -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