# \[Tutorial\]\[Pro\] Basic MQTT setup & connect Itho Daalderop NRG.watch interface

**URL:** <https://community.homey.app/t/tutorial-pro-basic-mqtt-setup-connect-itho-daalderop-nrg-watch-interface/139521>\
**Category:** Tutorials\
**Tags:** mqtt, virtual-device, homey-pro\
**Created:** [July 9, 2025, 7:23pm UTC](https://community.homey.app/t/tutorial-pro-basic-mqtt-setup-connect-itho-daalderop-nrg-watch-interface/139521 "2025-07-09T19:23:14Z")\
**Posts on this page:** 1\
**Showing post:** 1

<div class="post-metadata">

**Author:** ![Peter\_Kawa](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/peter_kawa/32/173848_2.png) [@Peter\_Kawa](https://community.homey.app/u/Peter_Kawa)\
**Post date:** [July 9, 2025, 7:23pm UTC](https://community.homey.app/t/tutorial-pro-basic-mqtt-setup-connect-itho-daalderop-nrg-watch-interface/139521/1 "2025-07-09T19:23:14Z")

</div>

### This tutorial is about setting up a basic MQTT system.

(and yes I know there’s several other MQTT tutorials around 😬)

#### Additionally, it tries to explain how to connect a system like the NRG.watch [interface](https://www.nrgwatch.nl/product/itho-cve-rft-wifi-add-on/) for Itho airboxes

(no need for the Homey NRG.watch app)

Feel free to add missing info, or correct any possible errors.  
(This is a wiki)

### Homey:

1  
Install 3 MQTT community apps:

- MQTT Broker \[1\]
- MQTT Client
- MQTT Hub
- 
  - `¹)` The broker may run anywhere, but we stick to Homey for now

2  
Configure the broker and client;

- In this example, Homey’s IP address is `192.168.12.34` → **replace** this with _ **your Homey’s IP address** _
- Make up your own username and password
- The default MQTT portnumber is `1883`

#### MQTT Broker

 ![Screenshot_20250709_194729_Firefox](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/e/4/e455401a535e1ad7de7667688ea6affd34c19aaa.jpeg)  
.  
 ![Screenshot_20250709_202813_Gallery](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/5/c/5c21c2ab06b68957ed1b2be8b7cf92e6d5f16449.jpeg)

#### MQTT Client

_Use the same user/pw as you entered at the broker configuration_  
_Enter Homey’s IP address as broker IP_

 ![Screenshot_20250709_200203_Firefox](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/3/0/30761932c532a59c1e84cbc5dbeee434762cad1a.jpeg)

3

#### MQTT Hub

No configuration needed, but make sure it runs:

 ![Screenshot_20250709_213602_Firefox](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/5/6/56e3fab10b71e1635d5e4f45c573781474f6634f.jpeg)

Then it connects with the MQTT Client app automatically

### not-Homey:

4

#### NRG.Watch Itho interface

Use the same user/pw as you entered at the broker configuration  
Enter Homey’s IP address as broker IP

 ![Screenshot_20250709_210323_Chrome](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/e/4/e4453c8da9cf1ddea6741be9f1c5495913ffe670.jpeg)

If all’s configured well, the systems now can communicate.  
You can use the MQTT Explorer software to confirm, see Troubleshoot section below

### Homey:

5

#### MQTT Hub virtual device

With use of such a VD, you can control and monitor your airbox

- add a device, pick MQTT Hub

- no need to create anything now, just save it

- go to Settings \> Advanced settings of this device

- at Device Class select “Fan”

- now tap “Topics” at the \*Advanced section  

- Now copy this topics JSON below, and paste it into the aforementioned Topics field

```auto
{ 
  "fan_speed": {
    "capability": "fan_speed",
    "stateTopic": "itho/state",
    "setTopic": "itho/cmd",
    "valueTemplate": "round((value / 255) * 100)",
    "outputTemplate": "round((value / 100) * 255)",
    "displayName": "Fan speed control"
  },
  "fan_mode": { 
    "capability": "fan_mode", 
    "stateTopic": "itho/ithostatus", 
    "setTopic": "itho/cmd", 
    "valueTemplate": "", 
    "outputTemplate": "", 
    "displayName": "Fan presets", 
    "values": [
  { "id": "low", "title": "low" }, 
  { "id": "medium", "title": "medium" }, 
  { "id": "high", "title": "high" },
  { "id": "timer1", "title": "timer1" }, 
  { "id": "timer2", "title": "timer2" }, 
  { "id": "timer3", "title": "timer3" } 
] 
  },
  "measure_number.speedrpm": {
    "capability": "measure_number.speedrpm",
    "stateTopic": "itho/ithostatus",
    "setTopic": "",
    "valueTemplate": "$['fan-speed_rpm']",
    "outputTemplate": "",
    "displayName": "Speed (rpm)"
  },
  "measure_number.speed%": {
    "capability": "measure_number.speed%",
    "stateTopic": "itho/ithostatus",
    "setTopic": "",
    "valueTemplate": "$['speed-status']",
    "outputTemplate": "",
    "displayName": "Speed (%)"
  },
  "measure_temperature": {
    "capability": "measure_temperature",
    "stateTopic": "itho/ithostatus",
    "setTopic": "",
    "valueTemplate": "$['temp']",
    "outputTemplate": "",
    "displayName": "Temperature"
  },
  "measure_humidity": {
    "capability": "measure_humidity",
    "stateTopic": "itho/ithostatus",
    "setTopic": "",
    "valueTemplate": "$['hum']",
    "outputTemplate": "",
    "displayName": "Humidity"
  },
  "measure_string.lastcmd": {
    "capability": "measure_string.lastcmd",
    "stateTopic": "itho/lastcmd",
    "setTopic": "",
    "valueTemplate": "$['command']",
    "outputTemplate": "",
    "displayName": "Last command"
  },
"measure_number.ppmw": {
    "capability": "measure_number_ppmw",
    "stateTopic": "itho/ithostatus",
    "setTopic": "",
    "valueTemplate": "$['ppmw']",
    "outputTemplate": "",
    "displayName": "ppmw"
  },
  "measure_number.opshrs": {
    "capability": "measure_number.opshrs",
    "stateTopic": "itho/ithostatus",
    "setTopic": "",
    "valueTemplate": "$['total-operation_hours']",
    "outputTemplate": "",
    "displayName": "Running hrs"
  }
}

```

You’re free to use your own names for the values at “displayName” and “title”

##### Now you’d have a device like this:

 ![Screenshot_20250824_171735_Homey](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/c/1/c1451f397c7b05927f2c6f8252822e6b2b911a17.jpeg)

 ![Screenshot_20250824_171750_Homey](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/d/e/def28292c5fbedf84f8692bfbdc1e28901630791.jpeg)

 ![Screenshot_20250824_171803_Homey](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/b/4/b4802ced2004023147fad1dcadbb70fca841d3a0.jpeg)

.

### Flow cards

 ![Screenshot_20250824_172041_Firefox](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/d/c/dcbeafc64ee30db4b55485e53262804d4316a5be.jpeg)

 ![Screenshot_20250824_171926_Firefox](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/3/b/3bf92e8f930712088fbe65ee661df03881176e32.jpeg)

.

#### Troubleshoot

Install [MQTT Explorer](https://mqtt-explorer.com/) to view the actual topics and messages transmissions  
Again you enter the user/pw as you entered at the broker configuration, and Homey’s IP address (the broker IP):

 ![Screenshot_20250709_195331_Chrome](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/b/4/b4c4ea0a23a04c9ce87358d4f297f5f2ea7770ab.jpeg)

 ![Screenshot_20250709_195445_Chrome](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/f/4/f467c0b5637dbd71c79e0677d51a8e71abd74eb3.jpeg)

→ also available as Home Assistant add-on

## New (14 sept 2025):

When MQTT is not for you,  
A new NRG Itho Daalderop app is published:  
[https://community.homey.app/t/app-pro-itho-daalderop-make-ventilation-smart-with-homey-and-nrg-watch/142944](https://community.homey.app/t/app-pro-itho-daalderop-make-ventilation-smart-with-homey-and-nrg-watch/142944)

* * *

1. Footnotes

---

_[View the full topic](https://community.homey.app/t/tutorial-pro-basic-mqtt-setup-connect-itho-daalderop-nrg-watch-interface/139521)._
