Commit Graph

12423 Commits

Author SHA1 Message Date
rusefillc 7fbd8e9154 automation around outputs section #197 2021-11-20 14:08:02 -05:00
rusefillc 0e89992c38 automation around outputs section #197 2021-11-20 13:30:25 -05:00
rusefillc e3c8aa2f57 Epic: Remove FSIO #2928 2021-11-20 13:19:50 -05:00
rusefillc 22b1b04299 No longer used 2021-11-20 13:18:57 -05:00
Matthew Kennedy a342bee57e
rpm calculator refactoring, gm 24x test (#3585)
* data

* stub test

* use getTimeSinceSyncPoint

* s

* s

* no

* test

* stray ;

* those were 1/10 what they were supposed to be

* actually check something

* dead log line?
2021-11-20 14:59:02 +03:00
Scott Smith cbc7c61b3e
Fix potential buffer overrun in cyclic_buffer. (#3583)
This exposed a buffer overrun, so double the size of the buffer (to account for 720 degree engine
cycle vs 360 degree crank events).

Also use proper numeric limits when computing min/max.
Finally, add a lock around the call to cyclic_buffer that actually caused the contention.
2021-11-20 03:01:11 -05:00
Matthew Kennedy bb57a4b084
detect more overflows with asan (#3582)
* overflow detector

* type list dynamic allocate

* fix the buffer length

* comment

* pr fb

* sanitize sim

* fix sim sanitizer bug

* didn't mean to turn off optimization for sim

* asan can do that, if you turn it on!

* cleaning
2021-11-20 01:38:39 -05:00
Scott Smith 1fe26f55fb
Expose console over serial port for H7 proc (#3578)
This way you can use the console/TunerStudio with the ST-Link

In the process, combine TS_PRIMARY_UART and TS_PRIMARY_SERIAL into TS_PRIMARY_PORT, to make UART vs
SERIAL selection more robus.  Ditto for TS_SECONDARY_*.  Also change use of TS_NO_PRIMARY to be #if
not #ifdef, so that it can be properly set as a compile flag and not be overwritten by various
header files.
2021-11-20 00:39:08 -05:00
rusefillc e54d3b9e06 On -fpermissive in Windows in unit tests #3581 2021-11-20 00:16:03 -05:00
rusefillc ecac07f938 brave refactoring 2021-11-19 23:56:52 -05:00
GitHub build-firmware Action 71bf1f7d1a Auto-generated configs and docs 2021-11-20 04:16:43 +00:00
Scott Smith 5bc1949aef
Basic framework for high pressure fuel pump control (#3476)
* Basic framework for high pressure fuel pump control

* Many changes

Move calculations to fast callback
Move main object into Engine
Respond to pin changes without requiring a reboot

* Use EngineModule for HpfpController
Schedule pin off after executing pin on so we are sure it ends, even if the motor stops.
Test scheduling.
Less RAM use by only having one event and reordering fields.

* Make scheduling test actually useful - need non-0 activation angle.

Co-authored-by: rusefillc <48498823+rusefillc@users.noreply.github.com>
2021-11-19 23:06:51 -05:00
GitHub build-firmware Action f8f52c4c1f Auto-generated configs and docs 2021-11-20 03:34:23 +00: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
Matthew Kennedy cdd27abb09
turn on c++ 20 (#3579)
* set flags

* emit initializers

* jar
2021-11-19 22:19:34 -05:00
GitHub set-date Action 3288f42fbf Update date 2021-11-20 00:59:29 +00:00
GitHub build-firmware Action 0b4ca8346b Auto-generated configs and docs 2021-11-19 12:08:29 +00:00
rusefillc 684622e476 debug mode for skipped count for 4 cylinders #3570 2021-11-19 07:02:21 -05:00
Matthew Kennedy 29613ec403
fast exti interrupt handoff (#3497)
* fast exti

* test code snuck in

* full interrupt disable :(

* do it the old fashioned way

* enable interrupt

* consume stored timestamp

* dead

* h7 maybe

* guard maybe

* non-stm32

* exti 16 wrong on f4/f7

* CORTEX_MAXIMUM_PRIORITY

* safer but uglier

* s

* chibios

* no const

* initializers

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-11-19 06:37:52 -05:00
GitHub build-firmware Action f76054c0b3 Auto-generated configs and docs 2021-11-19 09:16:06 +00:00
Matthew Kennedy caee2a5439
delimeter is not comma (#3533)
* delimeter is not comma

* do it in config txt

* use txt

* s

* string

* compat

* also, spelling is hard

* use new name

* use new name

* generate enough for happy console

* use an even less common character

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-11-19 12:01:45 +03:00
Matthew Kennedy 692e3d7e9f
adjust miata sync conditions (#3577) 2021-11-19 02:30:05 -05:00
Scott Smith df3e60c07c
Extend LogField to support scaled_channel divisors. (#3575)
Also move the type field and shrink the size field for better packing.
Saves about 800 bytes of flash.  This fixes #3574.
2021-11-19 02:29:19 -05:00
rusefillc d91e5f2ad0 automation around outputs section #197
a step back
2021-11-18 21:12:54 -05:00
rusefillc f1103b65bc automation around outputs section #197 2021-11-18 20:09:07 -05:00
GitHub set-date Action 90fc972716 Update date 2021-11-19 01:01:05 +00:00
rusefillc b16f970dcb automation around outputs section #197 2021-11-18 19:46:17 -05:00
rusefillc 12fda6be9f automation around outputs section #197 2021-11-18 19:34:46 -05:00
Scott Smith 18c27a6e9c
Separate out scheduleOrQueue into it's own standalone scheduler. (#3573)
It's a large enough entity that it shouldn't be buried in ignition logic.
2021-11-18 14:27:21 -05:00
rusefillc 27d8061625 automation around outputs section #197
wow huge step!
2021-11-18 00:19:11 -05:00
rusefillc 5c20e1d52c automation around outputs section #197 2021-11-18 00:05:27 -05:00
rusefillc 29469f02d0 automation around outputs section #197 2021-11-17 23:51:58 -05:00
rusefillc 877535b8ff proportional spark cut #3427 2021-11-17 23:35:26 -05:00
GitHub build-firmware Action bd57251977 Auto-generated configs and docs 2021-11-18 04:30:54 +00:00
rusefillc 54a9b62de1 automation around outputs section #197
packing & making my job easier
2021-11-17 23:22:08 -05:00
rusefillc cb300ec985 automation around outputs section #197
refactoring
2021-11-17 23:16:15 -05:00
Scott Smith 98040ad9af
Make the module API more concise. (#3571)
engineModules.get<FOO>(). becomes modules<FOO>()->

I believe the new API is more conducive to supporting arrays, by doing std::array<T, N> or
std::array<Mockable<T>, N>, with the support of a helper class.
2021-11-17 21:50:00 -05:00
Scott Smith ba8bd0a704
Add a lock for scheduleOrQueue events. (#3572)
Ignition callers are all tooth based, but aux valves calls it from both the microsecond timer and
the main initialization thread.  HPFP will also soon call it from both those places too.
2021-11-18 05:08:32 +03:00
GitHub set-date Action 8ad9a169ef Update date 2021-11-18 01:00:51 +00:00
Scott Smith 69d36dad6e
Final cleanup of ENGINE macros (#3567)
Fix some uses of ENGINE() not detected by regex due to parenthesis.
Remove now empty engine_ptr.h
Don't worry about EFI_* not being defined, the compiler defaults to 0 if they aren't.
2021-11-17 13:45:10 -05:00
Scott Smith 988aacdd91
Create a base class EngineModule for that contains various useful callbacks. (#3548)
* Create a base class EngineModule for that contains various useful callbacks.

This cleans up the API by not requiring the notifiers to know about who wants callbacks.  The only
place you need to update to add a module is in one place.

* Add mockability.

* Convert InjectorModel to a Mockable EngineModule
2021-11-17 20:13:19 +03:00
rusefillc b579b33082 Startup Pin State Error - maybe hardware damage of STM32 pin connected to a 12v-powered TC4427? #3558 2021-11-17 04:45:55 -05:00
rusefillc d688f72c3e proportional spark cut #3427 2021-11-17 04:06:22 -05:00
Scott Smith 823d9a07e0
Programmatically replace ENGINE() and CONFIG() with engine-> etc (#3565)
git grep -l -w ENGINE | xargs sed -i -r "s/ENGINE\(([]a-zA-Z_0-9.[]+)\)/engine->\1/g"

git grep -l -w CONFIG | xargs sed -i -r "s/([^a-zA-Z_])CONFIG\(([]a-zA-Z_0-9.[]+)\)/\1engineConfiguration->\2/g"
2021-11-17 03:54:21 -05:00
Scott Smith 70ad9724c0
Make engine* and friends be const pointers in production. (#3564)
This allows the compiler to see through the pointer and make accesses faster.
It saves 1336 bytes of text.
2021-11-17 03:53:17 -05:00
Scott Smith 8dbdeb7773
Remove a bunch of macros from engine_ptr.h (#3562) 2021-11-17 10:01:39 +03:00
GitHub set-date Action 5b1f6dd4b1 Update date 2021-11-17 01:00:29 +00:00
Scott Smith cc95bd6c8e
Programmatically remove EnginePtr/inject, EXPAND_Engine, and WITH_ENGINE_TEST_HELPER* (#3560)
* Programmatically remove EnginePtr/inject, EXPAND_Engine, and WITH_ENGINE_TEST_HELPER*

for i in ": public EnginePtr " ", public EnginePtr" "EXPAND_Engine;" "EXPAND_Engine"; do
    git grep -l "$i" | xargs sed -i "s/$i//g"
done

git grep -l "inject" | xargs sed -i "/inject[(][)]/d"

for i in WITH_ENGINE_TEST_HELPER_SENS WITH_ENGINE_TEST_HELPER_BOARD_CALLBACK WITH_ENGINE_TEST_HELPER; do
    git grep -l "$i" | xargs sed -i "s/$i/EngineTestHelper eth/g"
done

git checkout firmware/controllers/core/engine_ptr.h
git checkout unit_tests/global.h

* Review fixups.
2021-11-16 16:52:11 -05:00
rusefillc 17d4646dce spelling 2021-11-16 16:46:54 -05:00
rusefillc dad00adc28 helping launch enter simulator 2021-11-16 16:45:14 -05:00
rusefillc 678a756275 helping launch enter simulator 2021-11-16 16:31:35 -05:00
Andrey a61043e570 proportional spark cut #3427 2021-11-16 13:23:08 -05:00
Andrey 3748bf5ad0 proportional spark cut #3427 2021-11-16 05:56:15 -05:00
Matthew Kennedy 8cdac4cac0
remove engine pointer passing (#3556)
* some

* more

* more

* the last?!
2021-11-16 04:15:29 -05:00
Scott Smith 344c9073e2
Start the process of using a global engine ptr for unit tests. (#3551)
* Start the process of using a global engine ptr for unit tests.

Passing around the engine, config, and persistent state wasn't buying anything.  Instead, use
EngineTestHelper(Base) to correctly set and clear the global variables.  Add a dummy check in
case some test tries to set them manually.

* Fix OSX build

* Adapt PR to recently added code.
2021-11-16 00:23:14 -05:00
Scott Smith 62daac73c7
Use Valgrind to detect unitialized variable references. (#3555)
* Use Valgrind to detect unitialized variable references.

Fix the edge cases that pop up

* Comment and disable Mac run
2021-11-15 23:42:23 -05:00
GitHub build-firmware Action 4ed25bff52 Auto-generated configs and docs 2021-11-16 02:53:15 +00:00
Andrey d48cab2136 Knock retard #3396 2021-11-15 21:21:45 -05:00
Andrey 0cc88ec6e2 Not all launch control options are used #3554 2021-11-15 21:13:01 -05:00
Andrey 3b0825181c technical debt: enableOverdwellProtection #3553
only documentation
2021-11-15 20:32:25 -05:00
Andrey 655b77dc3f random refactoring: trigger central encapsulation 2021-11-15 20:22:05 -05:00
Andrey 928c673695 refactoring launch 2021-11-15 20:09:03 -05:00
Andrey 05fa6071dd refactoring launch 2021-11-15 19:55:04 -05:00
Andrey 0d5df34f36 refactoring launch 2021-11-15 19:55:04 -05:00
Andrey c18204325c refactoring launch 2021-11-15 19:34:42 -05:00
Andrey f510cb8b29 refactoring launch 2021-11-15 19:24:00 -05:00
Andrey 4002c92dcc refactoring launch 2021-11-15 18:57:12 -05:00
Andrey 34015eceee refactoring launch 2021-11-15 14:40:35 -05:00
Matthew Kennedy cb032fb1ea
(void) -> () (#3550)
* static functions with (void)

* more

* Revert "more"

This reverts commit 246e53441f935451437df186ac92d7df26b62fb6.

* s

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-11-15 13:02:34 +01:00
Matthew Kennedy 145316c497
less macro, more c++ (#3549)
* less macro

* s
2021-11-15 12:44:40 +01:00
GitHub build-firmware Action adbb32e9b6 Auto-generated configs and docs 2021-11-15 03:03:29 +00:00
rusefillc 6f3eea31c6 MAP phase sensing #3544 2021-11-14 21:58:01 -05:00
GitHub build-firmware Action f3f9cb3f6c Auto-generated configs and docs 2021-11-15 02:31:36 +00:00
rusefillc 0722d6280d MAP phase sensing #3544 2021-11-14 21:24:59 -05:00
GitHub set-date Action e07987a601 Update date 2021-11-15 01:00:10 +00:00
rusefillc 1471193da9 clarification 2021-11-14 18:36:59 -05:00
GitHub build-firmware Action e776e2b3fb Auto-generated configs and docs 2021-11-14 23:09:53 +00:00
rusefillc a99750a34a Epic: Remove FSIO #2928 2021-11-14 17:56:58 -05:00
rusefi d348ba07ef ## November 2021 Release - "Loosen Up Lighten Up Day" 2021-11-14 17:47:07 -05:00
rusefi c8d666c5a1 Lua: changing "table" API 2021-11-14 16:29:46 -05:00
Matthew Kennedy 36d75fa6db
enable nb1 serial pins (#3546)
* enable serial on nb1

* typo

* serial

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-11-14 16:07:56 -05:00
rusefi 377c9e2fda Something something Automatic Compression Release #3442 2021-11-14 16:04:44 -05:00
rusefillc 0813266ee1 trigger refactoring & docs 2021-11-14 15:35:11 -05:00
Matthew Kennedy a7ba539e70
math is fun (#3545)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-11-14 15:32:35 -05:00
rusefi e8aebc313a Something something Automatic Compression Release #3442 2021-11-14 15:04:10 -05:00
rusefi fcf0d68849 more API 2021-11-14 14:53:44 -05:00
rusefi cdeeb6f966 Epic: Remove FSIO #2928 2021-11-14 14:44:52 -05:00
GitHub build-firmware Action 1806c9876b Auto-generated configs and docs 2021-11-14 19:42:17 +00:00
rusefi ee4caf8288 bugfix: show both new and legacy field names were displayed 2021-11-14 14:19:09 -05:00
rusefi 89ab20c35c Epic: Remove FSIO #2928 2021-11-14 14:14:43 -05:00
rusefillc 14c0711011 script settings need names! 2021-11-14 13:18:11 -05:00
GitHub build-firmware Action d69b742bce Auto-generated configs and docs 2021-11-14 17:42:11 +00:00
rusefillc a7027975a5 Epic: Remove FSIO #2928 2021-11-14 12:15:53 -05:00
rusefillc f00f5c95be Epic: Remove FSIO #2928 2021-11-14 12:11:56 -05:00
GitHub build-firmware Action 391218b562 Auto-generated configs and docs 2021-11-14 16:51:07 +00:00
rusefillc e01aa6139b script settings need names! 2021-11-14 11:45:37 -05:00
rusefillc f279f3275d script settings need names! 2021-11-14 11:40:33 -05:00
rusefillc 074e85b523 Epic: Remove FSIO #2928 2021-11-14 11:40:19 -05:00
rusefillc 68ebb8045d Epic: Remove FSIO #2928 2021-11-14 11:04:51 -05:00
rusefillc 22c872d8d8 Epic: Remove FSIO #2928 2021-11-14 10:57:19 -05:00
GitHub build-firmware Action 402f2a3f93 Auto-generated configs and docs 2021-11-14 15:53:06 +00:00
rusefillc 297f01444d Epic: Remove FSIO #2928 2021-11-14 10:47:40 -05:00
rusefillc c22215cea7 Epic: Remove FSIO #2928 2021-11-14 10:39:47 -05:00
GitHub build-firmware Action aa3fc55c8e Auto-generated configs and docs 2021-11-14 15:07:50 +00:00
rusefi 800bbf38ad Lua progress 2021-11-14 10:02:28 -05:00
rusefi 0ea0d601a5 Epic: Remove FSIO #2928 2021-11-14 09:49:02 -05:00
GitHub build-firmware Action 98a4aa86d3 Auto-generated configs and docs 2021-11-14 14:40:23 +00:00
rusefillc 9ce65aa6cb Epic: Remove FSIO #2928 2021-11-14 09:34:45 -05:00
rusefillc f755bff2a1 Epic: Remove FSIO #2928 2021-11-14 09:34:19 -05:00
GitHub build-firmware Action 0a9674aa94 Auto-generated configs and docs 2021-11-14 14:27:16 +00:00
rusefillc 60841f4486 Epic: Remove FSIO #2928 2021-11-14 09:21:04 -05:00
rusefillc f0b1971908 Epic: Remove FSIO #2928 2021-11-14 08:38:11 -05:00
rusefillc eb1af46655 Epic: Remove FSIO #2928 2021-11-14 08:37:50 -05:00
rusefillc 991d0c5001 Epic: Remove FSIO #2928 2021-11-14 08:33:19 -05:00
GitHub build-firmware Action d299cc9c9b Auto-generated configs and docs 2021-11-14 13:13:06 +00:00
rusefillc 287d765a62 Epic: Remove FSIO #2928 2021-11-14 08:00:58 -05:00
rusefillc a85d1bb064 Epic: Remove FSIO #2928 2021-11-14 07:30:26 -05:00
rusefillc 0a9682c553 Epic: Remove FSIO #2928 2021-11-14 07:24:50 -05:00
rusefillc 6210eaacf7 script settings need names! 2021-11-13 23:10:38 -05:00
rusefillc 1e8d8f9691 script settings need names! 2021-11-13 22:59:15 -05:00
GitHub build-firmware Action 13d19653e9 Auto-generated configs and docs 2021-11-14 03:54:30 +00:00
rusefillc a9bcce88d0 script settings need names! 2021-11-13 22:47:46 -05:00
GitHub build-firmware Action b295511600 Auto-generated configs and docs 2021-11-14 03:02:10 +00:00
Matthew Kennedy d591a5ad26
mercedes two lobe trigger testing (#3543)
* mercedes

* config

* break;

* I did the gap ratio math wrong

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-11-13 21:50:04 -05:00
GitHub set-date Action 19a119e5fc Update date 2021-11-14 01:02:27 +00:00
rusefi 5e346e40a3 pid demo progress 2021-11-13 16:41:20 -05:00
rusefi 05820ec92d speed into caninfo 2021-11-13 10:41:23 -05:00
GitHub build-firmware Action e32673dfb6 Auto-generated configs and docs 2021-11-13 15:38:11 +00:00
rusefi b7dc5a4ac5 pid demo progress 2021-11-13 10:33:13 -05:00
rusefi 2b8b549edd cmd_test_debug_mode_can 2021-11-13 10:33:03 -05:00
rusefi 844a8418a8 pid demo progress 2021-11-13 10:02:45 -05:00
rusefi 676f2dfb93 findTableIndex 2021-11-13 10:02:01 -05:00
rusefillc 6be84c0de9 lua can 2021-11-13 08:23:44 -05:00
rusefillc 8fdf2521e5 lua can 2021-11-13 08:20:30 -05:00
rusefillc e662544919 lua can 2021-11-13 04:44:17 -05:00
GitHub build-firmware Action 8d7157ff3e Auto-generated configs and docs 2021-11-13 09:41:01 +00:00
rusefillc 23ecae0316 little mess 2021-11-13 04:35:45 -05:00
rusefillc 8333234737 Something something Automatic Compression Release #3442 2021-11-13 04:24:53 -05:00
rusefillc 23612b5873 UART pins validation and dynamic alternative function recognition #3536 2021-11-13 04:13:11 -05:00
Matthew Kennedy 73b05d2e20
lua pid class (#3411)
* lua pid

* no luaaa stl

* update luaaa

* finality

* luaaa

* luaaa

* = default

* bad merge

* gitmodules

* lua

* proteus demo script

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-11-13 03:18:16 -05:00
Matthew Kennedy a831bec797
update luaaa (#3540)
* lua update

* no stdlib mode

* turn off system luaaa for now since it makes luaaa sad

* let user heap do a little

* gitmodules

* memory shuffling

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-11-12 22:10:05 -05:00
GitHub build-firmware Action dffab7abff Auto-generated configs and docs 2021-11-13 03:01:55 +00:00
rusefillc 6d58518fb2 Proteus Harley 2021-11-12 21:56:07 -05:00
GitHub set-date Action e3a3bd6b7a Update date 2021-11-13 01:04:13 +00:00
rusefi b3204da186 maybe lua freezes proteus h7 after 7 seconds of run #3539 2021-11-12 13:45:07 -05:00
rusefillc b2c2e7e0c1 maybe lua freezes proteus h7 after 7 seconds of run #3539 2021-11-12 13:11:32 -05:00
rusefi d3124ff802 maybe lua freezes proteus h7 after 7 seconds of run #3539 2021-11-12 12:51:05 -05:00
rusefi 7032c06066 maybe lua freezes proteus h7 after 7 seconds of run #3539 2021-11-12 12:45:53 -05:00
rusefi 4e63922317 pid demo progress 2021-11-12 00:20:52 -05:00
GitHub build-firmware Action aae236188c Auto-generated configs and docs 2021-11-12 04:15:01 +00:00
Matthew Kennedy 14953c55dd
new parser handles enum values (#3492)
* simplify

* poke to force generate

* enums

* jar

* jar

* poke

* prepends formatted

* prepends

* eol

* eol

* allow no endl at eof

* Revert "eol"

This reverts commit 022029faef338281b1a3551f82e46c4b6a7578a5.

* Revert "eol"

This reverts commit 6274502db740569235210916fde4ec84863d7fb3.
2021-11-11 23:09:39 -05:00
GitHub build-firmware Action bcdea6b33a Auto-generated configs and docs 2021-11-12 04:00:30 +00:00
rusefi ab11b613bc lua wants your pins! 2021-11-11 22:54:48 -05:00
rusefi 99c591e14d curve names 2021-11-11 22:54:48 -05:00
GitHub build-firmware Action 0c8f9dd01d Auto-generated configs and docs 2021-11-12 03:51:31 +00:00
rusefi ff4a0b0939 pid demo progress 2021-11-11 22:38:50 -05:00
Andrey 88dcab9cd6 Something something Automatic Compression Release #3442 2021-11-11 21:38:49 -05:00
Andrey 5c99178eeb docs 2021-11-11 21:31:24 -05:00
Andrey 78fdd5b9a9 UART pins validation and dynamic alternative function recognition #3536 2021-11-11 21:29:18 -05:00
GitHub build-firmware Action 2765d386b9 Auto-generated configs and docs 2021-11-12 01:54:56 +00:00
Andrey 562ab174d7 Bench Test IAC Valve fails #3534
that's not even funny
2021-11-11 20:39:01 -05:00
Andrey 8d154b94df Bench Test IAC Valve fails #3534 2021-11-11 20:31:46 -05:00
Andrey df98eb69d4 Bench Test IAC Valve fails #3534 2021-11-11 20:28:01 -05:00
GitHub build-firmware Action 9861ca4d99 Auto-generated configs and docs 2021-11-12 01:22:13 +00:00
Andrey cd57e1fdb6 Something something Automatic Compression Release #3442 2021-11-11 20:16:46 -05:00
Andrey 6436a2b9a4 dead line 2021-11-11 20:16:46 -05:00
Andrey 385d2f6382 https://rusefi.com/forum/viewtopic.php?f=13&t=2206 2021-11-11 20:16:46 -05:00
Andrey aff7664c21 refactoring: less hacky implementation 2021-11-11 20:16:46 -05:00
GitHub set-date Action bfabe25f2e Update date 2021-11-12 01:01:37 +00:00
rusefi 4f85b655ec lua PID example 2021-11-11 19:16:04 -05:00
GitHub build-firmware Action cfccb29fae Auto-generated configs and docs 2021-11-11 23:37:47 +00:00
Andrey 0a7d276110 https://rusefi.com/forum/viewtopic.php?f=13&t=2206 2021-11-11 18:31:54 -05:00
rusefillc 80cf7b5ecd Overflow in currentTimeMillis and getTimeNowSeconds #3531 2021-11-11 17:54:31 -05:00
rusefillc 46e9269982 Overflow in currentTimeMillis and getTimeNowSeconds #3531
it now takes 1000 times longer to overflow
2021-11-11 16:43:41 -05:00
rusefillc 825a57e33a Overflow in currentTimeMillis and getTimeNowSeconds #3531
it now takes 1000 times longer to overflow
2021-11-11 16:39:23 -05:00
Matthew Kennedy 57ad75aa98
load lua libs correctly (#3529)
* fix lua lib loading

* test
2021-11-11 13:44:13 -05:00
Scott Smith 713083baa5
Convert TriggerWaveform::wave to a pointer in preparation for code-defined sequences. (#3528)
It will eventually be class to support dynamic universal patterns in addition to ROM-based
tables.
2021-11-11 13:19:25 -05:00
Scott Smith 4af2722658
Print BSS and RAM4 totals at the end of make. (#3527)
If java is unable to run, don't error out the Makefile, just complain a little and move on.  Until
the gcc_map_reader actually works with RAM4, we print it manually.
2021-11-11 11:51:35 -05:00
rusefillc 32d3d5fc67 where are we now? 2021-11-11 11:11:40 -05:00
rusefillc 1564f8aa02 where are we now? 2021-11-11 10:36:31 -05:00
Scott Smith 2f4d123052
Change users of MultiChannelStateSequence to use the API (#3524)
Better than reaching into members that should be private. I didn't feel like actually making
them private though, as one user validates pinStates isn't NULL.
2021-11-11 09:19:22 -05:00
rusefi dda2992e4f pid demo progress 2021-11-10 22:27:21 -05:00
rusefillc 1f98e53972 Idle valve outputs not available in TS #3523 2021-11-10 21:07:38 -05:00
GitHub build-firmware Action 664d20fdee Auto-generated configs and docs 2021-11-11 01:46:41 +00:00
rusefillc 2794a85ff8 Idle valve outputs not available in TS #3523 2021-11-10 20:40:42 -05:00
GitHub build-firmware Action adefa4b312 Auto-generated configs and docs 2021-11-11 01:09:25 +00:00
rusefillc 8ada016a2b helle88 second idle wire 2021-11-10 19:53:02 -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
rusefi dcacef45ab open q 2021-11-10 19:24:17 -05:00
Matthew Kennedy 3f2a9c3fe8
test TS writes (#3515)
* test TS writes

* s

* this must be a gcc extension
2021-11-10 07:29:40 -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
GitHub set-date Action aea4a2ad22 Update date 2021-11-10 01:00:05 +00:00
GitHub build-firmware Action 6056a62a14 Auto-generated configs and docs 2021-11-09 20:43:52 +00:00
rusefi ad75fbe216 hellen88 2021-11-09 15:33:01 -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
rusefillc 1d970dace1 LUA_USER_HEAP for 407 2021-11-09 09:36:42 -05:00
Scott Smith 158f719d95
Save ~2800 bytes of RAM by not caching angle->trigger mapping (#3506)
Memory seems more valuable than CPU; use the O(lg n) lookup by angle.  A side effect is that it
seems to fix trigger lookup for the second phase of TRIGGERTYPE 53 544 TT_TRI _TACH 0.00
2021-11-09 07:03:27 -05:00
GitHub build-firmware Action 7f373a6415 Auto-generated configs and docs 2021-11-09 02:36:07 +00:00
rusefi ccb27d487d lua pid 2021-11-08 21:30:38 -05:00