Releases: jasonacox/Powerwall-Dashboard
Releases · jasonacox/Powerwall-Dashboard
v4.8.5 - Setup and Verify
What's Changed
- Add switch-mode tool and configuration files for Powerwall automation by @goodoldme in #674 and tools README by @goodoldme in #676
- Updates to
setup
andverify
for v4.8.5 by @jasonacox in #681:- Add enhanced log display options to
verify.sh
: supports--logs
and--no-logs
flags to control log output, and interactive prompt for log viewing. Log output is now cleaner and only shown when requested. - Add input validation for timezone entry in
setup.sh
to prevent invalid/corrupt values in configuration files. Timezone is now checked against system zoneinfo and format before acceptance. - Update pypowerwall to v0.14.1 - See updates: https://github.com/jasonacox/pypowerwall/releases/tag/v0.14.1 for error handling updates.
- Add enhanced log display options to
New Contributors
- @goodoldme made their first contribution in #674
Full Changelog: v4.8.4...v4.8.5
v4.8.4 - Cloud and FleetAPI Updates
What's Changed
- Cloud and FleetAPI Updates by @jasonacox in #671
- Update pypowerwall to v0.14.0 - See updates: https://github.com/jasonacox/pypowerwall/releases/tag/v0.14.0 with Cloud updates to accommodate Tesla API changes (embedded TeslaPy patch) and fix a bug in FleetAPI for multi-site installations.
Full Changelog: v4.8.3...v4.8.4
v4.8.3
What's Changed
- Update to version 4.8.3 with proxy TEDAPI optimizations by @jasonacox in #665
v4.8.3 - Docker Compose Updates
- Update pypowerwall to v0.13.2 - See updates: https://github.com/jasonacox/pypowerwall/releases/tag/v0.13.2 with improved connection health monitoring and graceful degradation. Including:
v0.13.2 - TEDAPI Lock Optimization
- Fix TEDAPI lock contention issues causing "Timeout for locked object" errors under concurrent load by optimizing cache-before-lock pattern in core functions
- Optimize
get_config()
,get_status()
,get_device_controller()
,get_firmware_version()
,get_components()
, andget_battery_block()
to check cache before acquiring expensive locks - Remove redundant API call in
pypowerwall_tedapi.py
get_api_system_status()
method - Fix proxy server KeyError when status response missing version or git_hash keys by using defensive key access
- Fix proxy server KeyError when auth dictionary missing AuthCookie or UserRecord keys in cookie mode
- Improve performance and reduce lock timeout errors in multi-threaded environments like the pypowerwall proxy server
- Enhance
compute_LL_voltage()
function with voltage threshold detection (100V) to better handle single-phase systems with residual voltages on inactive legs, as well as split- and three-phase systems. - These optimizations benefit all methods that depend on the core TEDAPI functions, including
vitals()
,get_blocks()
, andget_battery_blocks()
Proxy t77 (11 Jul 2025)
-
TEDAPI Lock Optimization and Error Handling: Enhanced proxy stability and performance with comprehensive fixes for TEDAPI-related issues.
- Fixed KeyError exceptions in proxy server when status response missing
version
orgit_hash
keys by implementing defensive key access with.get()
method - Fixed KeyError exceptions when auth dictionary missing
AuthCookie
orUserRecord
keys in cookie mode, now uses safe fallbacks - TEDAPI Performance Improvements: Optimized core TEDAPI functions (
get_config
,get_status
,get_device_controller
,get_firmware_version
,get_components
,get_battery_block
) with cache-before-lock pattern to reduce lock contention - Removed redundant API calls in TEDAPI wrapper functions to improve response times
- Enhanced multi-threading support for concurrent proxy requests with reduced lock timeout errors
- Improved error resilience for different connection modes (local vs TEDAPI) that return varying data structures
- Fixed KeyError exceptions in proxy server when status response missing
-
Enhanced Health Monitoring: Added comprehensive endpoint statistics tracking for better observability and debugging.
- Endpoint Call Statistics: Added tracking of successful and failed API calls per endpoint with success rate calculations
- Enhanced
/health
endpoint: Now includes detailed statistics showing:- Total calls, successful calls, and failed calls per endpoint
- Success rate percentage for each endpoint
- Time since last success and last failure for each endpoint
- Overall proxy response counters (total_gets, total_posts, total_errors, total_timeouts)
- Improved
/health/reset
endpoint: Now also clears endpoint statistics along with health counters and cache - Automatic tracking: All endpoints using
safe_endpoint_call()
automatically tracked (includes/aggregates
,/soe
,/vitals
,/strings
, etc.)
Proxy t78 (14 Jul 2025)
- Power flow animation update: Show an image of a Powerwall 3 instead of a Powerwall 2 if it is a PW3 by @JEMcats in jasonacox/pypowerwall#193
Full Changelog: v4.8.2...v4.8.3
v4.8.2 - Connection Health
What's Changed
- Update Powerwall-Dashboard/tools/DOCKER.md by @JonMurphy in #650
- Add Connection Health Monitoring by @jasonacox in #656
- Health status: http://localhost:8675/health
- Update pypowerwall version for connection health monitoring and graceful degradation.
- Minor improvements to Docker Compose healthcheck configurations.
- Documentation updates for route management and TEDAPI access changes.
Full Changelog: v4.8.1...v4.8.2
v4.8.1
What's Changed
- Update tools/pwstatus/README.md by @JonMurphy in #639
- v4.8.0 - Healthchecks & Watchdog by @jasonacox in #643
- V4.8.1 - Hotfix for Setup by @jasonacox in #646
v4.8.1 - Hotfix for Setup
- Fix breaking error with
setup.sh
script that caused it to fail during geo-location lookup. Improve location parsing to handle JSON errors gracefully. - Added a prominent notice to the top of the README warning users that, as of Powerwall Firmware 25.10.0+, network routing to the TEDAPI endpoint (192.168.91.1) is no longer supported. Users are instructed to connect directly to the Powerwall's WiFi and can remove old routes using
./add_route.sh -disable
. - Improved
add_route.sh
:- The
-disable
option now reliably removes the static route on Linux systems, even if the Powerwall IP is not set, preventing command errors. - The script checks for
-disable
before any prompts or warnings, for a smoother user experience. - Documentation and user prompts updated for clarity.
- The
v4.8.0 - Healthchecks & Watchdog
- Enhanced Docker Compose healthchecks for all services (
influxdb
,pypowerwall
,telegraf
,grafana
,weather411
), addresses #642 - Added optional
watchdog.sh
script to monitorpypowerwall
container and restarts if unhealthy.-enable
option adds watchdog to crontab (every 5 min)-disable
option removes watchdog from crontab-debug
for verbose output;-h/--help
for usage.
- Refactor and feature additions to InfluxDB Viewer (
viewer.py
):- Interactive shell-like interface with colorized and tabular output.
- Tab completion for commands and queries.
--nocolor
option for plain output.- Added help and error handling.
New Contributors
- @JonMurphy made their first contribution in #639
Full Changelog: v4.7.2...v4.8.1
v4.7.2 - TEDAPI Updates
What's Changed
- Update version to v4.7.2 - TEDAPI Updates by @jasonacox in #634
- Added InfluxDB interactive tool for troubleshooting - https://github.com/jasonacox/Powerwall-Dashboard/tree/main/tools/influxdb-viewer
- Updated dashboard.json to add total Powerwall capacity graph in addition to separate PW stats. This is helpful for systems with PW3 + DC Expansion packs. See #632
- Update pypowerwall to v0.13.1
- See updates: https://github.com/jasonacox/pypowerwall/releases/tag/v0.13.0
- Use Neurio for TEDAPI data when Tesla Remote Meter is not present by @Nexarian
- Add connection pool to TEDAPI by @Nexarian
- Add METER_Z (Backup Switch) data to vitals and aggregates data
- Fix logic for aggregates API for consolidated voltage and current data by @jasonacox
- See updates: https://github.com/jasonacox/pypowerwall/releases/tag/v0.13.1
- Fix missing battery_blocks data on PW3 with Multiple Powerwalls in Local Mode in #131
- Fix errant API base URL check. by @Nexarian in #185
- Update TEDAPI to pull battery blocks from vitals for PW3 Systems by @jasonacox in #184
Full Changelog: v4.7.1...v4.7.2
v4.7.1 - Multiple PW3 Strings
What's Changed
- Fix for Multiple PW3 Strings by @jasonacox in #626
- Update pypowerwall to v0.12.12 - See updates: https://github.com/jasonacox/pypowerwall/releases/tag/v0.12.12
- Bug Fix - Logic added in jasonacox/pypowerwall#169 does not iterate through all PW3 strings. This adds logic to handle multiple PW3 string sets. Reported in jasonacox/pypowerwall#172 by @heynorm
- pyPowerwall Proxy t73 (10 May 2025) - Add
http://localhost:8675/json
route to return basic metrics:
{
"grid": -3,
"home": 917.5,
"solar": 5930,
"battery": -5030,
"soe": 61.391932759907306,
"grid_status": 1,
"reserve": 20,
"time_remaining_hours": 17.03651226158038
}
Full Changelog: v4.7.0...v4.7.1
v4.7.0 - Powerwall Firmware 25.10.1+
What's Changed
- Starting with Powerwall Firmware 24.10.1, Powerwalls no longer allows routed access to the TEDAPI interface (needed for Powerwall 3 and extended metrics data)
- Updated documentation and setup script to instruct users that direct WiFi access is required for TEDADI access by @jasonacox in #623
- Update influxdb.sql source by @emmanuel-ferdman in #624
New Contributors
- @emmanuel-ferdman made their first contribution in #624
Full Changelog: v4.6.7...v4.7.0
v4.6.7 - Dashboard Fixes
What's Changed
- Fixed mismatched Powerwall references in pwtemps queries of "Powerwall Temps and Fans" and removed a duplicate query by @mcbirse in #618
- Fixed issue where Powerwall Dashboard version shows "No data" if time filter set to >3d ago by @mcbirse in #618
- Revised dashboard JSON definitions to remove irrelevant queries when rawQuery is false by @mcbirse in #618
- README: Fix path for restore tar by @jasonacox in 3c55ed5
- Update pypowerwall to v0.12.11 - See updates: https://github.com/jasonacox/pypowerwall/releases/tag/v0.12.11
Full Changelog: v4.6.6...v4.6.7
v4.6.6 - Fan Speeds
What's Changed
- Version 4.6.6 - Fan Speeds in #609
- Update pypowerwall to v0.12.9, adds vitals metrics for fan speed, fixes bug with FullPackEnergy calcs, improve thread locking for TEDAPI and adds CSV headers. See release notes: https://github.com/jasonacox/pypowerwall/releases - Fan speeds via TEDAPI by @Nexarian in jasonacox/pypowerwall#152
- Update dashboard to show fan speeds on temperature graph.

Full Changelog: v4.6.5...v4.6.6