Commit Graph

15634 Commits

Author SHA1 Message Date
rusefillc fc10166f97 spelling 2021-11-23 07:57:43 -05:00
GitHub set-date Action 5a8eed86ee Update date 2021-11-23 01:00:35 +00:00
rusefillc d9e8509440 harley 2021-11-22 19:16:57 -05:00
GitHub build-firmware Action 191b76f4dd Auto-generated configs and docs 2021-11-22 23:12:52 +00:00
Matthew Kennedy 9bd8a19564 oh my god we've had no asserts (#3595) 2021-11-22 17:52:03 -05:00
rusefi 6ca471494b harley lua 2021-11-22 17:33:28 -05:00
rusefi 688d92bbe0 lua editor scroll bar 2021-11-22 17:24:50 -05:00
Matthew Kennedy c45bb2b67d embiggen log buffer (#3596) 2021-11-22 16:46:18 -05:00
rusefillc d0f4969b3b harley 2021-11-22 14:29:48 -05:00
rusefillc 5271d9791a j1850 SAE crc8 Lua 2021-11-22 14:19:19 -05:00
rusefillc 3d8ddbceea j1850 SAE crc8 2021-11-22 14:03:52 -05:00
GitHub build-firmware Action a2bc33b211 Auto-generated configs and docs 2021-11-22 18:42:24 +00:00
rusefillc 5d55b8538f unusedLogFormat 2021-11-22 13:37:06 -05:00
rusefi 0820fa178d harley CAN Lua 2021-11-22 13:00:16 -05:00
Scott Smith 467db16828 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
GitHub set-date Action 743ea73afd Update date 2021-11-22 01:01:34 +00:00
rusefillc ee9fef1024 automation around outputs section #197 2021-11-21 09:35:37 -05:00
GitHub build-firmware Action 34c2fcc60d Auto-generated configs and docs 2021-11-21 13:16:25 +00:00
rusefillc 07ce2036b3 https://rusefi.com/forum/viewtopic.php?f=5&t=2217 2021-11-21 08:12:05 -05:00
Scott Smith 9d61fb4cfd Drop SingleChannelStateSequence in favor of MultiChannelStateSequenceWithData (#3519)
* Drop SingleChannelStateSequence in favor of MultiChannelStateSequenceWithData

Most all the users were Multi* anyways, so just improve that:
1. Allow up to 8 waveforms to share one byte per timestamp.  It could be better but this is simple
   and gets most of the benefit.
2. Use a wrapper structure to handle reserving space for the arrays.  Makes the interface simpler
   and more rigid.  Also saves 4 bytes per Multi*.  Downside is access is now via -> and *,
   not . and (nothing).

Saves 224 bytes of BSS, 1832 bytes of RAM4/CCM, 952 bytes of TEXT, and 103 bytes of RODATA

* Instantiate a base_t to make debugging easier.
Also fixes crash on real firmware by using &m_base instead - LTO optimization issue?

* No magical templated StaticAlloc thingy.  Just virtual functions.
2021-11-21 04:56:07 -05:00
Matthew Kennedy b9f8409f59 correctly compute engine revolution number (#3586)
* add param

* first revolution is revolution 0, not revolution 1

* would you look at that, we sync one rev quicker!

* changelog

* rpm value
2021-11-21 09:01:27 +03:00
GitHub set-date Action 6047404cfd Update date 2021-11-21 01:02:55 +00:00
rusefillc df7ea34864 automation around outputs section #197 2021-11-20 14:38:50 -05:00
rusefillc e10067da93 automation around outputs section #197 2021-11-20 14:27:21 -05:00
rusefillc 1c89d629e5 automation around outputs section #197 2021-11-20 14:08:02 -05:00
rusefillc fe3f8233d6 automation around outputs section #197 2021-11-20 13:30:25 -05:00
rusefillc f0e02f70c4 Epic: Remove FSIO #2928 2021-11-20 13:19:50 -05:00
rusefillc 9685c55d09 No longer used 2021-11-20 13:18:57 -05:00
Matthew Kennedy e2a4504728 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
rusefillc 8029f8446a only c++ because lua does some things asan doesn't like, but don't actually cause overruns. 2021-11-20 03:04:52 -05:00
Scott Smith 04fa1fd410 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 568dc8a277 don't do things that don't work in clang (#3584)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-11-20 02:40:41 -05:00
Matthew Kennedy 569415930c 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 8406fafa9e 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 03b13af2db On -fpermissive in Windows in unit tests fix #3581 2021-11-20 00:26:52 -05:00
rusefillc 6766ff8cab On -fpermissive in Windows in unit tests #3581 2021-11-20 00:23:27 -05:00
rusefillc 18aacc0ef6 On -fpermissive in Windows in unit tests #3581 2021-11-20 00:16:03 -05:00
rusefillc a3fc6d3e80 brave refactoring 2021-11-19 23:56:52 -05:00
GitHub build-firmware Action 10affa60db Auto-generated configs and docs 2021-11-20 04:16:43 +00:00
Scott Smith 07d30285fc 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 f6730e32fe Auto-generated configs and docs 2021-11-20 03:34:23 +00:00
Matthew Kennedy e7956a53f6 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 a79b0c424c turn on c++ 20 (#3579)
* set flags

* emit initializers

* jar
2021-11-19 22:19:34 -05:00
GitHub set-date Action d0f92574a9 Update date 2021-11-20 00:59:29 +00:00
GitHub build-firmware Action a3b9af0951 Auto-generated configs and docs 2021-11-19 12:08:29 +00:00
rusefillc c441d7dd89 debug mode for skipped count for 4 cylinders #3570 2021-11-19 07:02:21 -05:00
Matthew Kennedy 739be57ac8 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 6dc1e4dfcc Auto-generated configs and docs 2021-11-19 09:16:06 +00:00
Matthew Kennedy a0a1b5e6a0 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 7dee1e42eb adjust miata sync conditions (#3577) 2021-11-19 02:30:05 -05:00