Small code improvements

This commit is contained in:
Pedro 2023-11-26 14:51:58 +01:00
parent c164faae21
commit 851cef2b9b
2 changed files with 18 additions and 19 deletions

View file

@ -106,14 +106,11 @@ class DISPATCHER():
self.data_queue_transmit = DATA_QUEUE_TRANSMIT
self.data_queue_received = DATA_QUEUE_RECEIVED
def _start_worker_threads(self):
def start(self):
"""Starts worker threads for transmit and receive operations."""
threading.Thread(target=self.worker_transmit, name="Transmit Worker", daemon=True).start()
threading.Thread(target=self.worker_receive, name="Receive Worker", daemon=True).start()
def start(self):
self._start_worker_threads()
def worker_transmit(self) -> None:
"""Dispatch incoming UI instructions for transmitting operations"""
while True:

View file

@ -64,28 +64,30 @@ class SM:
# read config
self.config = self.app.config_manager.read()
if self.states.is_modem_running:
self.log.warning("modem already running")
return False
# test audio devices
audio_test = self.test_audio()
if False not in audio_test and None not in audio_test and not self.states.is_modem_running:
self.log.info("starting modem....")
self.modem = modem.RF(self.config, self.modem_events, self.modem_fft, self.modem_service, self.states)
#self.data_handler = data_handler.DATA(self.config, self.modem_events, self.states)
self.frame_dispatcher = frame_dispatcher.DISPATCHER(self.config, self.modem_events, self.states)
self.frame_dispatcher.start()
self.states.set("is_modem_running", True)
self.modem.set_FFT_stream(self.enable_fft)
return True
elif self.states.is_modem_running:
self.log.warning("modem already running")
return False
else:
if False in audio_test or None in audio_test or self.states.is_modem_running:
self.log.warning("starting modem failed", input_test=audio_test[0], output_test=audio_test[1])
self.states.set("is_modem_running", False)
self.modem_events.put(json.dumps({"freedata": "modem-event", "event": "failed"}))
self.modem_events.put({"freedata": "modem-event", "event": "failed"})
return False
self.log.info("starting modem....")
self.modem = modem.RF(self.config, self.modem_events, self.modem_fft, self.modem_service, self.states)
self.frame_dispatcher = frame_dispatcher.DISPATCHER(self.config, self.modem_events, self.states)
self.frame_dispatcher.start()
self.states.set("is_modem_running", True)
self.modem.set_FFT_stream(self.enable_fft)
return True
def stop_modem(self):
self.log.info("stopping modem....")
del self.modem