Skip to main content

wled2graph supports a table and graphs of FPS and other data from multiple WLED endpoints in real-time via a browser interface

Project description

wled2graph

wled2graph is a Python program designed to visualize Frames Per Second (FPS) data and other from WLED endpoints on a network in real-time using a Bokeh graph server. It sets up a polling loop, defaulting to every 5 seconds, to fetch the current JSON state from each specified WLED endpoint

wled2graph screenshot

Features

  • Real-time FPS, BSSID, RSSI and Ping Visualization: Continuously polls WLED endpoints and updates the graph with current FPS values.
  • IP address hyperlink to WLED UI: Just click through direct to the WLED UI for the selected WLED endpoint.
  • Configurable Polling Frequency: Allows customization of the polling interval to suit network and performance needs.
  • Scalable: Can monitor multiple WLED endpoints simultaneously.
  • Customizable Data Points Rollover: Supports setting a maximum number of data points to display on the graph, after which old data points are rolled off.

Installation from PyPi

pip install wled2graph

WLED2Graph is executed from the command line and requires a list of IP addresses corresponding to the WLED endpoints you wish to monitor.

wled2graph -w <WLED_IPs> [-t <time_period>] [-r <rollover>]

-w, --wleds: A comma-separated list of IP addresses for the WLED endpoints.
-t, --time-period: (Optional) The time period in seconds for polling the WLEDs. Default is 5 seconds.
-r, --rollover: (Optional) The number of data points to keep in the graph before rolling over. Default is 20000.

Example

To start monitoring two WLED endpoints with a polling interval of 10 seconds:

wled2graph -w 192.168.1.100,192.168.1.101 -t 10

To start monitoring five WLED endpoints with a polling interval of 1 seconds and a data point rollover of 30:

wled2graph -w "192.168.1.216, 192.168.1.217, 192.168.1.220, 192.168.1.229, 192.168.1.230" -t 1 -r 30

How to develop on wled2graph

Prerequisites

Before you begin, ensure you have met the following requirements:

  • Python 3.9 or higher
  • Poetry, a tool for dependency management in Python projects.
  1. Clone the repository to your local machine:

    git clone https://github.com/bigredfrog/wled2graph.git
    cd wled2graph
    
  2. Install the project dependencies using Poetry:

    poetry install
    

    This will create a virtual environment and install the necessary Python libraries.

Development Usage

WLED2Graph is executed from the command line and requires a list of IP addresses corresponding to the WLED endpoints you wish to monitor.

poetry run python main.py -w <WLED_IPs> [-t <time_period>] [-r <rollover>]

-w, --wleds: A comma-separated list of IP addresses for the WLED endpoints.
-t, --time-period: (Optional) The time period in seconds for polling the WLEDs. Default is 5 seconds.
-r, --rollover: (Optional) The number of data points to keep in the graph before rolling over. Default is 20000.

Example

To start monitoring two WLED endpoints with a polling interval of 10 seconds:

poetry run python main.py -w 192.168.1.100,192.168.1.101 -t 10

To start monitoring five WLED endpoints with a polling interval of 1 seconds and a data point rollover of 30:

poetry run python main.py -w "192.168.1.216, 192.168.1.217, 192.168.1.220, 192.168.1.229, 192.168.1.230" -t 1 -r 30

Contributing

I just don't know if this has legs right now...

License

This project is licensed under the MIT License - see the LICENSE.md file for details.

https://github.com/bigredfrog/wled2graph/blob/master/license.md

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

wled2graph-0.1.2.tar.gz (9.4 kB view details)

Uploaded Source

Built Distribution

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

wled2graph-0.1.2-py3-none-any.whl (10.3 kB view details)

Uploaded Python 3

File details

Details for the file wled2graph-0.1.2.tar.gz.

File metadata

  • Download URL: wled2graph-0.1.2.tar.gz
  • Upload date:
  • Size: 9.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.12.1 Windows/10

File hashes

Hashes for wled2graph-0.1.2.tar.gz
Algorithm Hash digest
SHA256 19aaaf9f4e4db2dc00e584a016b5925fc3c723ea8db26b3f411eb72182d010fd
MD5 5f8a4266515a227fcc603dc7c1d50fb9
BLAKE2b-256 5ef4382c49b4c4067f7013ed0955cf199a11c490fdabed578b34e4190a32393a

See more details on using hashes here.

File details

Details for the file wled2graph-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: wled2graph-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 10.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.12.1 Windows/10

File hashes

Hashes for wled2graph-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 e987b98db66a5b36c01eda537e5e83dd1aea4b987cc42a5f630759007ecf0e49
MD5 37f68714772267c9b805648b48b3b317
BLAKE2b-256 9e0917db78f7224ab5ab72d89c9e1babd396e1fe64915a0e836166b5779fb5c5

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