You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1.8 KiB

layout title
page2 Log4OM UDP Display

Git Repository

Recently Log4OM added support for UDP message output in it's remote control. One of the settings has Log4OM automatically send status messages every five seconds when the following conditions are met:

  • CAT engine is running and connected to a valid radio
  • Message output is enabled in program configuration

This can be used to build a very basic status display you can embed in a webpage.

Requirements

A machine that can run Python scripts that can:

  • Recieve UDP messages from Log4OM
  • Put the resulting HTML file on a webserver

It is currently written to be running on the same machine as the webserver. Additional methods of getting the file to an external machine have not been created due to the numerous ways of doing so. It's also written this way as I run a server at my QTH that's accessible to the internet.

Example

I have embedded the status on the sidebar/menu of my website. The raw file lives here

My version has CSS applied to match my website. The default version does not.

Basic Theory Of Operation

Log4OM sends packets to my server's IP. Python picks these up, parses the required information out, and stuffs them in to some HTML it saves directly to the server. This file is set to auto-refresh every 5 seconds.

A monitoring thread checks every few seconds to see when the last packet was received. If it doesn't see any in about 15 seconds; it changes the status to indicate this. In this state, it only checks for updates every 30 seconds.

The thread listening for UDP always runs. When UDP starts streaming in, it immedately executes.

It can be considered real-time to within 30 seconds or so.