Skip to main content

Add your description here

Project description

s33-modem-mon

Tools for the S33 modem.

  1. A simple command-line tool to monitor and fetch stats from the modem using its HNAP API.

    $ s33 --password mypassword
    {
      "customer_status_startup_sequence": {
        "downstream_frequency_hertz": 741000000,
        "downstream_comment": "Locked",
        "connectivity_status": "OK",
        "connectivity_comment": "Operational",
        "boot_status": "OK",
        "boot_comment": "Operational",
        "config_file_status": "OK",
        "config_file_comment": "",
        "security_status": "Enabled",
        "security_comment": "BPI+"
      },
      "customer_status_connection_info": {
        "system_uptime_seconds": 602183,
        "system_time_unix": 1771475283,
        "network_access": "Allowed"
      },
      "customer_status_downstream_channel_info": {
        "channels": [
          {
            "channel_id": 31,
            "lock_status": "Locked",
            "modulation": "QAM256",
            "frequency_hz": 741000000,
            "power_dbmv": 11.0,
            "snr_db": 37.0,
            "corrected_count": 0,
            "uncorrectable_count": 0
            ...
    
  2. A background service to continuously read stats from the modem and insert them into a TimescaleDB database for long-term monitoring and analysis.

    $ s33mon --modem-password mypassword --db-host localhost --db-user myuser --db-password mypassword
    2026-02-19 05:54:53,110 INFO s33mon.mon: Connecting to myuser@localhost:5432/s33mon ...
    2026-02-19 05:54:53,157 INFO s33mon.mon: Schema is ready.
    2026-02-19 05:54:53,157 INFO s33mon.mon: Starting poll loop  modem: 192.168.0.1, interval: 900s
    2026-02-19 05:54:53,305 INFO httpx: HTTP Request: POST https://192.168.0.1/HNAP1/ "HTTP/1.1 200 OK"
    2026-02-19 05:54:53,361 INFO httpx: HTTP Request: POST https://192.168.0.1/HNAP1/ "HTTP/1.1 200 OK"
    2026-02-19 05:55:00,120 INFO httpx: HTTP Request: POST https://192.168.0.1/HNAP1/ "HTTP/1.1 200 OK"
    2026-02-19 05:55:00,163 INFO s33mon.mon: Pull #3 stored successfully.
    2026-02-19 05:55:00,163 INFO s33mon.mon: Sleeping 900s ...
    

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

s33_modem_mon-0.1.0.tar.gz (9.8 kB view details)

Uploaded Source

Built Distribution

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

s33_modem_mon-0.1.0-py3-none-any.whl (10.9 kB view details)

Uploaded Python 3

File details

Details for the file s33_modem_mon-0.1.0.tar.gz.

File metadata

  • Download URL: s33_modem_mon-0.1.0.tar.gz
  • Upload date:
  • Size: 9.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Arch Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for s33_modem_mon-0.1.0.tar.gz
Algorithm Hash digest
SHA256 bd7256da15e131d216aa03dff596766f84c34b059768508d1501c68f9e14cfc3
MD5 6f829d588d44442b6ae52d3ae1f3c9e4
BLAKE2b-256 322855f6a059d84a68e73a928995f6d06091263f9fdf9b62d59a0fb2da932f8c

See more details on using hashes here.

File details

Details for the file s33_modem_mon-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: s33_modem_mon-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 10.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Arch Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for s33_modem_mon-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 35562226c406e740db9b65a6af29984e55d1fed3997f596f1908751cea874abe
MD5 fb35a1f3c526a62e26074d175b45c360
BLAKE2b-256 23e0195f75d4b01faab765723a30971588e4cb0338d2b6007ce29d1e910bb4e2

See more details on using hashes here.

Supported by

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