atse
8ff08c1539
Not just ip, can put domain name too, or "host"
2024-02-14 11:31:41 +08:00
atse
b32062d855
More elegant connection stopping
2024-02-14 11:31:41 +08:00
atse
d52aafd7f6
Add timeout to connect call
2024-02-14 11:31:41 +08:00
atse
efa814a0d3
Add load and save config menu items
2024-02-14 11:31:41 +08:00
atse
1be874f6a7
Add about thermostat menu item
...
Meant to display hardware rev stuff, does nothing right now
2024-02-14 11:31:41 +08:00
atse
9364c9b187
Add network settings menu option
...
Also does nothing for now
2024-02-14 11:31:41 +08:00
atse
a9c0106c46
Add DFU mode menu option
...
Does nothing for now
2024-02-14 11:31:41 +08:00
atse
2d341df23c
Use _on_connection_changed(False)
2024-02-14 11:31:41 +08:00
atse
8f31380d52
Reset button
2024-02-14 11:31:41 +08:00
atse
998d999b59
Save the entire hw_rev data
...
Not just fan_pwm_recommended
2024-02-14 11:31:41 +08:00
atse
ca7c64c115
Put connection details in connection button menu
2024-02-14 11:31:41 +08:00
atse
a1a94a9c99
Move host selection into menu too
2024-02-14 11:31:41 +08:00
atse
9fc38d4614
Move fan throttling warning to the right
2024-02-14 11:31:41 +08:00
atse
5732bc951f
Split the settings and plotting menus
2024-02-14 11:31:41 +08:00
atse
cbffb8d700
Crude relocation of port spinbox from .ui file
2024-02-14 11:31:41 +08:00
atse
cc1fddddda
Space out bottom bar properly
2024-02-14 11:31:41 +08:00
atse
9aac571187
Remove leftover lines
2024-02-14 11:31:41 +08:00
atse
a3d4bef68e
Crude removal of fan group from .ui file
2024-02-14 11:31:41 +08:00
atse
8e98b62cfb
Add line at PID temp
2024-02-14 11:31:41 +08:00
atse
64891231cd
Report mode functionality
2024-02-14 11:31:41 +08:00
atse
728bce38b6
Add crosshair for better read of values
2024-02-14 11:31:41 +08:00
atse
5c081b0547
Add samples box in menu
2024-02-14 11:31:41 +08:00
atse
001ce432e8
Add clear graphs context menu item
2024-02-14 11:31:41 +08:00
atse
fdf4c4f0d6
Plot temperature and current graphs
...
- Have units
- Samples are limited
- pglive is used for better live graphs
-- Also fixes bug with constantly updating normal pyqtgraphs where it
will bug out if right-clicked on and context menu is brought up
--Since pglive requires pyqtgraph == 0.13.3, upgrade pyqtgraph to that
too.
2024-02-14 11:31:41 +08:00
atse
90df3ae784
Plus or minus symbol on swing
2024-02-14 11:31:41 +08:00
atse
ac51476d59
Add save to flash paramtree item
2024-02-14 11:31:41 +08:00
atse
4be6d419f6
Hide paramtree headers
2024-02-14 11:31:41 +08:00
atse
ae6f08247a
Add postfilter config
2024-02-14 11:31:41 +08:00
atse
863352d620
Add i_set
2024-02-14 11:31:41 +08:00
atse
9803a2d12b
Add pwm update
2024-02-14 11:31:41 +08:00
atse
8291b2052f
Add thermistor config & sync
...
Note: The formula is not actually Steinhart-Hart
2024-02-14 11:31:41 +08:00
atse
49c5120600
Connect up pid
2024-02-14 11:31:41 +08:00
atse
0e3a01d601
Connect up report update
2024-02-14 11:31:41 +08:00
atse
4961b2adb2
Use proper symbols in units, and add units
...
PID parameters are not actually dimensionless, and their units can be
deduced from the input unit and the output (actuator) unit.
2024-02-14 11:31:41 +08:00
atse
abf5d5f2bd
Fix formatting
2024-02-14 11:31:41 +08:00
atse
1b3f767d94
Might as well be a pass, doens't exec
2024-02-14 11:31:41 +08:00
atse
137004e6b5
Loop through trees to set them up
2024-02-14 11:31:41 +08:00
atse
5ba189d3ba
Remove unused as clause
2024-02-14 11:31:41 +08:00
Egor Savkin
928db9963d
Add paramtree view, without updates
...
Signed-off-by: Egor Savkin <es@m-labs.hk>
Fix signal blocker argument -atse
2024-02-14 11:31:41 +08:00
atse
8383abec8c
Add explanation of report rate
2024-02-14 11:31:41 +08:00
atse
b8d0cdabd3
Swap order connected first
2024-02-14 11:31:41 +08:00
atse
04a8f5ea56
Add tooltip to fan
2024-02-14 11:31:41 +08:00
atse
6c11a0536c
Arrange context menu items to be in order
2024-02-14 11:31:41 +08:00
atse
e5b0583a91
Disable auto fan box if adjusted while auto
2024-02-14 11:31:41 +08:00
atse
71076510a2
Steal fan group and port??? Somehow
2024-02-14 11:31:41 +08:00
atse
7749459701
Max the label
2024-02-14 11:31:41 +08:00
atse
463ee4105c
Context menu by QToolButton
2024-02-14 11:31:41 +08:00
atse
1d192f50c8
Remove redundant return
2024-02-14 11:31:41 +08:00
atse
30f6c4f829
Correct order once the tec_client disconnects to
...
stop watching the client first
2024-02-14 11:31:41 +08:00
atse
1226cca6e6
Only set connecting task to None once
2024-02-14 11:31:41 +08:00
atse
8520dae93b
Update and add docstrings to aioclient
2024-02-14 11:31:41 +08:00
atse
981c28ac27
Conslidate connect & disconnect actions
2024-02-14 11:31:41 +08:00
atse
5ced33594c
Change name of button slot
2024-02-14 11:31:41 +08:00
atse
b4a5e90f2e
Turn on_connection_changed to coroutine
...
Further compresses the connect
2024-02-14 11:31:41 +08:00
atse
82438ee4a5
Simplify stuff a bit
2024-02-14 11:31:41 +08:00
atse
e727f8b06b
Change statement order up a bit
2024-02-14 11:31:41 +08:00
atse
27ce311111
Init client_watcher once
2024-02-14 11:31:41 +08:00
atse
659d0d0835
Init client once
...
No none-ing
2024-02-14 11:31:41 +08:00
atse
fa60439e39
Put the connecting task in aioclient
2024-02-14 11:31:41 +08:00
atse
7e56f2d879
Rearrange bottom bar for new context menu
2024-02-14 11:31:41 +08:00
atse
917a2546cc
Remove is running loop variable
...
Just use Task.done()
2024-02-14 11:31:41 +08:00
atse
fd83ee23e1
Catch a more specific exception
2024-02-14 11:31:41 +08:00
atse
115c7eb800
Add stop connection button
...
Stuff to add to stop button
2024-02-14 11:31:41 +08:00
atse
7e1b64b72c
Set fan slider value minimum to 1, not 0
2024-02-14 11:31:41 +08:00
atse
fca4b061ee
Fix Slot decorators and types
2024-02-14 11:31:41 +08:00
atse
9f839f4bd9
Handle UI when fan_pwm is 0
2024-02-14 11:31:41 +08:00
atse
ac77c457ec
Fix fan warning wording
2024-02-14 11:31:41 +08:00
atse
54bb740a41
Only warn about fan pwm when not at full strength
2024-02-14 11:31:41 +08:00
atse
47dbe95045
Replace fan group highlighting with warning icon
...
Highlighting is too confusing
2024-02-14 11:31:41 +08:00
atse
8045d8c93d
Grammar
2024-02-14 11:31:41 +08:00
atse
3d801666fa
Update fan slider value immediately after fan auto
2024-02-14 11:31:41 +08:00
atse
5e105884d1
Use slider signal argument to set fan value
2024-02-14 11:31:41 +08:00
atse
1849711c62
Set client to none if failed to connect
...
Fixes connect button behaviour after accidental disconnect
2024-02-14 11:31:41 +08:00
atse
84018c3ebc
Start running only when task is running
2024-02-14 11:31:41 +08:00
atse
1fd49360d0
Lock connection details while connecting
...
Fix connect button behaviour
2024-02-14 11:31:41 +08:00
atse
ad5e36beab
Add unit to report spinbox
2024-02-14 11:31:41 +08:00
atse
a55589415d
Cancel task to stop watch
2024-02-14 11:31:41 +08:00
atse
c261ca2447
Disconnect client too on close
2024-02-14 11:31:41 +08:00
atse
c476ad9f7d
Close client_watcher on closeEvent not aboutToQuit
...
Mirrors
2024-02-14 11:31:41 +08:00
atse
d0d33f42da
Rearrange client_watcher to hold its own task
2024-02-14 11:31:41 +08:00
atse
608573c03c
Update fan too
2024-02-14 11:31:41 +08:00
atse
ec9ce6537c
More helpful tooltip
2024-02-14 11:31:41 +08:00
atse
6b4b576518
Fix hardware revision showing major.major
2024-02-14 11:31:41 +08:00
atse
142fe1043c
Remove unused 'as' clause
2024-02-14 11:31:41 +08:00
atse
3544f1ebdf
Get rid of global client
2024-02-14 11:31:41 +08:00
atse
e33f8430f2
Remove client_watcher global
2024-02-14 11:31:41 +08:00
atse
9cf33abe06
Gather client_watcher managment into connect
2024-02-14 11:31:41 +08:00
atse
0252c7b0e4
Invert logic, connect first
2024-02-14 11:31:41 +08:00
atse
c6ca2b3490
Make Ui_MainWindow a superclass of our main window
...
Gets rid of the global ui.
2024-02-14 11:31:41 +08:00
atse
299ef7dcc3
Get rid of app global
...
QApplication is a singleton, no need for global
2024-02-14 11:31:41 +08:00
atse
73887564a5
Change title
2024-02-14 11:31:41 +08:00
atse
f469d8fee3
Stop polling drift
...
Just waiting for the update_s doesn't take into account the time to
execute update_params, and causes time drift.
2024-02-14 11:31:41 +08:00
atse
f546a3c61b
Finish moving over to qasync
...
Also:
-Add aioclient
The old client is synchronous and blocking, and the only way to achieve
true asynchronous IO is to create a new client that interfaces with
asyncio.
-Make the GUI `nix run`-able
2024-02-14 11:31:41 +08:00
Egor Savkin
0ad77047f1
Try move from Qthreads to qasync
...
Signed-off-by: Egor Savkin <es@m-labs.hk>
2024-02-14 11:31:41 +08:00
Egor Savkin
3de6f233f9
Create client watcher, that would poll Thermostat for config
...
Signed-off-by: Egor Savkin <es@m-labs.hk>
2024-02-14 11:31:41 +08:00
Egor Savkin
069280feb6
Create basic GUI, that would connect and control thermostat's fan
...
Signed-off-by: Egor Savkin <es@m-labs.hk>
2024-02-14 11:31:41 +08:00
topquark12
059dd0bbb6
add autotune
2024-02-14 11:31:41 +08:00
topquark12
be4383a447
WIP: adding autotune
2024-02-14 11:31:41 +08:00
topquark12
f31c3be335
fix docs, fix i_set, fix GUI param ranges
2024-02-14 11:31:41 +08:00
topquark12
e71453750c
fix whitespace error
2024-02-14 11:31:41 +08:00