Skip to content

[Bug]: V14_1HAR_q1 template: wrong analog/digital split — Nano PK Plus (V14.1HAR.q) sends 113 analog + 8 digital words, template defines 112 + 9 #21

Description

@josefstr

Pre-flight checklist

  • I have searched existing issues and confirmed this is not a duplicate.
  • I am using a supported and reasonably current version.
  • This report contains no secrets, credentials or personal data.

Description

Environment

  • Boiler: Hargassner Nano PK Plus, firmware V14.1HAR.q
  • Integration: v0.4.0 (also present in v0.3.1)
  • Home Assistant 2026.8.3, template V14_1HAR_q1

Symptom

With the stock V14_1HAR_q1 template, all digital words are read one
position too early. Every digital state (heating circuit pumps, mixers,
fault flags, ...) is wrong or nonsensical, and the debug log is flooded
with:

at index 112: invalid literal for int(): '0.00'

Note the message length check does NOT catch this: the telegram has 121
values and the template also expects 121 — only the split is wrong.

Analysis

Our boiler sends 113 analog values followed by 8 digital words
(121 total). The V14_1HAR_q1 template defines 112 analog + 9 digital
— same total, wrong split. As a result the first "digital" word is
actually the last analog value ('0.00' → parse error above), and all
real digital words shift by one position.

We verified this against a raw telnet capture (nc <boiler> 23): the
decimal-place pattern of every channel only lines up with the 113/8
split. The additional analog value sits at position 90 (between
TBs_A and TBs_1); all channels from there shift by +1, and the 9th
digital word (Reserved_8 in the template) does not exist on this
machine.

Fix we are running locally

In the V14_1HAR_q1 template:

  1. insert a placeholder analog channel at id 90 (ids of all later
    channels +1),
  2. remove digital word id 8 (Reserved_8).

Running stable since 2026-08 on 0.3.1 and now on 0.4.0 (clean logs,
plausible digital states).

Happy to open a PR with the adjusted template. Possibly this warrants a template variant
(similar to the nano2 variant added in v0.4.0 for #17) rather than
changing V14_1HAR_q1 for everyone — we don't know which hardware
combination produces the 112+9 layout, if any.

Steps to reproduce

  1. Set up the integration (v0.4.0) against a Hargassner Nano PK Plus running firmware V14.1HAR.q, using the V14_1HAR_q1
    template.
  2. Enable debug logging for custom_components.bauergroup_hargassnerintegration.
  3. Observe the log message at index 112: invalid literal for int(): '0.00' on every telegram, and compare the digital
    sensors (heating circuit pumps, mixers, fault flags) with the boiler display — they do not match.

Expected behavior

The template splits the 121 telegram values as 113 analog + 8 digital words, so digital states match the boiler and the
telegram parses without errors.

Severity

Medium — degraded, but usable

Affected version / commit

v0.4.0 (also reproducible on v0.3.1)

Environment

  • Home Assistant 2026.8.3 (HA OS)
  • Integration installed via HACS
  • Boiler: Hargassner Nano PK Plus, firmware V14.1HAR.q, connected via Telnet (port 23)

Relevant logs or screenshots

Debug log (repeated for every telegram):

at index 112: invalid literal for int(): '0.00'


Sample telegram line (full 20 s capture attached, 15 lines, each with 121 values — note value #113 (index 112) is `0.00`, i.e. still an analog value where the template expects the first digital word):

  pm 1 1.1 7.5 28.8 0 29.2 30 10 33.8 0 0 62.7 61.2 42.2 92 5 0 0 0 63 0 0 30.0 100 30 30 76 76.3 92 2 0 0 10 3 0 5 0 7 0 0
  6363 0 15063 0.00 0.00 -3 50.2 24107 28.9 117.9 36 -20.0 -20.0 0.0 20.6 20.9 0.0 1 0 -20.0 0 20.0 20.0 0 1 0 28.1 0 20.0
  22.0 0 1 0 28.1 0 20.0 20.5 0 1 0 -20.0 0 20.0 20.0 0 1 0 -20.0 0 62.7 0 0 0 -20.0 0 0.0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
  0.00 2 1000 0 0 1 0 0 0


Complete Log:

pm 1 1.1 7.5 28.8 0 29.2 30 10 33.8 0 0 62.7 61.2 42.2 92 5 0 0 0 63 0 0 30.0 100 30 30 76 76.3 92 2 0 0 10 3 0 5 0 7 0 0 6363 0 15063 0.00 0.00 -3 50.2 24107 28.9 117.9 36 -20.0 -20.0 0.0 20.6 20.9 0.0 1 0 -20.0 0 20.0 20.0 0 1 0 28.1 0 20.0 22.0 0 1 0 28.1 0 20.0 20.5 0 1 0 -20.0 0 20.0 20.0 0 1 0 -20.0 0 62.7 0 0 0 -20.0 0 0.0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.00 2 1000 0 0 1 0 0 0 
pm 1 1.1 7.5 28.7 0 29.2 30 10 33.7 0 0 62.7 61.2 42.2 92 5 0 0 0 63 0 0 30.0 100 30 30 76 76.3 92 2 0 0 11 3 0 0 0 7 0 0 6363 0 15063 0.00 0.00 -3 50.2 24108 28.8 119.8 36 -20.0 -20.0 0.0 20.6 20.9 0.0 1 0 -20.0 0 20.0 20.0 0 1 0 28.1 0 20.0 22.0 0 1 0 28.1 0 20.0 20.5 0 1 0 -20.0 0 20.0 20.0 0 1 0 -20.0 0 62.8 0 0 0 -20.0 0 0.0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.00 2 0 0 0 1 0 0 0 
pm 1 1.1 7.5 28.7 0 29.2 30 10 33.8 0 0 62.7 61.2 42.2 92 5 0 0 0 63 0 0 30.0 100 30 30 76 76.3 92 2 0 0 10 2 0 0 0 7 0 0 6363 0 15063 0.00 0.00 -3 50.2 24107 28.9 119.8 36 -20.0 -20.0 0.0 20.6 20.9 0.0 1 0 -20.0 0 20.0 20.0 0 1 0 28.1 0 20.0 22.0 0 1 0 28.1 0 20.0 20.5 0 1 0 -20.0 0 20.0 20.0 0 1 0 -20.0 0 62.8 0 0 0 -20.0 0 0.0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.00 2 0 0 0 1 0 0 0 
pm 1 1.1 7.5 28.7 0 29.2 30 10 34.0 0 0 62.7 61.2 42.2 92 5 0 0 0 63 0 0 30.0 100 30 30 76 76.3 92 2 0 0 11 3 0 5 0 7 0 0 6363 0 15063 0.00 0.00 -3 50.2 24107 28.9 117.9 36 -20.0 -20.0 0.0 20.6 20.9 0.0 1 0 -20.0 0 20.0 20.0 0 1 0 28.1 0 20.0 22.0 0 1 0 28.1 0 20.0 20.5 0 1 0 -20.0 0 20.0 20.0 0 1 0 -20.0 0 62.8 0 0 0 -20.0 0 0.0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.00 2 1000 0 0 1 0 0 0 
pm 1 1.1 7.5 28.7 0 29.2 30 10 33.9 0 0 62.7 61.2 42.2 92 5 0 0 0 63 0 0 30.0 100 30 30 76 76.3 92 2 0 0 10 2 0 3 0 7 0 0 6363 0 15063 0.00 0.00 -3 50.2 24107 28.9 117.9 36 -20.0 -20.0 0.0 20.6 20.9 0.0 1 0 -20.0 0 20.0 20.0 0 1 0 28.1 0 20.0 22.0 0 1 0 28.1 0 20.0 20.5 0 1 0 -20.0 0 20.0 20.0 0 1 0 -20.0 0 62.8 0 0 0 -20.0 0 0.0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.00 2 0 0 0 1 0 0 0 
pm 1 1.1 7.5 28.7 0 29.2 30 10 34.0 0 0 62.7 61.2 42.2 92 5 0 0 0 63 0 0 30.0 100 30 30 76 76.3 92 2 0 0 11 2 0 0 0 7 0 0 6363 0 15063 0.00 0.00 -3 50.2 24107 28.9 117.9 36 -20.0 -20.0 0.0 20.6 20.9 0.0 1 0 -20.0 0 20.0 20.0 0 1 0 28.2 0 20.0 22.0 0 1 0 28.1 0 20.0 20.5 0 1 0 -20.0 0 20.0 20.0 0 1 0 -20.0 0 62.8 0 0 0 -20.0 0 0.0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.00 2 0 0 0 1 0 0 0 
pm 1 1.1 7.5 28.7 0 29.2 30 10 34.1 0 0 62.7 61.2 42.2 92 5 0 0 0 63 0 0 30.0 100 30 30 76 76.3 92 2 0 0 11 3 0 0 0 7 0 0 6363 0 15063 0.00 0.00 -3 50.2 24108 28.9 116.0 36 -20.0 -20.0 0.0 20.6 20.9 0.0 1 0 -20.0 0 20.0 20.0 0 1 0 28.2 0 20.0 22.0 0 1 0 28.1 0 20.0 20.5 0 1 0 -20.0 0 20.0 20.0 0 1 0 -20.0 0 62.7 0 0 0 -20.0 0 0.0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.00 2 1000 0 0 1 0 0 0 
pm 1 1.1 7.5 28.8 0 29.2 30 10 34.2 0 0 62.7 61.2 42.2 92 5 0 0 0 63 0 0 30.0 100 30 30 76 76.3 92 2 0 0 10 2 0 4 0 7 0 0 6363 0 15063 0.00 0.00 -3 50.2 24107 28.9 119.8 36 -20.0 -20.0 0.0 20.6 20.9 0.0 1 0 -20.0 0 20.0 20.0 0 1 0 28.2 0 20.0 22.0 0 1 0 28.1 0 20.0 20.5 0 1 0 -20.0 0 20.0 20.0 0 1 0 -20.0 0 62.7 0 0 0 -20.0 0 0.0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.00 2 1000 0 0 1 0 0 0 
pm 1 1.1 7.5 28.8 0 29.2 30 10 34.1 0 0 62.7 61.2 42.2 92 5 0 0 0 63 0 0 30.0 100 30 30 76 76.3 92 2 0 0 10 4 0 4 0 7 0 0 6363 0 15063 0.00 0.00 -3 50.2 24107 28.9 117.9 36 -20.0 -20.0 0.0 20.6 20.9 0.0 1 0 -20.0 0 20.0 20.0 0 1 0 28.2 0 20.0 22.0 0 1 0 28.1 0 20.0 20.5 0 1 0 -20.0 0 20.0 20.0 0 1 0 -20.0 0 62.7 0 0 0 -20.0 0 0.0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.00 2 1000 0 0 1 0 0 0 
pm 1 1.1 7.5 28.8 0 29.2 30 10 34.2 0 0 62.7 61.2 42.2 92 5 0 0 0 63 0 0 30.0 100 30 30 76 76.3 92 2 0 0 11 1 0 0 0 7 0 0 6363 0 15063 0.00 0.00 -3 50.2 24108 28.9 119.8 36 -20.0 -20.0 0.0 20.6 20.9 0.0 1 0 -20.0 0 20.0 20.0 0 1 0 28.2 0 20.0 22.0 0 1 0 28.1 0 20.0 20.5 0 1 0 -20.0 0 20.0 20.0 0 1 0 -20.0 0 62.7 0 0 0 -20.0 0 0.0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.00 2 0 0 0 1 0 0 0 
pm 1 1.1 7.5 28.8 0 29.2 30 10 34.0 0 0 62.7 61.2 42.1 92 5 0 0 0 63 0 0 30.0 100 30 30 76 76.3 92 2 0 0 11 2 0 0 0 7 0 0 6363 0 15063 0.00 0.00 -3 50.2 24108 28.9 119.8 36 -20.0 -20.0 0.0 20.6 20.9 0.0 1 0 -20.0 0 20.0 20.0 0 1 0 28.2 0 20.0 22.0 0 1 0 28.1 0 20.0 20.5 0 1 0 -20.0 0 20.0 20.0 0 1 0 -20.0 0 62.8 0 0 0 -20.0 0 0.0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.00 2 0 0 0 1 0 0 0 
pm 1 1.1 7.5 28.8 0 29.2 30 10 34.1 0 0 62.7 61.2 42.1 92 5 0 0 0 63 0 0 30.0 100 30 30 76 76.3 92 2 0 0 10 3 0 4 0 7 0 0 6363 0 15063 0.00 0.00 -3 50.2 24108 28.8 116.0 36 -20.0 -20.0 0.0 20.6 20.9 0.0 1 0 -20.0 0 20.0 20.0 0 1 0 28.2 0 20.0 22.0 0 1 0 28.1 0 20.0 20.5 0 1 0 -20.0 0 20.0 20.0 0 1 0 -20.0 0 62.8 0 0 0 -20.0 0 0.0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.00 2 1000 0 0 1 0 0 0 
pm 1 1.1 7.5 28.7 0 29.2 30 10 34.2 0 0 62.7 61.2 42.1 92 5 0 0 0 63 0 0 30.0 100 30 30 76 76.3 92 2 0 0 11 1 0 4 0 7 0 0 6363 0 15063 0.00 0.00 -3 50.2 24107 28.9 114.2 36 -20.0 -20.0 0.0 20.6 20.9 0.0 1 0 -20.0 0 20.0 20.0 0 1 0 28.2 0 20.0 22.0 0 1 0 28.1 0 20.0 20.5 0 1 0 -20.0 0 20.0 20.0 0 1 0 -20.0 0 62.8 0 0 0 -20.0 0 0.0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.00 2 1000 0 0 1 0 0 0 
pm 1 1.1 7.5 28.8 0 29.2 30 10 33.8 0 0 62.7 61.2 42.1 92 5 0 0 0 63 0 0 30.0 100 30 30 76 76.3 92 2 0 0 11 4 0 1 0 7 0 0 6363 0 15063 0.00 0.00 -3 50.2 24107 28.9 116.0 36 -20.0 -20.0 0.0 20.6 20.9 0.0 1 0 -20.0 0 20.0 20.0 0 1 0 28.2 0 20.0 22.0 0 1 0 28.1 0 20.0 20.5 0 1 0 -20.0 0 20.0 20.0 0 1 0 -20.0 0 62.8 0 0 0 -20.0 0 0.0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.00 2 0 0 0 1 0 0 0 
pm 1 1.1 7.5 28.8 0 29.2 30 10 34.2 0 0 62.7 61.2 42.1 92 5 0 0 0 63 0 0 30.0 100 30 30 76 76.3 92 2 0 0 10 2 0 0 0 7 0 0 6363 0 15063 0.00 0.00 -3 50.2 24107 28.9 116.0 36 -20.0 -20.0 0.0 20.6 20.9 0.0 1 0 -20.0 0 20.0 20.0 0 1 0 28.2 0 20.0 22.0 0 1 0 28.1 0 20.0 20.5 0 1 0 -20.0 0 20.0 20.0 0 1 0 -20.0 0 62.8 0 0 0 -20.0 0 0.0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.00 2 0 0 0 1 0 0 0 

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions