Commit Graph

691 Commits

Author SHA1 Message Date
Andrey f4da504968 tooth-event angle cannot be negative 2023-10-06 12:21:55 -04:00
Andrey a6103dca56 tooth-event angle cannot be negative 2023-10-06 12:21:55 -04:00
rusefillc e4a3fb260d only: readability? 2023-10-05 22:42:00 -04:00
rusefillc 696a83d04a only: documenting the current naming mess 2023-10-05 22:32:20 -04:00
rusefillc fd69d25866 only: reducing confusion? 2023-10-05 22:03:41 -04:00
Andrey e5f7c9885c testability: bench test commands should have automated coverage using simulator #5562 2023-09-11 00:03:10 -04:00
rusefi daf4edb04e C++ 2023-09-10 23:47:44 -04:00
Andrey f0479fdc17 preparing method for reuse 2023-09-06 08:16:14 -04:00
Andrey e81f9f953a some of these error codes are quite pointless now in 2023 2023-09-05 21:32:50 -04:00
Andrey ba66fdcf82 reducing code duplication around assert 2023-09-05 21:28:39 -04:00
Andrey 464ce6ae50 default arguments are cool even while I might not even need it now 2023-09-05 16:17:13 -04:00
Andrey 70945665e9 default arguments are cool even while I might not even need it now 2023-09-05 16:01:34 -04:00
Andrey 05a8a93028 technical debt? our way to have unit tests working is to have this field instead of proper 'this' 2023-09-05 15:38:51 -04:00
Andrey c8302be4ae type clean-up to avoid nasty cast 2023-09-05 15:33:05 -04:00
Andrey 1067e27a50 this field can use a type 2023-09-05 15:20:57 -04:00
rusefi 516c72c411 let's admit we use C++ here 2023-08-31 00:01:31 -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
rusefillc 3c8cd08c61 broadcast button toggle counter #5514
only:fancy boolen with counter
2023-08-22 14:37:17 -04:00
rusefillc cf7944cd78 CAN side of automated testing fix #4630
closing simply because we have too many tickets
2023-08-21 00:40:36 -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
rusefillc b2c8e06d1c broadcast button toggle counter #5514 2023-08-20 17:27:41 -04:00
rusefillc 9febfc7070 startPwm should not FATAL fix #5497 2023-08-07 23:32:52 -04:00
rusefi 163e4ddd40 turnAllPinsOff improvements #5429
only:turning a couple of more pins off
2023-07-21 21:30:21 -04:00
Andrey c3a87bc4d3 hiding stuff from unit tests 2023-07-06 21:36:39 -04:00
rusefillc 4bbc0a8189 hiding stuff from unit tests 2023-07-06 17:01:02 -04:00
rusefillc bc2a2b9ab9 only:better method name 2023-06-25 02:08:53 -04:00
Andrey 5bdcb84d0a Too many bench test buttons are broken #5327 2023-06-15 19:30:46 -04:00
Andrey 88f662ca2d Too many bench test buttons are broken #5327 2023-06-15 15:43:35 -04:00
rusefillc 65dcdb86ec Too many bench test buttons are broken #5327 2023-06-15 11:46:39 -04:00
rusefi f77f356e6d reducing code duplication 2023-06-11 23:17:13 -04:00
Matthew Kennedy b174ef488a shared define for all LED pin mode 2023-06-05 11:49:09 -04:00
Matthew Kennedy f7e6ccd9e2 de-pointerize outputMode #49 2023-06-05 10:25:00 -04:00
rusefillc 74e2592746 p from past 2023-06-05 10:23:20 -04:00
Matthew Kennedy 12a29232cc tooth_logger.h -> pch
(cherry picked from commit ad3ea57276)
2023-05-31 15:59:02 -04:00
Andrey 8c9b17485e Revert "Allow scheduling_s to come from a pool (#4841)"
This reverts commit 5250b177
2023-05-25 10:10:17 -04:00
rusefillc 8f6f7819a4 one step back: sleep implementation not to use heap 2023-05-25 10:10:17 -04:00
rusefillc 9ec713c162 dead doc 2023-05-25 09:49:30 -04:00
rusefillc fb2e64a6be reducing GPIO code duplication 2023-05-24 10:57:09 -04:00
rusefillc b2547c629d reducing GPIO code duplication 2023-05-24 10:44:33 -04:00
rusefillc fa57f32a37 reducing GPIO code duplication 2023-05-24 10:37:02 -04:00
rusefillc 458d8982aa reducing GPIO code duplication 2023-05-24 10:34:11 -04:00
rusefillc cdf5447afb reducing GPIO code duplication 2023-05-24 10:24:44 -04:00
rusefillc 61f840fcc3 reducing GPIO code duplication 2023-05-24 09:30:19 -04:00
rusefillc cc4175f428 reducing GPIO code duplication 2023-05-24 08:51:24 -04:00
rusefillc cdd7bfe535 code style 2023-05-24 00:09:06 -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
Matthew Kennedy 2857e9527d remove specs_s struct, flatten config
(cherry picked from commit f090a97b0b)
2023-04-28 20:59:11 -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
Andrey 0c948f6448 yes, this thing works nicely 2023-02-20 23:43:58 -05:00
rusefillc a11a770ae4 Default binary should have more relaxed pinout: FATAL pin #5002
refactoring: extract method
2023-01-23 10:11:04 -05:00
rusefillc 1be06f8d08 h-bridge wastegate not alive on bench #4965
life is sad when debugger is broken
2023-01-17 13:46:54 -05:00
Matthew Kennedy 872595f302
ETB compensates for battery voltage (#4838)
* compensate battery voltage

* changelog

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2022-12-10 22:55:26 -05:00
Matthew Kennedy 5250b177c2
Allow scheduling_s to come from a pool (#4841)
* injection events use scheduling pool

* knock and prime

* bench test

* dropped this: *

* extract action before execute

* comment

* init allocated timers

* metrics

* dropped this: ,

* guard

* injection events use scheduling pool

* knock and prime

* bench test

* dropped this: *

* extract action before execute

* comment

* init allocated timers

* metrics

* dropped this: ,

* guard

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2022-12-10 17:55:51 -05:00
Matthew Kennedy 994ee2f22f
Combine angle based event (#4884)
* Remove AngleBasedEventOld/New, only AngleBasedEvent now

* this 7 year old comment of old test code can go away
2022-12-10 17:07:02 -05:00
Matthew Kennedy 769cdd32ca
TriggerScheduler cleanup (#4844)
* TriggerScheduler cleanup

* remove TRIGGER_EVENT_UNDEFINED

* remove dead overload of scheduleOrQueue

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2022-11-28 08:55:38 -05:00
rusefillc 800b6b7a95 https://github.com/rusefi/hellenNA6_issues/issues/35 2022-11-09 14:41:21 -05:00
Andrey G e7b06cbfca
compile warnings: signed vs unsigned and unused (#4713) 2022-10-30 09:47:53 -04:00
rusefillc 0283351d6c send more of Engine Sniffer data #4560 2022-10-29 21:55:35 -04:00
rusefillc 066ac7e2ea send more of Engine Sniffer data #4560 2022-10-29 21:27:49 -04:00
Matthew Kennedy 2924d98609
use offsetof instead of generated offset defines (#4696)
* constify efi_gpio, use size_t

* use offsetof instead of macros

* don't generate offsets in rusefi_generated.h

* comment explaining the madness

* java fixes

* casing
2022-10-23 16:39:18 -04:00
Matthew Kennedy 0838fd5dc4
constify efi_gpio, use size_t (#4695) 2022-10-23 08:25:47 -04:00
Matthew Kennedy b089825a4a
schedule ignition charge by angle instead of tooth (#4513)
* schedule ignition charge by angle

* same mistake as #4536

* s

* wrap sparkAngle too

* AngleBasedEventNew

* function moved

* implement scheduleOrQueue

* prints
2022-09-25 11:00:55 -04:00
Matthew Kennedy af7e4f6fe5
two modes trigger scheduler (#4598)
* two modes trigger scheduler

* asOld

* hpfp
2022-09-20 05:28:23 -04:00
Andrey b69d613192 moving IO-only away from scheduling logic 2022-09-14 00:52:24 -04:00
Matthew Kennedy 35997c6318
pwm iteration limit to avoid float math accuracy loss (#4578) 2022-09-13 21:16:35 -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
rusefillc 851e8e48d3 refactoring: type safety 2022-09-11 02:57:35 -04:00
rusefillc 6bcd29c727 send more of Engine Sniffer data #4560
new API & first usage
2022-09-10 23:42:59 -04:00
Andrey 5962cbd5c2 brutal encapsulation 2022-09-07 20:31:04 -04:00
Andrey 52869d63bb tear down Engine god object #4511
just trying different things
2022-09-07 20:25:49 -04:00
Andrey ae93591755 brutal encapsulation 2022-09-07 20:20:29 -04:00
Andrey 8c21b4ef41 brutal encapsulation 2022-09-07 19:37:11 -04:00
Andrey 6e8d248408 brutal encapsulation 2022-09-07 19:37:11 -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
rusefillc a7af8ecec9
Engine Sniffer into TS data logs fix #4535 (#4537) 2022-09-05 19:49:27 -04:00
rusefi eb976de07d lua outputs bench test 2022-08-24 13:20:14 -04:00
rusefillc c7c443ea24 https://github.com/rusefi/hellen154hyundai/issues/57 2022-08-09 13:26:11 -04:00
Matthew Kennedy 435fd9538b
Simpler thread controller (#4327)
* s

* Start -> start

* maybe tests are happy

* s

* s
2022-08-02 01:16:13 +03:00
Matthew Kennedy 2096a22319
report injector, ignition faults (#4408)
* report injector, ignition faults

* guard
2022-08-01 15:41:47 -04:00
rusefillc 6f767f603a (insert passive-aggressive smart prefix here) HARDWARE VALIDATION has disappeared fix #4405 2022-07-30 15:03:45 -04:00
rusefillc 94738f4a16 FATAL does not light up red LED on MRE with OpenBLT fix #4404 2022-07-30 14:58:43 -04:00
Matthew Kennedy b99d90b006
Start -> start (#4366) 2022-07-21 15:17:32 -04:00
Matthew Kennedy e9d092f975
big delete ICU (#4270)
* big delete

* icu vestiges

* changelog
2022-07-07 15:27:59 -04:00
Matthew Kennedy 769f7ec558
get correct stamp (#4174) 2022-05-14 23:01:02 -04:00
rusefillc 500c443a15 Timestamp Error scheduleByTimestampNt too far #3395
improving error message
2022-05-14 21:24:19 -04:00
Matthew Kennedy 9b820cf1dc
remove suspicious cast that could maybe cause an overflow (#4169)
* suspicious cast

* don't print 64b

* explicit type
2022-05-13 06:40:37 +03:00
Matthew Kennedy e4a0979dc2
Brain pin is enum class (#4108)
* change most usages to Gpio::

* board configs

* engine configs etc

* isBrainPinValid, smart gpio

* generator

* generator

* generator

* connector yamls

* kinetis enums

* cypress txt

* kinetis config

* frankenso

* config generator

* actually do it for the others

* disable skips for pr ci

* fix tle8888

* misc

* weird cast from int

* needs this operator too

* this can be an unsigned subtract

* happy tests

* s

* kinetis isConfigurationChanged weirdness

* missed J/K

* cypress efifeatures

* build script mistake (!)

* mistake in smart gpio

* debounce

* eg33

* kinetis, so needy

* it's pretty green, we can skip these again
2022-04-28 17:32:39 -04:00
Matthew Kennedy bc6a87cadc
allow enum_class in rusefi_hw_enums.h (#4104)
* make things c++ friendly

* install various canaries in coal mines

* using is much clearer than typedef

* fixing builds

* lps25

* trigger includes were a mess

* c -> c++ cleanup

* os util

* why did so many include os_util.h?

* fwd declare

* cypress/kinetis

* s

* eg33 happy

* happy sim

* cypress usb

* pch

* cypress

* doesn't need to include all that

* h7
2022-04-25 20:38:16 -04:00
David Holdeman 7de7ea6ad0
TCU features and fixes (#4082)
* add tcc pwm freq field

* add pc fields, make trans fields conditional

* make button shift fields conditional, remove duplicates

* add 3-2 solenoid fields

* add PC curves

* try combining tcc curves

* try combining pc curves

* use airmass instead of tps for pc

* reduce airmass axis

* increase axis digits

* duplicate for per shift, change names

* add pc per shift arrays

* try moving tables

* move more tables

* init solenoid pins

* start adding pwm stuff, change some array names

* fix gear issue

* fix multiple shift issue

* fix transmission controllers not working

* fix transmission controllers not working 2

* rearrange and virtual some things

* make getMode const

* fix pwm
2022-04-18 20:09:27 -04:00
David Holdeman fe39f58022
Some untested TCC control (#4066)
* rebase

* save changes

* save changes

* fix whitespace

* try enum class

* change field name

* Add TCC pin fields

* add TCC tables

* add a bit of TCC control logic
2022-04-12 19:15:09 -04:00
rusefillc 014b8293a5 User board-specific terms in error messages #3886
progress
2022-02-03 12:45:26 -05:00
Andrey 08c1c5d969 Remove legacy check fix #3808 2022-01-18 16:01:27 -05:00
Andrey 7e007cc534 https://rusefi.com/forum/viewtopic.php?p=44100#p44100 2022-01-18 10:24:08 -05:00
rusefillc 64387689ff On m_event vs lobe vs scheduling #3804 2022-01-18 00:45:24 -05:00
rusefillc e76aa1cc60 https://github.com/rusefi/alphax-2chan/issues/14 2022-01-16 23:03:14 -05:00
rusefillc f43ef3a8b6 warning(CUSTOM_ERR_6586, "attempting to change unassigned pin") 2022-01-16 15:53:27 -05:00
rusefillc 7f0357ffcb mk files refactoring 2022-01-06 20:06:31 -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