Skip to content

v0.8.9 - WIT entities fixed. Register Scanner improvements

Choose a tag to compare

@0xAHA 0xAHA released this 06 May 02:24

Release Notes

Buy Me A Coffee


v0.8.9

Issues: #295


  • Fix: WIT all entities unavailable after upgrading to v0.8.8 (Issue #295):
    The profile-driven register scan sizing introduced in v0.8.8 contained a bug affecting WIT
    inverters. Two related problems were found and fixed:

    1. has_base_range was checking for any address in 0–999, which includes WIT's 875-range
      registers. This caused max_base_addr to resolve to ~998 — a 999-register read that
      immediately exceeded the Modbus limit of 125 per request. Fixed by excluding 875–999
      from the base range check (that range is already read separately).
    2. After the first fix, the base range read was still 189 registers (WIT has input registers
      defined up to address 188). This also exceeds the 125-register limit. Fixed by reading
      the base range in 125-register chunks when it spans more than 125 addresses — the same
      pattern already used for the 3000-range. As a side effect, WIT registers 125–188 are now
      read correctly for the first time (previously the 0–124 cap silently dropped them).
  • Feature: Universal Scanner configurable block size:
    The growatt_modbus.export_register_dump service now accepts a Block Size field (125,
    25, or 1 register per request; default 125). Inverters using older RS485 protocols or
    single-register-only firmware (such as the TL3-S family) reject large Modbus block reads
    and return Illegal Function errors for entire ranges. Setting block size to 25 or 1 allows
    these inverters to be scanned successfully, at the cost of scan time.

  • Feature: Universal Scanner always reports both DTC registers:
    The scan result notification and CSV detection section now always show the raw value of both
    the VPP DTC register (holding 30000) and the legacy V1.39 DTC register (holding 43),
    regardless of which one was used for model identification. Useful when investigating
    inverters with unknown or conflicting DTC codes.