Commit Graph

348 Commits

Author SHA1 Message Date
topquark12 df072c415c fix whitespace error 2023-05-16 15:57:23 +08:00
topquark12 cc187ef80d bi-dir sync, minimum working prototype 2023-05-16 15:57:23 +08:00
topquark12 18c1ce5a86 sync tree param from TEC 2023-05-16 15:57:23 +08:00
topquark12 c5e564f25f add sync from TEC 2023-05-16 15:57:23 +08:00
topquark12 64283958b7 add param tree, param tree inactive 2023-05-16 15:57:23 +08:00
topquark12 3ec8f7a81d add voltage monitoring 2023-05-16 15:57:23 +08:00
topquark12 790b57085e fix typo 2023-05-16 15:57:23 +08:00
topquark12 474c80722e refactor with classes 2023-05-16 15:57:23 +08:00
topquark12 eb6ab2a222 add graph legends 2023-05-16 15:57:23 +08:00
topquark12 ea9b9a7a90 add more graphs in 2x2 grid 2023-05-16 15:57:23 +08:00
topquark12 2cfd162498 plot both channel temperatures 2023-05-16 15:57:23 +08:00
topquark12 7b8d25f160 fix pyqtgraph on nixos 2023-05-16 15:57:23 +08:00
topquark12 eac507e6c5 add pyqtgraph 2023-05-16 15:57:23 +08:00
Egor Savkin e3e3237d2f Emit warning when current/voltage limits are near zero
Signed-off-by: Egor Savkin <es@m-labs.hk>
2023-03-23 16:58:05 +08:00
Egor Savkin 570c0324b3 implement support for fan PWM
Co-authored-by: Egor Savkin <es@m-labs.hk>
Co-committed-by: Egor Savkin <es@m-labs.hk>
2023-03-22 17:15:49 +08:00
mwojcik 5688b2f1bb flake: update stm32-eth sha256 hash 2022-03-02 17:21:17 +08:00
mwojcik 1b2f2f3888 update code to use stm32f4xx-hal 0.10.1 API 2022-03-02 17:21:17 +08:00
mwojcik e6f63ec940 cargo/nix: update rustc, stm32-eth, smoltcp 2022-03-02 17:21:17 +08:00
mwojcik 67446ae99e cargo/flake: update package versions 2022-03-02 17:21:17 +08:00
topquark12 26ad2f0119 rewrite PID
Rewrite of PID according to https://hackmd.io/IACbwcOTSt6Adj3_F9bKuw PID implementation.

To migrate:
- TEC+/- pin polarity has to be reversed.
- Some saved settings might be wiped upon flashing of new firmware, back up settings before upgrade
- Min / Max integral parameters no longer exist
- kp, ki, kd will likely need to be retuned

The software has been tested on hardware with good temperature control stability.

Reviewed-on: M-Labs/thermostat#68
Co-authored-by: topquark12 <aw@m-labs.hk>
Co-committed-by: topquark12 <aw@m-labs.hk>
2022-02-24 20:16:47 +08:00
Alex Wong 69dabf5aa1 update hash 2022-01-24 17:20:32 +08:00
mwojcik a26cdfabb1 readme: update CI links 2022-01-19 11:37:01 +08:00
mwojcik 4d43709f76 nix flakes support (#64)
Reviewed-on: M-Labs/thermostat#64
Co-authored-by: mwojcik <mw@m-labs.hk>
Co-committed-by: mwojcik <mw@m-labs.hk>
2022-01-19 11:13:47 +08:00
Sebastien Bourdeauducq 1c00e732fa README: minor corrections 2022-01-05 08:22:43 +08:00
Sebastien Bourdeauducq 09082b24a5 README: update build instructions 2022-01-05 08:04:25 +08:00
Sebastien Bourdeauducq 85e8273d51 shell.nix: follow nix-scripts 2022-01-05 07:54:07 +08:00
Sebastien Bourdeauducq e81c6d1692 README: fix objcopy command 2022-01-05 07:50:53 +08:00
Sebastien Bourdeauducq 1f644fd62c README: fix nix-scripts folder 2021-07-14 08:43:59 +08:00
Sebastien Bourdeauducq 4f1d865d2b README: fix Hydra links 2021-07-14 08:42:53 +08:00
topquark12 e6a5c31db6 main.rs refactor to reduce length (#60)
Move command handling to command_handler.rs to shorten main.rs

Reviewed-on: M-Labs/thermostat#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: M-Labs/thermostat#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 6b9d61737e docs: update docs to reflect improved stability performance 2021-01-25 13:51:50 +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 96f52ace8b pytec: simpler default graphs in plot 2021-01-25 13:51:50 +08:00
topquark12 a1a8efd51a readme: update docs on max_i_neg command and heat flow directions 2021-01-25 13:51:50 +08:00
Sebastien Bourdeauducq 8eb3cc4307 dfu: style 2021-01-18 16:59:13 +08:00
topquark12 f3661ac8e3 dfu: refactor 2021-01-18 16:45:01 +08:00
topquark12 c4e3be1d05 fix pid.rs test, exclude dfu from test 2021-01-16 11:04:24 +08:00
topquark12 cf3ace4d2d flash_store: get addresses from linker
Reviewed-on: M-Labs/thermostat#49
Co-Authored-By: topquark12 <aw@m-labs.hk>
Co-Committed-By: topquark12 <aw@m-labs.hk>
2021-01-13 17:30:12 +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 9e4d06fdbc clarify comment 2021-01-11 16:24:43 +08:00
topquark12 3433881d0f remove dead code 2021-01-11 14:10:50 +08:00
topquark12 193d54a0a6 pid: anti-windup when compliance voltage reached 2021-01-11 14:00:52 +08:00
topquark12 3067b356c5 channels: add methods to retrieve actual voltage and current of TEC 2021-01-08 16:18:20 +08:00
topquark12 3ba2cc9ddc channels: voltage measurement refalect actual voltage across TEC 2021-01-08 15:52:35 +08:00
topquark12 1539b624bd pid: more sensible default parameters 2021-01-08 11:31:33 +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: M-Labs/thermostat#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
topquark12 45b7c4e669 add documentation about PID setup and using Python tools
Co-Authored-By: topquark12 <aw@m-labs.hk>
Co-Committed-By: topquark12 <aw@m-labs.hk>
2021-01-07 14:48:39 +08:00