Matthew Kennedy
a34e0bbdf2
Use a 0.5s timeout for over/underheat to reject transients
2024-09-24 18:35:44 -07:00
rusefillc
d8e65a2c24
suggestion to improve naming ( #294 )
...
* Rename GetInternalBatteryVoltage() to GetInternalHeaterVoltage()
* sampling, heater: fix Battery vs Heater naming mess
---------
Co-authored-by: Andrey Gusakov <dron0gus@gmail.com>
2024-06-25 23:44:32 -07:00
Andrey G
e70df58290
Underheat issue ( #314 )
...
* f0_module needs hack to start pump before closed loop
* Fix paranoid check
* Make START_PUMP_TEMP_THRESHOLD relative
2024-06-25 23:37:51 -07:00
Matthew Kennedy
f2aef8fa06
an undisclosed source says these parameters are better #296
2023-11-22 19:27:29 -08:00
rusefillc
fa042fb6f5
heater: shortcut if sensor is hot enough ( #277 )
...
* heater: shortcut if sensor is hot enough
* heater: shortcut if sensor is hot enougth
---------
Co-authored-by: Andrey Gusakov <dron0gus@gmail.com>
2023-11-19 13:10:42 -08:00
Matthew Kennedy
52f306b6f5
avoid NaN in case of zero battery voltage
2023-11-17 18:19:55 -08:00
Matthew Kennedy
35c84cf13b
battery stabilization time with a timer
2023-11-15 20:54:57 -08:00
Matthew Kennedy
17acd065d3
cherry-pick timer from ECU and use it for sequencing logic ( #289 )
...
* enable timestamp api
* add timer class
* use unsigned integer for timestamps
* heater uses timers
* timer mocking and test adjustment
2023-11-15 17:42:37 -08:00
rusefillc
982cd32ee7
heater_control: do not preheat on low voltages ( #286 )
...
Co-authored-by: Andrey Gusakov <dron0gus@gmail.com>
2023-11-15 17:21:16 -08:00
Matthew Kennedy
c2cb3b9015
test heater state machine
2023-11-13 14:15:22 -08:00
Matthew Kennedy
7f5b7097e3
tests for heater output
2023-11-13 13:56:03 -08:00
Matthew Kennedy
ff5b3ac3bb
split heater thread and heater logic
2023-11-13 13:30:23 -08:00
Matthew Kennedy
a7b081b882
extract heater class declaration
2023-11-13 12:55:48 -08:00
rusefillc
1b1103952f
let's have gcc help us ( #278 )
...
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2023-11-03 20:27:49 -07:00
rusefillc
14f3a341f9
explicit struct fields ( #272 )
...
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2023-07-22 15:34:22 -07:00
rusefillc
b80b49753f
unused includes ( #274 )
2023-07-22 15:34:06 -07:00
Matthew Kennedy
2628d1d05c
cycle
2023-06-23 14:41:40 -07:00
Matthew Kennedy
d1c878bf13
kill off helpers to get heater/sampler stuff
2023-06-23 14:38:17 -07:00
Matthew Kennedy
a8ac2698c4
class-ify HeaterController
2023-06-23 13:50:01 -07:00
Matthew Kennedy
b8f11741b5
heater uses sampling class
2023-06-20 17:26:54 -07:00
rusefillc
36d57e7d73
TS: report heater effective voltage ( #225 )
...
(cherry picked from commit c37180517d5522876a7efb7fcc17a3ca40ffee9f)
Co-authored-by: Andrey Gusakov <dron0gus@gmail.com>
2023-04-17 14:10:38 -07:00
Matthew Kennedy
9d4fabeda7
Use temperature thresholds instead of ESR thresholds
2023-03-22 14:59:52 -07:00
Andrey G
e9b942df31
heater_control: hanle no supply state ( #219 )
2023-03-21 11:20:19 -07:00
rusefillc
b5ed6d3af7
heater_control: smarter PWM duty limiting for VBat measurement ( #196 )
...
Apply duty cycle limit only 2 cycles of 20 (per second). This
allows 100% duty PWM while heating sensor on low VBat.
(cherry picked from commit 28a01bd6c3dad0d0712a3b6412b9e87fe514555b)
Co-authored-by: Andrey Gusakov <dron0gus@gmail.com>
2023-02-25 11:51:12 -08:00
rusefillc
4148ba1567
heater: do index to channels mapping in all cases ( #189 )
...
Co-authored-by: Andrey Gusakov <dron0gus@gmail.com>
2023-02-05 12:39:21 -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
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
1584b1ff4d
save ram
2022-12-01 15:51:21 -08: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
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
Andrey G
d3e460a9a6
Uart debug ( #64 )
...
* heater: export state and description
* pump_dac: save and export Ipump
* float interpolation helpers
* Show heater state, heater duty, temperature and fault over uart
* uart: more stack for thread
2022-05-11 01:41:07 -07:00
Matthew Kennedy
2a2b438fc6
static
2022-04-06 17:23:18 -07:00
Andrey G
bc0686c826
Smarter state machine to use internal vbatt when CAN not connected ( #57 )
...
* Smarter state machine to use internal vbatt when CAN not connected
* Style
2022-04-06 14:07:39 -07:00
Matthew Kennedy
66b891bf79
heater controller pulls from CAN world instead of push
2022-04-06 01:22:09 -07:00
Matthew Kennedy
a376b54b55
report duty as float
2022-01-26 10:56:58 -08:00
rusefillc
3a5dc0208e
static ( #49 )
...
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-01-25 19:11:57 -08:00
Matthew Kennedy
6557809da2
send heater duty
2022-01-04 11:16:46 -08:00
Matthew Kennedy
2bda28226a
extract fault
2022-01-01 21:10:55 -08:00
Matthew Kennedy
8cb60d5b18
pal heater device
2021-12-27 20:42:57 -08:00
Matthew Kennedy
f675c63279
comment
2021-11-04 15:07:47 -07:00
Matthew Kennedy
0a117089b8
uppercase functions
2021-11-03 23:02:11 -07:00
Matthew Kennedy
10cbc928b0
make reality match the comment
2021-07-16 10:36:05 -07:00
Matthew Kennedy
18cc209f72
listen to heater enable bit
2021-07-15 21:50:22 -07:00
Matthew Kennedy
24cdee9c28
correct preheat duty
2021-07-15 21:48:24 -07:00
Matthew Kennedy
e501510e80
less D
2021-07-12 23:49:55 -07:00
Matthew Kennedy
1119d79856
heater tweaks
2021-07-12 23:45:35 -07:00
Matthew Kennedy
21a3ae4939
overvolt protect
2021-07-12 22:44:42 -07:00
Matthew Kennedy
24fe166799
pid tuning, overvolt protect
2021-07-12 22:40:47 -07:00
Matthew Kennedy
00ba70522b
heater control
2021-07-12 15:46:10 -07:00
Matthew Kennedy
9ff5df55fd
name
2021-07-12 15:33:10 -07:00