Commit Graph

619 Commits

Author SHA1 Message Date
GitHub gen-default-tune Action f72fb9e6f1 Auto-generated default tune 2023-12-13 05:36:41 +00:00
GitHub gen-default-tune Action 030728fea3 Auto-generated default tune 2023-12-13 02:27:27 +00:00
GitHub gen-default-tune Action ed99965820 Auto-generated default tune 2023-12-12 23:29:20 +00:00
GitHub gen-default-tune Action 6d05840072 Auto-generated default tune 2023-12-12 21:18:16 +00:00
GitHub gen-default-tune Action e953331dac Auto-generated default tune 2023-12-12 19:58:24 +00:00
GitHub gen-default-tune Action b85b30116f Auto-generated default tune 2023-12-12 07:14:36 +00:00
GitHub gen-default-tune Action 0eb4529a0f Auto-generated default tune 2023-12-11 05:09:39 +00:00
GitHub gen-default-tune Action 352f8f4bac Auto-generated default tune 2023-12-10 23:35:00 +00:00
GitHub gen-default-tune Action 2a0250024d Auto-generated default tune 2023-12-10 17:09:05 +00:00
GitHub gen-default-tune Action b82858aba2 Auto-generated default tune 2023-12-10 16:40:30 +00:00
GitHub gen-default-tune Action 4648d619ff Auto-generated default tune 2023-12-10 15:53:40 +00:00
GitHub gen-default-tune Action 10e00c93f7 Auto-generated default tune 2023-12-09 07:46:41 +00:00
GitHub gen-default-tune Action 55684791b5 Auto-generated default tune 2023-12-08 03:38:46 +00:00
GitHub gen-default-tune Action 7d0643d399 Auto-generated default tune 2023-12-07 01:47:02 +00:00
GitHub gen-default-tune Action bb9c648278 Auto-generated default tune 2023-12-07 01:20:12 +00:00
GitHub gen-default-tune Action 45b626d9cb Auto-generated default tune 2023-12-07 00:57:25 +00:00
GitHub gen-default-tune Action 9734ea612f Auto-generated default tune 2023-12-07 00:35:53 +00:00
Andrey Gusakov 9178c136ee Fix simulator 2023-12-06 19:18:05 -05:00
Andrey Gusakov b87f1e8174 CAN: show low-level error counters and flags
STM32 only
2023-12-06 19:18:05 -05:00
GitHub gen-default-tune Action e17d42dbb0 Auto-generated default tune 2023-12-06 15:03:20 +00:00
GitHub gen-default-tune Action 8696d9d177 Auto-generated default tune 2023-12-06 14:23:42 +00:00
GitHub gen-default-tune Action 897de350e1 Auto-generated default tune 2023-12-05 20:47:45 +00:00
GitHub gen-default-tune Action c953816b3f Auto-generated default tune 2023-12-05 19:27:40 +00:00
GitHub gen-default-tune Action 70ce51b3f2 Auto-generated default tune 2023-12-04 13:45:44 +00:00
GitHub gen-default-tune Action 723f7c4455 Auto-generated default tune 2023-12-04 12:33:52 +00:00
GitHub gen-default-tune Action 06d95b5757 Auto-generated default tune 2023-12-03 17:38:08 +00:00
GitHub gen-default-tune Action 4730ebbacc Auto-generated default tune 2023-12-02 17:13:47 +00:00
GitHub gen-default-tune Action 62faf47024 Auto-generated default tune 2023-12-02 03:27:15 +00:00
GitHub gen-default-tune Action 16320451c2 Auto-generated default tune 2023-12-02 02:42:08 +00:00
GitHub gen-default-tune Action 47696160cd Auto-generated default tune 2023-12-01 03:30:38 +00:00
GitHub gen-default-tune Action 014d7b740e Auto-generated default tune 2023-12-01 00:35:47 +00:00
GitHub gen-default-tune Action 62ad557f2d Auto-generated default tune 2023-11-30 00:41:05 +00:00
andreika-git 01f58132d4 Watchdog for simulator refactor 2023-11-29 09:59:15 -05:00
andreika-git b683a4f04c Watchdog for simulator refactor 2023-11-29 09:59:15 -05:00
GitHub gen-default-tune Action ac94cb42a8 Auto-generated default tune 2023-11-29 01:52:30 +00:00
GitHub gen-default-tune Action 3ee0aefcbe Auto-generated default tune 2023-11-29 01:01:08 +00:00
andreika-git 955ff6cea6 Simulator watchdog stub 2023-11-28 15:49:12 -05:00
GitHub gen-default-tune Action 731f24c57b Auto-generated default tune 2023-11-28 19:45:50 +00:00
GitHub gen-default-tune Action 7ac959ad42 Auto-generated default tune 2023-11-28 05:35:58 +00:00
GitHub gen-default-tune Action 7d1b40e460 Auto-generated default tune 2023-11-28 05:02:51 +00:00
GitHub gen-default-tune Action f0520e42a6 Auto-generated default tune 2023-11-27 19:53:33 +00:00
GitHub gen-default-tune Action e98c7d0359 Auto-generated default tune 2023-11-27 04:39:00 +00:00
GitHub gen-default-tune Action 345913165d Auto-generated default tune 2023-11-27 03:44:37 +00:00
GitHub gen-default-tune Action dfeda10b29 Auto-generated default tune 2023-11-26 15:33:30 +00:00
GitHub gen-default-tune Action fc5fb856fe Auto-generated default tune 2023-11-26 04:30:42 +00:00
GitHub gen-default-tune Action 24086333bf Auto-generated default tune 2023-11-26 03:36:46 +00:00
Andrey 523f9dad02 only:EPIC: Improve toolset for default tune canned tune generation #4871 2023-11-25 22:32:08 -05:00
Andrey b7584611b1 only:EPIC: Improve toolset for default tune canned tune generation #4871 2023-11-25 20:41:00 -05:00
GitHub gen-default-tune Action aaf597b6c3 Auto-generated default tune 2023-11-26 00:41:50 +00:00
rusefillc df8cc652e8 only:EPIC: Improve toolset for default tune canned tune generation #4871 2023-11-25 19:36:37 -05:00
Andrey 768334f70d only:EPIC: Improve toolset for default tune canned tune generation #4871 2023-11-25 19:09:42 -05:00
GitHub gen-default-tune Action a33f8fdc39 Auto-generated default tune 2023-11-26 00:07:49 +00:00
GitHub gen-default-tune Action 653c692b9b Auto-generated default tune 2023-11-25 23:32:06 +00:00
Andrey 80b65f95fc only:EPIC: Improve toolset for default tune canned tune generation #4871 2023-11-25 18:18:59 -05:00
andreika-git aa7265a5bf causeHardFault() function for different ports 2023-11-14 15:28:07 -06: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
Andrey G 1eea6c946b
Prepare for MFS on internal flash (#5686)
* Rename EFI_STORAGE_EXT_SNOR to EFI_STORAGE_MFS

Just to reduce confusion. MFS is going to be used for AT32 internal
flash.

* MFS: hide low level stuff to board file

MFS can be located on internal or external flash/eeprom.
This is board-dependent, so hide intialization and configuration
to board file.
This should also help switching to MFS on internal flash too.

* Fix simulator

* Fix comments
2023-11-03 07:30:31 -04:00
Matthew Kennedy 14a87d497e remove ccache 2023-11-02 14:30:22 -04:00
Andrey 61909b2f4e only:Simulator/win10/gcc12.2.0 assertString FAILED fix #5682 2023-11-02 09:25:50 -04:00
Matthew Kennedy 0a767edd3d prep adding Werror=shadow 2023-11-01 19:25:13 -04:00
rusefi 6b97f23eae pursuit of truth 2023-10-31 09:36:45 -04:00
rusefi 088438f8ca hd 2023-10-31 02:02:20 -04:00
rusefi 198609ecaf Non-square dimension maps #5641
copy/paste bad
2023-10-25 23:50:28 -04:00
Andrey f1c32b52e9 only: Non-square dimension maps #5641 2023-10-25 22:44:48 -04:00
rusefillc add3326ef0
dead warningEnabled global variable (#5636) 2023-10-24 18:55:29 -04:00
rusefillc d5bb7bd060 only:making boost a bit more obvious 2023-10-19 20:34:58 -04:00
rusefillc 9e6678e2a1 only:conditional guards to make troubleshooting simpler 2023-10-19 20:17:01 -04:00
Andrey a90f8d4c9f only:simulator guards 2023-10-19 13:25:19 -04:00
andreika-git f4b63d9f53 undo debug 2023-10-17 13:06:19 -04:00
andreika-git 2e6e2ec852 CANRxFrame pack/unpack 2023-10-17 13:06:19 -04:00
andreika-git 55feb0f2df debug 2023-10-17 13:06:19 -04:00
andreika-git 061abec675 more advanced handleWrapCan() 2023-10-14 16:09:08 -04:00
andreika-git 6bc83826f9 handleWrapCan() now receives packets https://github.com/rusefi/rusefi/issues/5606 2023-10-11 18:44:06 -04:00
andreika-git a02327ce4c fix handleWrapCan() for simulator 2023-10-01 17:34:13 -04:00
andreika-git fc733e4e04 CAN support for simulator/win 2023-10-01 17:34:13 -04:00
andreika-git dfd3a11b40 fix weak linkage for simulator/win compiler 2023-10-01 17:34:13 -04:00
rusefillc 92292aeddd only:docs/renaming method to reduce confusion 2023-09-25 13:57:40 -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
Matthew Kennedy 51bfa1d2ce instaflush stdout on simulator 2023-09-14 07:37:11 -04:00
Andrey 2c59859e1f testability: bench test commands should have automated coverage using simulator #5562 2023-09-12 09:59:18 -04:00
rusefillc 7e6daa69c3 testability: bench test commands should have automated coverage using simulator #5562 2023-09-11 23:29:11 -04:00
Andrey 55b6f25725 simulator from source code should have debug fix #5495 2023-09-06 23:19:44 -04:00
Andrey ba66fdcf82 reducing code duplication around assert 2023-09-05 21:28:39 -04:00
rusefillc 8249bbe5f9 only:с++ 2023-09-02 20:44:33 -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 bf59660e37 encapsulation 2023-08-08 06:59:00 -04:00
rusefillc 17050ee872 simulator crashed: too early to invok fix #5501 2023-08-07 07:49:08 -04:00
Andrey 4be0d15a64 only:minor test refactoring 2023-07-29 14:12:32 -04:00
rusefillc 6dbea703b5
Update readme.md 2023-07-29 08:29:35 -04:00
Andrey 3534294fb2 only:mailboxes unit test 2023-07-24 21:50:18 -04:00
rusefillc 68094a8b0d
only:Update readme.md 2023-07-10 14:32:19 -04:00
rusefillc 186080c136
Just need a bullet-proof solution which would work regardless of class, struct, typedef struct or not defined type (#5395) 2023-07-07 01:23:42 -04:00
Andrey 3067f13571 only:baby step towards ChibiOS 21 2023-07-06 12:41:00 -04:00
Andrey 2f5d09591a only:baby step towards ChibiOS 21 2023-07-06 12:37:59 -04:00
rusefillc c23efdc222
only:bump GCC level in simulator (#5392)
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2023-07-06 11:52:17 -04:00
GitHub gen-default-tune Action 3867cc31ff Auto-generated default tune 2023-07-03 21:02:23 +00:00
GitHub gen-default-tune Action 2423d4d332 Auto-generated default tune 2023-07-03 18:49:17 +00:00
GitHub gen-default-tune Action d89c1f0a54 Auto-generated default tune 2023-07-03 17:30:41 +00:00
Matthew Kennedy 2d24236a55 header 2023-07-03 10:29:20 -04:00
Matthew Kennedy de936802bd sim warnings 2023-07-03 10:29:17 -04:00
GitHub gen-default-tune Action 004f5dc95c Auto-generated default tune 2023-07-03 00:26:04 +00:00
GitHub gen-default-tune Action e66ec94a09 Auto-generated default tune 2023-07-02 13:27:49 +00:00
GitHub gen-default-tune Action a65369bd3c Auto-generated default tune 2023-07-01 01:34:38 +00:00
GitHub gen-default-tune Action c8411085ab Auto-generated default tune 2023-06-30 02:51:02 +00:00
GitHub gen-default-tune Action 734dfc6deb Auto-generated default tune 2023-06-30 00:09:07 +00:00
rusefi 8fe4d0c1d4 only:fail in case of failure 2023-06-29 18:53:13 -04:00
GitHub gen-default-tune Action e4fae0d4c9 Auto-generated default tune 2023-06-29 16:08:32 +00:00
GitHub gen-default-tune Action 103a537bdb Auto-generated default tune 2023-06-29 01:46:22 +00:00
GitHub gen-default-tune Action 0202c893cc Auto-generated default tune 2023-06-28 18:33:27 +00:00
GitHub gen-default-tune Action fe89ef4487 Auto-generated default tune 2023-06-27 17:10:18 +00:00
GitHub gen-default-tune Action bf21b7f785 Auto-generated default tune 2023-06-26 20:13:22 +00:00
GitHub gen-default-tune Action 54d756ce80 Auto-generated default tune 2023-06-25 04:39:57 +00:00
GitHub gen-default-tune Action cdf624e376 Auto-generated default tune 2023-06-25 03:42:08 +00:00
GitHub gen-default-tune Action 4ac3e34dbb Auto-generated default tune 2023-06-24 01:27:46 +00:00
GitHub gen-default-tune Action d16c12b0e7 Auto-generated default tune 2023-06-23 04:11:05 +00:00
Andrey 7f8f35f69f ohh look more dead! 2023-06-22 13:46:04 -05:00
GitHub gen-default-tune Action 6fc1c5f9ad Auto-generated default tune 2023-06-22 04:32:10 +00:00
GitHub gen-default-tune Action 7556d712ea Auto-generated default tune 2023-06-21 00:49:26 +00:00
GitHub gen-default-tune Action d81d1bb987 Auto-generated default tune 2023-06-20 12:47:14 +00:00
GitHub gen-default-tune Action 4e18bcc09d Auto-generated default tune 2023-06-19 15:11:14 +00:00
GitHub gen-default-tune Action 0665227ca0 Auto-generated default tune 2023-06-19 14:24:45 +00:00
GitHub gen-default-tune Action f2df4142da Auto-generated default tune 2023-06-19 03:15:10 +00:00
Andrey 07558a0713 only:typo 2023-06-18 21:11:49 -04:00
GitHub gen-default-tune Action d8ce5835ba Auto-generated default tune 2023-06-19 01:05:09 +00:00
GitHub gen-default-tune Action f4a24e2fc6 Auto-generated default tune 2023-06-19 00:01:29 +00:00
rusefillc f6def48c1d only:Improve toolset for default tune canned tune generation #4871 2023-06-18 18:55:51 -04:00
GitHub gen-default-tune Action cfd46fc50f Auto-generated default tune 2023-06-18 22:20:58 +00:00
rusefillc 1ca1c2b40b only:docs 2023-06-18 11:28:31 -04:00
rusefillc ad09e40754 only:Improve toolset for default tune canned tune generation #4871 2023-06-17 23:11:33 -04:00
mi-hol 41aef2ff5b fix review comment 2023-06-17 15:53:01 -04:00
mi-hol d0f7a9b2d8 Update rusEfiFunctionalTest.cpp 2023-06-17 15:53:01 -04:00
rusefillc 5802e0acc6 only:Improve error message so user knows what to check and fix #5335 2023-06-17 13:43:21 -04:00
GitHub gen-default-tune Action 864967755f Auto-generated default tune 2023-06-17 04:38:58 +00:00
rusefillc 60ad272548 scripts are not easy 2023-06-16 23:41:47 -04:00
GitHub gen-default-tune Action 0a8357e45d Auto-generated default tune 2023-06-17 03:15:41 +00:00
GitHub gen-default-tune Action e8c13ac116 Auto-generated default tune 2023-06-17 01:58:51 +00:00
Andrey e49abab407 only:Improve toolset for default tune canned tune generation #4871 2023-06-16 21:44:29 -04:00
Andrey 4fe7e4138b only:Improve toolset for default tune canned tune generation #4871 2023-06-16 21:32:34 -04:00
Andrey d0bb16d42f only:Improve toolset for default tune canned tune generation #4871 2023-06-16 21:22:40 -04:00
Andrey 42907e459d Improve toolset for default tune canned tune generation #4871 2023-06-16 17:33:08 -04:00
Matthew Kennedy 16e1a42ef3 simulator crash fix #101
(cherry picked from commit fd98124304)
2023-05-05 18:37:03 -04:00
rusefillc 06f10b48df simulator board name 2023-04-29 06:47:09 -04:00
Matthew Kennedy 61e5b4b1ad change ObdCode to enum class builds firmware 2023-04-29 00:44:00 -04:00
Matthew Kennedy bb49b22294 joystick, lcd
(cherry picked from commit 61c17791b8)
2023-04-28 22:32:37 -04:00
rusefillc 36397b6c0b helping simulator? 2023-04-20 11:26:17 -04:00
Andrey 82bcc9b42c progress: run more code in simulator
only:hellen-honda-k
2023-03-05 02:42:54 -05:00
Andrey 6a3a9fc449 one step back
only:hellen-honda-k
2023-03-05 02:31:34 -05:00
Andrey b064052e01 progress: bringing simulator closer to real code
only:hellen-honda-k
2023-03-05 02:19:56 -05:00
Andrey 6b4c4a5833 refactoring: vvt is not aux
only:hellen-honda-k
2023-03-05 02:07:47 -05:00
Andrey f483535a39 progress: bringing simulator closer to real code
only:hellen-honda-k
2023-03-05 01:53:11 -05:00
Andrey 7464275b00 progress: bringing simulator closer to real code
only:hellen-honda-k
2023-03-05 01:50:51 -05:00
Andrey bd72aace92 progress: bringing simulator closer to real code
only:hellen-honda-k
2023-03-05 01:28:55 -05:00
Andrey 24e3aa5cc7 progress: bringing simulator closer to real code
only:hellen-honda-k
2023-03-05 01:20:03 -05:00
Andrey 9cf426e3db progress: run more code in simulator
only:hellen-honda-k
2023-03-05 01:13:43 -05:00
Andrey f0bacdf5c4 reducing weird?
only:hellen-honda-k
2023-03-05 00:57:38 -05:00
Andrey 264f265420 CAN GPIO #4096
only:hellen-honda-k
2023-03-05 00:52:57 -05:00
Andrey db5c6661f1 style
only:mre_f4
2023-03-02 23:50:57 -05:00
rusefillc c1fea618f9 Refactoring: less confusion macro names around serial/uart/etc in connectivity fix #4999 2023-01-23 05:26:59 -05:00
rusefillc 083bafb3ba Refactoring: less confusion macro names around serial/uart/etc in connectivity #4999 2023-01-23 05:09:32 -05:00
rusefillc 6146b01a36 antilag and anti-lag #2403
TurboMarian is the ALS boss
2022-12-21 20:12:00 -05:00
rusefillc c333f94858
Update readme.md 2022-11-19 20:15:21 -05:00
rusefillc 6dbb9149cc
Update readme.md 2022-11-19 19:34:23 -05:00
rusefillc aaa4c7ea89
Create readme.md 2022-11-19 18:53:43 -05:00
Nathan Schulte d144248a6f
fix simulator build (via MinGW) (#4799)
* firmware: kill -9 dead hipLastExecutionCount

* firmware: pin_repository C includes efi_gpio.h

* firmware: controllers: tidy #endif comments

* firmware: primary_pins logic depends EFI_GPIO_HARDWARE

* firmware: only print ADC info if HAL_USE_ADC

* firmware: digital_input: tidy #endif comments

* firmware: digital_input logic depends on e.g. HAL_USE_ADC

* firmware: digital_input logic depends !EFI_SIMULATOR

* firmware: digital_input logic depends e.g. HAL_USE_ADC

* simulator: Makefile includes RUSEFI_LIB_C as CSRC

* Revert "GHA/build-firmware: pin agents to Ubuntu 20.04 (#4793)"

This reverts commit cb2477be6c.
2022-11-18 23:43:43 -05:00
Nathan Schulte 4c197b4745
simulator: use CC and CPPC for LD (#4794)
this allows to specify a different GCC when building
2022-11-18 21:15:13 -05:00
Nathan Schulte 43e8c344de simulator: compile.sh passes arguments to make 2022-11-18 10:19:54 -05:00
Nathan Schulte 946a50dd68 simulator: tweak case of rusEFI in compile.sh log 2022-11-18 10:09:53 -05:00
Nathan Schulte 777c683319 simulator: Makefile uses spaces ...
... tabs are reserved for recipes
2022-11-18 10:09:28 -05:00
Nathan Schulte 894b849e3c
simulator: add missing stdc++ include to CAN HAL LLD (#4795)
for std::remove -- GCC 12 exposes this issue
2022-11-18 09:27:54 -05:00
rusefillc 8b603aae6d ingles lo hablas 2022-10-01 06:15:00 -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
Matthew Kennedy b76a7cbcd8
simulator reads/writes configuration (#4605)
* simulator reads/writes configuration

* c_str

* include order
2022-09-23 08:47:50 -04:00
Andrey 7eb453bc54 os_access.h dead? 2022-09-07 16:00:13 -04:00
rusefi f399e275b2 servo is truly not alive 2022-09-06 16:29:12 -04:00
rusefillc fd2efcdb78
Issue 4115 (#4518)
* efiPrint NaN handling #4115

* fresh chibi

* efiPrint NaN handling #4115
2022-09-01 23:13:23 -04:00
Andrey 9d8afea152 a bit of dead code 2022-09-01 11:47:56 -04:00
rusefi 097bfb6e9c efiPrint NaN handling #4115 2022-08-31 20:00:58 -04:00
Matthew Kennedy c3d6bd7e59
Pt2001 module (#4396)
* pt2001 uses module

* read flag0

* c

* libfirmware

* makefiles

* are unit tests happy?

* bootloader
2022-08-08 08:53:08 -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
rusefillc 7cbe3692e8 Detail on how to set up iDrive or equivalent CAN button control #226
boost lua progress
2022-07-14 12:59:09 -04:00
Matthew Kennedy 3c062e02bc
Lua hooks for gear detection (#4328)
* implement

* sim has vss

* write a test

* guard
2022-07-07 23:16:56 -04:00
Matthew Kennedy e9d092f975
big delete ICU (#4270)
* big delete

* icu vestiges

* changelog
2022-07-07 15:27:59 -04:00
Matthew Kennedy a95bc3ad03
implement CAN driver for simulator (#4312)
* stub simulator CAN driver

* comments

* CAN sensor

* maybe implement?

* s

* fix

* tx and rx actually work!?!?!

* check_can_isr

* modify chibios

* Sim has no CAN on Windows (for now?)

* safer init/deinit, enable assertions

* smarter handling of missing CAN device

* better guards

* guards for windows
2022-07-03 08:25:24 -04:00
rusefillc 88b061dd2c stealing from David 2022-06-26 19:42:08 -04:00
rusefillc 2202c223fe helping simulator a bit 2022-04-30 13:08:53 -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
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 d8073e8b27
remove mock adc (#3888)
* remove mock adc

* do these do /anything/?
2022-02-03 20:43:34 -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 736c7f33d9
make the simulator smaller (#3869)
* small sim

* o2 is ok
2022-02-01 16:19:46 -05:00
rusefillc fcdb7b340d mk files refactoring
saving build
2022-01-06 22:19:00 -05:00
rusefillc 04ab6a0488 mk files refactoring 2022-01-06 21:48:48 -05:00
rusefillc a13a0a2cc9 mk files refactoring 2022-01-06 20:32:39 -05:00
rusefillc 7f0357ffcb mk files refactoring 2022-01-06 20:06:31 -05:00
rusefillc 7c0fd37dfe Live Data progress 2022-01-06 19:02:35 -05:00
Scott Smith a87be43c53
Update the simulator TS port macros to match the rest of the product. (#3600) 2021-11-23 19:15:09 -05:00
Matthew Kennedy 178ccdeb4d
simulator writes binary log (#3598)
* simulator writes log

* replace the file

* check that the sim actually fails

* put it back

* did the sim really not fail?

* good, asan does catch it
2021-11-23 11:42:45 -05:00
Matthew Kennedy 3334a6963c
oh my god we've had no asserts (#3595) 2021-11-22 17:52:03 -05:00
Matthew Kennedy bb57a4b084
detect more overflows with asan (#3582)
* overflow detector

* type list dynamic allocate

* fix the buffer length

* comment

* pr fb

* sanitize sim

* fix sim sanitizer bug

* didn't mean to turn off optimization for sim

* asan can do that, if you turn it on!

* cleaning
2021-11-20 01:38:39 -05:00
Scott Smith 5bc1949aef
Basic framework for high pressure fuel pump control (#3476)
* Basic framework for high pressure fuel pump control

* Many changes

Move calculations to fast callback
Move main object into Engine
Respond to pin changes without requiring a reboot

* Use EngineModule for HpfpController
Schedule pin off after executing pin on so we are sure it ends, even if the motor stops.
Test scheduling.
Less RAM use by only having one event and reordering fields.

* Make scheduling test actually useful - need non-0 activation angle.

Co-authored-by: rusefillc <48498823+rusefillc@users.noreply.github.com>
2021-11-19 23:06: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
Matthew Kennedy cdd27abb09
turn on c++ 20 (#3579)
* set flags

* emit initializers

* jar
2021-11-19 22:19:34 -05:00
Matthew Kennedy a29933d7f8
simulator gets a heap (#3563) 2021-11-17 10:00:12 +03:00
rusefillc 6e9db86b38 helping launch enter simulator 2021-11-16 16:34:23 -05:00
Matthew Kennedy 8cdac4cac0
remove engine pointer passing (#3556)
* some

* more

* more

* the last?!
2021-11-16 04:15:29 -05:00
Scott Smith 37da55c920
Compile each project's PCH to a separate file to reduce developer friction. (#3505)
Having to remove the precompiled header when switching from firmware to simulator to unit_tests and
back again is annoying.  Use a directory to store the precompiled header output.  Turn off
precompiled header warnings as GCC still complains even if it finds a valid one eventually.
2021-11-08 15:52:58 -05:00
Scott Smith d4132fdf01
Change getTimeNowNt to be lock free. (#3502)
Track the top two bits of the 32-bit time field, along with the bits that comprise the top half of
the 64-bit time field.  We can detect when the 32-bit field is advancing or falling back from the
global time counter as long as the change is less than about 1 billion ticks.  This shows up as
either 01 or 11 in the top 2 bits of the 32-bit time field relative to the 64-bit field.  Or is
there is no change it shows up as 00.  Changes of 2 billion or more cannot be discerned as +2
billion and -2 billion both show up as 10.

Change the simulator to use this logic to make sure it gets some exercise.
2021-11-08 08:24:20 -05:00
Matthew Kennedy 95b5c6fcf9
dead vss flag (#3499) 2021-11-07 14:36:46 -05:00
Andrey 0e6a51e5c0 export board-specific macro for stm32 pins based on board yaml #3298
meta progress
2021-10-26 10:27:10 -04:00
Matthew Kennedy efa08b329d
Fix simulator (#3360)
* fix simulator

* print out halt reason

* option to close simulator after time

* workflow calls it

* test with the bug still present

* ...and fix the bug
2021-10-17 20:07:25 -04:00
rusefillc 392c91ef69 progress 2021-10-17 18:40:05 -04:00
Matthew Kennedy 9806373dac
dead map (#3316) 2021-10-04 18:33:10 -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 b52d50bbf2
Use pch in lots of files (#3066)
* most engine.h

* most engine_configuration

* more

* more

* more

* more

* more

* moooooore

* ok I'm done for now

* oops
2021-07-26 01:05:17 -04:00
Matthew Kennedy 3518da97a7
set up precompiled header (#2971)
* ignore

* set up precompiled header

* makefile

* fixes

* cleanup

* only depend cpp on pch

* efifeatures in pch

* f7 efifeatures

* consolidate

* simulator

* proteus build

* error handling is a good one

* bootloader pch

* don't auto include pch

* dirs

* delete on clean

* bootloader cleans

* clean.sh deletes pch

* disable in bl for now

* there was a typo so maybe it'll work now

* remove todo

* don't need that any more

* don't need these parts

* don't need this part

* undo changes

* use a different cpp as example

* s

* Revert "cleanup"

This reverts commit 8de8698490.

* also unnecessary now

* buh

* comment

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-07-25 21:23:23 -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
Andrey a926357a01 making code more testable 2021-07-14 22:37:05 -04:00
Matthew Kennedy 5bd3ae3aaa
Disable closed loop idle during cranking->running taper (#2900)
* implement

* dead file?

* implement tests

* new phase
2021-07-06 08:47:06 -04:00
Matthew Kennedy 43e6cef77d
more graceful chibios assertion failure (#2859)
* no custom assert hook

* dead

* setjmp/longjmp

* always call tid hook

* tests get threadid

* simulator threadid

* kick

* stubs for kinetis

* make it happier

* noreturn

* oops

* comments

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-07-05 18:18:58 -04:00
rusefillc 995ed02ff7 helping build? 2021-07-05 11:36:23 -04:00
Matthew Kennedy 1fd5b4560b
don't debug info (#2798) 2021-06-07 09:17:56 +03:00
Matthew Kennedy f3ff40724a
simulator usability (#2794)
* simulator

* simulator is debuggable

* s

* format
2021-06-04 01:34:49 -04:00
Matthew Kennedy 5cb659a7b0
lua pwm hooks (#2687)
* pwm hook

* dedicated pins

* write hook

* UI

* more info

* zero based, clamp

* memory

* don't compile lua in bootloader at all
2021-05-20 19:01:17 -04:00
Matthew Kennedy 5a5f25244a
make the simulator usable (#2717)
* these start themselves now

* dead

* configure ports

* start serial

* dead

* minimal pins

* simulator logging works

* why not enable lua

* speeeeeed

* start lua

* spammy print
2021-05-17 12:44:02 +03:00
Matthew Kennedy 0ea1f15ca3
compile gpiochips as cpp (#2702)
* rename

* core

* structing

* more

* makefile

* structing

* 6240 compiles

* explicit cast instead of implicit narrowing

* 8888

* no extern C

* fix tests build

* extern "C"

* 33810

* 8860

* 33810

* linker

* unbreak master

* don't need that if compiling as C++

* bump config

* fix test

* tests

* unit tests bad merge

* build

* move subaru logic to cpp file

* cpp goodness

* hpp include

* this is probably the right thing to do

* simulator
2021-05-17 08:42:56 +03:00
Andrey G 54eeac2c10
Hw layer rearrangement (#2707)
* Fix unit_tests

* simulator: fix redifinition of TS_PRIMARY_SERIAL warning
2021-05-16 15:19:34 +03:00
Andrey G 8ac3de90fd
Hw layer rearrangement (#2705)
* Fix simulator compilation

* HW_SENSORS_SRC -> HW_SENSORS_CPP
2021-05-16 14:11:28 +03:00
Matthew Kennedy 6a060e5cae
remove intermediate buffer (#2668)
* remove define

* goodbye intermediate logging buffer

* free ram! woo!
2021-05-10 08:01:24 -04:00
Matthew Kennedy c26987b96b
Destroy all shared logger (#2574)
* most of shared logger

* a few more

* one more

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-21 14:28:48 -04:00
Matthew Kennedy ad71016862
rip the bandaid: find-replace most of scheduleMsg (#2572)
* biiiig find replace

* more trivial find replace

* pwm

* almost all of them

* few more

* gpio

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-21 12:53:13 -04:00
Matthew Kennedy bd1c84fa62
Logging remove 3 (#2568)
* ts logger

* sensors

* wideband too

* missed one

* init

* motors, pid, etc

* vvt

* more

* idle

* missed one

* dynoview

* launch

* can

* console IO

* s

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-20 14:09:41 -04:00
Andrey G 3d138958ce
Hip9011 (#2512)
* hip9011: coexistance with other spi devices

* hip9011: rework so SPI transfer is invoked from thread

also use polling spi exchange to avoid cache problems

* hip9011: move calculations from ADC callback to thread

* hip9011: big cleanup

* hip9011: simplify spi communication

* No need to set knockBandCustom if it is not custom

HIP9011 calculates knockBand from cylinderBore same way

* hip9011: make unit test happy

* hip9011: fix unit test

* hip9011: remove duplicated initialization, reorder

* hip9011: just renames and data type adjustments

* hip9011: rename BAND() to HIP9011_BAND()

* hip9011: move some code from lookup.cpp to logic.cpp

* hip9011: move initEngineNoiseTable to engine_configuration.cpp

* hip9011: move lookup tables to hip9011_logic.c

* hip9011: remove empty files

* hip9011: additional checks
2021-03-30 10:56:25 -04:00
Matthew Kennedy f0cf4f38ff
fix multi-serial-port insanity (#2476)
* carve out UART specific

* implement channel

* config cleanup

* use new config

* bootloader

* dead code

* s

* h7 inherits f7

* oops

* ok now it's right

* tests

* cleanup

* call setup

* put that in its own file

* cleanup

* format

* guard

* not needed

* improve guarding

* portable

* allow override of uart mode

* fixes for bootloader

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-03-28 09:06:36 -04:00
Matthew Kennedy cd4f367edd dead 2021-03-15 17:12:01 -04:00
Matthew Kennedy e0763c6994
stop trigger emulator PWM when disabled (#2443)
* simplify trig emulator

* spelling is hard

* fix various builds

* spelling again

* add command/button for external stimulation

* enable hw stim for HW-in-loop test

* s

* I does spelling good

* clear flag when disabled

* generate enough for console build

* don't disable that

* this test needs external stimulation enabled

* import

* ui improvements

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-03-11 08:38:52 -05:00
slowriot 47da1278e0
update all compile scripts to use available cores rather than a hardcoded value (#2425)
* fix typos, spelling

* add two V8 firing orders

* use the available number of CPU cores, not just 4

* add new firing orders to config

* updating generated files to include new v8 firing orders

* reverting update of auto-generated files

* correct firing order labels for new firing orders

* update all compile scripts to use available cores rather than a hardcoded value
2021-03-06 12:55:46 -05:00
Matthew Kennedy 7b33ebfa9c
build (#2399) 2021-02-24 21:55:51 -05:00
Matthew Kennedy d933d18e29
use spiPolledExchange for small transfers (#2358)
* configure for no cache

* this doesn't need a setting

* now we don't need invalidate

* reorder and comment

* mmc

* sw knock

* use spiPolledExchange for small transfers

* mock spi

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-02-17 14:48:21 -05:00
Matthew Kennedy 39884f8934
use DECLARE_ENGINE_PTR for Engine class (#2365)
* engine cleanup

* do the cleanup

* one last spot

* expand_engine noop for firmware

* simulator
2021-02-16 16:58:54 -05:00
Matthew Kennedy b995e7bcaa
include board.c from hw_ports.mk (#2311)
* set mcu type in hw_ports

* move f4 linker script

* move f7 linker script

* don't set default linker file in makefiles

* extra line

* prometheus actually didn't depend on anything special for f469

* dead line

* h7

* dead

* move board.c

* set explicit cpu type for simulator

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-02-08 07:52:31 -06:00
Matthew Kennedy 10c31c2955
-g3 to -g (#2256)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-01-31 14:13:55 -05:00
Andrey G 777979c3ca
Chibi os 20 (#2212)
* Update ChibiOS

* Fix Makefiles includes paths

* halconf.h: remove flash hack

* mcuconf: fix EXTI ptiorityes

* Digital Input: ICU: use designated initializers, initialize 'arr'

* ChibiOS: lis302dl fix

* ADC: update to new API

* UARTConfig: timeout_cb field, formating

* ChibiOS: remove _exit, _kill, _getpid

* Fix lis302dl

* Bump config versions

* chconfig_common: cosmetic changes

* stm32f4ems: commulative config update

* Update Simulator

* ALLCSRC already contain all needed ChibiOS files.

Same for ALLINC and ALLCPPSRC

* ChibiOS fix for Simulator

* ChibiOS: port lock/unlock hook and MMC over SPI timeout

* STM32F7: update configs

* STM32F7: update linker file

* Cypress: port ADC lld to ChibiOS-20

* Cypress: port SPI lld to ChibiOS-20

* Cypress: port CAN lld to ChibiOS-20

* Cypress: fix include path for rules.ld

* Cypress: update chconf.h and halconf.h for ChibiOS-20

* Kinetis: update ADC lld to ChibiOS-20

* Kinetis: update SPI lld to ChibiOS-20

* Kinetis: update UART lld driver for ChibiOS-20

* Kinetis: update chconf.h and halconf.h for ChibiOS-20

* Kinetis: fix include path for rules.ld

* Nucleo F746: update ld script

* Nucleo F746: fix compile

* Bootloader: fix compilation with ChibiOS-20, cleanup

* Bootloader: add way to pass crosscompiler using CROSS_COMPILE

* Debug build arguments

* Simulator: fix windows compilation

Exclude syscalls_cpp.cpp from compilation
2021-01-19 15:20:35 -05:00
Matthew Kennedy 55ebe223a7
Partition configs by board type (#2106)
* remove old flag

* flags

* reorder switch

* oops
2020-12-22 21:54:40 -05:00
rusefillc 26fbf0527a trigger and start button pins not displayed by "pins" command fix #2084 2020-12-16 22:53:26 -05:00
Matthew Kennedy 8ad2080df7
switch stm32 scheduling to use PWM driver (#1983)
* move to folder

* extract hardware part of microsecond_timer

* dead ST forum link

* de-volatile

* simulator build

* guard

* switch stm32 to pwm timer

* comments

* f7 mcuconf

* simulator

* guard

* warning

* header, cleanup

* constant

* less magic

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-11 00:44:40 -05:00
rusefillc 90e5630e60 avoid float -> int64 conversion #1977
cherry picking...
2020-11-23 23:33:46 -05:00
Matthew Kennedy 55379463c0
remove (#1985) 2020-11-23 20:10:17 -05:00
Matthew Kennedy f3b7a1d9da
Remove lockAnyContext, replace with CriticalSectionLocker (#1938)
* switch to CriticalSectionLocker

* that's just about all

* clean up last usage

* include hpp for sim

* need the cpp wrappers in the makefile too

* include dir

* include
2020-11-19 06:56:02 -05:00
Matthew Kennedy bb8650179c
consolidate EFI_UNIT_TEST and friends (#1940)
* restructure

* guard c++

* idle too

* status_loop.h

* consolidate definitions

* use 1/0 instead, check for existence

* missed a few

* dead define

* defs for bootloader
2020-11-11 20:34:39 -05:00
Matthew Kennedy e0bb7ad581
disable i2c, other unused features (#1891)
* dead

* more
2020-10-20 22:24:32 -04:00