#!/bin/bash # # Author : Gaston Gonzalez # Date : 6 October 2024 # Updated : 10 October 2024 # Purpose : Utility script for dumping system information function usage() { echo "Usage: $(basename $0) " echo " active-radio - Display model of active radio" echo " et-cat - Is CAT control connected" echo " et-gps - Is the GPS connected" echo " ip - System IP address" echo " release - EmComm Tools Release" } if [ $# -ne 1 ]; then usage exit 1 fi case $1 in active-radio) if [ -L "${ET_HOME}/conf/radios.d/active-radio.json" ]; then cat "${ET_HOME}/conf/radios.d/active-radio.json" | jq -r .model else echo "No radio selected" fi ;; et-cat) if [ ! -L "${ET_HOME}/conf/radios.d/active-radio.json" ]; then echo "N/A" exit 0 fi # 1. Check if the symlink was created by the udev rules if [ -e /dev/et-cat ]; then # 2. Check if the rigctl systemd unit is running properly systemctl status rigctld --no-pager > /dev/null if [ $? -eq 0 ]; then # 3. Grab and format frequency FREQ=$(timeout 1 rigctl -m 2 f) if [ $? -eq 0 ]; then printf "%'d MHz\n" "$FREQ" | sed 's|,|.|g' else echo "Connected. Can't access VFO"; fi else echo "Connected. rigctld not running" fi else echo "Not connected"; fi ;; et-gps) if [ -e /dev/et-gps ]; then echo "Yes"; else echo "No"; fi ;; ip) hostname -I ;; release) grep DISTRIB_DESCRIPTION /etc/lsb-release | sed 's|"||g' | awk '{print $1}' | cut -d"=" -f2 ;; *) echo "Command not supported." usage exit 1 ;; esac