Commit Graph

112 Commits

Author SHA1 Message Date
Andrey G a9bc33abbd
LSU type from settings (#207)
* port: per-board SetupESRDriver() and GetESRSupplyR() functions

* Pick sensor type from settings

* f1_rev2: build helper for LSU4.2 FW
2023-02-25 11:46:36 -08:00
rusefillc 6d908fb110
f1_dual: sample PWM pins first than do math (#190)
Co-authored-by: Andrey Gusakov <dron0gus@gmail.com>
2023-02-04 18:21:22 -08:00
rusefillc f4bd1a4197
Smaller version of heater settings for other types of sensors (#183)
* heater settings for other types of sensors

* port: GetSensorType

* fancier C++ version

* fancier C++ version

* Why not a function

---------

Co-authored-by: Andrey Gusakov <dron0gus@gmail.com>
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2023-02-01 11:43:52 -08:00
Andrey G a6052895e9
f1_dual/rev3: Revert CPU clock back to 48 MHz due to ADC problems on GD32 (#181) 2023-01-23 11:23:14 -08:00
Andrey G cdf632652b
f1_X: adjust CAN timings for 64MHz CPU clock (cAN clock is 32MHz) (#177) 2022-12-22 08:08:03 -08:00
Andrey G 1aa7c661f6
f1_rev and threads (#173)
* f1_rev3: high speed (strenght) for heater PWM output

* threads: set name for all thread

* f1_dual: enalbe CH_CFG_USE_REGISTRY so GDB can see thread

* f1_rev3: enalbe CH_CFG_USE_REGISTRY so GDB can see thread
2022-12-12 19:29:32 -08:00
Matthew Kennedy a7961e178f bad signature copypaste 2022-12-06 16:59:36 -08:00
Matthew Kennedy 4d37f3748a oops snuck in 2022-12-06 16:57:03 -08:00
Matthew Kennedy 3807bb20e2 ini updates 2022-12-06 16:46:07 -08:00
Matthew Kennedy 36c0c3e4ab spelling 2022-12-06 15:53:36 -08:00
Matthew Kennedy 85365bcb68
faster f1 clocks (#172)
* faster f1 clocks

* PWM happy
2022-12-03 17:23:02 -08:00
Matthew Kennedy 1543561ed2 Revert "Revert "turn off unused OS features""
This reverts commit e48fa2cbba.
2022-12-03 01:35:20 -08:00
Matthew Kennedy e48fa2cbba Revert "turn off unused OS features"
This reverts commit cc25a0f94f.
2022-12-03 01:15:01 -08:00
Matthew Kennedy 3c0f930508 ini updates 2022-12-02 23:31:32 -08:00
Andrey G 94c348b88b
Jdy33 (#171)
* tunerstudio: support JDY33 BT module init on UART

* tunerstudio: BT: try most popular baudrates first

* tunerstudio: BT: protect from overflow

* tunerstudio: BT: limit retries

* tunerstudio: BT: directly do chprintf() to SD device

* TS: serial: make BT setup optional
2022-12-02 14:08:11 -08:00
Matthew Kennedy cc25a0f94f turn off unused OS features 2022-12-02 13:20:35 -08:00
Matthew Kennedy 320efe05a5 memory savings 2022-12-02 02:07:21 -08:00
Matthew Kennedy f654cbd14b don't keep two or three copies of the config 2022-12-02 01:46:23 -08:00
Matthew Kennedy 91c989dc9a speed tuning 2022-12-01 23:41:19 -08:00
Matthew Kennedy 0870981763 minor cleanup 2022-12-01 22:55:55 -08:00
Matthew Kennedy 91677672bf
use gcc 11.3 (#166)
* use gcc 11.3

* does the full image work?

* does this work?
2022-12-01 16:15:05 -08:00
Matthew Kennedy 3518b4397a save f0 memory, turn off OS features 2022-12-01 15:59:30 -08:00
Matthew Kennedy a2a019dbac add config 2022-12-01 15:40:36 -08:00
Andrey G d69505171a
Configs cleanups (#164)
* f1_dual, f1_rev3: use Serial for TS not for debug

* f1_dual: config cleanup

* EGT_CHANNELS is better option for optional compilation of max driver

* max31855: supress warning
2022-10-06 11:24:11 -07:00
Andrey G adae19db09
Extract common code for all F1 devices (#162)
* main: acctually call InitConfiguration()

* f1_rev2: enable EFL and MFS (Managed Flash Storate)

* f1_dual: enable EFL and MFS (Managed Flash Storate)

* f1 boards: extract common code

* port.h: add LoadDefaults() method to Configuration class

* f1 boards: store Configuration to MFS

* f1 boards: common getTsSignature() for all f1 boards
2022-09-19 16:31:30 -07:00
Andrey G 0a4a609db9
port: GetConfiguration() return reference, not copy (#161) 2022-09-19 15:27:08 -07:00
rusefillc 9ec8d56e2b
port.h: remove duplicate, GetConfiguratiuonSize() returns size_t (#152)
Co-authored-by: Andrey Gusakov <dron0gus@gmail.com>
2022-09-15 11:56:17 -07:00
rusefillc 5f6e62a7e0
f1_rev3 and f1_rev2 both use same ini file (#149)
Co-authored-by: Andrey Gusakov <dron0gus@gmail.com>
2022-09-07 19:56:23 -07:00
rusefillc 714efa02ca
f0_module: empty InitConfiguration (#141)
Co-authored-by: Andrey Gusakov <dron0gus@gmail.com>
2022-09-07 14:08:37 -07:00
rusefillc 7688b367e8
Ini and ts (#144)
* ini: update rev2 ini file

* f1_dual: add ini file

* f1_dual: signature

Co-authored-by: Andrey Gusakov <dron0gus@gmail.com>
2022-09-06 16:53:52 -07:00
rusefillc a57682a4b6
Rev2 progress (#143)
* Rev2: define AUX output PWM device and channels

* Rev2: enalbe TIM1 used for aux outputs

* Rev2: aux pwm pins: no need to be 50MHz fast

Co-authored-by: Andrey Gusakov <dron0gus@gmail.com>
2022-09-06 16:53:22 -07:00
Andrey G cddcd0d88c
Multichannel (#134)
* Multichannel AFR

* heater: fixes for multi channel mode

* f1_dual: fix configuration names

* pump_dac: fixes for multi-channel mode

* pwm: fixes for multichannel mode

* pump_control: reference instead of pointer

* sampling: reference instead of pointer

* heater_control: reference instead of pointer

* sampling: comment about heater/battery voltage

* f0_module: fixes for multi-channel update

* f1_rev2: fix for multichannel AFR

* hello rev 3

Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-08-29 17:19:30 -07:00
rusefillc 2cc460adba
Rev3 dac (#137)
* f1_rev3: STM32 is 64-pin

* f1_rev3: enable DAC driver, enable HW block

Co-authored-by: Andrey Gusakov <dron0gus@gmail.com>
2022-08-29 17:12:49 -07:00
rusefillc 09872e0d3c
F103 rev 3 (#136)
* f1_rev3: add board support (mostly copy-paste)

* f1_rev3: add to workflows

* hal_mfs.mk - one way or another we will use MFS for sure in this repo

* SPI means EGT and EGT means SPI

* one step towards master

Co-authored-by: Andrey Gusakov <dron0gus@gmail.com>
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-08-20 11:39:03 -07:00
rusefillc c1057ad951
f1_dual: limit max heater duty (#132)
Co-authored-by: Andrey Gusakov <dron0gus@gmail.com>
2022-08-01 00:17:06 -07:00
rusefillc 41e87292c5
Add max31855 driver (#103)
* Add max31855 driver

* f1_dual: enable EGT driver

* bit.h: bit helper

* max31855 driver progress

* max31855 driver fixing guard

Co-authored-by: Andrey Gusakov <dron0gus@gmail.com>
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-07-20 16:36:23 -07:00
Andrey G 63ef4b7a10
TS more and more (#123)
* TunerStudio: simplify enable magic

* TS integration: livedata, FragmentEntry

* f1_dual: reorder TS hooks

* f1_rev2: dummy settings for TS

* f1_rev2: TS signature

* f1_rev2: TS ini file

* Integrate with TS interface

* livedata: access adapters, no extern, make livedata static

* FragmentEntry: no FragmentEntry()

* livedata: struct not needed
2022-07-18 12:31:09 -07:00
Andrey G 8f5a23c2bc
main: always call InitUart, get rid of ECHO_UART (#122) 2022-07-17 16:58:56 -07:00
Matthew Kennedy 6135464dc8
use libfirmware for crc, table lookup (#121)
* use libfirmware for crc

* kick

* bootloader

* bootloader

* use shared interpolate2d

* cleanup
2022-07-16 19:08:45 -07:00
rusefillc 55f65ad02d
Ts top down (#104)
* TS top down

* TS top down

* TS top down

* TS top down

* Ts top down #104

removing the controversial part

* Ts top down #104

removing the controversial part

* docs

* fix build (switch to serial)

* f1_dual: UART->Serial

Co-authored-by: rusefillc <sdfsdfqsf2334234234>
Co-authored-by: Andrey Gusakov <dron0gus@gmail.com>
2022-07-15 11:10:15 -07:00
rusefillc cb7c9bf612
bootloader: make bootloader flash area reserve optional (#118)
and increase config flash area to 8K

Co-authored-by: Andrey Gusakov <dron0gus@gmail.com>
2022-07-15 11:08:44 -07:00
Andrey G 18c22abdfa
bootloader: make bootloader flash area reserve optional (#111)
* bootloader: make bootloader flash area reserve optional

and increase config flash area to 8K

* f1_rev2: empty blflash section
2022-07-15 00:07:41 -07:00
rusefillc b298389fb5
Bat measurment (#113)
* board: f1_dual: add way to measure battery through Heater-

* heater_control: allow board to limit max heater duty

* board: f1_dual: use max sample for battery measurement, filter

Co-authored-by: Andrey Gusakov <dron0gus@gmail.com>
2022-07-15 00:07:13 -07:00
rusefillc e51dc3ba0b
f1_dual: set O0 optimization level due to ADC issue on GD32 (#116)
Co-authored-by: Andrey Gusakov <dron0gus@gmail.com>
2022-07-15 00:06:44 -07:00
rusefillc ee230be7e2
Introducing dual channel board (#109)
* port: ID_SEL2_PIN is optional

Dual version is out of mcu pins and implement only one sel pin.

* board: f1_dial: add dual channel board

* GH actions: add f1_dual build to actions

* f1_dual: use uart driver, not serial

* f1_dual: setup correct remaps

* f1_dual: DEBUG: enable uart debug (disable TS)

* board: f1_dual: add way to measure battery through Heater-

* fix dual board

Co-authored-by: Andrey Gusakov <dron0gus@gmail.com>
2022-07-13 23:14:46 -07:00
rusefillc 87390c6218
ignoring OpenBLT artifacts (#105)
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-07-13 09:18:58 -07:00
rusefillc 1561c13a15
f1_rev2: OpenBLT: update gpio and interfaces setup (#97)
* f1_rev2: OpenBLT: update gpio and interfaces setup

* f1_rev2: OpenBLT: set default board name

* f1_rev2: no need to have bootloader region in main app LD file

* f1_rev2: use gpio settings from application include file

* f1_rev2: OpenBLT: update gpio and interfaces setup

* f1_rev2: OpenBLT: close backdoor

* f1_rev2: OpenBLT: fix uart setup

* f1_rev2: OpenBLT: gracefully close CAN after use

Co-authored-by: Andrey Gusakov <dron0gus@gmail.com>
2022-07-04 03:50:31 -07:00
rusefillc 0119d8e716
comments (#101)
* comments

* comments

Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-07-03 20:48:42 -07:00
rusefillc 1454c10713
AUX outputs (#95)
* AUX outputs

* Rev2: define AUX output PWM device and channels

* Rev2: enalbe TIM1 used for aux outputs

* Rev2: define aux output gain

Co-authored-by: Andrey Gusakov <dron0gus@gmail.com>
2022-07-03 12:11:12 -07:00
rusefillc fe50e80a89
original hardware by Dave has changed enough (#100)
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-07-03 12:07:01 -07:00