Skip to content

12A0: Indoor Humidity

David Bonnes edited this page Jan 21, 2020 · 2 revisions

It is not clear if this is an evohome packet.

045  I --- 32:168090 --:------ 32:168090 12A0 006 003207E703C2

Payload Structure

segment size contents
unused [0:2] always 00
xxx [2:]

Note that temperatures can be less than 0, so are processed as twos complement.

Sample Code

Using Python, the payload can be decoded as:

def _temp(seqx) -> Optional[float]:
    if seqx == "7FFF":
        return None
    temp = int(seqx, 16)
    return (temp if temp < 2 ** 15 else temp - 2 ** 16) / 100

def parser_12a0(payload, msg) -> Optional[dict]:
    assert len(payload) / 2 == 6
    assert payload[:2] == "00"

    return {
        "relative_humidity": int(payload[2:4]) / 100,
        "temperature": _temp(payload[4:8]),
        "dewpoint_temp": _temp(payload[8:12]),
    }

Related Packets

Clone this wiki locally