No description
  • Python 70.2%
  • HTML 19.4%
  • Nix 9%
  • Shell 1.4%
Find a file
2026-05-03 23:48:57 +02:00
deploy flake + some improvements + better file structure 2026-05-01 02:16:38 +02:00
src/solar hotfixes from server 2026-05-03 23:48:57 +02:00
.gitignore flake + some improvements + better file structure 2026-05-01 02:16:38 +02:00
.python-version created project 2025-02-08 09:51:20 +01:00
conf.toml hotfixes from server 2026-05-03 23:48:57 +02:00
flake.lock flake + some improvements + better file structure 2026-05-01 02:16:38 +02:00
flake.nix flake + some improvements + better file structure 2026-05-01 02:16:38 +02:00
install.sh systemd with sleep before display lauch 2025-04-19 17:27:33 +02:00
pyproject.toml display: gui -> lcd 2026-05-01 02:16:38 +02:00
README.md docs + config changes 2025-04-19 18:35:45 +02:00
uv.lock display: gui -> lcd 2026-05-01 02:16:38 +02:00

Data Collection and Visualization for a Solaranlage

Usage

This project consists of four parts, that can be enabled/disabled via conf.toml.

  • collector: Collects the values of the specified topics and stores them in the database.
  • display: Visualizes the specified topics on a simple display.
  • webapp: Hosts a simple webapp to visualize the data in the database.
  • fetch_all_topics: A tool to create a topics.json with all available topics + some info about them.

Deployment

Install via script

cd path/to/solar  # go to project
./install.sh

Manual

curl -LsSf https://astral.sh/uv/install.sh | sh  # install uv package manager for python
cd path/to/solar  # go to project
uv sync  # install dependencies
cp "./deploy/solar.service" "$HOME/.config/systemd/user/"  # create systemd service
systemctl --user daemon-reload
systemctl --user enable solar
systemctl --user start solar  # enable and start service

Configuration

cd path/to/solar  # go to project
nano conf.toml  # edit config file
systemctl --user restart solar  # restart systemd service