mirror of https://github.com/DJ2LS/FreeDATA.git
hopefully fixed rigctld fetching
parent
cf06bbffea
commit
8ccff438d0
|
@ -2,7 +2,7 @@
|
|||
"name": "FreeDATA",
|
||||
"description": "FreeDATA Client application for connecting to FreeDATA server",
|
||||
"private": true,
|
||||
"version": "0.13.6-alpha",
|
||||
"version": "0.13.6-alpha.1",
|
||||
"main": "dist-electron/main/index.js",
|
||||
"scripts": {
|
||||
"start": "vite",
|
||||
|
|
|
@ -76,7 +76,11 @@ class radio:
|
|||
self.connection.sendall(command.encode('utf-8') + b"\n")
|
||||
response = self.connection.recv(1024)
|
||||
self.await_response.set()
|
||||
return response.decode('utf-8').strip()
|
||||
stripped_result = response.decode('utf-8').strip()
|
||||
if 'RPRT' in stripped_result:
|
||||
return None
|
||||
return stripped_result
|
||||
|
||||
except Exception as err:
|
||||
self.log.warning(f"[RIGCTLD] Error sending command [{command}] to rigctld: {err}")
|
||||
self.connected = False
|
||||
|
@ -189,24 +193,70 @@ class radio:
|
|||
self.connect()
|
||||
|
||||
if self.connected:
|
||||
self.parameters['frequency'] = self.send_command('f')
|
||||
response = self.send_command(
|
||||
'm').strip() # Get the mode/bandwidth response and remove leading/trailing spaces
|
||||
try:
|
||||
mode, bandwidth = response.split('\n', 1) # Split the response into mode and bandwidth
|
||||
except ValueError:
|
||||
self.get_frequency()
|
||||
self.get_mode_bandwidth()
|
||||
self.get_alc()
|
||||
self.get_strength()
|
||||
self.get_rf()
|
||||
|
||||
return self.parameters
|
||||
|
||||
def get_frequency(self):
|
||||
try:
|
||||
frequency_response = self.send_command('f')
|
||||
self.parameters['frequency'] = frequency_response if frequency_response is not None else 'err'
|
||||
except Exception as e:
|
||||
self.log.warning(f"Error getting frequency: {e}")
|
||||
self.parameters['frequency'] = 'err'
|
||||
|
||||
def get_mode_bandwidth(self):
|
||||
try:
|
||||
response = self.send_command('m')
|
||||
if response is not None:
|
||||
response = response.strip()
|
||||
mode, bandwidth = response.split('\n', 1)
|
||||
else:
|
||||
mode = 'err'
|
||||
bandwidth = 'err'
|
||||
|
||||
except ValueError:
|
||||
mode = 'err'
|
||||
bandwidth = 'err'
|
||||
except Exception as e:
|
||||
self.log.warning(f"Error getting mode and bandwidth: {e}")
|
||||
mode = 'err'
|
||||
bandwidth = 'err'
|
||||
finally:
|
||||
self.parameters['mode'] = mode
|
||||
self.parameters['bandwidth'] = bandwidth
|
||||
|
||||
self.parameters['alc'] = self.send_command('l ALC')
|
||||
self.parameters['strength'] = self.send_command('l STRENGTH')
|
||||
self.parameters['rf'] = int(float(self.send_command('l RFPOWER')) * 100) # RF, RFPOWER
|
||||
def get_alc(self):
|
||||
try:
|
||||
alc_response = self.send_command('l ALC')
|
||||
self.parameters['alc'] = alc_response if alc_response is not None else 'err'
|
||||
except Exception as e:
|
||||
self.log.warning(f"Error getting ALC: {e}")
|
||||
self.parameters['alc'] = 'err'
|
||||
|
||||
"""Return the latest fetched parameters."""
|
||||
return self.parameters
|
||||
def get_strength(self):
|
||||
try:
|
||||
strength_response = self.send_command('l STRENGTH')
|
||||
self.parameters['strength'] = strength_response if strength_response is not None else 'err'
|
||||
except Exception as e:
|
||||
self.log.warning(f"Error getting strength: {e}")
|
||||
self.parameters['strength'] = 'err'
|
||||
|
||||
def get_rf(self):
|
||||
try:
|
||||
rf_response = self.send_command('l RFPOWER')
|
||||
if rf_response is not None:
|
||||
self.parameters['rf'] = int(float(rf_response) * 100)
|
||||
else:
|
||||
self.parameters['rf'] = 'err'
|
||||
except ValueError:
|
||||
self.parameters['rf'] = 'err'
|
||||
except Exception as e:
|
||||
self.log.warning(f"Error getting RF power: {e}")
|
||||
self.parameters['rf'] = 'err'
|
||||
|
||||
def start_service(self):
|
||||
binary_name = "rigctld"
|
||||
|
|
|
@ -29,7 +29,7 @@ app = Flask(__name__)
|
|||
CORS(app)
|
||||
CORS(app, resources={r"/*": {"origins": "*"}})
|
||||
sock = Sock(app)
|
||||
MODEM_VERSION = "0.13.6-alpha"
|
||||
MODEM_VERSION = "0.13.6-alpha.1"
|
||||
|
||||
# set config file to use
|
||||
def set_config():
|
||||
|
|
Loading…
Reference in New Issue