Commit Graph

596 Commits

Author SHA1 Message Date
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 f090a97b0b7771dfe02e4b4bb9919d50a6a11ef5)
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