Skip to content
Snippets Groups Projects
Commit 010e38f4 authored by esarrey's avatar esarrey
Browse files

Fix

parent f4c086ab
No related branches found
No related tags found
No related merge requests found
......@@ -28,11 +28,24 @@ class LiveTab(TabWidget, QtWidgets.QWidget):
self.sensor_timer.timeout.connect(self.update_sensor_value)
self.sensor_timer.start(100) # Refresh every 0.1 seconds
self.thread_pool = QtCore.QThreadPool()
self.tabBarClicked.connect(self.tab_activated)
self.tabBarDoubleClicked.connect(self.tab_activated)
def tab_activated(self, index):
if index == self.currentIndex():
self.sensor_timer.start(100) # Start updating sensor value
else:
self.sensor_timer.stop() # Stop updating sensor value
def update_sensor_value(self):
# Create a worker thread for reading the sensor value
# Create a worker object for reading the sensor value
worker = SensorWorker(self.hall_sensor)
worker.sensor_value_updated.connect(self.update_sensor_label)
QtCore.QThreadPool.globalInstance().start(worker)
# Move the worker object to the thread pool and start the thread
self.thread_pool.start(worker)
def update_sensor_label(self, sensor_value):
self.sensor_value_label.setText(str(sensor_value) + "mT")
......@@ -42,13 +55,14 @@ class LiveTab(TabWidget, QtWidgets.QWidget):
self.hall_sensor.zeroing()
self.sensor_timer.start(100)
class SensorWorker(QtCore.QRunnable):
class SensorWorker(QtCore.QObject):
sensor_value_updated = QtCore.pyqtSignal(float)
def __init__(self, hall_sensor):
super().__init__()
self.hall_sensor = hall_sensor
@QtCore.pyqtSlot()
def run(self):
sensor_value = self.hall_sensor.read_mT()
self.sensor_value_updated.emit(sensor_value)
\ No newline at end of file
self.sensor_value_updated.emit(sensor_value)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment