Commit Graph

312 Commits

Author SHA1 Message Date
7f9dc37c10 cmd_handler: Add msg to InvalidCmd Response 2025-01-24 16:59:49 +08:00
9bec46490d gui: Include firmware rev in About msg box 2025-01-24 16:59:49 +08:00
0e707e3d6b driver: Add fn to get the firmware rev 2025-01-24 16:59:49 +08:00
c2806aee27 cmd_handler: Add new cmd to for commit hash 2025-01-24 16:59:49 +08:00
1b7f5bc3e4 firmware: add commit hash into firmware 2025-01-24 16:59:49 +08:00
227d9d4877 laser: Short LD terminals when ld pwr is off 2025-01-24 16:59:49 +08:00
6ad41c8502 gui: Do not use window title in info_box
- info_box does not resize with the title length
- On MacOS, the title won't be displayed
2025-01-24 16:59:49 +08:00
2a6db53dc8 driver: wait for the read_response task to complete before connection retry 2025-01-23 11:52:02 +08:00
7dd551201e driver: fix bug in failing to emit error msg 2025-01-23 11:52:02 +08:00
753a16ab8e driver: Close incoming awaitable fn if queue is full 2025-01-23 11:52:02 +08:00
76a19cb65a driver: rm data validation
- Data validation is done on Kirdy Server side
- Thus, remove duplicated logic
- Merge send_cmd and send_raw_cmd
2025-01-23 11:51:56 +08:00
cd3347798c driver, firmware: Rm active report mode & cmd 2025-01-21 11:31:02 +08:00
85f81ee8e4 Change default tcp port 1337 -> 1550 2025-01-09 16:38:02 +08:00
5b00bd60c7 rm erase_flash_settings.bin 2025-01-09 10:52:20 +08:00
4d8e16771e gui: Correct Pid Autotune output current limit 2024-10-29 12:59:15 +08:00
4d332328c0 gui: Limit min PD Mon Pwr y axis range to 0-100uW 2024-10-23 12:24:57 +08:00
edb8099a26 Add pglive patch for setting y-axis min range span 2024-10-23 12:24:57 +08:00
49dc8a9b96 gui: autotuner only set_i when relay state changes
- Previously, autotuner issues set_i cmd for each report obj received
- These change increase the maximum autotune-able PID update rate with GUI
2024-10-22 18:09:39 +08:00
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
8f5a294a53 gui: Fix graphs' refresh rate to be 10Hz
- Reduce unnecessary CPU usage
2024-10-22 10:57:55 +08:00
87b0e1bf67 gui: rm sIPrefix from PD Current readings 2024-10-21 11:15:15 +08:00
35f66c3516 gui: Change LD, Thermostat Status Display Method
- Use combinations of label and stylesheet border to create visual cue for status
2024-10-18 17:33:54 +08:00
dd7e1bbbdd gui: Adjust y_axis limit range of graphs 2024-10-18 17:33:09 +08:00
a3b38fc6b7 gui: Unify the param tree unit formatting style 2024-10-18 17:33:01 +08:00
388e6725ef thermostat: Clear alarm when settings are loaded 2024-10-17 17:36:17 +08:00
f4c761c5ca pid: Scale PID Parameters with Sampling Rate
- Breaking changes
2024-10-17 17:36:06 +08:00
e560d8f1eb thermostat, gui: Set max v range according to datasheet 2024-10-16 16:21:11 +08:00
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
bad21806f8 gui: Add new form for temp adc filter cfg and settable polling rate
List of Changes:
1. Get report via polling instead of active report mode
2. Allow user to set a custom report polling rate while settings polling rate is fixed to 10Hz
- it is necessary for pid autotune to function correctly
3. Add a form for configuring temperature adc filter
4. Use two different timer for polling report and settings to optimize performance

Known Issue:
1. CPU utilization increases with the report polling rate as for each report recv-ed, gui renders and plots one frame of the 4 graphs
2024-10-10 17:25:33 +08:00
cb2bc505c9 driver: expose _odr_type for filter cfgs 2024-10-10 17:25:29 +08:00
4f19d2c2be driver: Expose the upper and lower limit settings for Sinc3WithFineODR Filter Cfg 2024-10-10 15:23:57 +08:00
e8d3858fc9 driver: return whether task queue is full in task_dispatcher() 2024-10-10 15:20:58 +08:00
9bec56ed6c driver: Add support for GetPollInterval cmd 2024-10-10 15:19:43 +08:00
51b82e0447 cmd_handler: Add cmd to get temp adc polling interval 2024-10-10 13:41:15 +08:00
31e108a4b5 thermostat: settings obj now contains the exact filter type and val 2024-10-10 13:39:37 +08:00
253f4410ee sys_timer: Add fn to retrieve ts in us resolution 2024-10-10 13:31:20 +08:00
bd72c382b0 thermostat: Fix incorrect Dac Calibration Algo
- Thermostat Firmware repo PR #133
2024-10-08 15:57:18 +08:00
a512614de5 net: add option not to open sock when it is polled
- fix a bug, which mcu can get stuck in State::HardReset indefinitely
2024-09-11 17:54:23 +08:00
76f7875e3a gui: await for hard rst and dfu action 2024-09-11 17:54:23 +08:00
0d64d62fb0 gui: Add pd_mon config form
- force user to follow a sequence of steps for safely configuring pd_mon
2024-09-11 17:54:18 +08:00
0aeffdbf7b ld_pwr_exc_protector: disable irq after pwr off
-setting 0V threshold during power off might trigger IRQ
2024-09-11 17:05:38 +08:00
89a1270c02 driver: send cmd err msg to a pyqt sig 2024-09-11 17:05:38 +08:00
c2e78e6f17 driver: Support ApplyPdParams cmd
- Include handling mechanism for "InvalidSettings"b response msg
2024-09-11 17:05:38 +08:00
86e6d3764e laser: check pd_mon params & pwr limit before set
- Design to prevent Issue #47 on hardware kirdy repo from happening
- responsitivity, i_dark & transconductance determine the pwr limit range
- when "ApplyPdParams" and "SetLdPwrLimit" are called, pwr limit range
    is checked before applying new parameter
- Send out a "InvalidSettings" response with error message if settings
    cannot be applied
- Add settable power range to settings json object
2024-09-11 17:05:34 +08:00
1111967a7b gui: add arg for saving log to a file 2024-09-04 17:21:13 +08:00
1896e2534b main: Add PrepareForDfu state 2024-09-04 16:12:06 +08:00
6d4b1b0574 driver: end_session if ConnClose & Dfu is recv-ed 2024-09-04 16:10:42 +08:00
0b5fda2cd9 net: close oldest sock if available socks run out
- By default, smoltcp by default reset any new connections
    if there is no available socket
2024-09-04 15:46:43 +08:00
b763350a8b net: disable IRQ when data is being enqueued
- This prevents broken json to be sent out due to IRQ
2024-09-04 15:46:43 +08:00
838592c812 gui: Display hw_rev when connected 2024-09-04 15:46:43 +08:00