You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
none d294e95e91 include ios icon 6 months ago
build include ios icon 6 months ago
screenshots initial commit 6 months ago
ui Add version 6 months ago
.gitignore initial commit 6 months ago
README.md initial commit 6 months ago
go.mod initial commit 6 months ago
go.sum initial commit 6 months ago
init.go change days and months to sums 6 months ago
main.go initial commit 6 months ago
package.json initial commit 6 months ago
restore.go initial commit 6 months ago
rollup.go change days and months to sums 6 months ago
websocket.go initial commit 6 months ago

README.md

Efergy SDR

This project aims to be a simple to install energy monitoring app. Currently the energy sensor logging expects an Efergy data structure, but it would be very easy to support other data structures. The UI is hardware independent, but is focused on energy, but it wouldn't be difficult to support other data.

You will need to have the fantastic rtl_433 project https://github.com/merbanan/rtl_433 to be installed and working for this software to function. Just make sure it's in the $PATH so this app can execute it.

Only tested on Linux so far, happy for PR's to fix other platforms.

Simple setup

  1. Download or build the efergy_sdr binary for your platform.
  2. Run it, check samples are coming through
  3. Go to https://energytracker.eth.link
  • Tweak the websocket URL if not localhost

Data

The data is stored in a simple Round Robin style format in JSON files. It stores < 10 raw samples, 60 minute averages, 24 hour averages, 31 day averages and unlimited month totals. Total storage should be less than a megabyte max even for several years.

API

The program will run rtl_433 and capture the sensor data via standard input, it also listens on a websocket on port 4888, it will broadcast every new sample it receives to every websocket connection. It will also respond to individual requests for the rollup averages.

UI

The UI is a basic SPA app that will connect to the websocket and request the rollup data and render the charts, it will also display the live power usage. You can customize the websocket address using the settings cog icon.

Of course you can build / host the UI yourself, but a fully compiled and hosted version can also be accessed via ENS/IPFS at energytracker.eth or https://energytracker.eth.link and you can also grab the IPFS multihash and pin it into your own IPFS instance.

UI