Hardware Connection fix

This commit is contained in:
2026-09-20 13:01:36 +02:00
parent b6cb5bb6a1
commit a649865643
4 changed files with 54 additions and 25 deletions
+13 -3
View File
@@ -11,7 +11,7 @@ class ArduinoCommunication(Thread):
def __init__(self, port=cfg.port, baudrate=cfg.baudrate, timeout=cfg.comm_timeout):
super().__init__()
self.daemon = True # Thread schlie�t sich beim Programmende
self.serial_conn = serial.Serial(port, baudrate, timeout=timeout)
self.serial_conn = serial.Serial(port, baudrate, timeout=timeout)
time.sleep(2) # Warten bis Arduino ready
self.command_queue = Queue()
@@ -19,6 +19,9 @@ class ArduinoCommunication(Thread):
self.running = Event()
self.running.set()
def send_motion(self, radial_array):
self.write(radial_array)
def run(self):
while self.running.is_set():
# 1. Befehle senden
@@ -70,5 +73,12 @@ class ArduinoCommunication(Thread):
def stop(self):
self.running.clear()
self.join()
self.serial_conn.close()
try:
self.join(timeout=0.5)
except RuntimeError:
pass
if self.serial_conn and self.serial_conn.is_open:
self.serial_conn.close()
def close(self):
self.stop()