From 5973880b5cbbac52a5ea93dd7374ab5fbf355d8d Mon Sep 17 00:00:00 2001 From: Ted Pearson <1477390+tedpearson@users.noreply.github.com> Date: Tue, 5 Mar 2024 21:41:34 -0500 Subject: [PATCH] Update readme with details about NIST SmartHub (it's not just Novec!) --- README.md | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index c2e5afa..a470962 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,14 @@ # electric-usage-downloader -This project reverse engineers the api at the electric co-op Novec, https://novec.smarthub.coop/ to allow +This project reverse engineers the [NISC SmartHub]()https://www.nisc.coop/blog/beyond-the-bill-the-power-of-smarthub/ +api, which is used by hundreds of utility co-ops throughout the United States. This allows downloading 15-minute resolution electic usage and cost data for your personal account if you have a smart meter. -Data is imported into InfluxDB or VictoriaMetrics. +In prior versions of SmartHub, it was possible to download CSV exports of 15-minute interval usage data by +specifying an "hourly" interval, but since January 2024 only hourly data has been available via CSV. That's +why I reverse engineered the API instead of automating a download of the CSV as I had previously done. + +Data can be imported into InfluxDB or VictoriaMetrics. ## Config @@ -11,12 +16,11 @@ Download [config.example.yaml](config.example.yaml) and fill in your own values. - `extract_days` is how many days to look back from the current day. Max is 45. if specific `--start` and `--end` flags are not specified. -- `account` is your account number, available on your bill and on the - Novec smart hub website. -- `service_location` is an internal Novec number. and must be retrieved from your browser: +- `account` is your account number, available on your bill and on the SmartHub website. +- `service_location` is an internal SmartHub number, and must be retrieved from your browser: - Open the Developer tools to the Network tab - - Navigate to [Usage Explorer](https://novec.smarthub.coop/ui/#/usageExplorer) - - Find a call to `https://novec.smarthub.coop/services/secured/utility-usage/poll` in the Network tab + - Navigate to Usage Explorer (example: https://novec.smarthub.coop/ui/#/usageExplorer) + - Find a call to `services/secured/utility-usage/poll` in the Network tab - Open the call, and copy the `serviceLocationNumber` field from the Payload tab. - `influxdb.insecure` allows connecting to a server with certificate issues. - The other fields should be fairly self-explanatory. @@ -29,8 +33,8 @@ Download [config.example.yaml](config.example.yaml) and fill in your own values. ## Details -The Novec api currently supports 15-minute resolution of data. This could change in the future; it used to be available -as downloaded CSV files as well, but now only hourly information is available that way. +The SmartHub api currently supports 15-minute resolution of data. This could change in the future; 15-minute interval +usage data used to be available via CSV export, but that ability was removed in January 2024. Measurement: **electric**