Commit Graph

574 Commits

Author SHA1 Message Date
Mingjie Shen 495f0ea8c4 Fix invoking virtual functions from constructors
Virtual functions should not be invoked from a constructor or destructor
of the same class. Confusingly, virtual functions are resolved
statically (not dynamically) in constructors and destructors for the
same class. The call should be made explicitly static by qualifying it
using the scope resolution operator.
2023-05-24 15:27:09 -04:00
rusefillc 2f19ca94a8 https://github.com/rusefi/fw-AT-START-F435/issues/1
UNUSED flexibility
2023-05-23 23:38:02 -04:00
Matthew Kennedy 9fff7998f7 extra define
(cherry picked from commit 83dc73f0d44fa1bcbda4b4c97f15bec50c120863)
2023-04-29 07:07:28 -04:00
Matthew Kennedy 4935cf5fb3 more dead stuff
(cherry picked from commit b9d065ae4e867e65d2ab9049961a4044d967013d)
2023-04-29 05:15:34 -04:00
Andrey 51d0f6e347 it's going to be painful 2023-04-29 00:44:00 -04:00
Matthew Kennedy 61e5b4b1ad change ObdCode to enum class builds firmware 2023-04-29 00:44:00 -04:00
rusefi 4add0450e3 kine: read packets as packets #5171
i need a vacation or else
only:hellen-honda-k
2023-03-10 23:02:01 -05: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
Andrey e9da0eeed2 K
only:mre_f4
2023-03-04 16:00:50 -05:00
Andrey ca850a8437 only:mre_f4 2023-03-01 17:20:22 -05:00
Matthew Kennedy 6e89e71d0a
more flexible GPPWM (#5032)
* gppwm improvements!

* test

* ui

* autoscale
2023-02-06 08:53:31 -04:00
rusefillc 40738fad12 smarter template 2022-12-13 16:47:35 -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
Matthew Kennedy 614dc2f260
Strictly validate stack use in hardware CI (#4880)
* firmware error in case of low stack only on HW CI

* send date

* I don't java good

* I still don't java good

* send the right command

* I guess we can check it on every single test?

* javaaaaaa

* atoi breaks on later non-digit

* avoid sscanf use (for atoi)

to avoid bloating the stack

* less churn

* less churn

Co-authored-by: Nathan Schulte <nmschulte@desmas.net>
2022-12-08 13:20:55 -05:00
rusefillc 3606580178 error=parentheses 2022-12-03 01:12:31 -05:00
rusefillc 5e62595d69 reduce flash footprint by smarter code generation #4163 2022-12-03 00:51:41 -05:00
Andrey 3070e1b3c8 ETB duty cycle jitter #4833 2022-11-29 14:59:08 -05:00
Andrey 5b88c6b535 exp average is pretty cool 2022-11-28 19:22:45 -05:00
rusefillc 9321aae600 ETB duty cycle jitter #4833 2022-11-27 18:13:10 -05:00
Matthew Kennedy 8ea5969607
fix warnings (#4840)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2022-11-27 10:11:14 -05:00
rusefillc 926168a0d4 docs 2022-11-27 00:08:34 -05:00
rusefillc c8fa9a1ead reducing confusion 2022-11-25 18:59:43 -05:00
Nathan Schulte fd1115d01a
code style, GPS fixes (test, firmware) (#4822)
* tidy NMEA

* const in nmea

* correct gps test output

* fix GPS UART print statements

* cleanup feature toggles in settings

* fix comment typos, misc whitespace
2022-11-23 07:01:34 -04:00
Andrey 4a26b0973d A gem of dead code 2022-11-05 21:57:26 -04:00
Andrey c6e34be447 A gem of dead code 2022-11-05 21:53:38 -04:00
rusefillc f9fa729d8d less horrible constant name 2022-10-27 22:17:50 -04:00
rusefillc fe9b50e4b7 random progress 2022-10-27 21:32:23 -04:00
rusefillc ac08ffbdc4 GM SENT ETB bench test in NJ #4688 2022-10-26 10:37:35 -04:00
Andrey G 68e007caa3
loggingcentral: hotfix (#4654) 2022-10-10 19:12:04 -04:00
Andrey G b5ebb7d00e
Logging asserts (#4652)
* logingcentral: check final string for prohibited chars

Invalid char can come from arguments, not only format string so
scan final buffer.

* logingcentral: comment say '\r' is also not allowed

* logingcentral: just replace all non-printable chars with space

Do not assert

* loging: remove strlen()
2022-10-10 17:14:44 -04:00
Matthew Kennedy a9cc3223dc
plumbing for 4513 (#4599)
* plumbing for 4513

* not static
2022-09-20 06:19:51 -04:00
rusefillc 50cef9a201 tear down Engine god object #4511 2022-09-15 22:12:49 -04:00
rusefillc 52f52376de tear down Engine god object #4511 2022-09-15 21:55:15 -04:00
rusefillc 9e7f36a5ca tear down Engine god object #4511 2022-09-15 21:28:27 -04:00
Andrey G a269287b70
Os util update (#4574)
* chVTSetAny: "this could be simplified"

* os_utils: use Chibi's CriticalSectionLocker
2022-09-13 17:57:13 -04:00
Andrey G 55c1f53c75
dead code, reduce typedefs (#4566)
* Do lightweight checks first

* Dead getTimeIgnitionSeconds()

Dead since 81fffe87b7

* Get rid of efitime_t.

Purpose are not clear. Use efitick_t where ticks are used,
use efitimeus_t for uS, use efitimems_t or efitimems64_t for mS.

* Fix unit tests

* Fix misc: stm32f1_test_project
2022-09-11 16:08:11 -04:00
Andrey G 8069506135
EFI_PROD_CODE guard around port_mpu_util.h include (#4564) 2022-09-11 13:42:07 -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
Andrey b756456450 tear down Engine god object #4511
just trying different things
2022-09-05 04:00:24 -04:00
Andrey 0253575c79 tear down Engine god object #4511
just trying different things
2022-09-05 03:07:03 -04:00
Andrey a0b52eeb2f different file names for different entities 2022-09-04 23:11:19 -04:00
Andrey 1da080c529 reducing warnings 2022-09-01 21:04:52 -04:00
Andrey fcd0636a01 tear down Engine god object #4511
just trying different things
2022-09-01 19:00:16 -04:00
Andrey b89217b596 reducing confusion between library header and rusefi main repo header 2022-09-01 11:35:35 -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
rusefillc db8a965288 unconditional VVT PID logging 2022-08-17 00:47:31 -04:00
Matthew Kennedy 923d2c2e44
unexpected contains information about why it failed (#4393)
* unexpected can contain information

* info printing

* sensors return appropriate error codes

* remove reliance on undefined behavior

* s
2022-07-28 10:04:28 +03:00
Matthew Kennedy b99d90b006
Start -> start (#4366) 2022-07-21 15:17:32 -04:00
Matthew Kennedy 2b2eb04aba
libfirmware gets efi::size (#4354) 2022-07-18 01:56:58 -04:00