Commit Graph

88 Commits

Author SHA1 Message Date
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
Andrey G 067055095f
cli registry: rework this hell, add FFF and FFFFF (#3964)
* cli registry: rework this hell, add FFF and FFFFF

* kinetis: no nodefaultlib

* revert back token helpers

* cli_registery: argument parser: do not eat qoutes

* Unit test for FFF

* cli_registry: remove debug
2022-02-26 16:58:10 -05:00
rusefillc 71b2dc762a https://en.wikipedia.org/wiki/Pi 2022-01-14 21:23:27 -05:00
rusefillc 9f8ccececd docs & refactoring 2021-12-26 12:35:41 -05:00
rusefi 89ab20c35c Epic: Remove FSIO #2928 2021-11-14 14:14:43 -05:00
rusefillc c22215cea7 Epic: Remove FSIO #2928 2021-11-14 10:39:47 -05:00
rusefillc 656b8c3429 refactoring - magic constant bad 2021-11-07 00:03:16 -04:00
Scott Smith 16378dcf59
Convert existing tables to use the simpler 3d table definition style in rusefi_config.txt (#3473)
This fixes #3465.
2021-11-05 21:55:33 -04:00
Scott Smith 6d38fe1eb3
Allow scaled_channel to have both multiplier and divisor (#3468)
Disallow scaled_channel for float.  I can't think of a reason to allow it, and it gets in the way
of rounding.

Add separate template param to setTable; let the compiler sort out whether assignment can happen
between TElement and VElement without forcing them to be the same at function call time.
2021-11-05 17:34:22 -04:00
rusefillc 1e2987f2b5 GPPWM usability: no one remembers which one does what fix #3270 2021-09-26 23:36:08 -04:00
Matthew Kennedy 9377a01aec
store cylinder count as plain number (#2915)
* update test framework

* eh

* hey look it's fewer warnings

* unwind

* fix

* config

* configs

* logic

* even java had some

* no need to be a typedef

* paste in actual cylinder count
2021-07-07 08:31:05 -04:00
Andrey 158296f990 reverting TCU cherry pick 2021-06-12 13:52:18 -04:00
rusefillc 4bd0ea04d2 TCU cherry 2021-06-12 07:06:57 -04:00
Matthew Kennedy 8ce2057a89
parser rewrite prep: normalize config (#2741)
* cleanup 1

* cleanup 2

* impl

* fix
2021-05-27 08:23:28 -04:00
Matthew Kennedy de7879b6e4
convert a table to scaled_channel (#2724)
* scaled VE table

* use setTable

* efi::clear

* ratio -> struct
2021-05-20 20:00:32 -04:00
Andrey ba758dd5cb refactoring magic constant STOICH_RATIO 2021-05-20 02:36:55 -04:00
Matthew Kennedy b373c03db8
Lua script editor in console (#2699)
* stub

* implement reset

* console

* just use the console command

* cleanup

* s

* s

* ui

* write in chunks

* fix write

* tab size, script read

* parse script properly

* put lua script in flash, tiny for now

* generated fields
2021-05-18 20:58:39 +03:00
Matthew Kennedy be70524ced
harden against various no-boot scenarios (#2468)
* zero length trigger

* validate config

* validate cylinder count

* wrong type on cylinder count

* invalid comment

* invalid SPI
2021-03-17 09:24:13 -04:00
Matthew Kennedy 0e70d08a22
Add fallback map table (#2248)
* table

* sd math

* config

* debug channel name

* ptr vs not ptr

* actually use return value

* memory

* less magic
2021-01-31 17:19:06 -05:00
Matthew Kennedy bed6819d8b
normalize configuration grammar (#2240)
* modify grammar

* add missing typedefs

* these typedefs are easier to handle in the parser

* make the existing parser work with the changed format

* grumble grumble jar

* we can deal with this part later

* handle later

* deal with this later
2021-01-26 21:56:47 -05:00
Matthew Kennedy 09b41bb1bb
Everything in lambda! (#1893)
* lambda

* default configs, fix build

* config, gauge, UI

* more digits

* change menu text

* fix that while I'm here

* doesn't need extra word

* todo note

* tests

* last test

* missed a config

* update java

* store target lambda

* more java

* format

* hopefully enough java for CI to pass
2020-10-26 18:15:17 -04: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 8ebdf6fcdc
fix type mismatch (#1808)
* fix type mismatch

* comment

* change field

* switch to efitimesec16_t

* add typedef

* add type to configdefinition

* build
2020-09-19 17:17:44 -04:00
David Holdeman d761f523a0
add shift matrix and pin config (#1798)
* add shift matrix and pin config

* try
2020-09-15 11:34:09 +03:00
Matthew Kennedy f6cbce48ed
minor TS changes (#1778)
* minor

* fiix
2020-09-09 16:27:13 -04:00
rusefi 6d3d8a7ac9 would this work? 2020-05-22 00:00:16 -04:00
rusefi 6e832002ba magic is around the corner 2020-05-06 14:00:08 -04:00
rusefi 2d18777d00 helping build 2020-05-05 15:47:14 -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 bfc6d10b5b
types & enums (#1367) 2020-04-25 18:26:29 -04:00
rusEfi 2203b2867a TS to show warning text 2020-04-19 21:42:00 -04:00
rusefi 6f5468d3ea critical error usability improvements 2020-03-28 20:14:17 -04:00
rusefi c2f0a30397 opening the door to boost controller! 2020-01-31 14:23:15 -05:00
rusefi bb217b01dd happy new year unification 2020-01-13 21:57:43 -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
rusefi 0583fd0b6c misc clean-up 2019-12-02 10:03:50 -05:00
rusefi 7a3369795f smarter IAC PID 2019-10-30 09:27:12 -04:00
Matthew Kennedy f629ec038b add sensor framework, tests (#929)
* add framework, tests

* move oil pressure to new way

* add init logic

* brackets on the same line

* spaces -> tabs

* spaces -> tabs for tests

* bracket on same line

* hook up sensor mocking

* add nan check

* fix nan check

* I wrote an essay

* casing

* only init if we have a sensor to init

* style, actually call init

* format

* fix casing

* typo

* implement linear sensor

* wire up producer

* smarter limiting

* setup comments

* add reporting

* doxyfile

* oops

* add adc subscription

* clarity

* fix logic

* multiply voltage

* test styling

* test guards

* remove dependencies

* linear sensor test

* remove unused

* fix merge

* format, implicit convert op

* explicit

* format tests

* fix merge
2019-09-21 14:33:38 -04:00
rusEfi 1c0d38abef new feature: check engine light to blink on trigger synchronization 2019-08-18 15:53:38 -04:00
rusefi b14757c4db docs/type safety 2019-06-19 21:24:09 -04:00
rusefi 244b66b0ae ETB: TPS should be f(RPM, pedal) - target table #835 2019-06-15 14:11:38 -04:00
rusefi 09a29be80e input has sizes hard-coded #836 2019-06-10 15:45:18 -04:00
rusefi 0c5b9e093b ETB: TPS should be f(RPM, pedal) #835 2019-06-10 13:07:42 -04:00
rusefi 66903595b7 TS flexibility for MRE 2019-06-07 17:38:12 -04:00
rusefi 5626a8c82a better location for spi pin modes
stm32-specific code would upset someone
2019-03-29 02:44:52 -04:00
rusefi 9547c44ff1
688 brainpins (#694)
* GPIOF, GPIOG and GPIOH ports are not available #688
2019-02-22 22:10:41 -05:00
rusefi 4aaf6f884f bringing std types together 2018-12-08 16:00:36 -05:00
rusefi d81185ac28 bringing std types together 2018-12-08 15:51:45 -05:00
rusefi 2458d86e52 fixing build 2018-09-29 07:39:21 -07:00