0.1.10
🔧 v0.1.10 - Critical Hotfix Release
🚨 Critical Fixes
Fixed Critical Switch Registration Error
- 🐛 Fixed
H_GRID_PEAK_SHAVING_POWER_1_AND_FUNC_ENundefined register error that was causing integration startup failures - ✅ Corrected switch register mappings for battery management functions:
Quick Charge Startnow correctly usesH_FUNCTION_ENABLE_5(register 233) bit 0Battery Backupnow correctly usesH_FUNCTION_ENABLE_5(register 233) bit 1Battery Maintenancenow correctly usesH_FUNCTION_ENABLE_5(register 233) bit 2
- 🔧 Resolution: Replaced non-existent
H_GRID_PEAK_SHAVING_POWER_1_AND_FUNC_ENwith the correctH_FUNCTION_ENABLE_5register reference
🧪 Enhanced Testing & Development
- 📋 Added comprehensive Modbus communication test script (
test_modbus_communication.py)- Real-device testing capabilities for different block sizes
- Value search functionality for register debugging
- Automated recommendation system for optimal communication parameters
- 🔬 Updated unit test coverage with parameterized testing for both INPUT and HOLD register responses
- 🐞 Improved debugging capabilities for Modbus protocol analysis
🔍 What This Fixes
Users experiencing the following issues should update immediately:
- ❌ Integration failing to start with "undefined register" errors
- ❌ Battery management switches (Quick Charge, Battery Backup, Maintenance) not appearing or functioning
- ❌
AttributeErrororImportErrorrelated toH_GRID_PEAK_SHAVING_POWER_1_AND_FUNC_EN
📋 Technical Details
- 🎯 Root Cause: The switch definitions were referencing a non-existent register constant that was never defined in the hold registers file
- 💥 Impact: Integration would fail to initialize, preventing all functionality
- 🛠️ Solution: Mapped the switches to the correct register (
H_FUNCTION_ENABLE_5at address 233) according to the Modbus protocol documentation
⚡ Immediate Action Required
Important
This is a critical hotfix - update immediately if you're experiencing integration startup issues.
Full Changelog: v0.1.9...v0.1.10