RF Eclectica Wiki

Try to learn something about everything, and everything about something - Thomas Huxley

User Tools

Site Tools


public:radio:dormant:fldigi

Older Topics

Fldigi Parrot

Experimental HF Digi-mode message-relay system using Fldigi and Python

Work in progress

Uses xml-rpc in python to communicate with fldigi and read the incoming RX Text.

When a particular text sequence is received (ZCZC CALL CALL) to trigger the “parrot” function, the RX text is then read searching for an end of message string (…end). When this is found the full message is then re-transmitted, with self-identification added to ensure it is clear which station is the source of the message and which is the source of the relay.

Transmitter control via RS232 / NMEA (for an IC-M710 marine HF transceiver) is also included to allow for remote commands to change frequency to be handled. Fldigi does the rig control (via its own hamlib configuration). Fldigi is told what we want the radio to do via xml-rpc rather than have direct control ourselves.

Monitoring

A web-page is provided that shows the Fldigi receive text, in almost real time at:

Fldigi RX Text

and another shows the parrot activity:

Fldigi Parrot

Software

The python scripts to run these functions are run within a tmux session which is set up with the following script:

tmux script

fldigi_xml.sh

The python scripts

  • rx_buf.py
  • parrot_flmsg.py
  • flfn.py

are as follows:

rx_buf.py

rx_buf.py reads the Fldigi RX Buffer and provides the online web page to allow remote observation of what is being received.

rx_buf.py

parrot_flmsg.py

parrot_flmsg.py handles the message-relay functions.

Recent changes were made to handle the longer formal message formats of flmsg.

The parrot also provides some simple remote control of the HF transceiver's frequency and power level via QSY? and PWR? commands.

parrot_flmsg.py

flfn.py

flfn.py is a helper module of functions to communicate with fldigi using xml-rpc.

flfn.py

Parrot Operation

Basic overview

To trigger a message relay you need to send the following format of text:

ZCZC GM4SLV <YOURCALL> (replacing <YOURCALL> with your actual callsign)

This is the start of message trigger.

Then type/paste/otherwise send your message-to-be-relayed.

To end the message send:

… end

If you are using flmsg to to create and send the message it will send the correct end of message string … end itself, otherwise you need to add it manually.

After a short delay, if successful, you should hear/see your message being relayed.

Further examples of operation

add screenshots of relaying in operation FIXME

A simple “ECHO” relay

Page Updated: 26/04/23 14:44 BST

public/radio/dormant/fldigi.txt · Last modified: 26/04/23 14:44 BST by john