Commit Graph

57 Commits

Author SHA1 Message Date
atse 32bd49b258 Add a command to reverse the output polarity
Effectively flips all values related to the directionality of current
through the TEC, including current maximums. The reversed status is
stored in the flash store and will be loaded on reset once saved.

The command is "pwm <ch> polarity <normal/reversed>", where the "normal"
polarity is indicated by the front panel markings.

This is needed for IDC cable connections to the Sinara 5432 DAC
"Zotino", since the TEC pins of the 10-pin connector on the Thermostat
and Zotino have opposite polarities.
2024-09-30 17:36:47 +08:00
atse b336c4f993 Remove report mode
As the report mode command breaks the send-receive architecture model of
the command interface, and is deemed an anti-feature, making clients
difficult to write, remove it from the firmware entirely.
2024-09-25 17:19:34 +08:00
atse 9d89104f50 README: Fix command to make firmware BIN (#115)
Co-authored-by: atse <atse@m-labs.hk>
Co-committed-by: atse <atse@m-labs.hk>
2024-08-07 18:22:48 +08:00
linuswck 8c1cb3117c README: Add notes on `i_tec` & `tec_i`readouts 2024-05-02 17:48:47 +08:00
linuswck 9fce19a418 Revert "Disable feedback current readout on flawed HW Revs"
This reverts commit ae3d8b51d4.
2024-05-02 14:38:40 +08:00
atse ae3d8b51d4 Disable feedback current readout on flawed HW Revs
Thermostats v2.2 and below have a noisy and offset feedback current
`tec_i` caused by missing hardware on 2 MAX1968 TEC driver pins:

1. A missing RC filter on the ITEC pin that would have isolated CPU
sampling pulses from the signal; and
2. Some missing buffering on the VREF pin that would have avoided
loading the VREF signal, preventing voltage drops from the nominal 1.5V.

Since the resulting signal `tec_i` derived from these two signals can
have an error of around +/- 100mA, and readback may affect the stability
performance of the Thermostat, disable current readback entirely on
affected hardware revisions for now.

See https://github.com/sinara-hw/Thermostat/issues/117 and
https://github.com/sinara-hw/Thermostat/issues/120.

On hardware revisions v3.x and above, this would be fixed.
2024-01-31 12:12:22 +08:00
atse 17edae44fb README: Proofread fan control documentation 2024-01-30 12:43:19 +08:00
atse 631a10938d README: Remove VREF 2024-01-26 17:00:27 +08:00
atse 7646ff9037 README: Avoid deprecated OpenOCD ST-Link config
The config file interface/stlink-v2-1.cfg is deprecated, and the warning
message encourages the switch to interface/stlink.cfg. Do accordingly.
2024-01-04 12:44:52 +08:00
topquark12 5ba74c6d9b README: Correct expected TEC polarity
Adhere to the general convention of TECs cooling down with positive
voltages.
2023-08-15 16:37:51 +08:00
atse cd680dd6cd README: Correct unit of time in reports 2023-07-20 17:45:16 +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
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
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 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 a1a8efd51a readme: update docs on max_i_neg command and heat flow directions 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 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
Astro 5987d9c881 README: rlwrap nc, 60 Hz 2020-12-18 21:27:09 +01:00
Astro e9e46b29cf pid: integrate time_delta to free gain parameters from sampling period
Fixes Gitea issue #22
2020-12-18 15:40:05 +01:00
Astro b7e6cdbec2 pytec: measure interval 2020-12-16 22:14:21 +01:00
Astro 93ea46d512 README: doc postfilter
Fixes Gitea issue #21
2020-12-16 20:47:18 +01:00
Astro 383ebcd8e4 rewrite config for sfkv-based flash_store 2020-12-12 01:25:07 +01:00
Sebastien Bourdeauducq 088bd6eb76 README: cleanup build and flashing instructions 2020-12-09 10:16:40 +08:00
Sebastien Bourdeauducq 35d1e2e205 Revert "not yet ready note"
This reverts commit 7af5d8582d.

M-Labs/thermostat#23 (comment)
2020-12-09 10:02:36 +08:00
Astro 1090d0f5b5 Merge pull request 'flashing with dfu-util' (#20) from jbqubit/thermostat:flashdoc into master
Update based on two issues.
M-Labs/thermostat#10
https://github.com/sinara-hw/Thermostat/issues/87/

Reviewed-on: M-Labs/thermostat#20
2020-12-09 08:16:45 +08:00
Astro 5c8bb47e11 command_parser: require the explicit `i_set` symbol 2020-12-09 01:07:08 +01:00
Astro b92a5f18cd README: fix units 2020-12-09 00:56:17 +01:00
Joe Britton 7af5d8582d not yet ready note 2020-12-08 12:00:00 -05:00
Joe Britton fca2de665c flashing with dfu-util 2020-12-08 11:07:48 -05:00
Astro ffcc3f661b README: add pid units 2020-12-07 23:18:44 +01:00
Astro 5e8bf0e765 README: add Debugging and Flashing
Fixes Gitea issue #10
2020-12-07 00:22:00 +01:00
Joe Britton af0d78237f Clarify purpose of GND pin adjacent to TECn+/-. 2020-12-06 15:11:42 +08:00
Astro 150d6c2f87 README: use frontpanel LED names 2020-10-12 00:26:49 +02:00
Astro aee279b579 README: doc 2020-10-11 21:50:36 +02:00
Astro 1939490410 README: fix syntax 2020-10-11 21:09:15 +02:00
Astro 2e9d22cf47 README: doc 2020-10-11 21:08:02 +02:00
Astro f12214a4df README: doc usb 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 5acebbef9f pytec: doc set_param 2020-10-01 00:35:16 +02:00
Astro 97a09e422b main: add support for disabling postfilters 2020-09-26 01:29:35 +02:00
Astro 83589610b5 implement reset command 2020-09-25 00:14:29 +02:00
Astro 93f14523d7 command_parser: parse load/save 2020-09-24 01:17:50 +02:00
Astro a84242fb1f implement setting i_set centerpoint 2020-09-23 22:30:04 +02:00
Astro fc0ca8b581 calculate i_set current 2020-09-16 22:22:48 +02:00