Skip to main content

Monitor barometric pressure from Spectrum SAX2V1S routers

Project description

Spectrum Router Barometer

Monitor barometric pressure from Spectrum SAX2V1S routers.

Installation

Quick install (recommended)

pipx install spectrum-barometer

Or with pip:

pip install spectrum-barometer

Install with pip and git

pipx install git+https://github.com/BobaTeagrl/spectrum-barometer.git

Or with pip:

pip install git+https://github.com/BobaTeagrl/spectrum-barometer.git

Or clone repo and run the file

git clone https://github.com/BobaTeagrl/spectrum-barometer.git
cd spectrum-barometer

# and run commands with   

python3 barometer_logger.py <command here>

Updating

pipx upgrade spectrum-barometer

or

pip install --upgrade spectrum-barometer

# If installed with git
pipx uninstall spectrum-barometer
pipx install git+https://github.com/BobaTeagrl/spectrum-barometer.git

# If you cloned repo you have to re clone it

First Time Setup

# Configure your router credentials
barometer config

# Test the connection
barometer test

image

All data is stored in ~/spectrum-barometer/ regardless of where you run the command.

Usage

# Collect a single reading
barometer scrape

# Start continuous monitoring (every 5 minutes by default)
barometer monitor

# Generate a graph
barometer graph

# View statistics
barometer stats

# Archive old data
barometer archive

# Open the local web UI
barometer web

# Check if the scraper is on
barometer status

# Show information about data locations and project setup
barometer info

Append --help to any command to see extra options

WEB UI

Both the cli and web UI are seperate from the scraper, meaning you can start, stop and check its status from either at any time and if started, it will continue to run until turned off. Even if the local server for the UI is stopped. This is double sided as it makes background operation effortless while also making it easy to forget its running in the background (helped by how few recorces it takes up)

(screenshots here soon)

Finding Your Data

Everything is stored in ~/spectrum-barometer/:

  • Graphs: ~/spectrum-barometer/graphs/
  • Data: ~/spectrum-barometer/data/readings.csv
  • Config: ~/spectrum-barometer/config.yaml
  • Logs: ~/spectrum-barometer/logs/barometer.log

You can run barometer info to see exact paths and current data.

FAQ

Why make this?

I find it funny.

Any other reason?

Spectrum is a very anti consumer company. this whole project started because i cant even access port forwarding, A VERY BASIC FEATURE and while trying to find a way around it i found the GitHub with the page and credentials used to find the barometer.

How often can it update?

The barometer seems to update every second but that's super overkill lol but you can if you want to.

Will you update this ever?

If i have new ideas or find bugs/bugs get reported i may but as it sits with 2.0.0 im not sure what more i would add to this tool that would be more than just bloat.

How hard is it to run?

When taking a reading it might take a few % of CPU and max ram use i personally have seen is 111MB (though not to say it can never get higher i cant know for sure I'm just one person) but when sitting idle its no CPU. i wanted this to be able to run on anything from a raspberry pi you already have set up running pi hole or something to someones single laptop that they are actively pushing while it runs in the background (because that's me). The web UI takes about 10-20MB of RAM loading and less just sitting there according to firefox profiler.

Can i use this on (Insert other router here)?

idk! figure it out! I see no reason it couldnt given the correct login and webpage but the scraping logic is a little basic so if the barometer data doesnt sit in a table element, it would not be found. Its totally possible to modify this tool to better scrape more routers but i only have the one to test on so if you want that fuctionality make it yourself or send me your router and like 20$ lol

None of this would be possible without the work of MeisterLone on GitHub

He actually put in the work to reverse engineer this stupid router and i wouldn't have even realized routers had barometers without it lmao

https://github.com/MeisterLone/Askey-RT5010W-D187-REV6

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

spectrum_barometer-2.0.0.tar.gz (245.2 kB view details)

Uploaded Source

Built Distribution

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

spectrum_barometer-2.0.0-py3-none-any.whl (244.8 kB view details)

Uploaded Python 3

File details

Details for the file spectrum_barometer-2.0.0.tar.gz.

File metadata

  • Download URL: spectrum_barometer-2.0.0.tar.gz
  • Upload date:
  • Size: 245.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for spectrum_barometer-2.0.0.tar.gz
Algorithm Hash digest
SHA256 bf844fc30bb1978afbe9a62e529c92b0b6b7ad4895c20fb63758b94c5760dcf8
MD5 a6fda559aa7de0eb2d0b5e877e53e346
BLAKE2b-256 75f61e85e753522ca3c08dc86f1675ae60e9de32040b2ee17db4b45f7843b0f9

See more details on using hashes here.

Provenance

The following attestation bundles were made for spectrum_barometer-2.0.0.tar.gz:

Publisher: python-publish.yml on BobaTeagrl/spectrum-barometer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file spectrum_barometer-2.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for spectrum_barometer-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fa18ea07dafb02f73a6cdbf42f5209c9d14e19f15210b89877c5560bc37fa2da
MD5 aae531fa9034ac6d7ea4cbfe758e7b09
BLAKE2b-256 cd37d04dc8407999e90aab3e3e95d52890ebc89860e2ab99bf59f9d29cc1418f

See more details on using hashes here.

Provenance

The following attestation bundles were made for spectrum_barometer-2.0.0-py3-none-any.whl:

Publisher: python-publish.yml on BobaTeagrl/spectrum-barometer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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