Skip to content
Gargano edited this page Nov 13, 2024 · 59 revisions

Setup for IOBroker :

config/protocol/publish 'strict separate topics' is not needed to activate. You can activate in the mqtt iobroker adapter 'different topic names for read and write'. IOBroker added a '/set' to the write topic. VDMot accept this automatically.

image

Setup for Mosquito or other mqtt server:

It is mandotary to activate config/protocol/publish 'strict separate topics'. Otherwise the system will fail. (Loop malfunction)

image

Mqtt structure

  • Station name : VdMotTest
  • common topics : (Station name).common
    • (Station name).common.heatControl
    • (Station name).common.message
    • (Station name).common.parkPosition
    • (Station name).common.state
    • (Station name).common.uptime
  • (Station name).valves
    • (Station name).valves.(room)
      • (Station name).valves.(room).control
        • (Station name).valves.(room).control.mode
        • (Station name).valves.(room).control.link
      • (Station name).valves.(room).window
        • (Station name).valves.(room).window.state
        • (Station name).valves.(room).window.target
      • (Station name).valves.(room).calibration
        • (Station name).valves.(room).date
        • (Station name).valves.(room).repetitions
      • (Station name).valves.(room).diag
        • (Station name).valves.(room).openCount
        • (Station name).valves.(room).closeCount
        • (Station name).valves.(room).deadZoneCount
        • (Station name).valves.(room).moves
      • (Station name).valves.(room).state
      • (Station name).valves.(room).tTarget
      • (Station name).valves.(room).tValue
      • (Station name).valves.(room).target

Description

Read means the controller publishes the topic
Write means the server sends the topic to the controller

Topic Read/Write Values
Station name R (1) Name of the station defined in configuration
(Station name).common.heatControl R/W (1/2) 0 or "manual" = manual
1 or "heat" = on/heating
2 or "cool" = on/cooling
3 or "off" = off/parkposition
(Station name).common.message R (1) Messages :
"UNKNOWN": Reset reason can not be determined
"POWERON": Reset due to power-on event
"EXT": Reset by external pin (not applicable for ESP32)
"SW": Software reset via esp_restart
"PANIC": Software reset due to exception/panic
"INT_WDT": Reset (software or hardware) due to interrupt watchdog
"TASK_WDT": Reset due to task watchdog
"WDT": Reset due to other watchdogs
"DEEPSLEEP": Reset after exiting deep sleep mode
"BROWNOUT": Brownout reset (software or hardware)
"SDIO" : Reset over SDIO
(Station name).common.parkPosition R/W (1/2) park position (%) if heatControl is off
(Station name).common.state R (1) 0 = System OK
1 = System Info
2 = System Error
(Station name).common.uptime R (1) up time if activated in configuration
(Station name).valves.(room).control.mode R/W (2) 0 or "off" = no automatic control by pi-controller, the valve is set to 0
1 or "auto"= automatic control.
(Station name).valves.(room).control.link R (1) if linked valves defined in control configuration this topic shows the name of the master valve, otherwise the topic is not visible
(Station name).valves.(room).window.state W (2) 0 or "close"= window is closed
1 or "open"= window is open
(Station name).valves.(room).window.target W (2) valve position (%) when window is open.
(Station name).valves.(room).calibration.date R (1) calibration date/time of the valve
(Station name).valves.(room).calibration.repetitions R (1) calibration repetitions of the valve
(Station name).valves.(room).diag.meanCurrrent R (1) valve mean current
(Station name).valves.(room).diag.openCount R (1) valve open count during calibration
(Station name).valves.(room).diag.closeCount R (1) valve close count during calibration
(Station name).valves.(room).diag.deadZoneCount R (1) valve dead zone count during calibration
(Station name).valves.(room).diag.moves R (1) valve moves since last calibration
(Station name).valves.(room).state R (1) 1 = idle
2 = opens
3 = closes
4 = failed (Timeout: maybe the motor is dropped down)
5 = unknown
6 = no valve
7 = full open
8 = connected
9 = blocked (The detected count is less than the configured min. count and the number of repetitions is reached)
(Station name).valves.(room).tTarget R/W (2) room target temperature
(Station name).valves.(room).tValue R/W (2) room actual temperature
(Station name).valves.(room).target R/W (1/2) position (%) of the valve

(1) if config/protocol/publish 'strict separate topics' is activated then values are published with '/value' added.
E.g. (Station name).common.heatControl/value.
(2) if config/protocol/publish 'strict separate topics' is activated then only write topics are accepted with '/set' added.
E.g. (Station name).common.heatControl/set. These topics are not published by VDMot

Clone this wiki locally