# \[NODE-RED\] zwave-js-ui et volets roulants ZMNHCD1

**URL:** <https://community.gladysassistant.com/t/node-red-zwave-js-ui-et-volet-roulants-zmnhcd1/6589>\
**Category:** Tutoriels\
**Tags:** zwave, mqtt\
**Created:** [Octobre 11, 2021, 1:40 UTC](https://community.gladysassistant.com/t/node-red-zwave-js-ui-et-volet-roulants-zmnhcd1/6589 "2021-10-11T13:40:10Z")\
**Posts on this page:** 1\
**Showing post:** 1

<div class="post-metadata">

**Author:** ![VonOx](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/vonox/32/10128_2.png) [@VonOx](https://community.gladysassistant.com/u/VonOx)\
**Post date:** [Octobre 11, 2021, 1:40 UTC](https://community.gladysassistant.com/t/node-red-zwave-js-ui-et-volet-roulants-zmnhcd1/6589/1 "2021-10-11T13:40:10Z")

</div>

Ce petit flow vous permet de contrôler vos volets roulant via Gladys / Node red

Le module que j’utilise est un Qubino ZMNHCD1

 ![image](https://gladys-assistant-community.b-cdn.net/uploads/default/original/2X/2/25c1dd7ff0d181ce5927e640b08b4c81ee9e8e1a.jpeg)

Dans le service MQTT de Gladys j’ai un device Volet

 ![image](https://gladys-assistant-community.b-cdn.net/uploads/default/original/2X/7/7c4c483fae5e3feb56663e128f78ac979273171d.png)

**Avec une feature «&nbsp;Switch Dimmer&nbsp;» configuré comme ceci**

 ![image](https://gladys-assistant-community.b-cdn.net/uploads/default/original/2X/0/07cd7c7adad5f9dc80432e394b785bda4d05867f.png)

_Attention la valeur maxi est 99_

* * *

Dans **node red** j’ai créer ce flow qui permet donc de controller la position du volet via Gladys et de mettre à jour l’état s’il y’a eu un contrôle extérieur ( bouton physique ou alexa ).

 ![image](https://gladys-assistant-community.b-cdn.net/uploads/default/original/2X/9/916b2578eeb8060536340625a701fe3d950a2a5f.png)

Le flow importable

```json
[
    {
        "id": "06167c4aeed2d29e",
        "type": "tab",
        "label": "Zwavejs",
        "disabled": false,
        "info": ""
    },
    {
        "id": "58e23de9eeb04e5c",
        "type": "mqtt in",
        "z": "06167c4aeed2d29e",
        "name": "Gladys value",
        "topic": "gladys/device/mqtt:volet/feature/mqtt:position/state",
        "qos": "2",
        "datatype": "auto",
        "broker": "05eac840560ca08c",
        "nl": false,
        "rap": true,
        "rh": 0,
        "x": 90,
        "y": 80,
        "wires": [
            [
                "29bb8e1ef43b1a15"
            ]
        ]
    },
    {
        "id": "ec1b1f35710ca026",
        "type": "mqtt out",
        "z": "06167c4aeed2d29e",
        "name": "Set value on zwavejs2mqtt",
        "topic": "zwave/Volet/38/0/targetValue/set",
        "qos": "2",
        "retain": "",
        "respTopic": "",
        "contentType": "",
        "userProps": "",
        "correl": "",
        "expiry": "",
        "broker": "07a4b31138749fb7",
        "x": 960,
        "y": 80,
        "wires": []
    },
    {
        "id": "29bb8e1ef43b1a15",
        "type": "json",
        "z": "06167c4aeed2d29e",
        "name": "",
        "property": "payload",
        "action": "",
        "pretty": false,
        "x": 550,
        "y": 80,
        "wires": [
            [
                "ec1b1f35710ca026"
            ]
        ]
    },
    {
        "id": "fc72847db40a7ee1",
        "type": "mqtt in",
        "z": "06167c4aeed2d29e",
        "name": "zwavejs topic currentValue",
        "topic": "zwave/Volet/38/0/currentValue",
        "qos": "2",
        "datatype": "auto",
        "broker": "07a4b31138749fb7",
        "nl": false,
        "rap": true,
        "rh": 0,
        "x": 130,
        "y": 140,
        "wires": [
            [
                "6af9ebb2dab5d51a"
            ]
        ]
    },
    {
        "id": "50f432e72d05f875",
        "type": "mqtt out",
        "z": "06167c4aeed2d29e",
        "name": "Update Gladys value",
        "topic": "gladys/master/device/mqtt:volet/feature/mqtt:position/state",
        "qos": "2",
        "retain": "",
        "respTopic": "",
        "contentType": "",
        "userProps": "",
        "correl": "",
        "expiry": "",
        "broker": "05eac840560ca08c",
        "x": 940,
        "y": 140,
        "wires": []
    },
    {
        "id": "e04fcc594d63b332",
        "type": "function",
        "z": "06167c4aeed2d29e",
        "name": "Get only the value",
        "func": "msg.payload = msg.payload.value\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "initialize": "",
        "finalize": "",
        "libs": [],
        "x": 710,
        "y": 140,
        "wires": [
            [
                "50f432e72d05f875"
            ]
        ]
    },
    {
        "id": "0829660626defc53",
        "type": "json",
        "z": "06167c4aeed2d29e",
        "name": "",
        "property": "payload",
        "action": "",
        "pretty": false,
        "x": 550,
        "y": 140,
        "wires": [
            [
                "e04fcc594d63b332"
            ]
        ]
    },
    {
        "id": "6af9ebb2dab5d51a",
        "type": "trigger",
        "z": "06167c4aeed2d29e",
        "name": "Wait for stable value",
        "op1": "",
        "op2": "",
        "op1type": "pay",
        "op2type": "payl",
        "duration": "30000",
        "extend": true,
        "overrideDelay": false,
        "units": "ms",
        "reset": "",
        "bytopic": "all",
        "topic": "topic",
        "outputs": 1,
        "x": 360,
        "y": 140,
        "wires": [
            [
                "0829660626defc53"
            ]
        ]
    },
    {
        "id": "05eac840560ca08c",
        "type": "mqtt-broker",
        "name": "GladysMQTT",
        "broker": "192.168.1.42",
        "port": "1883",
        "clientid": "",
        "usetls": false,
        "protocolVersion": "4",
        "keepalive": "60",
        "cleansession": true,
        "birthTopic": "",
        "birthQos": "0",
        "birthPayload": "",
        "birthMsg": {},
        "closeTopic": "",
        "closeQos": "0",
        "closePayload": "",
        "closeMsg": {},
        "willTopic": "",
        "willQos": "0",
        "willPayload": "",
        "willMsg": {},
        "sessionExpiry": ""
    },
    {
        "id": "07a4b31138749fb7",
        "type": "mqtt-broker",
        "name": "zwavejs2mqtt",
        "broker": "192.168.1.42",
        "port": "1884",
        "clientid": "",
        "usetls": false,
        "protocolVersion": "4",
        "keepalive": "60",
        "cleansession": true,
        "birthTopic": "",
        "birthQos": "0",
        "birthPayload": "",
        "birthMsg": {},
        "closeTopic": "",
        "closeQos": "0",
        "closePayload": "",
        "closeMsg": {},
        "willTopic": "",
        "willQos": "0",
        "willPayload": "",
        "willMsg": {},
        "sessionExpiry": ""
    }
]

```

Le résulat dans le dashboard Gladys  
 ![image](https://gladys-assistant-community.b-cdn.net/uploads/default/original/2X/3/335f773800709fe691a2ac9e21096fe8edf60123.png)

Le topic mqtt côté zwave-js-ui correspond au COM CLASS 38

![image](https://gladys-assistant-community.b-cdn.net/uploads/default/original/2X/9/96da9ab780f624cf3dd31253773e6fbf0fe60b80.png)

---

_[View the full topic](https://community.gladysassistant.com/t/node-red-zwave-js-ui-et-volet-roulants-zmnhcd1/6589)._
