Commit Graph

2104 Commits

Author SHA1 Message Date
rusefillc c597d6da62 https://github.com/andreika-git/hellen-one/issues/173 2022-07-31 04:39:02 -04:00
rusefillc b0e87c789d [SECURITY] Cheap password protection against tune modification #4243
ohh cute we have name overlap!
2022-07-30 11:28:56 -04:00
rusefillc 026a28d651
Adc mux (#4379)
* adc mux

* cypress is a special ADC size case

Co-authored-by: Matthew Kennedy <matthewkennedy@outlook.com>
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-07-26 14:12:00 +03:00
rusefillc a020a4cf05 safer without LED 2022-07-26 04:35:12 -04:00
Andrey G cbef71e97c
Openblt to dfu jump fixed (#4367)
* OpenBLT: supress "target 'startup_xxxxxx.o' given more than once in the same rule" warning

* OpenBLT: check for DFU request, do not ignore dead beef
2022-07-22 07:43:15 -04:00
Andrey G 59eee6641c
Add "Reset to OpenBLT" button (#4364)
Similar to "Reset to DFU", but uses different seed
2022-07-22 08:21:11 +03:00
Matthew Kennedy 88b8e57e10
detect too short/too long boost (#4363) 2022-07-21 15:53:57 -04:00
Matthew Kennedy b99d90b006
Start -> start (#4366) 2022-07-21 15:17:32 -04:00
rusefillc 15f2725282 more on MRE BT drama part 2 2022-07-18 02:15:31 -04:00
Matthew Kennedy d413b28a77
GDI: add min/max boost time config (#4343)
* add min/max boost time config

* add cast

* generated

* UI
2022-07-16 02:23:05 -04:00
Matthew Kennedy 52f2d3fd64
pt2001 sim project (#4342)
* sim project files

* wave list

* project files

* ignore simulator build files

* ignore .def.hex too

* wave list and readme

* readme
2022-07-14 17:42:57 -04:00
Matthew Kennedy c55873593d
pt2001 updates (#4340)
* delete registers/

* update gitignore

* readme

* Revert "delete registers/"

This reverts commit de10448d5479487b529b4e9ee551f45f271daa8c.

* remove dead dram constants

* switch to use generated C source instead of copy/paste

* more memory map
2022-07-14 12:47:51 -04:00
rusefillc 25cc8ed0df
STM32_HSE_BYPASS where we need it (#4338)
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-07-11 04:30:49 -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
rusefillc 9e26fe007e debug is set to idle mode, but none of the debug fields show anything #4335
reducing confusion
2022-07-07 23:04:19 -04:00
Matthew Kennedy e9d092f975
big delete ICU (#4270)
* big delete

* icu vestiges

* changelog
2022-07-07 15:27:59 -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 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
Matthew Kennedy b92c0149d6
get rid of setSerialConfigurationOverrides (#4274)
* get rid of setSerialConfigurationOverrides

* missed a few

* kinetis
2022-06-23 19:42:09 -04:00
Matthew Kennedy 4d7fe35c5c
clean up sd overrides (#4272) 2022-06-23 09:15:51 -04:00
rusefillc 2e8559e72e symmetrical logging 2022-06-19 11:03:26 -04:00
rusefillc c8eb7af400 docs 2022-06-07 17:13:21 -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
Matthew Kennedy 9445e73dfd
500 byte blocking factor (#4227) 2022-06-01 20:27:20 -04:00
rusefi 1d629df884 trying to reduce confusion x2 2022-05-30 17:06:56 -04:00
Matthew Kennedy e8be471b46
bail from trigger_central (#4210) 2022-05-29 10:42:08 -04:00
rusefillc 3dc70db9b1 less confusing error message https://rusefi.com/forum/viewtopic.php?p=45456#p45456 2022-05-28 17:46:45 -04:00
rusefillc 00f44bc2e2 making file reuseable 2022-05-26 23:54:30 -04:00
rusefillc de10b8c473 unique file name seems a bit more convenient 2022-05-26 23:43:44 -04:00
rusefillc 5c698b98b4
why does this fail? (#4196)
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-05-26 20:54:36 -04:00
rusefillc 7700548b7a
how are these layout files used? is this change legit? (#4198)
* reducing OpenBLT file duplication

* Revert "Revert "what could possibly go wrong with MRE""

This reverts commit 124375b07a.

Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-05-25 17:10:41 -04:00
rusefillc bb76a8f7ad Matt drives H7 #4175 2022-05-24 18:28:16 -04:00
rusefillc 03fa7c7d95 reducing code duplication, also one step back with HSE 2022-05-24 16:25:16 -04:00
rusefillc d4066acc14 reducing code duplication 2022-05-24 16:05:07 -04:00
rusefillc f35e0a634e reducing code duplication 2022-05-24 15:45:06 -04:00
rusefillc 54268843b8 reducing code duplication 2022-05-24 15:31:14 -04:00
rusefillc 4af557d7ac promoting openblt to it's own folder 2022-05-24 15:23:55 -04:00
rusefillc 35eb39e11e typos 2022-05-24 15:07:31 -04:00
Matthew Kennedy 885693d5a5
correct channels (#4190) 2022-05-19 19:09:41 -04:00
Matthew Kennedy 367f58675e
harley (#4188) 2022-05-19 16:44:56 -04:00
Matthew Kennedy c6f46128d6
prototype overcurrent protected driver (#4029)
* stub passthrough protected driver

* plumbing

* include the thing

* signature

* dead

* tdg pdm build task

* s

* pdm pins

* tdg

* init properly

* remove gaps

* board doesn't fatal on start
2022-05-17 23:49:18 -04:00
rusefillc 500c443a15 Timestamp Error scheduleByTimestampNt too far #3395
improving error message
2022-05-14 21:24:19 -04:00
rusefillc 7597b2c0eb
.ini image fix (#4161)
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-05-10 20:06:45 +03:00
rusefillc 683a723d2f
CAN category (#4148)
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-05-09 16:49:23 -04:00
rusefillc 82cb7a07da spelling 2022-05-02 16:08:04 -04: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
Matthew Kennedy 648f9e623d
fix proteus legacy vbatt (#4092) 2022-04-25 17:08:04 -04:00
Matthew Kennedy 16de438ab8
knock threshold table fix (#4077)
* fix knock threshold table

* defaults

* knock controller is engine module

* testable

* test builds

* knock tests work

* s

* format

* everyone loves changelogs
2022-04-18 08:03:16 -04:00
rusefillc 9b067b1a5a we need a bit extra now 2022-04-17 22:48:48 -04:00
rusefillc 70e4d118ef very random progress 2022-04-16 17:04:35 -04:00
Matthew Kennedy 6358a467ce
exti uses a queue (#4027)
* exti uses a queue

* TRIGGER_BAIL_IF_SELF_STIM
2022-04-03 03:22:54 -04:00
rusefillc 5afed85479 We have working runtime RAM detection - we shall use it for Lua #3970 2022-03-27 19:39:40 -04:00
Matthew Kennedy 7d657106d7
warning cleanup (#4020) 2022-03-22 16:53:24 -04:00
rusefi cd2d93bc39 typo & progress 2022-03-15 15:50:39 -04:00
rusefillc 4f15fc6179 https://github.com/rusefi/rusefi/pull/3976
maybe probably help
2022-03-02 18:52:00 -05:00
rusefillc 2ab8a3df4e Feature request: odometer for engine break #3857 2022-02-25 00:46:45 -05:00
Andrey G fd6a0d10a5
ports: stm32f7: ld file: fix typo (#3956) 2022-02-23 10:03:44 -05:00
Andrey G 788ac5508d
Flash size on eg33 (#3955)
* subaru-eg33: 1M of flash is available for FW and bootloader

* ports: stm32f7: allow board define its flash size, otherwise 512K
2022-02-23 07:36:58 -05:00
Matthew Kennedy 07e922bb4b
mitigate F7 flash error by making the image smaller (#3859)
* grumble

* do it for all F7
2022-02-19 15:56:44 -05:00
rusefi 4d92336362 Revert "SD card read prefetcher (#3814)"
This reverts commit 1311f45ad4.
2022-02-13 19:03:09 -05:00
Andrey G 0e8e5acd94
usb descriptor: we are bus powered and can consume up to 400mA (#3933) 2022-02-13 16:12:22 -05:00
Matthew Kennedy 1311f45ad4
SD card read prefetcher (#3814)
* block cache

* efi::size

* extract function and prefetch at start

* comments

* s

* s

* bool result

* no prints

* refactoring

* enable only on some ECU

* normalize

* adjust defines

* is_protected

* naming, comment

* cleanup

* typo

* priority

* mem

* not that mem
2022-02-09 15:40:37 -05:00
rusefillc c8b094ce6a L9779WD driver L9779 #3768
oops
2022-02-09 08:14:28 -05:00
rusefillc 2d746e5733 L9779WD driver L9779 #3768 2022-02-09 08:00:30 -05:00
Matthew Kennedy 70ac0c378b
support lps22 (#3900)
* support lps22

* s

* changelog, UI
2022-02-07 17:09:51 -05:00
rusefillc 3cf6a392cb I2C EEPROM support #3860
helping build
2022-02-06 21:26:22 -05:00
rusefillc 8892cd26ff I2C EEPROM support #3860 2022-02-06 19:48:20 -05:00
rusefi ad57fd1628 I2C EEPROM support fix #3860
bare bones support works
2022-02-06 19:39:21 -05:00
Andrey G 10cab3390a
L9779: update (#3899)
* L9779: update

* L9779: cleanup macro
2022-02-06 17:47:53 -05:00
rusefi a1ccdb1bd9 unused code? 2022-02-06 17:44:58 -05:00
rusefi 61ec6b3436 I2C EEPROM support #3860 2022-02-06 17:23:07 -05:00
Andrey G c53fd0eaf9
L9779: update driver (#3898)
* L9779: update driver

* L9779: missed chip_init

* L9779: signature
2022-02-06 11:39:37 -05:00
Andrey G a50f848857
L9779: initial driver (#3897)
* smart_gpio.cpp: glue to L9779

* L9779: fill with some code

* L9779: missed getDiag

* L9779: no l9779 on subaru-eg33 board
2022-02-06 09:47:18 -05:00
Matthew Kennedy 2f8acb13be
fix f4 standby (#3894)
* fix the bug

* wake on PD0 = CAN RX

* cleanup
2022-02-05 07:25:09 -05:00
rusefillc 409d05ace4 I2C EEPROM support #3860
let's go with EE24 for now
2022-02-04 22:03:12 -05:00
rusefillc b692437510
Wider usage of contrib (#3892)
* I2C EEPROM support #3860

let's use contrib on all F4

* I2C EEPROM support #3860

let's use contrib on all F4, step 2

* I2C EEPROM support #3860

let's use contrib on all F4, step 3

* I2C EEPROM support #3860

let's use contrib on all F4, step 4

* I2C EEPROM support #3860

huh

* I2C EEPROM support #3860

all the way

Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-02-04 21:50:21 -05:00
Matthew Kennedy d8073e8b27
remove mock adc (#3888)
* remove mock adc

* do these do /anything/?
2022-02-03 20:43:34 -05:00
rusefillc 014b8293a5 User board-specific terms in error messages #3886
progress
2022-02-03 12:45:26 -05:00
Andreika 2beca221a3
hellen_board_id + hellen-common.mk (#3885)
* Hellen_board_id

* move EXTI init before config load

* add NT2USF()

* Hellen_board_id unit-tests

* hellen-common.mk

* fix for older macos compiler
2022-02-03 11:24:31 -05:00
Matthew Kennedy 53297cb1fd
fix (#3877) 2022-02-01 18:40:40 -05:00
Matthew Kennedy 729e107474
we have other places to set these MCU values (#3875)
* we have other places to set these values

* missing parts

Co-authored-by: rusefillc <rusefillc@gmail.com>
2022-02-01 18:18:16 -05:00
rusefillc ca98e270e1
safer file name (#3861)
* safer file name

* safer file name

Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-01-31 21:51:32 -05:00
rusefillc 9553942c7c Revert "I2C EEPROM support #3860"
This reverts commit 45d39906bd.
2022-01-31 20:39:20 -05:00
rusefillc 45d39906bd I2C EEPROM support #3860 2022-01-31 19:48:53 -05:00
rusefillc be4184b42d I2C EEPROM support #3860 2022-01-31 18:58:39 -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
Matthew Kennedy 5865f65e1e
remove getDebugChannels (#3850) 2022-01-27 19:21:05 -05:00
rusefillc 051ca7ac92 docs 2022-01-26 13:13:06 -05:00
rusefillc 6a388ecd6e https://github.com/rusefi/alphax-2chan/issues/22 2022-01-22 17:28:11 -05:00
rusefillc 91e8d5ac64 https://github.com/rusefi/alphax-2chan/issues/22 2022-01-22 16:50:58 -05:00
Andrey 3b6ecb432b migrating to SensorType::Rpm API 2022-01-20 22:38:08 -05:00
NMSTEC c8fdd25d5c
Add comments to Stop & Stby modes (#3798) 2022-01-17 13:11:24 -05:00
rusefillc 54b70fbc3c PA0 wake up - sharing is caring? 2022-01-17 01:25:31 -05:00
rusefillc a3f2dc84ae https://github.com/rusefi/alphax-2chan/issues/17 2022-01-16 10:48:31 -05:00
rusefillc 1d1bebb264 Catch up with Chibios 20.3 #2555 2022-01-15 21:43:01 -05:00
rusefillc 6ca6c53786 refactoring? 2022-01-14 22:45:49 -05:00
rusefillc 71b2dc762a https://en.wikipedia.org/wiki/Pi 2022-01-14 21:23:27 -05:00
NMSTEC 6f23d2be34
F429 Working Stby, Stop & Wake PA0 (#3787) 2022-01-12 23:18:58 -05:00
rusefillc 240c6fe8b6 GDI red FATAL led on cranking fix #3766 2022-01-12 01:01:33 -05:00
rusefillc 963c168788 Code style for methods with zero arguments #3535 2022-01-11 22:26:24 -05:00
rusefillc d0d8e95bd3 L9779WD driver #3768 2022-01-10 19:15:36 -05:00
rusefillc 373d619c16 L9779WD driver #3768 2022-01-10 16:53:38 -05:00
Andrey G f106afd9e1
F429 discovery ram dev (#3761)
* stm32f429-discovery: mostly copy-paste from ChibiOS-Contrib

* STM32F429-discovery has external SDRAM

* F429-Discovery: add simple memory test for SDRAM (disabled)

* Revert "random piece of https://github.com/dron0gus/rusefi/tree/f429-discovery-ram-dev"

This reverts commit c58a2f5ecb.

Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-01-10 16:14:39 -05:00
Matthew Kennedy b4d916c913
per-board pre-low-power handlers (#3752)
* per-board pre-low-power handlers

* per-chip standby options

* default implementation
2022-01-10 08:37:05 -05:00
Andrey G 2d1fb8a68c
Sdram preparations (#3764)
* ports: stm32f4: not all stm32f4xx are stm32f407, let board decide

* Do not include mcuconf_community.h in port's mcuconf.h usign relative path

as override file can be provided in board directory.
2022-01-10 08:31:29 -05:00
rusefillc 0d8e4d5222 AlphaX few bytes of progress 2022-01-10 01:47:06 -05:00
rusefillc c58a2f5ecb random piece of https://github.com/dron0gus/rusefi/tree/f429-discovery-ram-dev 2022-01-09 22:45:46 -05:00
Andrey G 0860caa72b
Enable ENABLE_AUTO_DETECT_HSE only if STM32_HSECLK is not defined (#3758)
Some board (like stm32f429-disco) with SDRAM need clock to be
enabled in __early_init (before .bss and .data initialization).
So if STM32_HSECLK defined - skip clock detection.
2022-01-09 17:39:29 -05:00
Andrey G d06c157099
Ports: STM32F4: add optional external SDRAM (#3762) 2022-01-09 17:39:10 -05:00
rusefillc 0fc9fcdb63 GDI Epic #1448 2022-01-08 20:16:01 -05:00
Andrey G 74b9ce8a8f
USB: use OTG1/OTG2 for serial over USB depending on which enabled (#3757) 2022-01-08 16:33:48 -05:00
Andrey G 29ec6d7381
mk files random cleanup (#3759) 2022-01-08 16:33:34 -05:00
Andrey G 752802b0cc
CAN: do null check first (#3755)
Otherwise it will emit strange error if both can are disabled
2022-01-08 10:25:21 -05:00
rusefillc c74f6e7c29 docs 2022-01-07 21:35:21 -05:00
rusefillc 35dece3375 docs 2022-01-07 19:26:43 -05:00
rusefillc 8e0590fe91 docs 2022-01-07 18:57:23 -05:00
NMSTEC 90f4306c4d
Stop & wakeup working on rising edge (#3747)
* Stop & wakeup working on rising edge

* Standby & Sleep mode working Using PA0 only.

* Stop & standby works with wake from PA0.
Added alternative interrupt method to STOP

* Removed hand screwery on registers
2022-01-07 16:46:28 -05:00
Andrey G 020727d65b
TLE8888: do not allow direct gpio drive for Push Pull outputs (#3748)
Some register settings also needs to be changed. Change of direct
drive input is not enought.
2022-01-07 14:11:21 -05:00
rusefillc 914deedb0f TLE8888 diag says OK on disconnected pins and bench test #3737 2022-01-03 20:33:51 -05:00
rusefillc a223ec7ab9 smart diag into bench test 2022-01-03 14:21:54 -05:00
rusefillc 47444519d6 typo 2022-01-03 03:09:14 -05:00
rusefillc e9498f64db GDI/HPFP: Set HPFP current/timing params on MC33816 #3736 follow-up 2022-01-03 02:13:47 -05:00
Scott Smith 79b38d894b
GDI/HPFP: Set HPFP current/timing params on MC33816 (#3736) 2022-01-03 01:46:00 -05:00
Matthew Kennedy 6b6fd5e6e8
fix dual CAN init, update UI (#3719)
* CAN init sequence

* config & UI cleanup

* ui

* simplify
2021-12-24 23:33:54 -05:00
rusefillc 2205a57024 Second CAN #3687 2021-12-22 22:02:34 -05:00
rusefillc f350338642 Second CAN #3687 2021-12-22 20:43:08 -05:00
rusefillc cb5357890b Second CAN #3687 2021-12-22 20:39:07 -05:00
rusefillc 205177a8ce Second CAN #3687 2021-12-22 20:15:22 -05:00
rusefillc 15daec77e6 Second CAN #3687 2021-12-22 20:15:22 -05:00
rusefillc 4ad1f887fd Second CAN #3687 2021-12-21 01:10:37 -05:00
rusefillc 7b0179aaa3 Second CAN #3687 2021-12-21 00:48:13 -05:00
rusefillc 66f82a0cdb 2 byte table axis #3045 2021-12-19 22:43:10 -05:00
rusefillc 9170fd17a1 Second CAN #3687
what could possibly go wrong?
2021-12-19 11:28:42 -05:00
Matthew Kennedy 408d4c6ebf
multi CAN plumbing (#3688)
* framing for multi CAN

* typoooooooo
2021-12-10 17:08:10 -05:00
rusefillc 5830975040 rusEFI console ISO-TP via PCAN #3667
fixing build #3
2021-12-08 16:24:54 -05:00
Andreika 72cefd42de
CAN ISO-TP progress (+unit-tests fix) (#3677)
Co-authored-by: Andrei <andreikagit@users.noreply.github.com>
2021-12-08 15:11:19 -05:00
rusefillc 3a33e59b86 rusEFI console ISO-TP via PCAN #3667 2021-12-08 12:01:28 -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
Matthew Kennedy c0b37d78e4
testing stm32 stop/standby (#3666)
* testing stop/standby

* comments

* guard

* s

* we shall figure out f7 later

* ok maybe we do worry about f7

* comments and tweaks

* f7

* f4 maybe probably
2021-12-07 15:12:33 -05:00
rusefillc b778aa7173 Pause CAN broadcast on engine stop #3665 2021-12-07 10:35:52 -05:00
rusefillc 1dd3370b56 https://rusefi.com/forum/viewtopic.php?f=18&t=2236 2021-12-06 21:31:49 -05:00
Andrei c6fa50d196 CAN update 2021-12-03 21:44:15 -05:00
rusefillc 53d50b5076 doc 2021-12-03 09:57:15 -05:00
Andreika 90c56e8643
more trigger_adc & cypress fixes (#3642)
Co-authored-by: Andrei <andreikagit@users.noreply.github.com>
2021-12-01 17:26:58 -05:00
rusefillc 7db1bb87f5 trigger_adc helping cypress 2021-12-01 15:26:38 -05:00
rusefillc 251bdfc12a trigger_adc helping cypress 2021-12-01 15:09:34 -05:00
rusefillc 51b2666d2c trigger_adc helping cypress 2021-12-01 14:40:36 -05:00
rusefillc c80a37503e trigger_adc helping simulator 2021-12-01 14:17:16 -05:00
rusefillc aaf732f738 trigger_adc unit tests 2021-12-01 13:35:44 -05:00