Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

Python library to control FLDIGI via XML-RPC

Project description


Summary / Context

pyFldigi is a small Python library that can control the Fldigi application via XML-RPC.

Fldigi is a digital modem application that is widely used in the amateur radio community. It acts as a digital modem, intended to be coupled with a standard SSB or FM transceiver radio.


  • Full implementation of the available XML-RPC client commands]
  • Get FLDIGI version, name, etc.
  • Modem: Get and set the modem type, carrier frequency, bandwidth, etc.
  • Modem: Get and set various modem configuration options for Olivia, WEFAX, and NAVTEX
  • Transmit: Set RX/TX mode to Transmit, Receive, or Tune.
  • Abort a transmit or tune.
  • Squelch: Get or set the squelch
  • Rig control: Get or set various rig controls, such as frequency, mode, etc.
  • Logging: Get and set various log field contents. This is in the context of ham contact logs, not debug logs.
  • Text: Send text to FLdigi to be transmitted
  • Text: Get text from FLdigi that has been received
  • Terminate the Program: Terminate the program gracefully by asking it to close.
  • Application monitoring and launching. It is possible to launch FLdigi from a Python command, and monitor it. Also the program can be killed if it refuses to shut down gracefully.
  • Configuration: TBD. Reading and writing of the configuration file(s). Requires a restart of FLdigi.

Applications and Intended Usage

  • Remote weather stations.
  • Portable HF setups. Typically, HF digital setups are bulky and require several interconnected pieces of hardware, usually via audio cables. This library, along with some custom hardware, could allow a walkie-talkie sized HF digital radio that’s completely integrated.
  • Emcomm
  • ‘Headless’ operation on a Raspberry Pi, BeagleBone, or any number of other Linux-based single-board computers.
  • Putting a more ‘user-friendly’ GUI on top of FLdigi.
  • Web enabled FLDIGI via HTML5 and some Javascript, that could be accessed from anywhere. Python’s Flask / Django along with Bootstrap, and a few REST calls, for example.
  • Allow a phone or tablet to send and receive FLDIGI messages via a custom app. There is an Android version of FLDIGI, but that might not be the best approach for every problem. A more custom application could be created to use only a particular mode and send pre-formatted data, for example, with considerably less work than it would be to fork the FLDIGI mobile application and update it.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for pyfldigi, version 0.4
Filename, size File type Python version Upload date Hashes
Filename, size pyfldigi-0.4-py3-none-any.whl (29.8 kB) File type Wheel Python version 3.5 Upload date Hashes View hashes
Filename, size pyfldigi-0.4.tar.gz (23.1 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page