Commit Graph

669 Commits

Author SHA1 Message Date
rusEFI LLC 757d023452 dup? 2024-07-09 21:04:46 -04:00
Andrey 1131899755 https://github.com/rusefi/rusefi/pull/5394
only:nastyornot
2024-06-17 21:00:55 -04:00
Andrey 7b40c58d79 compile-time enforcement of printf strings
only:uaefi
2024-06-10 21:22:56 -04:00
Matthew Kennedy 27e0a80c82 compile-time enforcement of printf strings
only:uaefi
2024-06-10 19:11:35 -04:00
rusefi 217546b02d EFI_CONFIGURATION_STORAGE 2024-05-05 15:38:21 -04:00
rusefi c336e14325 only:docs 2024-05-04 14:51:15 -04:00
3er0.1ive bdb997fe1a - clean commit with knock_analyzer 2024-05-04 10:51:46 -04:00
rusefi da34743332 only:minor progress 2024-04-25 17:45:14 -04:00
rusefillc 2a114b4f95 PUBLIC_API_WEAK 2024-03-24 22:06:58 -04:00
Andrey Gusakov 93e4f06019 firmwareError: set hasFirmwareErrorFlag as soon as possible
To avoid reentrance and infinity error loop
2024-03-11 18:41:29 -04:00
Andrey Gusakov a3ca49566e criticalAssert: non-void 2024-03-05 17:09:10 -05:00
Andrey f7dd81b61d & is inappropriate for an enum 2024-02-28 19:16:07 -05:00
andreika-git a0c61a0ebc Fix BigBufferHandle https://github.com/rusefi/rusefi/issues/5983 2024-02-22 15:17:36 -05:00
Andrey a1423085e2 revive ptrace #5983
only: quality in software begins with proper practices like TDD
2024-02-22 15:16:24 -05:00
Andrey 5a258a69c4 refactoring: explicit struct for error-related info 2024-02-08 22:03:35 -05:00
rusefi fc80d0b285 large buffer on stack is risky we better use normal memory 2024-01-29 20:39:17 -05:00
rusefillc 54061bf163 do not require FIRMWARE_ID 2024-01-10 13:17:27 -05:00
Andrey Gusakov 17e69a4021 error_handling: add OBD error code to warning message 2024-01-08 16:42:11 -05:00
Andrey Gusakov 1d15bc0997 console: do not print same warning to console every 10 seconds 2024-01-08 16:42:11 -05:00
Andrey afe01c365f custom FW repos code generation process #5817
preparation
2023-12-19 16:47:58 -05:00
Andrey 9237c4b16a better EFI_ENGINE_CONTROL 2023-11-05 12:09:25 -05:00
rusefi 14488c3c8f only:stringop-truncation bug! 2023-11-05 00:55:38 -04:00
Andrey af20c0c20c helping EFI_ENABLE_ASSERTS 2023-11-02 10:39:05 -04:00
rusefillc defd6d4577
variable shadowing should be avoided #5676 (#5679)
helping kinetis
2023-11-01 22:54:24 -04:00
rusefillc 6b48460f5e only:variable shadowing should be avoided #5676 2023-11-01 19:47:19 -04:00
rusefi 6b97f23eae pursuit of truth 2023-10-31 09:36:45 -04:00
rusefillc 8c4a06bc10
getBackupSram neven null (#5663) 2023-10-29 15:46:15 -04:00
rusefillc add3326ef0
dead warningEnabled global variable (#5636) 2023-10-24 18:55:29 -04:00
rusefillc a54ace1e8e EMI kills USB and causes a FATAL on the ECU #4310
only:small-can-board_debug
2023-10-21 16:55:52 -04:00
rusefillc 09c3f3aa5e EMI kills USB and causes a FATAL on the ECU #4310
only:small-can-board_debug
2023-10-21 16:24:38 -04:00
rusefillc 29487e084a EMI kills USB and causes a FATAL on the ECU #4310
only:small-can-board_debug
2023-10-21 16:02:26 -04:00
rusefillc 177a06d848 only: narrowing the scope of C++ 2023-10-05 22:22:00 -04:00
Andrey 393b7ce46a reducing code duplication around assert 2023-09-05 21:16:22 -04:00
rusefi 720ba01d04 proteus fails to start while powered by stim board #5545
only:proteus_f7
2023-08-29 00:46:21 -04:00
rusefi e8c45a2e7d refactoring: reducing code duplication. Also, do we even care for critical error codes?! 2023-08-20 22:23:44 -04:00
rusefi 54797ab559 refactoring: reducing code duplication. Also, do we even care for critical error codes?! 2023-08-20 22:05:19 -04:00
rusefillc 9f4647a99f CLI encapsulation preparing for libfirmware move 2023-08-08 23:53:59 -04:00
rusefillc 364fc3915d encapsulation 2023-08-08 06:03:56 -04:00
rusefillc 2193634e24 https://github.com/rusefi/rusefi/issues/5354#issuecomment-1651072108 2023-07-26 07:43:12 -04:00
rusefillc 8eb3b2b327 only: typo and more details 2023-07-25 20:14:34 -04:00
Andrey Gusakov 1e43299eab bigBuffer: should be aligned to 4 bytes
bigBuffer users cast it to something strange and expect it to be
aligned
2023-07-25 19:48:53 -04:00
rusefi 83d69b2c0a turnAllPinsOff improvements #5429 2023-07-21 21:37:41 -04:00
Andrey G 7ea020c30c
Last Boot Error: show register names (#5364) 2023-07-01 11:47:42 -04:00
rusefillc bc2a2b9ab9 only:better method name 2023-06-25 02:08:53 -04:00
rusefi b27a87b601 kia rio - hanging on cranking if ignition is enabled #5321 2023-06-15 22:01:50 -04:00
rusefi 9c9f6f3009 backup RAM error code integration with TS #5325 2023-06-14 18:40:03 -04:00
rusefi f371a4b9fd reducing code duplication 2023-06-11 23:36:38 -04:00
rusefillc e63b753b71 conditional compilation around getBackupSram 2023-05-24 08:57:01 -04:00
Matthew Kennedy 61e5b4b1ad change ObdCode to enum class builds firmware 2023-04-29 00:44:00 -04:00
Matthew Kennedy 01f7e4068d rename obd_code_e -> ObdCode
(cherry picked from commit d6534157a03d19bb2e8aeece301642c053a081d0)
2023-04-29 00:44:00 -04:00
Matthew Kennedy bb49b22294 joystick, lcd
(cherry picked from commit 61c17791b89fc6b5ae17df96d9498c088afdb09f)
2023-04-28 22:32:37 -04:00
rusefi 1723931b11 Can we handle auto-calibrate ETB TPS does not work due to weak power supply better? #5184
decoupling warning and critical
2023-03-16 16:18:28 -04:00
Matthew Kennedy dc6f53bda5
extract newton's method implementation (#5157)
* move expected, update libfirmware

* hellen ID solver uses shared Newton's method

* comment shouldn't have been moved
2023-03-07 08:45:17 -05:00
rusefi c4d7192f84 Revert "making enum less public API"
This reverts commit d4f02bbece.
2023-02-15 09:08:52 -05:00
rusefillc d4f02bbece making enum less public API 2023-02-15 08:43:15 -05:00
Matthew Kennedy a2aee25f4d
don't print "sim_warning %s" (#4959) 2023-01-10 14:08:59 -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
rusefillc c376d4de90 gcc11 is smart 2022-10-19 10:29:27 -04:00
Matthew Kennedy 940e0dc369
require ignition on for firing (#4628)
* require ignition on for firing

* too much havoc for a unit test

* patch up references

* last one

* fix changelog mangling

* fix the changelog template too

* bad merge

* fix the template again

* s

* fake battery voltage on hw ci

* ugh merge

* ugh merge
2022-10-04 20:36:03 -04:00
rusefillc 851e8e48d3 refactoring: type safety 2022-09-11 02:57:35 -04:00
rusefillc 6e71b72acc refactoring - reducing API between FW and Java 2022-09-11 02:16:47 -04:00
Andrey 2d9dbbd6b8 extracting prime_injection 2022-09-07 16:25:50 -04:00
Andrey ab4b451195 os_access.h dead? 2022-09-07 15:56:45 -04:00
Andrey 09bef1e440 tear down Engine god object #4511
just trying different things
2022-09-05 04:09:59 -04:00
Andrey 0253575c79 tear down Engine god object #4511
just trying different things
2022-09-05 03:07:03 -04:00
Andrey 5766b1eca6 tear down Engine god object #4511
just trying different things
2022-09-01 19:46:47 -04:00
Andrey c5c491eedf header 2022-09-01 11:21:00 -04:00
Matthew Kennedy b662e59707
remove some uses of EFI_ERROR_CODE (#4496)
* lua hooks

* findAngleMatch

* s

* s
2022-08-28 09:43:21 -04:00
Matthew Kennedy 423f69a842
allow logging multiple warnings at once (#4414)
* allow logging multiple warnings at once

* comment

* .Code

* Revert ".Code"

This reverts commit 2b986bd50035aeec051d11aafd83fdbc1694351c.

* add a better comparison operator instead of conversion

* dot code

* Revert "dot code"

This reverts commit 35f6ae1007c41e3b30ea129a324f33ab4205036d.

* force gcc-10 maybe?

* Revert "force gcc-10 maybe?"

This reverts commit 4ddf8bcefddd354ccdc1da682c5fff1e68d44273.

* vq

* dot code

* dead

* dot code

* return may be null

* static_vector; maybe cyclic_buffer is broken or wrong tool for the job?

* move static vector

* put cyclic buffer back how it was since we don't use it now
2022-08-17 01:12:25 -04:00
Matthew Kennedy 165e5bb869
misc fixes (#4411)
* fix warnings

* break to debugger in case of panic

* move the check

* s
2022-08-02 12:19:50 -04:00
rusefillc 55ffb45934 FSIO is dead 2022-07-14 07:52:58 -04:00
Matthew Kennedy 5d844b1ebe
Error handling cleanup (#4332)
* dead code in stm32

* rusefi.cpp can have some noreturn

* handle lua panic

* unused error codes

* simplifications of error_handling.cpp

* comment

* put that back

* guard
2022-07-07 23:49:02 -04:00
Matthew Kennedy 0cc1f729c4
Write hard faults to backup ram, print on next boot (#4324)
* use backup ram, hard fault handler improvement

* wire it up

* upload elf

* s

* I guess I'll just use strncpy

* s

* what is it even complaining about?

* neat, we don't need a cast

* cypress and kinetis

* cleanup

* ci

* guard for tests
2022-07-07 15:14:31 -04:00
Matthew Kennedy 8e107cc477
more generous script table axis limits (#4309)
* script table axis limits

* curves too, why not

* s

* s

* table type
2022-07-01 06:51:47 -04:00
Matthew Kennedy 4ada633206
Remove third trigger channel (#4226)
* remove third trigger

* clean up the honda mess

* there was nothing novel about this engine config

* include

* missed a few

* s

* x

* changelog

* don't set the third trigger input

* don't redefine the same thing 3 times

* only two inputs!

* test
2022-06-01 21:24:20 -04:00
Andrey e62877964a Move curves out of engineConfiguration in order to reduce RAM usage #4127 2022-05-01 23:43:43 -04:00
rusefillc 07f210a82b random progress & method rename 2022-04-16 17:35:59 -04:00
rusefillc f5b0094ed3 docs 2022-04-15 22:56:38 -04:00
Andrey 8413202396 random typo 2022-04-13 21:51:15 -04:00
Matthew Kennedy 7d657106d7
warning cleanup (#4020) 2022-03-22 16:53:24 -04:00
Andrey b845073a38 Mitsubishi 3A92 Support - 3 cylinder #4011 2022-03-19 17:57:35 -04:00
rusefillc f4fe1ce310
Explicit fw (#3968)
* explicit FW ID

* explicit FW ID

Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-02-27 00:49:47 -05:00
Matthew Kennedy 10be2d5f40
Remove FSIO, byeeeeeeeee (#3865)
* vestigial config

* replace last functionality

* engine/board configs include

* files that didn't need to include this

* remove FSIO implementation

* stragglers

* random little bits

* s

* s

* ConfigDefinition

* jar

* s
2022-02-02 02:03:31 -05:00
Matthew Kennedy 40d16291b0
Remove fsio part 2 (#3876)
* dead config stuff

* fsio state

* remove tests

* getEngineValue

* put part back
2022-02-02 00:49:44 -05:00
rusefillc 42deca0fd0
Main relay shutdown rebase (#3880)
* aggregate

* main relay controller handles delayed shutoff

* main relay controller handles delayed shutdown

Co-authored-by: Matthew Kennedy <matthewkennedy@outlook.com>
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-02-02 00:45:11 -05:00
rusefillc 751355a04b
Limp shutdown rebase (#3879)
* limp manager handles engine stop

* use timer

* dead relevant fsio

* this stuff needs its own ticket

* if we can comment out 'business logic' and tests do not fail it's not a great sign :(

Co-authored-by: Matthew Kennedy <matthewkennedy@outlook.com>
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-02-01 20:47:17 -05:00
Matthew Kennedy a718f3a30a
Remove fsio part 1 (#3871)
* dead includes

* move last logic out of fsio

* dead functions
2022-02-01 15:42:04 -05:00
Matthew Kennedy c6f45c5022
warnings fixes (#3851)
* unused things

* !!! actual bug !!!

* dead

* unused

* unused

* multi-bus lua RX was just broken

* make the compiler angry about it

* dead config

* alphax 2

* just call, no store

* compiler too angry
2022-01-31 18:37:42 -05:00
Andrey 5feab6f6c3 migrating to SensorType::Rpm API 2022-01-20 22:06:20 -05:00
Matthew Kennedy c176bbebc1
ui & config for fuel/ign trim tables (#3704)
* ui & config

* bump flash version

* compaction

* s

* make things happy

* fsio too

* OK, well those defaults were insane

* b

* why are these defaults insane

* adjust cylinder offset ui

* s

* cleanup
2021-12-20 21:58:53 -05:00
Matthew Kennedy cddb9484a9
make macos happy (#3699)
* s

* explicitly include it because that's a good idea.
2021-12-19 09:58:49 -05:00
Matthew Kennedy 91ec135cf8
ignition controller detects rising edge on voltage (#3636)
* ignition controller detects rising edge on voltage

* update test

* comment

* ignore negative transients

* tweak

* test
2021-12-07 21:28:04 -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
rusefillc d89e269567 Epic: Remove FSIO #2928 2021-11-28 17:47:16 -05:00
rusefi 8ed3020c07 live data for wastegate #3588 2021-11-24 15:07:48 -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 3334a6963c
oh my god we've had no asserts (#3595) 2021-11-22 17:52:03 -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
Scott Smith ba4a00d3bb
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