Skip to main content
╔════════════════════════════════════════════════════════════════════════════════════════════╗
║                                                                                            ║
║               ██████╗ ██╗     ██╗   ██╗███╗   ███╗██╗  ██╗██╗   ██╗██████╗                 ║
║               ██╔══██╗██║     ██║   ██║████╗ ████║██║  ██║██║   ██║██╔══██╗                ║
║               ██████╔╝██║     ██║   ██║██╔████╔██║███████║██║   ██║██║  ██║                ║
║               ██╔═══╝ ██║     ██║   ██║██║╚██╔╝██║██╔══██║██║   ██║██║  ██║                ║
║               ██║     ███████╗╚██████╔╝██║ ╚═╝ ██║██║  ██║╚██████╔╝██████╔╝                ║
║               ╚═╝     ╚══════╝ ╚═════╝ ╚═╝     ╚═╝╚═╝  ╚═╝ ╚═════╝ ╚═════╝                 ║
║                                                                                            ║
║                              watch the fleet, not the screen                               ║
║                                                                                            ║
╚════════════════════════════════════════════════════════════════════════════════════════════╝

PyPI Python License

Miner fleet monitor — a borderless overlay HUD that sits on top of whatever you're doing, with alerts and history.

pip install plumhud
plumhud
plumhud          the overlay HUD and command center
plumhud check    poll once, print, exit — no window needed
plumhud where    where your config and history live

What v4 changed, and why

Nothing is invented any more. v3 filled missing readings with random.randint(), so a miner that answered without a hashrate displayed a believable number you had no way to identify as fake. A field the miner did not send is now None, renders as a dash, and is stored as NULL. "We did not measure it" and "it is zero" are different facts and the display says which.

Alert rules require a real measurement. Removing the fabrication exposed that the rules had never been written to survive a missing value — they would have raised on the first None. A rule now stays quiet when the number never arrived, and still fires on genuine problems.

Your config stopped moving. v3 wrote plumhud_config.json relative to the working directory, so launching from two folders gave you two fleets — and dropped a file containing your Discord webhook and Telegram token wherever you happened to be, including repositories. Everything now lives in one per-user directory (plumhud where), created owner-only. A v3 config found in the current directory is adopted automatically.

One poller, two faces. Polling moved to moonbeam-miner, which the terminal tool already used. That removed the private asyncio event loop, the aiohttp session and its fallback path with no loss of speed — and means the CLI and the HUD can never disagree about what a miner said.

Zero required dependencies beyond the shared core. aiohttp and requests are gone; webhooks post through the standard library. Charts and the logo are optional extras:

pip install "plumhud[charts]"

What it does

Overlay HUD in four display modes (ring, bar, spark, grid) with an opacity slider and five skins. A five-tab command center for miners, analytics, alerts, skin and settings. Alert rules for offline, hashrate below, temperature above and reject spikes, delivered to Discord or Telegram with a per-rule cooldown. Every poll is written to a local SQLite database with 30-day retention.

Talks to ESP-Miner and AxeOS devices — NerdMiner, Bitaxe and relatives — on http://<ip>/api/system/info. Use moonbeam scan to find them.

Requirements

Python 3.8+, and Tk for the window (bundled with Python on Windows and macOS; apt install python3-tk on Debian and Ubuntu). plumhud check needs no display at all.


╔════════════════════════════════════════════════════════════╗
║                                                            ║
║      ███████╗      ██╗  ██╗███████╗██╗   ██╗███████╗       ║
║      ██╔════╝      ██║ ██╔╝██╔════╝╚██╗ ██╔╝██╔════╝       ║
║      █████╗  █████╗█████╔╝ █████╗   ╚████╔╝ ███████╗       ║
║      ██╔══╝  ╚════╝██╔═██╗ ██╔══╝    ╚██╔╝  ╚════██║       ║
║      ██║           ██║  ██╗███████╗   ██║   ███████║       ║
║      ╚═╝           ╚═╝  ╚═╝╚══════╝   ╚═╝   ╚══════╝       ║
║                                                            ║
║               ·   C  R  E  A  T  I  V  E   ·               ║
║                                                            ║
║          ────────────────────────────────────────          ║
║                                                            ║
║                      Vincent Gonzalez                      ║
║                         f-keys.com                         ║
║                 ORCID 0009-0005-3640-014X                  ║
║                                                            ║
╚════════════════════════════════════════════════════════════╝

Part of F-Keys — independent hardware, software and internet products. See the working log and live status.

Download files

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

Source Distribution

plumhud-4.1.1.tar.gz (91.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

plumhud-4.1.1-py3-none-any.whl (88.3 kB view details)

Uploaded Python 3

File details

Details for the file plumhud-4.1.1.tar.gz.

File metadata

  • Download URL: plumhud-4.1.1.tar.gz
  • Upload date:
  • Size: 91.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.14

File hashes

Hashes for plumhud-4.1.1.tar.gz
Algorithm Hash digest
SHA256 20f2727148e91a78129805bb99c7f0d1d3afdb71f9cef07e186d4f59402c0343
MD5 54852c822046212ca13dc0f389c2d2a7
BLAKE2b-256 d84fd79c3103aca9c29ebde57f0849f6ffaa3db80f2489eda696ada42498aa51

See more details on using hashes here.

File details

Details for the file plumhud-4.1.1-py3-none-any.whl.

File metadata

  • Download URL: plumhud-4.1.1-py3-none-any.whl
  • Upload date:
  • Size: 88.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.14

File hashes

Hashes for plumhud-4.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ab59315711301f3ad5f6d3171b14ab4771f36881c261b2a457b8c4d58b244fab
MD5 05a3821b8ac65b74ef2fb1ac24fa7a30
BLAKE2b-256 8ded6f3bbf66f861c1868ffcacb251262d0379cf53d74779e33c280e25b95e85

See more details on using hashes here.

Release history Release notifications | RSS feed

4.1.2

2 files

This release

4.1.1 This release

2 files

4.1.0

2 files

4.0.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page