Skip to main content

The textual user interface to multimon-ng.

Project description

mmng-ui

A TUI (text user interface) frontend for multimon-ng.

mmng-ui will listen on a chosen UDP port for raw streams from software like SDR++, use multimon-ng to decode it, and show you POCSAG messages in a wonderful text interface.

Table of contents

Purpose

Why not? I know there are other frontends out there, but I haevn't seen any for use in a text console.

I also wanted to learn both Rich and Textual.

Installation

The recommended way to install mmng-ui is to use pipx.

After getting pipx installed, simply run:

username@host:~$ pipx install mmng-ui

Please don't use pip system-wide.

You can of course also install it using classic virtualenvs.

How to use it

See mmng-ui --help for CLI options.

Run mmng-ui, and you'll be greeted with this screen:

screenshot

Notice in the status pane, it says "Receiver: idle" -- it is now listening for UDP packets sent to the default port of 8888.

Now go to your favourite SDR application, and send to where mmng-ui is running. Make sure it is the right sample rate that multimon-ng likes, 22050 Hz. It probably helps to send mono too.

Alpha POCSAG messages will soon display in the top pane. The bottom pane will show the raw output from multimon-ng, as well as any errors or issues with decoding.

The status panel shows any incoming connections. Receiver will transition between the following states:

Receiver state Description
idle No UDP traffic yet seen, or seen in 5 seconds
receiving Actively receiving a decode from multimon-ng
waiting Traffic is coming in, but nothing to be decoded

Just below the status panel is a sparkline -- this updates on each decode, and reflects character length of said decode.

Underneath the log window in another sparkline, and this shows messages per second, for the last minute.

The footer shows available keyboard choices to quit the app, show a help screen, and clear all logging panes.

The mouse will also work!

JSON mode

mmng-ui will attempt to auto-detect the output format from multimon-ng, and if it looks like JSON, it'll use it.

JSON output isn't yet in multimon-ng, but I have a working fork here.

Example screenshot

Here's what a screen full of decodes might look like:

screenshot

Supported Python versions

mmng-ui supports Python 3.9 and newer.

Project details


Download files

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

Source Distribution

mmng_ui-1.0.5.tar.gz (263.3 kB view details)

Uploaded Source

Built Distribution

mmng_ui-1.0.5-py3-none-any.whl (22.1 kB view details)

Uploaded Python 3

File details

Details for the file mmng_ui-1.0.5.tar.gz.

File metadata

  • Download URL: mmng_ui-1.0.5.tar.gz
  • Upload date:
  • Size: 263.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.13.0

File hashes

Hashes for mmng_ui-1.0.5.tar.gz
Algorithm Hash digest
SHA256 5aeaddd994138d9d315cb3e3a3ae84cd2e546122bb528b8e139f641813cb07b6
MD5 ad209abde17d7a4170daf1779ba7f3d1
BLAKE2b-256 d899c4506ed3e053d9feb44363329a882e1fd060c423daa983c2ade750807131

See more details on using hashes here.

File details

Details for the file mmng_ui-1.0.5-py3-none-any.whl.

File metadata

  • Download URL: mmng_ui-1.0.5-py3-none-any.whl
  • Upload date:
  • Size: 22.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.13.0

File hashes

Hashes for mmng_ui-1.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 08055cfb74010d68f21080635e4735008b3e45e0137b1555087ff26f6bb30728
MD5 ab2d4a2d066a3553821dcd8855326a39
BLAKE2b-256 58de932f5b9b542a65feb0b7cab505bd53894a4d051f81c4fb69b34a21c4b5ad

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page