Commit Graph

245 Commits

Author SHA1 Message Date
linuswck 554f292cab net: Disable nagle algo & Set keep_alive duration 2024-04-22 17:06:07 +08:00
linuswck f303ab639a net: Reset tcp socks when new eth link is detected 2024-04-22 17:06:02 +08:00
linuswck ba30575406 GUI: Improve abnormal disconnection handling 2024-04-22 17:05:56 +08:00
linuswck bfdb1f5066 gui: move tool, save & load flash btns to menu bar
- Add a new form to update IP address
2024-04-19 15:56:48 +08:00
linuswck 5b35f32a42 driver: Handle CancelledError for send_cmd handler 2024-04-19 15:56:48 +08:00
linuswck 2df22d5dcb driver: Use inet_aton to check IPV4 address format 2024-04-19 15:56:48 +08:00
linuswck b73eacd234 driver: Wait for a sec after hard rst cmd is sent 2024-04-19 15:56:43 +08:00
linuswck 4a06a7579f gui: handle hard reset in _on_connection_changed()
- Ensure correct gui disconnection seq during Kirdy hard reset
2024-04-19 15:56:36 +08:00
linuswck 9524601cb6 gui: Improve DataWatcher operation
- Ensure there is only one instance of signal_emitter() task
- calling stop_watching should stop report_task
2024-04-19 13:25:00 +08:00
linuswck 4116962175 firmware: rst active_rpt if eth link is not active 2024-04-18 17:33:09 +08:00
linuswck 0e087c6992 ld: ld_soft_i_limit now limits ld_i_out being set 2024-04-18 17:04:52 +08:00
linuswck 6b250aa1fd gui: Add global QT Style Sheet
- Gray out the objects if they are disabled
2024-04-18 16:45:35 +08:00
linuswck de80aedafc gui: separate connection_menu into Qdiag obj 2024-04-11 16:58:48 +08:00
linuswck 31a97bdeb4 gui: GUI Initial Commit
- Adapted from Thermostat GUI PR #101
2024-04-11 16:33:35 +08:00
linuswck 784b8a357b driver: Update send_cmd fn to use msg_type params 2024-04-10 16:57:43 +08:00
linuswck ceb003e07e cmd_handler: Add msg_type params to report & settings 2024-04-10 16:57:43 +08:00
linuswck 10873f4791 firmware: Load default pwr_on settings from flash 2024-04-10 16:57:43 +08:00
linuswck e160316bfc ld: add ld_terms_short in settings report 2024-04-10 16:57:43 +08:00
linuswck 0a992c1dc8 ld: pd_responsitivity -> pd_mon_params 2024-04-10 16:57:43 +08:00
linuswck ae74455f94 driver: Separate setting pd_config into two fns 2024-04-10 16:56:20 +08:00
linuswck 6bccbceb81 main: Add a state to only save network settings 2024-04-10 16:56:20 +08:00
linuswck eaebdb390d cmd_handler: change mW to W in SetLdPwrLimit cmd 2024-04-10 16:56:20 +08:00
linuswck 489333c43d ld: save pwr_limit into settings 2024-04-10 16:56:20 +08:00
linuswck 4288d465c9 thermostat: Report temp_setpoint in degree celsius 2024-04-10 16:56:20 +08:00
linuswck 09863353cd driver: Add lock for tcp writer & reader stream 2024-04-10 16:56:20 +08:00
linuswck 6d107d55cf driver: Add StoppedConnecting exception 2024-04-10 16:56:20 +08:00
linuswck d435dc06d8 fix typos 2024-03-25 15:43:20 +08:00
linuswck 898358f4e6 pykirdy: Add reporting interval in report_mode 2024-03-25 15:43:20 +08:00
linuswck a13c6fa86c pykirdy: Update handling of json objects received
- Accept new line delimited json in read_response()
2024-03-25 15:43:20 +08:00
linuswck b1a1173075 cmd_handler: Add newline at the end of json sent 2024-03-25 15:43:20 +08:00
linuswck af68b0e90a Update rust, stm32-eth, hal, smoltcp versions 2024-03-25 15:43:12 +08:00
linuswck f8abfd4300 Update nixpkgs version 2024-03-22 12:48:53 +08:00
linuswck 7d41edef20 ld: Increase the delay before turning on LD_PWR
- Delay is tested and verified with oscilloscope
- Tested with 0.3A LD output current
2024-03-21 15:21:24 +08:00
linuswck 607da8a822 ld: Add a delay before turning on LD PWR
- DAC output might not drop to 0V before PWR is being turned on
- Thus, it might drive nondeterministic current into the laser diode during pwr up
2024-03-20 17:24:47 +08:00
linuswck 7f06fc06fd async driver: fix incorrect timeout handling 2024-03-20 15:35:12 +08:00
linuswck 67f9e65df8 Start tec_readings_conversion after report is sent
- Before this fix, tec_readings only converts when eth_is_pending
2024-03-20 15:35:12 +08:00
linuswck 7d2e14ef2f eth: Poll Iface In ETH IRQ
- Improve responsiveness of TCP packets handling
- Fix a bug when one client is connected and active report is ON, the other client's cmds do not receive Ack from Kirdy
2024-03-20 15:32:28 +08:00
linuswck e525a3f354 fix typo 2024-03-20 12:06:05 +08:00
linuswck 8431e9f43d Update README 2024-03-20 11:55:21 +08:00
linuswck e9d5f4598a Fix wrong USB Product Description 2024-03-20 11:45:09 +08:00
linuswck 1867935047 Send report to connected socket
- Remove active report in flash settings
2024-03-19 17:38:29 +08:00
linuswck 99cf17f7e4 temp_mon: Add support for constant current mode 2024-03-19 14:52:26 +08:00
linuswck 048245f674 set_tec_max_i_pos/neg->...cooling_i/heating_i 2024-03-19 14:52:26 +08:00
linuswck 0a01d299bc Fix wrong reporting of Thermostat Pwr_on status 2024-03-19 14:52:26 +08:00
linuswck dbbd438e92 ld: Fix unable to save & load ld_i flash settings 2024-03-19 14:48:25 +08:00
linuswck 3ad7c417f6 Fix a ld current ramp up bug
- During ld_i ramp up, if pwr up cmd is called, ld_i is set incorrectly
2024-03-18 16:41:55 +08:00
linuswck c06491a8b2 Update PID Autotune Code 2024-03-18 15:55:05 +08:00
linuswck 0380c8d30b Unify naming and unit in firmware and driver
- mA, uA -> A
- K -> Degree Celsius
- tec -> thermostat
2024-03-18 15:55:05 +08:00
linuswck ed5cda6364 Correct wrong comment in driver 2024-03-18 15:54:25 +08:00
linuswck 61624b0bd6 Implement Kirdy AsyncIo Driver and example code 2024-03-15 17:14:22 +08:00