Commit Graph

212 Commits

Author SHA1 Message Date
rusefillc 99d19f2d78 clutch input via CAN fix #3605 2021-12-15 20:35:49 -05:00
GitHub build-firmware Action 8ed86c78b2 Auto-generated configs and docs 2021-12-16 01:28:57 +00:00
rusefillc 86506a15a9 clutch input via CAN #3605 2021-12-15 20:11:23 -05:00
rusefillc 0937499708 Lua to read tsOutputs #3376 2021-12-15 13:25:09 -05:00
rusefillc 5bdf25c3f8 Lua to read tsOutputs #3376 2021-12-14 23:16:05 -05:00
GitHub build-firmware Action e57166ed55 Auto-generated configs and docs 2021-12-15 03:35:34 +00:00
rusefillc d121230dbe Lua to read tsOutputs #3376 2021-12-14 22:28:41 -05:00
GitHub build-firmware Action c73ceec960 Auto-generated configs and docs 2021-12-14 21:19:31 +00:00
rusefillc 265239ab4d Lua to read tsOutputs #3376 2021-12-13 19:46:41 -05:00
rusefillc 28449f3095 Lua to read tsOutputs #3376 2021-12-13 19:13:05 -05:00
rusefillc 79586d42a6 CAN wake-up #3660 2021-12-13 17:53:20 -05:00
rusefillc a5e80d05ba Lua to read tsOutputs #3376 2021-12-11 12:59:47 -05:00
rusefillc aa3d1db05e rusEFI console ISO-TP via PCAN #3667
fixing build
2021-12-08 15:42:00 -05:00
Andrey 940b04ab24 Let's always have TS structure so that unit tests can check values in outputChannels, kind of making outputChannels a god dump for state but whatever since Live View is coming 2021-12-07 20:18:47 -05:00
rusefillc b778aa7173 Pause CAN broadcast on engine stop #3665 2021-12-07 10:35:52 -05:00
rusefillc f4ab23eb2b Requesting LUA Torque intervention #3638 2021-12-02 01:02:56 -05:00
rusefillc 56d52f01be refactoring 2021-12-01 23:33:26 -05:00
rusefillc 6d4b1e6020 proteus to have enlarged Lua
one step back
2021-11-30 22:35:29 -05:00
Matthew Kennedy 5eea2764f5
strtof (#3623)
* strtof

* do fewer divides
2021-11-26 18:39:45 -05:00
rusefillc 719e3f9052 LUA CANbus expect 29bit ID by default #3592
not great quick fix
2021-11-23 15:41:43 -05:00
Matthew Kennedy 3334a6963c
oh my god we've had no asserts (#3595) 2021-11-22 17:52:03 -05:00
rusefillc 42da5746f4 j1850 SAE crc8 Lua 2021-11-22 14:19:19 -05:00
Scott Smith 9668626008
Move LuaThread to CCM, and shuffle a couple items out. (#3587)
Lua's stack probably doesn't need DMA.  Allows us to group more of our unused RAM together
in one place.
2021-11-21 20:35:03 -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 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
Andrey a61043e570 proportional spark cut #3427 2021-11-16 13:23:08 -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
rusefi c8d666c5a1 Lua: changing "table" API 2021-11-14 16:29:46 -05:00
rusefi 377c9e2fda Something something Automatic Compression Release #3442 2021-11-14 16:04:44 -05:00
rusefi e8aebc313a Something something Automatic Compression Release #3442 2021-11-14 15:04:10 -05:00
rusefillc 14c0711011 script settings need names! 2021-11-14 13:18:11 -05:00
rusefillc 22c872d8d8 Epic: Remove FSIO #2928 2021-11-14 10:57:19 -05:00
rusefillc c22215cea7 Epic: Remove FSIO #2928 2021-11-14 10:39:47 -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
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
Andrey 88dcab9cd6 Something something Automatic Compression Release #3442 2021-11-11 21:38:49 -05:00
Matthew Kennedy 57ad75aa98
load lua libs correctly (#3529)
* fix lua lib loading

* test
2021-11-11 13:44:13 -05:00
rusefi dcacef45ab open q 2021-11-10 19:24:17 -05:00
rusefi 06e97a1794 why is meat allowed to touch machine?! 2021-11-08 20:49:12 -05:00
Andrey 9b0f617664 lua pid class #3411 2021-11-07 09:53:40 -05:00
Andrey 821276197b lua pid class #3411 2021-11-07 09:49:47 -05:00
Andrey f6a20ca1ea lua curve progress 2021-11-05 16:08:48 -04:00
rusefillc 610c2b0ad1 lua curve progress 2021-11-05 10:34:12 -04:00
Andrey 44fa9b028b lua interpolate 2021-11-02 23:35:48 -04:00
Andrey e4a872c251 refatoring: splitting lua hooks into multiple files 2021-11-02 23:27:48 -04:00
rusefi c3bfaeb63c Revert "lua can: one step back"
This reverts commit ed89d5da
2021-10-29 16:32:41 -04:00
rusefi ed89d5da57 lua can: one step back 2021-10-29 13:14:42 -04:00
rusefillc 64ecbb16ab Revert "lua pid class #3411"
This reverts commit dde80bb900.
2021-10-28 23:41:23 -04:00
rusefillc dde80bb900 lua pid class #3411 2021-10-28 23:35:53 -04:00
Matthew Kennedy 680518d13c
make lua CAN happy (#3416)
* lua can tx

* index

* make rx match
2021-10-28 08:18:56 -04:00
Matthew Kennedy 148dbdeec6
Lua CAN rx data (#3414)
* rx data

* comments

* multi bus
2021-10-26 16:48:57 -04:00
Matthew Kennedy 383d8caad9
Lua CAN RX (#3403)
* wiring

* static

* implementation

* comment

* unit tests happy

* guard

* guard smarter, not harder

* guard smarter not harder

* guard even smarter, not even harder

* don't need that
2021-10-24 08:37:04 -04:00
rusefillc ece2c198be generate java enum from C enum? generate both C and java from yaml? #2102 2021-10-24 00:44:09 -04:00
rusefillc 71fd316f70 Lua: CAN receive integration? callback? #3320 2021-10-24 00:18:28 -04:00
Matthew Kennedy 8a841bb52c
lua can set sensors (#3389)
* add sensor unsubscribe

* sensor hook

* test it!

* virtual destructor makes us sad

* ensure deinit
2021-10-22 16:36:29 -04:00
Andrey b750755369 findSensorTypeByName 2021-10-21 14:33:59 -04:00
Matthew Kennedy ed7f7e693c
per-MCU lua size (#3339)
* per-MCU lua size

* simulator happy
2021-10-09 09:02:30 -04:00
rusefi 69ac9f7577 looks like a typo 2021-10-08 23:14:11 -04:00
rusefi e73ed5bcc5 luamemory does same but better 2021-10-08 14:48:16 -04:00
Matthew Kennedy 9797d25b7c
getOrZero (#3319) 2021-10-05 19:59:07 -04:00
rusefillc 84c1b04de6 "luastats" command 2021-09-29 21:04:50 -04:00
rusefi 19d2e73d84 luaaa revert by switching to a less messed up branch 2021-09-24 22:13:06 -04:00
rusefillc 5a65c0c924 fresh luaaa 2021-09-24 20:53:42 -04:00
rusefillc e242315773 more of LuaAdjustments 2021-09-24 00:34:06 -04:00
Matthew Kennedy 0978722225
lua hook for timing add (#3260)
* load script

* test

* needs more rams

* embiggen stack

* init system lua from lua thread

* de-embiggen stack

* infra

* hook

* system needs a little more

* semicolon

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-09-23 23:50:47 -04:00
Matthew Kennedy f41a2715a3
system lua: load a script! (#3231)
* load script

* test

* needs more rams

* embiggen stack

* init system lua from lua thread

* de-embiggen stack

* system needs a little more

* memory

* om nom nom delicious memory

* how much more memory could it want

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-09-23 21:45:14 -04:00
rusefillc 38b9698fc4 let's throw gas at the problem! 2021-09-18 17:48:01 -04:00
rusefillc 3de124a1c6 refactoring 2021-09-18 17:44:55 -04:00
Matthew Kennedy c72bd07179
enable address sanitizer (#3217)
* enable asan

* lua

* this is dead and leaky

* leaky nissan

* fix pwm generator use-after-stack

* initializers

* prevent problems in case of invalid trigger shape

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-09-05 05:56:59 -04:00
Matthew Kennedy 57e01e2064
start system lua VM (#3219)
* start system lua vm

* show used

* message

* null if script load fails
2021-09-04 07:57:58 -04:00
rusefillc 427cce7596
Lua timer (#3218)
* Lua: Timer class #3159

* Lua: Timer class #3159

* Lua: Timer class #3159

* Lua: Timer class #3159

* lua timer is happy (#3216)

* hooks are happy

* don't need that any more

* format

* update lib

* module

Co-authored-by: rusefillc <sdfsdfqsf2334234234>
Co-authored-by: Matthew Kennedy <matthewkennedy@outlook.com>
2021-09-03 20:21:39 -04:00
Matthew Kennedy 206670e2c5
multiple lua heaps (#3215)
* multi lua heaps

* assert

* put it in a class

* put it in the class

* privacy
2021-09-03 03:45:23 -04:00
rusefillc 42cddf810f my first Lua 2021-09-02 10:46:15 -04:00
rusefillc 22a0b88872 my first Lua 2021-09-01 07:47:50 -04:00
rusefillc f47320fd70 my first Lua 2021-08-31 12:32:05 -04:00
rusefillc 4e47e7bdb9 my first Lua 2021-08-31 11:37:43 -04:00
Andrey 7ab8986bd2 my first Lua 2021-08-22 01:41:54 -04:00
Andrey d29529cbdd my first Lua 2021-08-22 00:00:20 -04:00
Matthew Kennedy 0731dbb479
lua pass alloc and script (#3179)
* pass alloc and script

* pass in all the spots
2021-08-19 15:14:02 -04:00
Matthew Kennedy 559656bdc2
lua & fsio cleanup (#3175) 2021-08-18 15:25:46 -04:00
Matthew Kennedy d24f1462e2
even more pch (#3112)
* s

* more

* s

* f7
2021-08-04 19:30:52 -04: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
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
Matthew Kennedy a62d6743bc
lua hooks for CAN tx (#2967)
* CanTxMessage usable from unit test

* testLuaReturnsNil

* CAN hook and tests

* it helps if parameter names exist

* nameless params

* s

* redefinition of default argument

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-07-16 14:06:26 -04:00
Matthew Kennedy e830a99275
lua hooks for custom airmass model (#2697)
* lua airmass

* not const any more

* bad merge

* don't change the position of others

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-07-16 00:49:14 -04:00
Matthew Kennedy 3f63a108aa
deinit lua pins when not used (#2876)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-06-28 08:39:03 -04:00
Matthew Kennedy 3ef969d743
warnings & assorted cleanup (#2793)
* lua hook

* validateBuffer

* tables

* simplify fsio table

* test

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-06-03 14:30:25 -04:00
Matthew Kennedy b5bd527a44
engine stop hook (#2760) 2021-05-30 00:54:36 +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 20cef63d32
Lua on f407, try again (#2725)
* lua on f4

* move perf trace to efifeatures

* check that it's defined

* cypress and kinetis

* it would help to define the correct thing

* disable buffer if not used

* we can work with 2k

* turn off ramdisk on mre qc

* wow strncpy is useless for truncated strings

* turn off for bootloader

* lto bootloader

* memory

* memory
2021-05-20 23:05:18 +03: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 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
Matthew Kennedy c8e6b19828
don't build OS lib (#2700)
* don't build OS lib

* update lua
2021-05-17 08:38:30 +03:00
Matthew Kennedy 2abcd9d7ab
add ability to reset Lua interpreter (#2695)
* stub

* implement reset

* console

* just use the console command

* cleanup

* s

* s

* fix memory tracking
2021-05-14 16:20:27 -04:00
Matthew Kennedy 6cc7b0eeec
don't lowercase console commands (#2664)
* don't lowercase commands

* print bool lua results

* lua memory command
2021-05-10 11:30:50 -04:00
Matthew Kennedy 5ba7577496
move FSIO aux analog inputs to sensor model (#2669)
* sensor entries

* init

* non-explicit for list init to work

* switch fsio

* no longer need this lua hook

* init
2021-05-09 19:47:37 -04:00
rusefillc 540bb8e327 Revert "lua on f407 (#2646)"
This reverts commit e8855263
2021-05-09 18:25:50 -04:00
Matthew Kennedy e885526308
lua on f407 (#2646)
* lua on f4

* move perf trace to efifeatures

* check that it's defined

* cypress and kinetis

* it would help to define the correct thing

* disable buffer if not used

* we can work with 2k

* turn off ramdisk on mre qc

* wow strncpy is useless for truncated strings

* turn off for bootloader

* lto bootloader
2021-05-09 16:25:38 -04:00
Matthew Kennedy 9d4bd0d6fe
Lua debug channels (#2620)
* setdebug hook

* add debug mode

* memory size debug channel

* default script
2021-05-04 10:05:39 -04:00
Matthew Kennedy a62b7bedb2
use static buffer for lua heap, enable on f429 (#2619)
* static buffer for lua

* enable lua for 429
2021-05-04 01:03:17 -04:00
Matthew Kennedy 8ae8484dd9
interactive lua (#2614)
* interactive lua

* unnecessary pop

* print return value

* enable f7 lua

* match f7 chconf
2021-05-03 17:46:12 -04:00
Matthew Kennedy e386ad4b38
Lua tick rate hook (#2606)
* implement setTickRate

* actually load the hook
2021-04-29 22:22:31 -04:00
Matthew Kennedy a25773a11b
more Lua hooks (#2605)
* more hooks

* zero index

* test table hook

* test works

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-29 22:22:04 -04:00
Matthew Kennedy 5e66e8cb21
encapsulate in smart pointer (#2603)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-29 07:44:32 -04:00
Matthew Kennedy 830575a306
lua 5.4 (#2590)
* thread priority

* build

* makefile prep

* call startup

* lua 5.1

* mk

* 5.3

* mk

* I guess lua does something?

* extract hooks, builds for tests

* a bit of error handling

* guard

* bootloader makefile

* remove lua

* submodule

* submodule update

* builds with submodule

* disabled by default

* h7 chconf

* tweaks

* add a useful hook

* move luaconf

* perf trace lua

* test helpers

* lua unit tests

* include to satiate clang
2021-04-28 22:41:25 -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