mirror of
https://codeberg.org/mclemens/hr50ctl.git
synced 2024-11-04 20:57:18 -05:00
Python tool to query data from or send commands to the Hardrock-50 power amplifier
hr50ctl.jpg | ||
hr50ctl.py | ||
README.md |
hr50ctl
A small python tool that can be used to query information from the Hardrock-50 amateur radio power amplifier as well as sending commands and therefore to modify settings
Features
Queries the followingy data from the Hardrock-50:
- Status (RX/TX)
- Keying method
- Band
- Voltage
- Peak power of last transmission
- Average power of last transmission
- SWR
- Temperature
Example:
+---------+----------+----------+------------+
| STA: RX | PTT: COR | BND: 20M | VLT: 13.8V |
| PEP: 58 | AVG: 58 | SWR: 1.2 | TMP: 20C |
+---------+----------+----------+------------+
Enables the user to alter the following parameters of the Hardrock-50:
- Keying method (OFF, COR, PTT, QRP)
- Band
- Initiate tuning process during next transmission
Install
hr50ctl needs Python 3 and the following libraries:
- prettytable
- pyserial
Perform the following steps to get hr50ctl up and running:
- Connect a Raspberry Pi to the Hardrock-50 with a USB cable (USB A to USB B)
- Download and extract the hr50ctl.py script
- Install the above mentioned dependencies with python3-pip
- Configure the following variables inside the Python script:
- serial_port: e.g. /dev/ttyUSB0
- baud: e.g. 19200 (must match with the settings made in your Hardrock-50)
- execute the script with
- python3 ./hr50ctl.py
Usage
USAGE: # ./hr50ctl.py -b <band> -t -k <keying mode>
PARAMETERS:
-k: the following keying methods are available:
off, cor, ptt, qrp
This parameter changes the method how the HR50 will be put into TX mode.
-b: the following bands are available:
6, 10, 12, 15, 20, 17, 20, 30, 40, 60, 80, 160
This parameter changes the band of the HR50
-t: no parameter required.
This parameters initiates the tuning during the next PTT
EXAMPLES:
Change the band to 12m: # ./hr50ctl.py -b 12
Change the keying method to PTT: # ./hr50ctl.py -k ptt
Change the band to 6m and tune: # ./hr50ctl.py -b 6 -t