- Powerwall 3 Setup Help - If local setup is selected, it will work with the Powerwall 3 but will produce errors in pypowerwall and not have the complete data. This updates
setup.sh
so ensure Powerwall 3 setups usefull
TEDAPI mode for local access. Raised by @pavandave in jasonacox#492. - Add check in
setup.sh
script to ensure user has permission to write to the current directory. Raised in jasonacox#494. - Update to latest pypowerwall, updates TEDAPI to provide correct Powerwall firmware version. Discovered by @geptto in jasonacox/pypowerwall#97. This function has been integrated into pypowerwall existing APIs and proxy features.
- Fix setup.sh gateway detection logic to better work on Synology and other host without user
ping
commands as raised by @zcpnate in #488 - Update to pypowerwall 0.10.6: pyLint code optimization, fix timeout logic for TEDAPI and FleetAPI modes, fix battery backup reserve level scaling for TEDPAI mode, fix grid status bug in FleetAPI mode and fix control mode error in proxy.
-
Update to pypowerwall 0.10.5:
- Fix for TEDAPI "full" (e.g. Powerwall 3) mode, including
grid_status
bug resulting in false reports of grid status,level()
bug where data gap resulted in 0% state of charge andalerts()
where data gap from tedapi resulted in anull
alert. - Add TEDAPI API call locking to limit load caused by concurrent polling.
- Proxy - Add battery full_pack and remaining energy data to
/pod
API call for all cases.
- Fix for TEDAPI "full" (e.g. Powerwall 3) mode, including
- Update to pypowerwall v0.10.4 to add support for Powerwall 3 using local Gateway only.
- Setup script adjusted to allow for Powerwall 3 local mode option.
- Update to pypowerwall v0.10.2 to fix FleetAPI setup but as raised in jasonacox/pypowerwall#98.
- Update
setup.sh
to add optional command line switch-f
for standalone FleetAPI mode setup.
-
Add TEDAPI Support for Extended Device Metrics (the return of most of
/vitals
) - This requires connecting to Powerwall WiFi directly or setting up a network route on the Dashboard host to allow it to reach the GW address (192.168.91.1). -
Add support for Tesla's official API, FleetAPI. This requires additional registration and configuration. Instructions are part of setup process or on the project page.
-
Run
upgrade.sh
and then runsetup.sh
to choose these new options. -
Upgrade to pyPowerwall v0.10.0 proxy t58 - Release addresses some issues, including fixing Solar Only grid_status issues as reported by @lsgc123 in jasonacox#478
-
Fix setup.sh for docker group permission bug identified by @hulkster in #476
-
Addresses several open issues and discussions:
- Upgrade to pyPowerwall v0.8.5 proxy t56
- Fix bug with setup for certain Solar Only systems where clod mode process fails due to missing
site_name
. Identified by @hulkster in jasonacox#475
- Upgrade to pyPowerwall v0.8.4 proxy t55
- Fix /pod API to add time_remaining_hours and backup_reserve_percent for cloud mode.
- Dashboard: Removed Powerwall temperature panel in default dashboard (data is no longer available with latest Firmware)
- Added GET
/control/mode
and/control/reserve
APIs to retrieve operating mode and back reserve settings - Added POST
/control/mode
and/control/reserve
APIs to set operating mode and back reserve settings. Requires running setup and setting PW_CONTROL_SECRET for pypowerwall inpypowerwall.env
. Use with caution.
# Setup cloud mode for pypowerwall container
docker exec -it pypowerwall python3 -m pypowerwall setup [email protected]
MODE=self_consumption
RESERVE=20
PW_CONTROL_SECRET=mySecretKey
# Set Mode
curl -X POST -d "value=$MODE&token=$PW_CONTROL_SECRET" http://localhost:8675/control/mode
# Set Reserve
curl -X POST -d "value=$RESERVE&token=$PW_CONTROL_SECRET" http://localhost:8675/control/reserve
# Read Settings
curl http://localhost:8675/control/mode
curl http://localhost:8675/control/reserve
- Upgrade to pyPowerwall proxy v0.8.2 - Major refactoring of code in jasonacox/pypowerwall#77 and jasonacox/pypowerwall#78 and addition of new Alerts.
- Disable
GF_PATHS_PROVISIONING
fromgrafana.env
base to speed up Grafana startup by @BuongiornoTexas in #461
- Fixed
upgrade.sh
to supportdocker-compose
(V2) command as discussed in #459. - Updated
setup.sh
to check for Docker Compose V2.
- Remove support for Docker V1 since it is obsolete. Upgrade progress will alert V1 users to upgrade to V2 before proceeding. Updates by @BJReplay in jasonacox#454.
- Updated to using pyPowerwall to v0.7.12 which brings some Alerts and String data back for systems with Firmware 23.44.0+. New library uses
/api/solar_powerwall
instead of now depreciated/api/devices/vitals
by @DerickJohnson in jasonacox/pypowerwall#75 and by @jasonacox in jasonacox/pypowerwall#76.
- Updated pyPowerwall to v0.7.11 to add cache and extended TTL for 404 responses from Powerwall as identified in issue jasonacox#449 by @jgleigh. This will help reduce load on Powerwall gateway that may be causing rate limiting for some users (Firmware 23.44.0+).
- Updated logic to disable vitals API calls for Firmware 23.44.0+
- Added rate limit detection (429) and cooldown mode to allow Powerwall gateway time to recover.
- Problems identified with older
docker-compose
versions. Revering upgrade.sh changes but pushing new plugin list ingrafana.env.sample
for new installations.
- Update plugin list for Grafana, removing unneeded plugins (e.g.
flux datasource
) and adding logic to upgrade script to prune oldgrafana.env
settings by @BuongiornoTexas in #442 #433
- Updated timezone variable in
dashboard.json
to tz:text to ensure the Time Zone string is output as-is. This will make upgrading Grafana easier later on and future-proof the variables by @s-crypt in #439. - Removed $tz from any queries that do not have a GROUP BY statement by @s-crypt in #439.
- Updated pyPowerwall Proxy t42 - Adds Power Flow Animation style (set PW_STYLE="solar") for Solar-Only display. Removes the Powerwall image and related text to display a Grid + Solar + Home power flow animation.
- Update to pyPowerwall v0.7.9 - Bug fix to render correct grid status for Solar-Only systems on cloud mode (see #437)
- Fix enumeration of energy sites during
cloud mode
setup to handle incomplete sites with Unknown names or types by @dcgibbons in jasonacox/pypowerwall#72 - pyPowerwall Proxy t41 Updates - Bug fixes for Solar-Only systems using
cloud mode
(see jasonacox#437).
- Update default
dashboard.json
to not connect null values over 1hr threshhold (corrctly representing data gaps) by @youzer-name in #430. - Stack powerwall current energy values in Powerwall Capacity panel by @youzer-name in #430.
- Add "Off Grid" indicators to the bottom of the Frequency and Voltages panels by @youzer-name in #430.
- Added CQs and updated
dashboard.json
to include voltages from battery block vitals by @mcbirse in jasonacox#426. This addresses users no longer seeing Powerwall voltages in the dashboard with firmware 23.44.0 or later - See related jasonacox#109 (reply in thread)
- Using pyPowerwall for both Local Access and Tesla Cloud mode by @jasonacox and @mcbirse in jasonacox#414 (replaces Tesla-history service, but the Tesla-history tool will continue to be used to fill in historic data or gaps) - See related jasonacox/pypowerwall#59
- Removal of Docker Compose profiles (helps with some older systems that don't fully support this) and the v1 related legacy support.
- Updated
setup.sh
andupgrade.sh
to support transition to pyPowerwall for Tesla Cloud mode. - Updated
verify.sh
to support Tesla Cloud mode. - Updated dashboard for solar-only users to include Powerflow Animation panel.
- Fixes bug in pypowerwall proxy container version before
jasonacox/pypowerwall:0.7.6t39
related to API calls and 404 HTTP status codes handling. Powerwall Firmware version 23.44.0 has eliminated /api/devices/vitals resulting in a 404 response from the Powerwall Gateway (TEG) when this is requested. There was a bug in the pypowerwall code that will treat this 404 like an authentication failure which will result in attempts to log in over and over, eventually hitting the rate limit. This is especially impactful for those using the proxy for things like Powerwall-Dashboard as the rate limit will prohibit other data gathering.
- Add support to define InfluxDB configuration options by environment variable by @mcbirse. This allows the default configuration settings to be overridden and addresses jasonacox#408 raised by @youzer-name
- Change InfluxDB statistics recording to false by default to reduce CPU load by @youzer-name in jasonacox#410
- Update example backup script to use tar.xz (-J option) by @s-crypt in jasonacox#404 and jasonacox#405 see jasonacox#337
- [Tools] - default to bash in
pwstatus
script for better compatibility by @mcbirse see jasonacox#249 (comment)
- Update to latest pypowerwall proxy t29:
- Default page loaded by proxy (http://localhost:8675/) will render Powerflow Animation. Animation assets (html, css, js, images, fonts, svg) will render from local filesystem instead of pulling from Powerwall TEG portal resulting in faster render time.
- README: fix "Powerall" typo in Powerwall 3 section by @kenyon in #399
- v3.0.4 - Fix
upgrade.sh
to address issue where get_profile() function incorrectly reads compose.env causing upgrade failure by @jasonacox in #401 Closes issue #400. - v3.0.5 - Fix
setup.sh
,compose-dash.sh
,verify.sh
andweather.sh
by @mcbrise in https://github.com/jasonacox/Powerwall-Dashboard/commit/45428ab56aa18ef2a04dce0f56e527b0a48c606d
- Updated
setup.sh
process descriptions to include Tesla Cloud data source in profile options (see below). This is currently the only option for Powerwall 3 owners (see #387) by @mcbirse - Update
setup.sh
to allow config changes. - Added weather data to
dashboard-no-animation.json
dashboard. - [Tools] - Revise
pwstatus
andweather-history
retry handling by @mcbirse.
1 - Local Access (Powerwall 1, 2, or + using extended data from Tesla Gateway on LAN) - Default
2 - Tesla Cloud (Solar-only, Powerwall 1, 2, +, or 3 using data from Tesla Cloud)
- Add future deprecation WARNING for older docker-compose versions.
- Add support for docker-compose >= 1.28.0 to use compose profiles.
- Change logic in
compose-dash.sh
to default to Docker compose V2.
- This fixes an issue introduced by v3.0.0 for old Docker-Compose V1 systems in jasonacox#389
- Updates example backup script to use
xz
compression in #337
- Added Solar Only support as a setup option when installing Powerwall Dashboard by @mcbirse in jasonacox#386 see jasonacox#183 and https://github.com/jasonacox/Powerwall-Dashboard/tree/main/tools/solar-only
- Updated Solar Only dashboard with user adjustable tz and cost variables, and removed Grid Status & Current State panels
- Updated Docker Compose environment to support compose profiles and updated setup, upgrade and verify scripts
- Added checks to setup script for common issues such as user/group problems
- Added migration for beta Solar Only installs to upgrade script
- Update versions: Telegraf (v1.28.2) and pyPowerwall (v0.6.2t28)
- Updated to pyPowerwall Proxy t28 to support newer Grafana versions. Adds new PW_STYLE setting for
grafana-dark
mode. - Updated
setup.sh
andupgrades.sh
to support adding additional PW_STYLE setting. - Docker Compose Config Improvements by @mcbirse - ref #366
- Update
powerwall.yml
to use variables for "user" and "ports" in containers, per #357 and #360 noted by @hulkster - Updated
compose.env.sample
with explanation of latest supported options - Updated
powerwall.yml
to use "unless-stopped" as the default restart policy for containers going forward
- Fix weather411 to exit gracefully with SIGTERM by @rcasta74 in jasonacox#354
- Update to pyPowerwall t27 to exit gracefully with SIGTERM.
- Updated
dashboard.json
to isolate Powerwall+ string data to make it easier for those without Powerwall+ to close those empty panels as raised in jasonacox#320. Also changed browser default timezone to TZ set by user. - Dashboard-new formatting fixes and unlink library panels by @s-crypt in jasonacox#316
- Fix dashboard.json in README by @longzheng in jasonacox#319
- Update verify.sh to carry state of all tests back to calling shell by @vikrum in jasonacox#321
- Fix mean in solar energy yr panel #330 by @jasonacox in jasonacox#331
- Shared crosshair by @longzheng in jasonacox#338
- Updated default
dashboard.json
to incorporate timeseries migrations by @s-crypt in jasonacox#295 and jasonacox#297 see jasonacox#290 - Updated "Grid Status" to new timeseries graph with red/yellow/green status.
- Fix typos and spelling errors by @mcbirse in jasonacox#281
- Add instructions to make backup script executable by @s-crypt in jasonacox#289
- Add timezone lookup instructions by @jasonacox see jasonacox#291 (reply in thread)
- Remove option to set e-mail sender name in Powerwall Status Monitor tool for improved compatibility by @mcbirse in jasonacox#301
- Update Powerwall Status Monitor tool to ignore null responses which can occur during firmware updates by @mcbirse in jasonacox#305 see jasonacox#109 (reply in thread)
- Add daemon option to Tesla History tool and create docker container by @mcbirse in jasonacox#281
- Revise setup script to utilise docker container environment by @mcbirse in jasonacox#283
- Add WinOS winpty support to setup script by @jasonacox in jasonacox#283 (comment)
- Add support to define InfluxDB PORT by environment variable when running in docker by @mcbirse in jasonacox#285 see jasonacox#183 (comment)
- Modify script to replace data instead of update by @mcbirse in jasonacox#293 see jasonacox#286
- New tool developed by @BuongiornoTexas to generate usage and cost/savings information based on utility usage plans in jasonacox#299 see https://github.com/jasonacox/Powerwall-Dashboard/tree/main/tools/usage-service and jasonacox#276
- Add Docker Hub upload script by @jasonacox in jasonacox#299
- Remove armv7 architecture by @jasonacox see jasonacox#299 (comment)
- Create "dashboard-new" using new Grafana time series type panels by @s-crypt in jasonacox#295 and jasonacox#297 see jasonacox#290
- Update to Powerwall Status Monitor tool to prevent false grid status alerts during Powerwall firmware updates by @mcbirse as raised in jasonacox#109 (reply in thread)
- Bug fix to Weather History Tool to resolve crash during setup process when weather411.conf is not found by @mcbirse
- Quickfix for permissions issues after repo cleanup. This addresses permission issues that interrupt the upgrade script for users of the backup script. Fix by @YesThatAllen in jasonacox#272 as raised in jasonacox#265
- Add
.gitattributes
file to help prevent issues such as .sh files being borked on Windows OS (ref #155) by @YesThatAllen in jasonacox#270 - Fix
verify.sh
to run on Windows OS in https://github.com/jasonacox/Powerwall-Dashboard/commit/25b77e53310d1668b2b3868e59fac55b82286f4f
- Repo cleanup and maintenance by @YesThatAllen in jasonacox#269
- Update pyPowerwall Proxy to t26 with updated default
PW_POOL_MAXSIZE
of 15 as raised by @jgleigh and @mcbirse in jasonacox#261 (reply in thread) - Dashboard Update - Update "costs/credit per kWh" for buy vs. sell by @jgleigh in jasonacox#266
- Dashboard Update - Make "costs/credit per kWh" and "timezone" user adjustable variables in Grafana by @emptywee in jasonacox#266
- Add support for up to 12 Powerwalls (added PW7 to PW12) for temperature data, frequencies, voltages and capacity as requested in jasonacox#253 and issue jasonacox#256.
- Minimize the number of default Grafana plugins as defined in the
grafana.env.sample
file (installed as localizedgrafana.env
) for new installations by @jasonacox in jasonacox#234 - Update power flow animation panel code to display Grafana loading image while power flow graphics are loaded by @dkerr64 as discussed in jasonacox#216 (comment)
- Tools - Reinstate setting timezone from history on 1st run by @mcbirse in jasonacox#236
- Pinned versions in compose file for controlled upgrades and repeatable setups. Fix jasonacox#237 issue by removing image pruning in
upgrade.sh
script by @GrimmiMeloni in jasonacox#240
- Add code to power flow animation dashboard panel to auto-scale based on window size by @dkerr64 in jasonacox#216
- Problem with scaling causing scrollbar and clipping reported and reproducible on Windows 11 as raised in jasonacox#216
- Tools - InfluxDB 2.x fixes and moved to grafana variables use instead of grafana.ini by @ThePnuts in #233
- Solar Only Support Development - Fix timezone for solar only sites using an offset by @mcbirse in jasonacox#226
- Add code to power flow animation dashboard panel to auto-scale based on window size by @dkerr64 in jasonacox#216 and PR jasonacox#228
- Tools - InfluxDB 2.x updates to instructions and dashboard by @ThePnuts in jasonacox#232
- Upgraded to pyPowerwall v0.6.2 Proxy t25 which fixes Cache-Control no-cache header and adds an option to set max-age, See https://github.com/jasonacox/pypowerwall/blob/main/proxy/RELEASE.md#proxy-t25-21-mar-2023
- Solar Only Support Development by @mcbirse in jasonacox#211 and in jasonacox#218 in https://github.com/jasonacox/Powerwall-Dashboard/tree/main/tools/solar-only
- Grafana Options - Base setup in grafana.env.sample will allow embedding of graphs into webpages #219 and optional removal of login requirement #221
- Tools - InfluxDB 2.x optional setup, tasks, and dashboard by @ThePnuts in jasonacox#223 See https://github.com/jasonacox/Powerwall-Dashboard/tree/main/tools/influxdb2
- Update Live Monitoring graph queries for Dashboard to use
max()
instead ofmean()
for Solar, Home, Grid and Powerwall to preserve peaks across all time filters as raised in jasonacox#203 - Update pyPowerwall proxy service to v0.6.1 Proxy t24 (see https://github.com/jasonacox/pypowerwall/releases/tag/v0.6.1)
- Weather411 v0.2.0 - Upgrade InfluxDB Client to support InfluxDB 1.8 and 2.x by @jasonacox in jasonacox#196 closes jasonacox#195 re: jasonacox#191 (reply in thread)
- README Improvements by @BJReplay in jasonacox#192
- Ecowitt Weather v0.2.2 - Upgrade InfluxDB Client to support InfluxDB 1.8 and 2.x by @BJReplay in jasonacox#200
- Added
verify.sh
tool to test setup and operation of the main components for the Dashboard (pypowerwall, telegraf, influxdb, grafana, weather411) by @jasonacox as raised in jasonacox#187
./verify.sh # optional: -no-color
- Added support for extending docker-compose setup via
powerwall.extend.yml
by @BJReplay in jasonacox#186 - Renamed
backup.sh
tobackup.sh.sample
to allow local settings changes without impacting upgrade by @BJReplay in jasonacox#186
- Added "Net Grid Usage" meter by @wreiske and "% Solar Powered" meter by @jasonacox in jasonacox#179 jasonacox#181
- Dashboard archived and versioned in ./dashboards
- Moved Alert Data from 3 day retention policy to separate "alerts" infinite (INF) retention policy.
- Grid Voltage Upgrade - This will fix the run-once script so tags are also copied with historic data by @mcbirse in jasonacox#177
Note: For anyone that already upgraded to 2.8.0 or later, there is an option to fix the untagged data by running the Fix Month Tags Tool. Thanks to @mcbirse for spotting this issue, submitting the fix and the great fixmonthtags
tool!
- Add Powerwall backup reserve setting (%) to Energy Usage graph thanks to @mp09 in jasonacox#174
- Now using
ISLAND_VLxN_Main
data for Grid voltage (instead ofMETER_x_VLxN
) as this appears to be more common across systems. Upgrade script executes a run-once query to copy historic data over. jasonacox#167 - Added logic to Voltage panel to sum Powerwall L1 and L2 voltages for 230V grid users thanks to @longzheng in jasonacox#165
- Change frequency panel to 3 decimal places by @longzheng in jasonacox#163
- Update README.md - Indent powerwall.yml snippet so that it can be cut and pasted directly into powerwall.yml by @BJReplay in jasonacox#168
- Add Powerwall Alert data to dashboard - Credit to @DerickJohnson in jasonacox#158
- Updated Tools and Contrib READMEs by @BJReplay in jasonacox#160
- [Ecowitt Weather] Added Ecowitt local weather station data import service and dashboard by @BJReplay in jasonacox#150 jasonacox#151 jasonacox#153 jasonacox#157
- [Tesla History Tool] Revise error handling of SITE_DATA request by @mcbirse in jasonacox#156
- [Ecowitt Weather History Tool] Added Ecowitt Weather History Tool by @BJReplay in jasonacox#159
- [pyPowerwall Proxy] Upgraded to pyPowerwall Proxy t24 which moves to Python 3.10 and adds /alerts/pw for easier alert history tracking by @DerickJohnson in jasonacox/pypowerwall#26
- Add Powerwall Firmware version to Power-Flow animation. #112
- Fix Self-Powered calculations to factor in Grid charging of Powerwall. #135
- Upgrade to pyPowerwall Proxy t22 to better handle Powerwall Firmware updates. This introduces no-cache headers and hopefully eliminates the need for proxy restart. #112
- Fix timezone script (tz.sh) to process file in the dashboards folder. jasonacox#63
- Eliminate horizontal scrollbars on iPhone. by @cwagz in jasonacox#114
- Updated animation and yearly image by @cwagz in jasonacox#117
- Tesla History Tool - Fix bug with error output when dateutil is missing by @mcbirse in jasonacox#123
- Fix Month Tool - Added tool to fix incorrect month tags of InfluxDB by @mcbirse in jasonacox#124 and jasonacox#126
- Weather History Tool - Added tool to retrieve weather history data by @mcbirse in jasonacox#147
- Added tool to import history data from Tesla cloud by @mcbirse in jasonacox#99 and jasonacox#108 - see https://github.com/jasonacox/Powerwall-Dashboard/tree/main/tools#tesla-historypy and jasonacox#12
- Adjusted instructions,
setup.sh
andupgrade.sh
to work with Windows 11 OS. jasonacox#63 - Minor QoL enhancements by @BuongiornoTexas in jasonacox#105 - Closes jasonacox#96
- Upgrade to pyPowerwall Proxy t18 with enhanced error handling and logging
- Update
backup.sh
to validate directories before starting backup process #85 - Fix panel size for Animation to prevent scroll/clipping of data #98
- Upgrade issue identified in #85 that keeps files from updating (upgrade fails). New method will stash and rebase all but non-tracked files (e.g.
grafana.env
andpypowerwall.env
local config files).
- Converts the "Energy Usage" graph to a new Grafana 9 time series graph - dashboard.json by @youzer-name in jasonacox#86
- Add timezone to telegraf so tags are localized by @mcbirse in jasonacox#81
- Fix bug in yesoreyeram-boomtable-panel that causes random "No data" errors in table. This uses the v1.5.0-alpha.3 boomtable by @yesoreyeram. #49
- Add timezone to telegraf so tags are localized by @mcbirse in jasonacox#81
- Fix dashboard.json bugs and update the rest of dashboard-*.json files for Grafana v9.
- Update dashboards and setup to use Grafana v9.1.2 by @techlover1 in jasonacox#73
- Bug fix missing space in
weather.sh
by @mcbirse in jasonacox#72
- Fix
upgrade.sh
to prevent sudo/root from running this script. #42
- Fix bug in
weather.sh
that causes the script to error on location entry. #72
- Adds local weather data from OpenWeatherMap.org using the jasonacox/weather411 container. #42 #51
- Upgraded to pyPowerwall v0.6.0 Proxy t17 - Persistent HTTP Connections
- Added setup warning. Raspbian GNU/Linux 10 (buster) has a bug in the libseccomp2 library that causes the pypowerwall container to fail. See details an fix in #56
- Fixed Current State panel so it is not affected by different time range selections, and "No Data" issue by @mcbirse in https://github.com/jasonacox/Powerwall-Dashbsoard/pull/50
- Made the power flow animation dashboard the default (
dashboard.json
). Original dashboard is still available asdashboard-no-animation.json
.
- Externalize Grafana environment settings into
grafana.env
to allow for additional customizations. - Update and fixes to
setup.sh
andupgrade.sh
.
- Fix pypowerwall.env format and timezone bug in setup #23
- Add check in setup.sh to ensure not running as root/sudo.
- Added self-upgrade feature to upgrade.sh with
set -e
to stop on errors #45 - Added VERSION tracking to help with upgrades (
upgrade.sh
andsetup.sh
).
- Added new Grafana dashboard and panel for iFrame for pyPowerwall Proxy passthrough Power Flow Animation - see dashboard-animation.json.
- Fixed Timezone management for
tz.sh
,setup.sh
andupgrade.sh
for easier repeat setup and upgrades. #23
- Add graph
- pyPowerwall v0.4.0
- Initial Release
- Tested on Ubuntu 18.04.6 LTS, Ubuntu 18.04.6 and 20.04 LTS, Raspberry Pi OS 32-Bit Debian Bullseye (armv7) and MacOS (x86_64, arm64)
- pyPowerwall v0.3.0