Commit Graph

141 Commits

Author SHA1 Message Date
Egor Savkin 21fc244eac Fan status via quadratic regression
* statuses: detect slow fan via quadratic regression and halts (hard stops) with constant threshold
* remove unsafe channels' copy and make FanCtrl own the channels
* scale fan values so that they would fit 0.05-1.0 PWM at all times
* rename fan-restore to fcurve-restore
* style, names and docs adjustments

Signed-off-by: Egor Savkin <es@m-labs.hk>
2023-01-05 11:57:21 +08:00
Egor Savkin 630635486e Polish minor issues
Signed-off-by: Egor Savkin <es@m-labs.hk>
2022-12-23 13:23:18 +08:00
Egor Savkin ea2eb51b27 Add fan warnings
Signed-off-by: Egor Savkin <es@m-labs.hk>
2022-12-23 13:13:33 +08:00
Egor Savkin 58650d37f1 Refactor and coefficients implemented
Move all the fan logic to the separate file. Add controls for controlling curve.

Signed-off-by: Egor Savkin <es@m-labs.hk>
2022-12-22 17:28:08 +08:00
Egor Savkin 66143d2373 Implemented auto fan control
Signed-off-by: Egor Savkin <es@m-labs.hk>
2022-12-21 14:59:49 +08:00
Egor Savkin 583d06a78b Make fan cmd show the stats
Signed-off-by: Egor Savkin <es@m-labs.hk>
2022-12-20 12:58:00 +08:00
Egor Savkin d117c784d9 Draft hw rev support and fan command
Signed-off-by: Egor Savkin <es@m-labs.hk>
2022-12-19 17:15:33 +08:00
Egor Savkin 4223f7a4ad Draft tacho support
Signed-off-by: Egor Savkin <es@m-labs.hk>
2022-12-15 16:47:52 +08:00
Egor Savkin 30350a3651 Draft support fan pwm settings
Signed-off-by: Egor Savkin <es@m-labs.hk>
2022-12-14 17:25:29 +08:00
mwojcik 1b2f2f3888 update code to use stm32f4xx-hal 0.10.1 API 2022-03-02 17:21:17 +08:00
topquark12 e6a5c31db6 main.rs refactor to reduce length (#60)
Move command handling to command_handler.rs to shorten main.rs

Reviewed-on: #60
Co-authored-by: topquark12 <aw@m-labs.hk>
Co-committed-by: topquark12 <aw@m-labs.hk>
2021-06-07 10:07:05 +08:00
topquark12 a5d8661b10 main: fix handling of incomplete data received (#55)
Reviewed-on: #55
Co-Authored-By: topquark12 <aw@m-labs.hk>
Co-Committed-By: topquark12 <aw@m-labs.hk>
2021-01-29 16:18:07 +08:00
topquark12 7cb0ed70be Reset all TCP sockets before MCU reset (#53)
Co-Authored-By: topquark12 <aw@m-labs.hk>
Co-Committed-By: topquark12 <aw@m-labs.hk>
2021-01-26 17:45:14 +08:00
topquark12 16844a1dc1 dac: fix inconsistent current output behavior due to repeated sampling of noisy vref 2021-01-25 13:51:50 +08:00
topquark12 f6802635a4 add command to reboot into DFU
Co-Authored-By: topquark12 <aw@m-labs.hk>
Co-Committed-By: topquark12 <aw@m-labs.hk>
2021-01-13 11:59:06 +08:00
topquark12 5c84b7438b Integral rescaling 2021-01-08 11:25:01 +08:00
topquark12 cc0126636c report save success
save does not hang, it just did not report save success. Closes #33

Reviewed-on: #44
Co-Authored-By: topquark12 <aw@m-labs.hk>
Co-Committed-By: topquark12 <aw@m-labs.hk>
2021-01-07 18:01:43 +08:00
Astro 9852b32646 command_parser, main: implement ShowCommand::Ipv4
Fixes Gitea issue #30
2020-12-20 20:44:10 +01:00
Astro 22b0c9fcad main: don't re- set_ipv4_config every tick 2020-12-20 20:43:20 +01:00
Astro b7e6cdbec2 pytec: measure interval 2020-12-16 22:14:21 +01:00
Astro 880a887c40 new flash-based ipv4 config with additional mask_len, gateway 2020-12-12 23:44:16 +01:00
Astro 383ebcd8e4 rewrite config for sfkv-based flash_store 2020-12-12 01:25:07 +01:00
Astro a943308203 pid: never reset 2020-10-13 23:55:22 +02:00
Astro 6ba1459a3c main: send error on invalid command 2020-10-11 23:11:27 +02:00
Astro a332b5fcdc main: fix saving new_ipv4_address 2020-10-11 01:59:39 +02:00
Astro 175b88d0e6 s/tecpak/thermostat/g 2020-10-11 01:59:39 +02:00
Astro 59103cb2a1 add support for ipv4 address reconfiguration 2020-10-01 01:34:46 +02:00
Astro 438da74721 main: remove all plain-text responses 2020-09-30 23:53:13 +02:00
Astro 026dd1ed9c main: close tx half of sockets with closed rx half
fixes Gitea issue #9
2020-09-30 23:39:31 +02:00
Astro d4e7036fab session: rename SessionOutput to SessionInput 2020-09-30 23:35:11 +02:00
Astro 6e0cf26d6a export postfilter + s-h as json 2020-09-30 22:53:21 +02:00
Astro 62d89a68a1 pwm: export summary as json 2020-09-30 22:10:42 +02:00
Astro 5521563c91 pid: export summary as json 2020-09-30 20:06:47 +02:00
Astro 9e5a58cafd main: switch reports to json serialization 2020-09-27 23:58:03 +02:00
Astro 97a09e422b main: add support for disabling postfilters 2020-09-26 01:29:35 +02:00
Astro 9f70ef2e0a main: power_down channels before sys_reset 2020-09-25 22:24:43 +02:00
Astro 83589610b5 implement reset command 2020-09-25 00:14:29 +02:00
Astro a2caac0fe5 channels: power_down TEC when thermistor is not connected to ADC 2020-09-25 00:01:08 +02:00
Astro 20059aff5c channel_state: recognize unplugged thermistor 2020-09-24 23:34:09 +02:00
Astro a1ad9b2456 main: load config from eeprom on boot 2020-09-24 23:08:42 +02:00
Astro 8d70c03520 config: finalize load/save 2020-09-24 23:04:29 +02:00
Astro 58e648b5e0 pid::Parameters, CenterPoint: demote f32 fields to save config space 2020-09-24 20:47:02 +02:00
Astro d40a038c2f config: switch to postcard encoding 2020-09-24 02:06:53 +02:00
Astro 5d0d75d395 config: encode with serde_cbor 2020-09-24 01:18:33 +02:00
Astro 93f14523d7 command_parser: parse load/save 2020-09-24 01:17:50 +02:00
Astro 201701ee8b implement mac address generation with reading eui48 from i2c eeprom 2020-09-24 00:19:07 +02:00
Astro a84242fb1f implement setting i_set centerpoint 2020-09-23 22:30:04 +02:00
Astro b394cfa3d4 main: remove special handling for PwmPin::ISet 2020-09-23 20:50:50 +02:00
Astro b9902929a9 test: #[allow(unused)] 2020-09-18 01:22:41 +02:00
Astro a4dde1b8ca delint 2020-09-18 00:55:53 +02:00