Commit Graph

2313 Commits

Author SHA1 Message Date
rusefillc 0e39ace44d todo? 2023-03-04 20:34:43 -05:00
rusefillc 180ae9b593 L9779WD driver L9779 #3768 2023-03-04 20:32:22 -05:00
rusefillc c42917a4dc k-line
only:hellen-honda-k
2023-03-03 22:03:00 -05:00
rusefillc 13eadd4195 default honda k firmware hangs up on any TS burn #5149
only:hellen-honda-k
2023-03-03 21:33:44 -05:00
rusefillc fd55cbd997 k-line 2023-03-03 21:27:48 -05:00
Andrey 157e5fcf9e K 2023-03-02 21:29:40 -05:00
rusefi 696f8d566b Native SENT TPS input #5079 2023-03-01 18:56:06 -05:00
rusefi d7778b258d Native SENT TPS input #5079
only:mre_f4
2023-03-01 15:47:37 -05:00
Andrey 68fee9905f Native SENT TPS input #5079
hasValidFast progress!

only:mre_f4
2023-03-01 15:23:38 -05:00
Andrey 28c3af682d Native SENT TPS input #5079
a bit of progress
2023-02-28 22:11:38 -05:00
Andrey 3f537a66fa docs 2023-02-28 22:11:38 -05:00
Andrey 395af95d1e random CAN clean-up 2023-02-26 20:25:24 -05:00
Andrey f5ba716c5b explicit errors are best 2023-02-26 20:25:24 -05:00
Andrey eb239f7278 separate status for separate state 2023-02-26 20:25:24 -05:00
Andrey b5c27f01a6 we have centralized SPI management? do we? 2023-02-26 20:25:24 -05:00
Andrey 3bff1ea14d placing board stuff into board folder, reducing hacky code 2023-02-26 20:25:24 -05:00
Andrey 818ff54948 adding flexibility 2023-02-26 20:25:24 -05:00
Andrey e6a4c66fa7 we have weird unconditional coupling with ST_STM32F4_DISCOVERY #5134 2023-02-26 17:18:39 -05:00
Andrey G 298830ed82
can msg tx: do not ignore bus argument (#5124)
bus argument was introduces in 12c899ddca
but was ignored.
2023-02-23 17:17:27 -04:00
Andrey G ddab1536de
Kline: do init from initHardware() and stop/start from applyNewHardwareSettings() (#5125) 2023-02-23 17:05:59 -04:00
rusefillc 8df963882a Native SENT TPS input #5079 2023-02-20 11:52:10 -05:00
rusefillc bb3b43f038 Native SENT TPS input #5079 2023-02-20 11:38:20 -05:00
Matthew Kennedy 12c899ddca
wideband on second can (#5108) 2023-02-20 11:29:25 -05:00
rusefi f849522474 random flexibility 2023-02-19 14:47:21 -05:00
rusefillc 659e3ae186 dear santa please fix my k-line 2023-02-18 23:13:24 -05:00
rusefillc 8d554bab71 Merge branch 'master' of https://github.com/rusefi/rusefi into master 2023-02-18 09:34:43 -05:00
andreika-git fa08a8cb6f https://github.com/rusefi/hellen125honda-issues/issues/27 2023-02-18 09:34:17 -05:00
rusefillc 4d14df108e rusEFI needs K-line firmware support #3248 2023-02-18 09:34:13 -05:00
Andreika b32b03af02
rusEFI needs K-line firmware support #3248 (#5094)
Co-authored-by: rusefillc <48498823+rusefillc@users.noreply.github.com>
2023-02-17 09:36:48 -05:00
andreika-git ed4fcf1ac6 rusEFI needs K-line firmware support #3248 2023-02-17 09:32:06 -05:00
rusefillc 1e37c54c5e rusEFI needs K-line firmware support #3248 2023-02-17 09:23:40 -05:00
rusefillc 11138a1c74 rusEFI needs K-line firmware support #3248 2023-02-17 08:18:50 -05:00
Matthew Kennedy 28babe5cc2
add 50/83.3/125kbit CAN (#5072)
* fix CAN

* add 83/125 too

* bump config version
2023-02-13 17:13:57 -05:00
Nathan Schulte f99e480e66
enable LSE (via: LSE max wait patches) (#4944)
* enable LSE (via: LSE max wait patches)

* ChibiOS: LSE patches
2023-02-12 16:01:03 -05:00
Matthew Kennedy 73f4436397
deduplicate $(BOARD_DIR) in makefiles (#5024)
* calculate BOARD_DIR exactly once

* deduplicate board scripts

* unit tests

* make passes variables to openblt build properly

* was this an intentional omission?

* s

* prometheus

* prometheus
2023-02-01 14:41:27 -05:00
Matthew Kennedy 5770c8a2aa
build f7 with -Os (#4996) 2023-01-30 07:38: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 3862430aa3 specific PN F7 boards bricking on incremental flash due to ST bug #3566
let me try
2023-01-11 11:43:11 -05:00
Andrey G a6ec708a6b
Support non-uniform dividers on ADC inputs (#4938)
* adc: support per-channel dividers

* S105: non-uniform analog dividers

* adc: default weak getAnalogInputDividerCoefficient() implementation

* adc: fix emulator compilation
2023-01-08 17:29:29 -05:00
rusefi 1fae27fcc2 The road to hell is paved with good intentions 2023-01-08 16:48:29 -05:00
rusefillc 5b159f0ff5 Support non-uniform dividers on ADC inputs #4938
maybe helping?
2023-01-08 15:37:51 -05:00
rusefillc e58d375244 external muxes for internal ADC #3350 2023-01-07 22:09:43 -05:00
rusefillc 558f88ce23 external muxes for internal ADC #3350 2023-01-07 21:56:12 -05:00
Matthew Kennedy 1eb00e5ec9
adc resubscription of the same sensor (#4947)
* adc resubscription of the same sensor

* overload function name

* fix logic

* thermistors and map
2023-01-06 08:09:17 -05:00
rusefillc a4eea87440 external muxes for internal ADC #3350 2023-01-05 21:23:00 -05:00
Andrey G a300043f5d
Feed mapAveragingAdcCallback() with volts not adc raw values (#4940) 2023-01-05 12:14:48 -05:00
Andrey G f25edb646d
ADC and HIP: feed callback with voltage, not raw adc values (#4939)
* hip9011: use adcToVoltsDivided() helper

* hip9011: feed callback with volts, not raw adc value
2023-01-05 12:00:23 -05:00
Andrey G e989859cb8
S105: more support (#4937)
* s105: ts_name for battery input

* flash: allow one copy for devices with 512K of flash

* s105: all outputs are open drain
2023-01-04 16:39:17 -05:00
Andrey G 1ddd871f8f
Support boards with no HSE (#4931)
* ENABLE_AUTO_DETECT_HSE: allow override from board config or board.mk

* Cleanup comments references to removed rtcWorks variable

* Allow board with no HSE oscillator
2023-01-03 15:01:51 -05:00
Nathan Schulte 96b2195497
misc tidy (#4926)
* FrequencySensor: code-style

* smart_gpio: fix indent, tidy BOARD_EXT_GPIOCHIPS

tidy _GPIOCHIPS for #pragma message(STRING(BOARD_EXT_GPIOCHIPS output

* obd_error_codes: fix indent
2023-01-01 15:51:31 -05:00
Matthew Kennedy 1f83047ddd tolerate no SPI device 2022-12-21 20:26:39 -05:00
Matthew Kennedy 87b903a2e3
nonblocking for TS, blocking for SD card (#4903) 2022-12-17 20:01:15 -05:00
rusefillc 89bf9fb423 kind of a fix? 2022-12-17 18:59:38 -05:00
rusefillc 85976ed63d guards 2022-12-17 15:23:32 -05:00
rusefillc fa4c69f6cf SDC_MODE flexibility 2022-12-16 20:22:48 -05:00
Matthew Kennedy 52884c64cb
SD card tooth log (#4897)
* adjust tooth logger api

* mmc card writes tooth log

* changelog
2022-12-15 08:34:10 -04:00
Matthew Kennedy 9d8bfb834e
Basic trigger scope implementation (#4885)
* 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

* tooth logger uses big buffer

* dead config

* config

* implement basic trigger scope

* good behavior

* enable on other alphax

* flag to enable second channel

* use 8 bit mode on the ADC for less memory use

* changelog
2022-12-10 23:00:12 -05:00
Matthew Kennedy 8ea5969607
fix warnings (#4840)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2022-11-27 10:11:14 -05:00
Matthew Kennedy ef53ff0104
period -> frequency (#4837)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2022-11-27 08:10:05 -05:00
Nathan Schulte 59406e83f3
avoid ctime, use UTC ISO 8601 for CMD_DATE format (#4764)
* java_console: use UTC ISO 8601 for CMD_DATE format

* ChibiOS RTC avoids ctime

* firmware: controller sets time via ISO 8601

* avoid ctime in CAN dash
2022-11-23 16:53:16 -04:00
rusefillc 8eaa901595
avoid ctime in GPS UART (#4824)
Co-authored-by: Nathan Schulte <nmschulte@desmas.net>
2022-11-23 13:20:36 -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
Nathan Schulte 2a36880961
add /usr/sbin to PATH in create_ini_image*.sh (#4809) 2022-11-21 10:14:49 -05:00
Nathan Schulte 2afc9162eb RTC toggle in hardware.cpp 2022-11-21 09:36:28 -05:00
Nathan Schulte 80cfdc4e1a tidy hw_layer/rtc_helper gcc ifs 2022-11-21 09:35:24 -05:00
rusefillc 6c9f59fd56 big delete ICU #4270
random doc
2022-11-20 19:15:07 -05:00
rusefillc 87c3e957de docs 2022-11-20 16:20:01 -05:00
rusefillc a331cfa2c9 simpler SENT for now 2022-11-19 09:38:39 -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 4cd649db86 firmware: digital_input logic depends e.g. HAL_USE_ADC 2022-11-18 23:24:54 -05:00
Nathan Schulte 51ecb95538 firmware: digital_input logic depends !EFI_SIMULATOR 2022-11-18 23:24:45 -05:00
Nathan Schulte 1da7242e06 firmware: digital_input logic depends on e.g. HAL_USE_ADC 2022-11-18 23:16:28 -05:00
Nathan Schulte 92d2a34941 firmware: digital_input: tidy #endif comments 2022-11-18 23:16:19 -05:00
Andrey Gusakov caebd674ea LUA/SENT: hook to get RAW sig0 and sig1 (WIP)
TODO: how to return two (N) values from LUA hook?
2022-11-17 16:17:27 -05:00
rusefillc f697d6c7dd
Update readme.md 2022-11-15 12:34:17 -05:00
rusefillc 51049b8de5
Update readme.md 2022-11-15 09:44:56 -05:00
rusefillc ed712863c2
Update readme.md 2022-11-15 09:41:16 -05:00
Andrey G 17f98a7c79
SENT: fix null pointer dereference (#4776) 2022-11-13 11:50:08 -05:00
rusefi 37194dfe56 Ford SENT ETB bench test in NJ #4745 2022-11-13 11:23:54 -05:00
Andrey G 27166f4b23
SENT updates (#4774)
* SENT: simplify

* SENT: add crc6 routine, check crc for slow channels enhanced messages

* SENT: helper to get Slow Channel values

* SENT: getTickTime() report tick unit time

* unit_tests: SENT: update tests
2022-11-12 16:57:20 -05:00
rusefi 0e71535727 Ford SENT ETB bench test in NJ #4745 2022-11-11 18:07:13 -05:00
Andrey G 64be738874
SENT unit tests (#4769)
* unit_tests: sent: zero-init

* sent: SENT_SLOW_CHANNELS_MAX to header

* unit_tests: sent: clock, falling edges

* SENT: support and autodetect if device sends pause pulse

Also rework tick time calculation

* unit_tests: SENT: verbose debug on request

* unit_tests: SENT: actual checks

* unit_tests: SENT: extract common code for reuse

* unit_test: SENT: add test with fuel pressue captured data

* unit_test: SENT: add test with Ford ETB CLOSED captured data
2022-11-11 17:25:02 -05:00
rusefillc 0be6559ced
does gcc11 know something? (#4738)
* does gcc11 know something?

* fix BACKUP_FLASH_ADDR assertion semantic (#4750)

* fix BACKUP_FLASH_ADDR assertion semantic

* cast BACKUP_FLASH_ADDR as flashaddr_t

Co-authored-by: rusefillc <sdfsdfqsf2334234234>
Co-authored-by: Nathan Schulte <8540239+nmschulte@users.noreply.github.com>
2022-11-07 19:22:58 -05:00
Andrey 73e69940ba Ford SENT ETB bench test in NJ #4745
we shall unit test SENT
2022-11-07 10:30:30 -05:00
Andrey be8ba29b42 Ford SENT ETB bench test in NJ #4745
we shall unit test SENT
2022-11-07 00:25:47 -05:00
Andrey a25c9ab520 Ford SENT ETB bench test in NJ #4745
we shall unit test SENT
2022-11-07 00:06:42 -05:00
Andrey G 331fabb6de
pin_sepository: no external users for totalPinsUsed, remove (#4733) 2022-11-03 18:26:08 -04:00
Andrey G 94ce8134da
OpenBLT: fix lazy compilation (#4715)
* OpenBLT: fix lazy compilation

* OpenBLT: use per-board obj directory
2022-10-30 10:01:43 -04:00
Andrey G e7b06cbfca
compile warnings: signed vs unsigned and unused (#4713) 2022-10-30 09:47:53 -04:00
Andrey G 12842e485b
OpenBLT: F7: ups, missed shared section (#4714) 2022-10-30 09:38:09 -04:00
Matthew Kennedy 658d1436fb
s (#4708) 2022-10-27 23:17:02 -04:00
rusefillc f9fa729d8d less horrible constant name 2022-10-27 22:17:50 -04:00
rusefillc b75f899973 efi::size 2022-10-27 20:35:37 -04:00
Matthew Kennedy f967231bb9
bigger blocking factor (#4703) 2022-10-26 16:49:55 -04:00
Andrey G 7abe3ba112
SENT improvements (#4702)
* smt32_common.mk: reduce copy-paste

* SENT: sentPins is not used

* hw: stm32: add ICU helper

* hw: stm32: icu helpers: also return timer base clock

* SENT: icu: use helper to get ICU & channel and AF

* SENT: icu: use CPU ticks for pulse measurements

* hw: stm32: icu: cleanup
2022-10-26 15:33:47 -04:00
Andrey G afa0bd92e8
SENT glue to LUA (#4700)
* use tabs

* SENT: Lua glue: getSentValue returns ETB position now

Can be tested with following LUA script:
setTickRate(100)
function onTick()
	pos = getSentValue(1)
	setLuaGauge(1, 10000 * pos)
	print(pos)
end
2022-10-26 06:42:14 -04:00
Andrey G dff2693698
SENT fixes (#4698)
* SENT: use shift register for storing nibbles

* SENT: rxReg shift to the left

* SENT: todo
2022-10-24 08:50:11 -04:00
rusefi 6e24020ab5 GM ETB bench test in NJ #4688
SENT to Lua integration
2022-10-22 22:46:37 -04:00
Andrey G d21d5397ac
SENT fixes (#4692)
* SENT: measure more pulses during Unit time calibration

* SENT: no magic numbers

* SENT: fix typo

* SENT: setninfo output: do not show slow channels if not detected

* SENT: fix GM-style CRC calculation

* SENT: another one CRC algorithm, now for pressure sensor

* SENT: show CRC error percentage
2022-10-22 18:07:22 -04:00
rusefillc 98076927b0
progress: rpm register based on trigger input being none or not (#4691)
* progress: rpm register based on trigger input being none or not

* use helper functions

Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-10-22 09:27:41 -04:00
rusefillc da0fa03f0a refactoring: wider usage of helper method 2022-10-22 08:39:55 -04:00
rusefillc 7a1e729cd8 ROLLBACK 2022-10-21 22:45:46 -04:00
rusefillc 3abed33988 progress: rpm register based on trigger input being none or not 2022-10-21 22:07:41 -04:00
rusefillc 50d8aa37b4 refactoring: inline method 2022-10-21 21:20:44 -04:00
rusefillc 9cf3bca60c trigger input: dead code? 2022-10-21 21:10:58 -04:00
rusefillc 23f14d0e21
Update readme.md 2022-10-20 14:30:23 -04:00
Andrey G a50f898982
SENT fixes (#4687)
* SENT: cache current setting to do proper clean-up on stop

* SENT: microRusEfi supports send on "AN temp 2" = PA1 only

* SENT: microRusEfi: fix pin number

* SENT: use activeConfiguration during sentStop()

* MRE: pin 23: can accept events (for SENT)
2022-10-20 13:33:16 -04:00
rusefillc ea8f75a6cb
Adc unregister (#4684)
* Sensor: unregister on the fly #4683

* Sensor: unregister on the fly #4683

* Adc unregister #4684

* Adc unregister #4684
2022-10-20 09:33:27 -04:00
Matthew Kennedy 6e3efed09c
more f429 business (#4679)
* 429 boots and LEDs work

* oops missed a comma

* enable on f767 too, since it should be the same board

* why not just completely duplicate it

* script should not be fancy

* script should not be fancy

* correct pins

* h743 while we're at it
2022-10-20 00:59:39 -04:00
rusefi b7db5f90c3 SENT protocol capture implementation #4631 2022-10-20 00:04:43 -04:00
Andrey G b4ccef4239
SENT protocol capture implementation (#4631)
* boards: MRE: enable SEND protocol capture

* SENT protocol capture implementation #4631

* SENT protocol capture implementation #4631

Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-10-19 17:08:15 -04:00
Andrey Gusakov b7820ee713 port: stm32: f4/f7: enable ICU drivers, enable ICU for TIM2 2022-10-19 15:14:29 -04:00
rusefillc 38639e8877 nicer (?) parameter names 2022-10-19 10:25:02 -04:00
Matthew Kennedy 1ae642e7a7
build tweaks for size (#4661)
* don't align on non-cached mcu

* lua decimal point

* no snprintf

* sort sections by alignment

* unit tests
2022-10-13 20:30:30 -04:00
Matthew Kennedy 9d132676fd
consolidate analog vs. temp info commands (#4646)
* consolidate analog vs. temp info commands

* cleanup

* guard
2022-10-10 07:44:20 -04:00
Andrey G 850848d2ee
SENT core decoder and ICU driver (#4648)
* SENT: copy-paste SENT decoder from rusefi-hardware

* SENT: decoder: refactor, cleanup

* SENT: add ICU implementation

* SENT: decoder: use pch.h

* SENT: EFI_PROD_CODE guard

* SENT: ICU driver: fixes

* SENT: don't forget to SysLock

* SENT: call Start on Init (agrrrr)

* SENT: ICU: some limitations

ICU can capture on two firsts TIM inputs only. So move from PA2 to PA1

* SENT: mmmm... c++... i like it (no)

* SENT: autocalibrate tick time

* SENT: debug

* SENT: clean-up

* SENT: optimize slow channel mailboxes

* SENT: GetSignals() helper
2022-10-09 06:38:28 -04:00
rusefi 46d5db4d5f We are mostly focused in standby, not in stop 2022-10-03 19:37:17 -04:00
GitHub gen-configs Action 0d9090de28 Auto-generated configs and docs 2022-09-30 03:15:40 +00:00
rusefillc 234862b2b7 CAN side of automated testing #4630 2022-09-29 23:01:06 -04:00
Matthew Kennedy ff9ce3730a
rtc cleanup (#4596)
* rtc formatting and code style

* more cleanup

* s

* time example
2022-09-20 05:28:42 -04:00
GitHub gen-configs Action eea87274a8 Auto-generated configs and docs 2022-09-19 01:31:32 +00:00
rusefillc 2be1db62a2 CanCategory 2022-09-18 20:44:00 -04:00
rusefillc ec0e567989 tear down Engine god object #4511 2022-09-15 21:46:01 -04:00
Andrey G 31180e179b
digital_input: check for valid callback not name! (#4575) 2022-09-13 18:02:00 -04:00
rusefillc 9c83cfd696 moving SD logic to better source 2022-09-12 20:39:43 -04:00
Andrey G 69d9716fa6
tle8888 dead code (#4568) 2022-09-12 18:54:29 -04:00
Andrey G 8ff49301e5
stm32: microsecond timer: set correct period value (#4567)
Driver sets (period - 1) to ARR (auto-reload register)
So we need to set period to (1 << 32) to get maximum
0xffffffff value in ARR. But period is uint32_t.
So set it to 0 and it will ovelap to UINT32_MAX at
pwmp->tim->ARR  = pwmp->period - 1;
2022-09-12 07:35:31 -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 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
rusefillc 851e8e48d3 refactoring: type safety 2022-09-11 02:57:35 -04:00
rusefillc 6e71b72acc refactoring - reducing API between FW and Java 2022-09-11 02:16:47 -04:00
Andrey 8e49542600 trigger: in corner cases like NB2 and VQ35 those are not revolutions 2022-09-07 22:24:28 -04:00
Andrey 5962cbd5c2 brutal encapsulation 2022-09-07 20:31:04 -04:00
Andrey 6e8d248408 brutal encapsulation 2022-09-07 19:37:11 -04:00
Andrey ab4b451195 os_access.h dead? 2022-09-07 15:56:45 -04:00
rusefi f399e275b2 servo is truly not alive 2022-09-06 16:29:12 -04:00
Andrey 09bef1e440 tear down Engine god object #4511
just trying different things
2022-09-05 04:09:59 -04:00
Andrey 9d8afea152 a bit of dead code 2022-09-01 11:47:56 -04:00
rusefillc e53cad4459 helping CI stay green 2022-08-27 14:51:41 -04:00
Matthew Kennedy 9738ba84ae
log missed exti events (#4473)
* log missed exti events

* units

* s

* guard

* stub for non stm32
2022-08-23 19:45:28 -04:00
rusefillc f9b50c2523 better method name 2022-08-22 18:07:59 -04:00
rusefi 755f9926ea canRxAdd bus does not convert from Lua/human value into zero-indexed implementation value fix #4467 2022-08-21 23:48:10 -04:00
rusefi b471012838 less violent error handling 2022-08-21 22:46:59 -04:00
rusefi 26eda07424 Lua CAN bus index: let's fail if invalid value specified 2022-08-21 22:31:52 -04:00
rusefillc 2f87dd2a12 RUSEFI virtual drive to spell out firmware version fix #4458 2022-08-18 21:02:26 -04:00
rusefillc 835611ed62 RUSEFI virtual drive to spell out firmware version fix #4458 2022-08-18 20:13:00 -04:00
rusefillc cfcd334333 RUSEFI virtual drive to spell out firmware version fix #4458 2022-08-18 19:49:01 -04:00
rusefillc 3ce0246962 RUSEFI virtual drive to spell out firmware version fix #4458
# Mac OS comes with Bash version 3 which is quite limiting and lack key features
2022-08-18 19:46:42 -04:00
rusefillc 5f218a58dd RUSEFI virtual drive to spell out firmware version fix #4458
80% of the result for 20% of the effort
2022-08-18 19:31:49 -04:00
rusefillc db8a965288 unconditional VVT PID logging 2022-08-17 00:47:31 -04:00
Matthew Kennedy 3a0bf87d92
update libfirmware (#4446)
* update libfirmware

* s
2022-08-16 23:02:34 -04:00
rusefi 3396aa865a verboseCan bugfix 2022-08-11 01:19:10 -04:00
rusefi f671f688a9 ISO-TP does not work on real car #4427 2022-08-11 00:29:09 -04:00
rusefillc c4a817dfa0 verboseCan EXT fix 2022-08-09 20:39:27 -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
Andrey G aecd997d4b
OpenBLT shared params (#4417)
* OpenBLT: linker file: use last 16 bytes of ram for shared area

This area is used for communication between FW and OpenBLT.

* OpenBLT: startup: invalidate only DFU breadcumb from startup code

Same location (but different seed) is used for shared param's
signature in OpenBLT.

* OpenBLT: enable shared params

* OpenBLT: enable hooks

If 0x01 is stored in shared param idx=0, then stay in OpenBLT forever.

* Jump to OpenBLT: store proper shared param when OpenBLT is requested

TODO: calculate and store CRC too!

* OpenBLT: move shared_params to start of RAM

* Bootloader: Allocate 16 bytes at start of RAM for bootloader shared area

* OpenBLT: shared_params: reuse same .c and .h file for main application

* OpenBLT: shared_params: enable CRC check

* OpenBLT: no need to manualy set breadcumb before reset

* Revert "OpenBLT: startup: invalidate only DFU breadcumb from startup code"

This reverts commit 6b064714b953560227ae53e38355332cf9f46f7f.

* OpenBLT: guard for builds without OpenBLT

* OpenBLT: reboot to OpenBLT on CAN request with ID=0x667 and DLC=2

* config: options to enable OpenBLT on CAN interfaces

* OpenBLT: comments
2022-08-07 19:33:19 -04:00
Matthew Kennedy 18351dc43b
tle9104 driver (#4410)
* tle9104

* it works!

* cleanup

* cleanup for pr

* efifeatures

* guards
2022-08-02 19:02:03 -04:00
Matthew Kennedy 165e5bb869
misc fixes (#4411)
* fix warnings

* break to debugger in case of panic

* move the check

* s
2022-08-02 12:19:50 -04:00
Andrey G ce7fc8e69d
MRE: tle8888 ls2 fix and friends (#4409)
* tle8888: ups IGN1

* tle8888: more BIT() macro

* tle8888: fix typos

* tle8888: fix LS2 output on MRE when stepper is enabled

Default settings casue one (or few) not used direct driver inputs
to be mapped to OUT5 (LS2 on MRE)

* smart_gpio: comments for TLE8888 on MicroRusEFI

* smart_gpio: typo

* tle8888: more comments
2022-08-02 00:50:56 +03:00
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