mirror of https://github.com/DJ2LS/FreeDATA.git
set ptt via serial rts / dtr - first run
parent
fbcd490d5e
commit
a0bd95bed1
|
@ -23,7 +23,7 @@ class RadioManager:
|
|||
if self.radiocontrol in ["rigctld", "rigctld_bundle"]:
|
||||
self.radio = rigctld.radio(self.config, self.state_manager, hostname=self.rigctld_ip,port=self.rigctld_port)
|
||||
elif self.radiocontrol == "serial_ptt":
|
||||
self.radio = serial_ptt.radio(self.config)
|
||||
self.radio = serial_ptt.radio(self.config, self.state_manager)
|
||||
|
||||
elif self.radiocontrol == "tci":
|
||||
raise NotImplementedError
|
||||
|
|
|
@ -5,7 +5,7 @@ class radio:
|
|||
|
||||
log = structlog.get_logger("radio (rigctld)")
|
||||
|
||||
def __init__(self, config):
|
||||
def __init__(self, config, state_manager):
|
||||
self.parameters = {
|
||||
'frequency': '---',
|
||||
'mode': '---',
|
||||
|
@ -18,19 +18,25 @@ class radio:
|
|||
'swr': '---'
|
||||
}
|
||||
self.config = config
|
||||
self.state_manager = state_manager
|
||||
self.serial_rts = self.config["RADIO"]["serial_rts"]
|
||||
self.serial_dtr = self.config["RADIO"]["serial_dtr"]
|
||||
self.serial_comport = self.config["RADIO"]["ptt_port"]
|
||||
|
||||
try:
|
||||
if self.serial_comport in ["ignore"]:
|
||||
self.state_manager.set_radio("radio_status", False)
|
||||
raise serial.SerialException
|
||||
self.serial_connection = serial.Serial(self.serial_comport)
|
||||
# Set initial states for RTS and DTR based on config
|
||||
self.set_rts_state(self.serial_rts)
|
||||
self.set_dtr_state(self.serial_dtr)
|
||||
self.set_ptt(False)
|
||||
|
||||
self.state_manager.set_radio("radio_status", True)
|
||||
except serial.SerialException as e:
|
||||
self.log.warning(f"Error: could not open PTT port {self.serial_comport}: {e}")
|
||||
self.state_manager.set_radio("radio_status", False)
|
||||
self.serial_connection = None
|
||||
|
||||
def connect(self, **kwargs):
|
||||
|
|
Loading…
Reference in New Issue