Skip to content

MQTT topics and message structure

Jan-Jaap Kostelijk edited this page May 22, 2021 · 19 revisions

MQTT topics and message structure

Topics

The following topics are used:

topic

meaning

<device_type>/<device_serial>/status/current

Status of the machine

<device_type>/<device_serial>/status/connection

Status of the connection

<device_type>/<device_serial>/status/faults

Fault lists

<device_type>/<device_serial>/status/software

could not find any messages on this topic

<device_type>/<device_serial>/status/summary

could not find any messages on this topic

<device_type>/<device_serial>/command

Topic to publish commands on

Subscribe

topic: <device_type>/<device_serial>/status/current

command message

topic: <device_type>/<device_serial>/command

Available command messages

{"msg":"REQUEST-CURRENT-STATE", "time": "2019-03-08T16:26:23Z"}
returns CURRENT-STATE and ENVIRONMENTAL-CURRENT-SENSOR-DATA

{"msg": "STATE-SET", "mode-reason": "LAPP", "data": {"<attribute>": "<value>"}, "time": "2019-03-08T16:35:13Z"}')
returns message STATE-CHANGE

Where the following values are possible (more than one can be passed in a single command):

attribute

value

meaning

fmod

OFF;ON;AUTO;FAN

Operation mode of the fan

fnsp

0001..0010

Fan speed

nmod

ON;OFF

Night mode

oson

ON;OFF

Oscillation mode

rhtm

ON;OFF

standby monitoring

rstf

RSTF

Reset filter lifetime

Replies: stats/current

topic: <device_type>/<device_serial>/status/current

Machine state: CURRENT-STATE

This message describes the state of the machine. The following attributes are communicated: {"msg":"CURRENT-STATE","time":"2019-03-08T19:56:06.000Z","mode-reason":"LAPP","state-reason":"MODE","dial":"OFF","rssi":"-53","product-state":{"fmod":"OFF","fnst":"OFF","fnsp":"0006","qtar":"0003","oson":"OFF","rhtm":"ON","filf":"1498","ercd":"02C0","nmod":"OFF","wacd":"NONE"},"scheduler":{"srsc":"b739","dstv":"0001","tzid":"0001"}}

Sensor data: ENVIRONMENTAL-CURRENT-SENSOR-DATA

This message provides a read-out of the machine’s sensors. The following attributes are communicated:
{"msg":"ENVIRONMENTAL-CURRENT-SENSOR-DATA",
"time":"2019-03-08T19:54:06.001Z",
"data":{"tact":"2909","hact":"0049","pact":"0004","vact":"0000","sltm":"OFF"}}

status change: STATE-CHANGE

This message provides an overview of all states current and previous value:
{"msg":"STATE-CHANGE","time":"2019-03-08T19:58:46.001Z","mode-reason":"LAPP","state-reason":"MODE","product-state":{"fmod":["FAN","FAN"],"fnst":["FAN","FAN"],"fnsp":["0006","0005"],"qtar":["0003","0003"],"oson":["OFF","OFF"],"rhtm":["ON","ON"],"filf":["1498","1498"],"ercd":["02C0","02C0"],"nmod":["OFF","OFF"],"wacd":["NONE","NONE"]},"scheduler":{"srsc":"b739","dstv":"0001","tzid":"0001"}}

Where the following fields are used:

attribute

value

meaning

ercd

hex value

Error code (see table below)

filf

0..4000

Remaining filter life in hours

fmod

OFF;ON;AUTO;FAN

Operation mode of the fan

fnsp

0001..0010

Fan speed

fnst

FAN;OFF;ON

State of the fan

hact

0..100%

Relative humidity

nmod

ON;OFF

Night mode

oson

ON;OFF

Oscillation mode

pact

0..9999

Amount of particles in the air

qtar

0001;0003;0004

Air quality target (1 highest, 4 lowest quality)

rhtm

ON;OFF

Standby monitoring

sltm

OFF;0..10?

sleep timer

tact

OFF;0..9999

Temperature in Kelvin * 10

vact

INIT;0..9999

Volatile compounds in the air

wacd

string

Warning code (see table below)

Error codes I ran across so far:

error code

(assumed) meaning

02C0, 02C9

normal

NONE

active when filter needs replacement

Warning codes I ran across so far:

error code

meaning

NONE

normal

FLTR

active when filter needs replacement

Replies: status/connection

topic: <device_type>/<device_serial>/status/connection
This message seems to be published by the fan on initiation of a connection from any client {"msg":"HELLO","time":"2019-03-07T05:58:26.001Z","model":"X475","version":"21.04.03","protocol":"1.0.0","serialNumber":"<serial-number>","mac address":"<mac address>","module hardware":"140762-01-07","module bootloader":"-.-.-.-","module software":"5227","module nwp":"2.11.0.1","product hardware":"141793-01-06","product bootloader":"000000.00.00","product software":"000033.00.3","reset-source":"PWUP"}

Replies: status/faults

topic: <device_type>/<device_serial>/status/faults
This message is published when the app on my phone is loaded
{"msg":"CURRENT-FAULTS","time":"2019-03-08T20:30:56.002Z","product-errors":{"fmco":"OK","stto":"OK","hall":"OK","hamp":"OK","stal":"OK","shrt":"OK","cnfg":"OK","wdog":"OK","ilss":"OK","t&hs":"OK","ibus":"OK","vocs":"OK","dsts":"OK","wfhb":"OK","wfcp":"OK","nvmw":"OK","nvmr":"OK"},"product-warnings":{"fltr":"OK"},"module-errors":{"szme":"OK","szmw":"OK","szps":"OK","szpe":"OK","szpw":"OK","szed":"OK","lspd":"OK","szpi":"OK","szpp":"OK","szhv":"OK","szbv":"OK","szav":"OK"},"module-warnings":{"srnk":"FAIL","stac":"OK","strs":"OK","srmi":"OK","srmu":"OK","nwcs":"OK","nwts":"OK","nwps":"OK","nwss":"OK","nwds":"OK"}}