Commit Graph

351 Commits

Author SHA1 Message Date
Matthew Kennedy adb53ff42e ECU firmware knows what sort of bootloader it has 2024-01-30 22:00:09 -05:00
rusefillc 4cb45a354b
Better efi engine control guard (#5695)
* better EFI_ENGINE_CONTROL

* better EFI_ENGINE_CONTROL

* better EFI_ENGINE_CONTROL

* better EFI_ENGINE_CONTROL

* better EFI_ENGINE_CONTROL

* better EFI_ENGINE_CONTROL

* better EFI_ENGINE_CONTROL
2023-11-05 13:54:06 -05:00
Andrey 6436612f38 cleanup tunerstudio integration 2023-11-04 23:07:50 -04:00
Andrey G ed8af771ac
at_start_f435: enable MFS for internal flash (#5687)
* Rename EFI_INTERNAL_FLASH to EFI_STORAGE_INT_FLASH

This define enables use of RE custom flash driver for storing
settings to internal flash.

* at_start_f435: enable MFS for settings storing in internal flash

* MRE: fix special build

* kinetis: fix flash_int.cpp vs flash_int.c mess

* at32: allow allowFlashWhileRunning()

* flash_main: supress warning
2023-11-03 13:08:35 -04:00
Matthew Kennedy 27fb1f092c deadish code makes it not build on macos 2023-11-02 01:33:28 -04:00
andreika-git 6bc83826f9 handleWrapCan() now receives packets https://github.com/rusefi/rusefi/issues/5606 2023-10-11 18:44:06 -04:00
rusefillc d558a46a11
Xxx (#5567)
* testability: bench test commands should have automated coverage using simulator #5562

* testability: bench test commands should have automated coverage using simulator #5562
2023-09-16 10:29:53 -04:00
Andrey 6d12cdb7c9 only: debug channel cleanups 2023-09-14 10:10:10 -04:00
Andrey 247a0a91b5 spelling is important 2023-09-09 19:54:57 -04:00
rusefillc 256e25a452 only:stronger stack shortage response 2023-06-25 02:16:31 -04:00
rusefi f3ee2fb9d0 reducing magic constant 2023-06-12 20:07:48 -04:00
Matthew Kennedy 12a29232cc tooth_logger.h -> pch
(cherry picked from commit ad3ea57276361b6da69eb920dd056a662f6f5c70)
2023-05-31 15:59:02 -04:00
rusefillc bebfc6f975 better code guard? 2023-05-24 00:00:03 -04:00
Matthew Kennedy 61e5b4b1ad change ObdCode to enum class builds firmware 2023-04-29 00:44:00 -04:00
rusefillc 8ef2af44f3 counting per-channel traffic 2023-03-16 13:14:25 -04:00
rusefillc 00ea3e56e9 dead code 2023-03-16 13:02:31 -04:00
Matthew Kennedy 87b903a2e3
nonblocking for TS, blocking for SD card (#4903) 2022-12-17 20:01:15 -05:00
rusefillc 654759d47a RusEFI console keeps resetting on latest #4899 2022-12-17 16:13:44 -05:00
Matthew Kennedy 52884c64cb
SD card tooth log (#4897)
* adjust tooth logger api

* mmc card writes tooth log

* changelog
2022-12-15 08:34:10 -04:00
Matthew Kennedy 9d8bfb834e
Basic trigger scope implementation (#4885)
* big buffer

* mostly hooked up big buffer

* bad merge

* s

* sneak preview of trigger scope

* s

* constness

* channel limits

* s

* unnecessary

* efilib

* TcpServerSandbox

* includes fix

* binary format

* tooth logger uses big buffer

* dead config

* config

* implement basic trigger scope

* good behavior

* enable on other alphax

* flag to enable second channel

* use 8 bit mode on the ADC for less memory use

* changelog
2022-12-10 23:00:12 -05:00
Matthew Kennedy 9f76dc4c6b
Use a shared buffer for "high memory" operations (#4878)
* big buffer

* mostly hooked up big buffer

* bad merge

* s

* sneak preview of trigger scope

* s

* constness

* channel limits

* s

* unnecessary

* efilib

* TcpServerSandbox

* includes fix

* binary format
2022-12-10 07:35:39 -05:00
Andrey G fee886b310
Bluetooth jdy33: minor fixes (#4852)
* bluetooth: add '-BLE' suffix for BLE broadcast name

* bluetooth: show current connection status before setup procedure

* tunerstudio: actually show EFI_CONSOLE_* pins
2022-11-29 10:26:56 -05:00
Andrey G 57c5ff6420
Bluetooth jdy33: save some memory (#4848)
* bluetooth: remove bluetooth_cancel command

No need. In case of error setup process will be canceled.

* bluetooth: no need to have separate thread for setup

Use same TinerStudio thread.

* bluetooth: pass tsChannel as argument

* bluetooth: use struct for baudrate - parameter table

* bluetooth: query MAC address if debug is enabled
2022-11-27 14:43:54 -05:00
rusefillc 2464d04d31 Full Optimized – High Speed #4818 2022-11-25 19:00:28 -05:00
rusefillc de77216bb7 Full Optimized – High Speed #4818 2022-11-25 10:50:48 -05:00
rusefillc 1cfcccbda3 Full Optimized – High Speed #4818 2022-11-25 08:36:24 -05:00
rusefillc c59cd8a5b0 Full Optimized – High Speed #4818 2022-11-24 21:54:11 -05:00
rusefillc c057834575 Full Optimized – High Speed #4818 2022-11-24 10:01:45 -05:00
Andrey G e8f33ce7ec
Bluetooth hang (#4632)
* tunerstudio: send BT disconnect notifications only for BT channel

* bluetooth: btProcessIsRunning duplicates btProcessIsStarted

* bluetooth: some comments

* bluetooth: no need to call chThdExit(), just exit thread function

* bluetooth: avoid possible race conditions: set flag first

* bluetooth: make "bluetooth_cancel" do something
2022-10-03 08:51:19 -04:00
rusefillc cab0177df0
insist on setBoardConfigOverrides fix #4614 (#4615)
* insist on setBoardConfigOverrides fix #4614

* insist on setBoardConfigOverrides fix #4614

* insist on setBoardConfigOverrides fix #4614

* insist on setBoardConfigOverrides fix #4614

* insist on setBoardConfigOverrides fix #4614
2022-09-24 07:35:19 -04:00
Andrey G 91d4844e38
time routines refactor (#4563)
* Extract time helpers from engine_controller_misc to efitime.cpp

* Rename currentTimeMillis() to getTimeNowMs()

We have getTimeNowNt(), getTimeNowUs(), currentTimeMillis() and getTimeNowSeconds()
Align a bit.

find . -type f -name '*.c*' -exec sed -i 's/currentTimeMillis/getTimeNowMs/g' {} \;

* Rename getTimeNowSeconds() to getTimeNowS()

To align with Nt, Us, Ms versions.

* Some comments about getTimeNowLowerNt()
2022-09-11 13:06:03 -04:00
Andrey ab4b451195 os_access.h dead? 2022-09-07 15:56:45 -04:00
rusefillc 26ae6f7490 [SECURITY] Cheap password protection against tune modification fix #4243 2022-07-30 12:23:53 -04:00
rusefillc 9e4187d8cf typos 2022-07-20 18:45:35 -04:00
Andrey G 7caef0ba92
TunerStudio reconnect speedup (#4358)
* TunerStudio: do not emit tons of errors if we are not in sync

Track state of sync with ither side. Emit only ONE error when sync
is lost.
Also no need to wait 1sec for second byte in binary mode. 10mS is
enought.

* TunerStudio: remove duplicated debug print

* TunerStudio: comment about in_sync

* TunerStudio: clear comments
2022-07-20 17:54:10 -04:00
rusefillc 70d0351f9c picking atomic piece of #4358 2022-07-20 17:06:34 -04:00
rusefillc adc11fcc1f refactoring: reducing warnings 2022-07-20 17:03:15 -04:00
Matthew Kennedy a0d8ae3f4f
use libfirmware for a few things (#4351)
* use libfirmware

* unit tests

* crc

* missed one

* bootloader
2022-07-16 02:22:51 -04:00
Matthew Kennedy aecacc6aa1
Rewrite tooth logger buffer management (#4317)
* s

* make it work

* put back enough maybe

* fix console composite log

* unit tests can just use a vector, why not

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2022-07-04 16:57:17 -04:00
rusefillc 5a2b430183 visiting "live data" tab causes fatal error on ECU fix #4271 2022-06-25 19:48:48 -04:00
rusefillc d98f35576d docs 2022-04-25 00:36:12 -04:00
Andrey 4db874a607 shameless reminder about time-sensitive Proteus fabrication issue which worries me 2022-04-17 16:00:31 -04:00
rusefillc 56f214d679 logging of live data structs was: data points #3614
exciting
2022-04-17 13:28:43 -04:00
rusefillc 07f210a82b random progress & method rename 2022-04-16 17:35:59 -04:00
Matthew Kennedy 6aef4f10d0
fragment refactoring (#4072)
* fragment refactoring

* jar

* jar?
2022-04-16 09:24:45 -04:00
rusefillc 5086d93a23 logging of live data structs was: data points #3614
getting closer...
2022-04-14 22:40:35 -04:00
rusefillc 084685c747 logging of live data structs was: data points #3614
ETB
2022-04-14 15:25:01 -04:00
rusefi 141804f490 steps towards better commands encapsulation 2022-04-14 01:44:35 -04:00
rusefi d7da81b5c2 steps towards better commands encapsulation 2022-04-14 01:06:44 -04:00
rusefi fcf9a42bea encapsulation 2022-04-14 00:35:33 -04:00
rusefillc 57df620087 logging of live data structs was: data points #3614 2022-04-13 22:27:44 -04:00
Andrey 8752f55a5f logging of live data structs was: data points #3614
progress
2022-04-13 21:52:05 -04:00
rusefillc d78b09f651 logging of live data structs was: data points #3614
hmm
2022-04-13 21:37:49 -04:00
rusefillc 37d4adeb33 logging of live data structs was: data points #3614
progress & more consistent convention
2022-04-13 21:20:37 -04:00
rusefillc 4834683dc6 logging of live data structs was: data points #3614
progress & more consistent convention
2022-04-13 20:46:55 -04:00
rusefillc 413e636d4c typo/grammar 2022-04-13 17:55:31 -04:00
rusefillc cdc7c2497b JNI for test coverage #3965 2022-03-15 10:47:02 -04:00
rusefillc ed16f3180f JNI for test coverage #3965 and code style 2022-03-15 10:32:32 -04:00
rusefillc 0f5cb33426 Firmware support or user instructions for jdy-33 #3944 2022-03-10 13:35:37 -05:00
rusefillc 22eb5a8073 Firmware support or user instructions for jdy-33 #3944 2022-03-10 12:49:04 -05:00
Matthew Kennedy 35c4c0bfba
move allowLongResponse option to ECU side (#3917)
* executeCommand knows about opcodes

* kick

* remove allowLongResponse

* add api in firmware instead

* test size

* bad merge

* firmware missed a spot

* fix logic

* haha we have to disable it
2022-02-11 16:03:20 -05:00
Matthew Kennedy f1897ba7aa
less dependence on that logger (#3884)
* less dependence on that logger

* comma

* refactor a bit, make it clear what this thing actually *does*

* static

* shrink the buffer a bit and make names useful

* dead util that's just subtraction lol
2022-02-09 06:53:16 -05:00
rusefillc fb5456dbaa GDI Epic #1448 2022-01-18 16:16:17 -05:00
rusefillc c29a0b54a7 GDI Epic #1448 2022-01-18 12:31:12 -05:00
rusefillc 0f38a22a46 't' in terminal does not print seconds properly fix #3780 2022-01-12 16:03:40 -05:00
rusefillc f1a8cd66e8 't' to print current date 2022-01-11 22:47:46 -05:00
rusefillc 6ee0a55eaf RE usability: live data for idle controller 2022-01-10 19:48:58 -05:00
rusefi 1a8b6d24fc disablePrimaryUart for MRE for GDI 2022-01-08 19:38:02 -05:00
rusefillc 25ca48c408 Live Data progress 2022-01-06 17:58:59 -05:00
rusefillc 8da3d17772 docs 2021-12-08 11:55:34 -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 70e738cf5f rusEFI console ISO-TP via PCAN #3667
better logging
2021-12-07 15:15:06 -05:00
rusefillc d23b029b5c tune via CAN #3361
a couple of flush() were missing, also improving readability
2021-12-06 22:19:30 -05:00
Matthew Kennedy a37c9bca9e
Remove the EFI_NO_CONFIG_WORKING_COPY option (#3630)
* no working copy

* oops
2021-11-29 16:44:45 -05:00
Matthew Kennedy 0badb6b2ff
AC is EngineModule (#3604)
* AC is engine module

* missed a spot with main relay while we're at it

* TS
2021-11-25 07:59:31 -05:00
rusefillc 3077f795c4 live data for wastegate #3588 2021-11-24 12:59:57 -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
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
Matthew Kennedy 8cdac4cac0
remove engine pointer passing (#3556)
* some

* more

* more

* the last?!
2021-11-16 04:15:29 -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 3f2a9c3fe8
test TS writes (#3515)
* test TS writes

* s

* this must be a gcc extension
2021-11-10 07:29:40 -05:00
Andrey d0b2ce5654 Whatever we call it, no matter how we do it - we need live data / remote view into rusEFI actual state #3353 2021-10-30 22:21:36 -04:00
rusefillc 570e2b2a87 respond to 'Q follow-up #3383 2021-10-20 20:51:10 -04:00
Matthew Kennedy 44f8698d3e
respond to 'Q' (#3382) 2021-10-20 15:40:37 -04:00
rusefillc 970d8f7f84 Whatever we call it, whatever we implement it - we need live data / remote view into rusEFI actual state #3353
progress
2021-10-14 18:50:03 -04:00
rusefillc 85618f61d5 fixing build 2021-10-14 16:49:15 -04:00
rusefillc 0254a141df Whatever we call it, no matter how we do it - we need live data / remote view into rusEFI actual state #3353
progress
2021-10-14 15:17:30 -04:00
rusefillc db73c52b96 TS channel names for nicer console messages 2021-09-18 18:03:31 -04:00
rusefillc b597d80798 TS channel names for nicer console messages 2021-09-18 16:58:35 -04:00
rusefillc 847fb75a23 TS channel names for nicer console messages 2021-09-18 15:33:14 -04:00
rusefillc 48a009fc33 Revert "Revert "memory savings (#3195)""
This reverts commit 0b3ef5f5
2021-08-27 06:18:05 -04:00
rusefillc 0b3ef5f553 Revert "memory savings (#3195)"
This reverts commit 52a24ee7
2021-08-27 02:32:31 -04:00
Matthew Kennedy 52a24ee773
memory savings (#3195)
* d

* dead code

* all your ram are belong to me

* turn off gpiochips we don't need

* save

* save by using the same file handle

* smaller stack ok

* these can be on the stack

* this is closer

* what about ccm?

* probing available

* now probe ccm

* ccm

* put stuff in ccm

* fsio

* memory usage

* memory
2021-08-26 23:05:31 +03: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 0f0b84a6db
remove TS file read (#3004)
* remove

* more defines

* test

* lots of java

* s
2021-07-21 14:24:53 -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
rusefi 0808372d34 longer error message in 't' response 2021-07-14 12:42:35 -04:00
rusefi 4c0184e509 't' comammand to return fatal error text 2021-07-13 22:53:11 -04:00