linuswck
a1b7538295
driver: Fix disconnection bug at high cmd rate
...
- Disconnection issue can be triggered by setting high polling rate
(500Hz) and then interactive with gui elements
2024-10-22 18:09:28 +08:00
linuswck
e560d8f1eb
thermostat, gui: Set max v range according to datasheet
2024-10-16 16:21:11 +08:00
linuswck
0437c6e76e
thermostat, gui: Relax the max settable TEC Current Limit
...
- Improper settings can cause PoE power failure and over heating
- See hardware repo Issue #51
2024-10-16 16:14:58 +08:00
linuswck
cb2bc505c9
driver: expose _odr_type for filter cfgs
2024-10-10 17:25:29 +08:00
linuswck
4f19d2c2be
driver: Expose the upper and lower limit settings for Sinc3WithFineODR Filter Cfg
2024-10-10 15:23:57 +08:00
linuswck
e8d3858fc9
driver: return whether task queue is full in task_dispatcher()
2024-10-10 15:20:58 +08:00
linuswck
9bec56ed6c
driver: Add support for GetPollInterval cmd
2024-10-10 15:19:43 +08:00
linuswck
89a1270c02
driver: send cmd err msg to a pyqt sig
2024-09-11 17:05:38 +08:00
linuswck
c2e78e6f17
driver: Support ApplyPdParams cmd
...
- Include handling mechanism for "InvalidSettings"b response msg
2024-09-11 17:05:38 +08:00
linuswck
6d4b1b0574
driver: end_session if ConnClose & Dfu is recv-ed
2024-09-04 16:10:42 +08:00
linuswck
e632cbbfdd
driver: use readuntil to get response msg
...
- The driver may recv partial ctrl msg, which causes a json decode error
2024-09-04 15:46:43 +08:00
linuswck
27bf573010
driver: retrieve hw_rev after conn is established
2024-09-04 15:45:27 +08:00
linuswck
c267c30b89
driver: add get_hw_rev() fn
2024-09-04 15:39:27 +08:00
linuswck
5166bb7ba8
driver: rm thread use & make it asyncio callable
...
- make all cmds asyncio callable
- control specific cmds can be enqueued to the handler synchronously
2024-09-04 15:39:21 +08:00
linuswck
3d2294a90c
driver: fix incorrect recv_response behavior
2024-08-27 18:49:13 +08:00
linuswck
572e2dbc5d
gui: update for the new driver code
...
- Default to use active report mode
- Connection will be retried upon abnormal disconnection
- Remove poll every _s and apply btn
2024-08-06 13:01:57 +08:00
linuswck
47bf166ecb
driver: kirdy driver rewrite
...
- Start a new thread to handle connections and schedule FIFO task execution
- Make all the cmd accessible without using async
- Connections automatically retry upon disconnection
- Add support for PyQt6 Signal
2024-08-06 13:01:54 +08:00
linuswck
20c3d42dd7
rm ld soft current limit
2024-07-25 15:53:00 +08:00
linuswck
ec5bf1d6b6
gui, ld: term_status -> term_50ohm
...
- term_status (Is50Ohm / Not50Ohm) -> term_50ohm (On/Off)
2024-07-19 18:10:38 +08:00
linuswck
db2f76771a
Update Kirdy Driver Example Code
2024-07-19 18:10:08 +08:00
linuswck
6f87cba9a6
drive: use aenum for cmd
2024-06-21 16:54:24 +08:00
linuswck
9002ca6992
gui: Fix a bug which GUI may recv two msgs at once
2024-06-17 14:49:31 +08:00
linuswck
92f6b83b16
gui: Fix a bug which dfu cmd can cause connrst err
...
- Kirdy may close and reset itself before host computer ends its session
2024-06-17 13:16:52 +08:00
linuswck
3813b79623
driver: Fix IP Settings not being able to update
2024-06-17 13:16:52 +08:00
linuswck
d5a620c76b
pd_mon: make transconductance user-configurable
...
- hw change: different boards now have different gain settings in order
to set a pd current range close to the ld being used
- transconductance and fin_gain params are added to flash with "Device"
as key
2024-06-17 13:16:48 +08:00
linuswck
ba30575406
GUI: Improve abnormal disconnection handling
2024-04-22 17:05:56 +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
784b8a357b
driver: Update send_cmd fn to use msg_type 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
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
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
7f06fc06fd
async driver: fix incorrect timeout handling
2024-03-20 15:35:12 +08:00
linuswck
e525a3f354
fix typo
2024-03-20 12:06:05 +08:00
linuswck
048245f674
set_tec_max_i_pos/neg->...cooling_i/heating_i
2024-03-19 14:52:26 +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