Commit Graph

332 Commits

Author SHA1 Message Date
7f427fbc2a flake: remove unnecessary rec 2022-01-19 10:24:15 +08:00
5e42de5ed9 flake: removed unnecessary gcc 2022-01-18 11:27:57 +08:00
30b932127a flakes: 2 spaces indent 2022-01-18 10:58:38 +08:00
2108ab0782 readme: update build instructions for flakes 2022-01-18 10:55:52 +08:00
af9f3903be flakes: cleanup 2022-01-18 10:55:26 +08:00
e749a96971 flake: fix build, replace cargoSha256 -> cargoLock 2022-01-17 16:44:42 +08:00
22cc53d854 introduced nix flakes 2022-01-14 16:44:47 +08:00
1c00e732fa README: minor corrections 2022-01-05 08:22:43 +08:00
09082b24a5 README: update build instructions 2022-01-05 08:04:25 +08:00
85e8273d51 shell.nix: follow nix-scripts 2022-01-05 07:54:07 +08:00
e81c6d1692 README: fix objcopy command 2022-01-05 07:50:53 +08:00
1f644fd62c README: fix nix-scripts folder 2021-07-14 08:43:59 +08:00
4f1d865d2b README: fix Hydra links 2021-07-14 08:42:53 +08:00
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
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
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
6b9d61737e docs: update docs to reflect improved stability performance 2021-01-25 13:51:50 +08:00
16844a1dc1 dac: fix inconsistent current output behavior due to repeated sampling of noisy vref 2021-01-25 13:51:50 +08:00
96f52ace8b pytec: simpler default graphs in plot 2021-01-25 13:51:50 +08:00
a1a8efd51a readme: update docs on max_i_neg command and heat flow directions 2021-01-25 13:51:50 +08:00
8eb3cc4307 dfu: style 2021-01-18 16:59:13 +08:00
f3661ac8e3 dfu: refactor 2021-01-18 16:45:01 +08:00
c4e3be1d05 fix pid.rs test, exclude dfu from test 2021-01-16 11:04:24 +08:00
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
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
9e4d06fdbc clarify comment 2021-01-11 16:24:43 +08:00
3433881d0f remove dead code 2021-01-11 14:10:50 +08:00
193d54a0a6 pid: anti-windup when compliance voltage reached 2021-01-11 14:00:52 +08:00
3067b356c5 channels: add methods to retrieve actual voltage and current of TEC 2021-01-08 16:18:20 +08:00
3ba2cc9ddc channels: voltage measurement refalect actual voltage across TEC 2021-01-08 15:52:35 +08:00
1539b624bd pid: more sensible default parameters 2021-01-08 11:31:33 +08:00
5c84b7438b Integral rescaling 2021-01-08 11:25:01 +08:00
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
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
73dd6d9154 add PID autotune code
Co-Authored-By: topquark12 <aw@m-labs.hk>
Co-Committed-By: topquark12 <aw@m-labs.hk>
2021-01-06 11:02:52 +08:00
e94601f54f pid: fix derivative calculation
Reviewed-on: M-Labs/thermostat#40
Co-Authored-By: topquark12 <aw@m-labs.hk>
Co-Committed-By: topquark12 <aw@m-labs.hk>
2020-12-29 17:09:03 +08:00
8c9e12587f fix simulation math, provided simulation control loop is stable and passes test, reaching simulation cycle limit before settling fails test 2020-12-28 17:38:10 +08:00
7c013ff4a4 PID fixes
Flipped error calculation method to correct behavior of kP and kI terms.

Added anti integral windup to integral handling.

Changed how the i and integral term is calculated, to prevent old kI settings from affecting the current i term calculation when kI is being tuned. Especially noticable when kI is set from a non-zero value to zero.
Co-Authored-By: topquark12 <aw@m-labs.hk>
Co-Committed-By: topquark12 <aw@m-labs.hk>
2020-12-26 11:47:21 +08:00
50a1b9f52d pid: partial -> proportional 2020-12-26 11:01:40 +08:00
9852b32646 command_parser, main: implement ShowCommand::Ipv4
Fixes Gitea issue #30
2020-12-20 20:44:10 +01:00
22b0c9fcad main: don't re- set_ipv4_config every tick 2020-12-20 20:43:20 +01:00
e13ed37271 pid: fix tests 2020-12-20 20:24:24 +01:00
5987d9c881 README: rlwrap nc, 60 Hz 2020-12-18 21:27:09 +01:00
7c55e34145 pytec: remove obsolete conversions 2020-12-18 19:37:25 +01:00
b176fc2788 pid: doc parameters 2020-12-18 16:29:53 +01:00
b717ac5495 pid: update default gain parameters 2020-12-18 16:27:47 +01:00
980d27ebfc pytec: remove client-side interval calculation 2020-12-18 15:44:11 +01:00
e9e46b29cf pid: integrate time_delta to free gain parameters from sampling period
Fixes Gitea issue #22
2020-12-18 15:40:05 +01:00
b7e6cdbec2 pytec: measure interval 2020-12-16 22:14:21 +01:00
93ea46d512 README: doc postfilter
Fixes Gitea issue #21
2020-12-16 20:47:18 +01:00