Skip to content

Instantly share code, notes, and snippets.

@michelle-avery
Created October 16, 2024 17:41
Show Gist options
  • Save michelle-avery/a89103bb3057c92fd86504c64e4de625 to your computer and use it in GitHub Desktop.
Save michelle-avery/a89103bb3057c92fd86504c64e4de625 to your computer and use it in GitHub Desktop.
Node Red Flows to connect a reTerminal device to Home Assistant
[
{
"id": "dd14bef629d3396c",
"type": "tab",
"label": "Buttons",
"disabled": false,
"info": "",
"env": []
},
{
"id": "1b45c6f9ae0495f5",
"type": "buttons",
"z": "dd14bef629d3396c",
"name": "",
"x": 170,
"y": 140,
"wires": [["7e6a78d4055dc5c8"]]
},
{
"id": "2573089ede37af94",
"type": "debug",
"z": "dd14bef629d3396c",
"name": "debug 1",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "false",
"statusVal": "",
"statusType": "auto",
"x": 720,
"y": 140,
"wires": []
},
{
"id": "b568a4c42f1fd88e",
"type": "mqtt out",
"z": "dd14bef629d3396c",
"name": "Send State",
"topic": "",
"qos": "",
"retain": "",
"respTopic": "",
"contentType": "",
"userProps": "",
"correl": "",
"expiry": "",
"broker": "6e26bf77a2b3e973",
"x": 650,
"y": 220,
"wires": []
},
{
"id": "7e6a78d4055dc5c8",
"type": "function",
"z": "dd14bef629d3396c",
"name": "reformat message",
"func": "// Extract key and status from the incoming message\nvar key = msg.payload.key;\nvar status = msg.payload.status;\n\n// Define the topic pattern based on the key\nvar topic = \"reterminal1/button_\" + key.toLowerCase() + \"/state\";\n\n// Set the new payload values\nmsg.payload = (status === \"pressed\") ? \"ON\" : \"OFF\";\nmsg.topic = topic;\n\nreturn msg;\n",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 410,
"y": 140,
"wires": [["2573089ede37af94", "b568a4c42f1fd88e"]]
},
{
"id": "6e26bf77a2b3e973",
"type": "mqtt-broker",
"name": "HomeAssistant",
"broker": "your.server.local",
"port": "1883",
"clientid": "reterminal",
"autoConnect": true,
"usetls": false,
"protocolVersion": "4",
"keepalive": "60",
"cleansession": true,
"birthTopic": "",
"birthQos": "0",
"birthPayload": "",
"birthMsg": {},
"closeTopic": "",
"closeQos": "0",
"closePayload": "",
"closeMsg": {},
"willTopic": "",
"willQos": "0",
"willPayload": "",
"willMsg": {},
"userProps": "",
"sessionExpiry": ""
}
]
[
{
"id": "6f91367ceaa29893",
"type": "tab",
"label": "Buzzer",
"disabled": false,
"info": "",
"env": []
},
{
"id": "6cf11a447c1580b5",
"type": "mqtt in",
"z": "6f91367ceaa29893",
"name": "Buzzer Command",
"topic": "reterminal1/buzzer/set",
"qos": "2",
"datatype": "auto-detect",
"broker": "6e26bf77a2b3e973",
"nl": false,
"rap": true,
"rh": 0,
"inputs": 0,
"x": 270,
"y": 240,
"wires": [["34855a5e5cb6c5b0"]]
},
{
"id": "34855a5e5cb6c5b0",
"type": "switch",
"z": "6f91367ceaa29893",
"name": "ON/Off",
"property": "payload",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "ON",
"vt": "str"
},
{
"t": "eq",
"v": "OFF",
"vt": "str"
}
],
"checkall": "true",
"repair": false,
"outputs": 2,
"x": 490,
"y": 240,
"wires": [
["6ada5671f9334a97", "bc7ae7a84f5d10ad"],
["39b0335a9bafbb75", "bc7ae7a84f5d10ad"]
]
},
{
"id": "6ada5671f9334a97",
"type": "change",
"z": "6f91367ceaa29893",
"name": "True",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "true",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 650,
"y": 220,
"wires": [["72d170ce2973699b"]]
},
{
"id": "39b0335a9bafbb75",
"type": "change",
"z": "6f91367ceaa29893",
"name": "False",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "false",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 650,
"y": 260,
"wires": [["72d170ce2973699b"]]
},
{
"id": "bc7ae7a84f5d10ad",
"type": "mqtt out",
"z": "6f91367ceaa29893",
"name": "Optomistically set state",
"topic": "reterminal1/buzzer/state",
"qos": "",
"retain": "true",
"respTopic": "",
"contentType": "",
"userProps": "",
"correl": "",
"expiry": "",
"broker": "6e26bf77a2b3e973",
"x": 650,
"y": 180,
"wires": []
},
{
"id": "72d170ce2973699b",
"type": "buzzer",
"z": "6f91367ceaa29893",
"name": "",
"x": 890,
"y": 240,
"wires": []
},
{
"id": "6e26bf77a2b3e973",
"type": "mqtt-broker",
"name": "HomeAssistant",
"broker": "your.server.local",
"port": "1883",
"clientid": "reterminal",
"autoConnect": true,
"usetls": false,
"protocolVersion": "4",
"keepalive": "60",
"cleansession": true,
"birthTopic": "",
"birthQos": "0",
"birthPayload": "",
"birthMsg": {},
"closeTopic": "",
"closeQos": "0",
"closePayload": "",
"closeMsg": {},
"willTopic": "",
"willQos": "0",
"willPayload": "",
"willMsg": {},
"userProps": "",
"sessionExpiry": ""
}
]
[
{
"id": "7da81664cc6519a9",
"type": "tab",
"label": "LEDs",
"disabled": false,
"info": "",
"env": []
},
{
"id": "1e5baae1d9cef116",
"type": "mqtt in",
"z": "7da81664cc6519a9",
"name": "USR LED Command",
"topic": "reterminal1/usrled/set",
"qos": "2",
"datatype": "auto-detect",
"broker": "6e26bf77a2b3e973",
"nl": false,
"rap": true,
"rh": 0,
"inputs": 0,
"x": 250,
"y": 260,
"wires": [["14a4865c07f7ae13"]]
},
{
"id": "14a4865c07f7ae13",
"type": "switch",
"z": "7da81664cc6519a9",
"name": "ON/Off",
"property": "payload",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "ON",
"vt": "str"
},
{
"t": "eq",
"v": "OFF",
"vt": "str"
}
],
"checkall": "true",
"repair": false,
"outputs": 2,
"x": 470,
"y": 260,
"wires": [
["71f978ee4a3d0856", "63df726af376da83"],
["1f4216d3d35a7c82", "63df726af376da83"]
]
},
{
"id": "9833e56d6c5ae4dc",
"type": "led_usr_green",
"z": "7da81664cc6519a9",
"name": "",
"x": 860,
"y": 260,
"wires": []
},
{
"id": "71f978ee4a3d0856",
"type": "change",
"z": "7da81664cc6519a9",
"name": "True",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "true",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 630,
"y": 240,
"wires": [["9833e56d6c5ae4dc"]]
},
{
"id": "1f4216d3d35a7c82",
"type": "change",
"z": "7da81664cc6519a9",
"name": "False",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "false",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 630,
"y": 280,
"wires": [["9833e56d6c5ae4dc"]]
},
{
"id": "81c2494564267dcd",
"type": "mqtt in",
"z": "7da81664cc6519a9",
"name": "LED STA Green Command",
"topic": "reterminal1/stagreenled/set",
"qos": "2",
"datatype": "auto-detect",
"broker": "6e26bf77a2b3e973",
"nl": false,
"rap": true,
"rh": 0,
"inputs": 0,
"x": 230,
"y": 380,
"wires": [["1cfd6026b8c4fba0"]]
},
{
"id": "1cfd6026b8c4fba0",
"type": "switch",
"z": "7da81664cc6519a9",
"name": "ON/Off",
"property": "payload",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "ON",
"vt": "str"
},
{
"t": "eq",
"v": "OFF",
"vt": "str"
}
],
"checkall": "true",
"repair": false,
"outputs": 2,
"x": 430,
"y": 380,
"wires": [
["050bbb835e37059d", "7f21e9e6b54330ab"],
["623e461120f3186f", "7f21e9e6b54330ab"]
]
},
{
"id": "050bbb835e37059d",
"type": "change",
"z": "7da81664cc6519a9",
"name": "True",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "true",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 590,
"y": 360,
"wires": [["bc25c469c535be21"]]
},
{
"id": "623e461120f3186f",
"type": "change",
"z": "7da81664cc6519a9",
"name": "False",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "false",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 590,
"y": 400,
"wires": [["bc25c469c535be21"]]
},
{
"id": "bc25c469c535be21",
"type": "led_sta_green",
"z": "7da81664cc6519a9",
"name": "",
"x": 860,
"y": 380,
"wires": []
},
{
"id": "9c1454d4e16c8ccb",
"type": "mqtt in",
"z": "7da81664cc6519a9",
"name": "LED STA Red Command",
"topic": "reterminal1/staredled/set",
"qos": "2",
"datatype": "auto-detect",
"broker": "6e26bf77a2b3e973",
"nl": false,
"rap": true,
"rh": 0,
"inputs": 0,
"x": 250,
"y": 500,
"wires": [["3523ece5a9c3b079"]]
},
{
"id": "3523ece5a9c3b079",
"type": "switch",
"z": "7da81664cc6519a9",
"name": "ON/Off",
"property": "payload",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "ON",
"vt": "str"
},
{
"t": "eq",
"v": "OFF",
"vt": "str"
}
],
"checkall": "true",
"repair": false,
"outputs": 2,
"x": 450,
"y": 500,
"wires": [
["d9a3a4e9bfc31328", "2d7c1e3d9c5506ff"],
["1d15574e717f0473", "2d7c1e3d9c5506ff"]
]
},
{
"id": "d9a3a4e9bfc31328",
"type": "change",
"z": "7da81664cc6519a9",
"name": "True",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "true",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 610,
"y": 480,
"wires": [["f668b1b8b7ee802d"]]
},
{
"id": "1d15574e717f0473",
"type": "change",
"z": "7da81664cc6519a9",
"name": "False",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "false",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 610,
"y": 520,
"wires": [["f668b1b8b7ee802d"]]
},
{
"id": "f668b1b8b7ee802d",
"type": "led_sta_red",
"z": "7da81664cc6519a9",
"name": "",
"x": 830,
"y": 500,
"wires": []
},
{
"id": "63df726af376da83",
"type": "mqtt out",
"z": "7da81664cc6519a9",
"name": "Optomistically set state",
"topic": "reterminal1/usrled/state",
"qos": "",
"retain": "true",
"respTopic": "",
"contentType": "",
"userProps": "",
"correl": "",
"expiry": "",
"broker": "6e26bf77a2b3e973",
"x": 650,
"y": 120,
"wires": []
},
{
"id": "7f21e9e6b54330ab",
"type": "mqtt out",
"z": "7da81664cc6519a9",
"name": "Optomistically set state",
"topic": "reterminal1/stagreenled/state",
"qos": "",
"retain": "true",
"respTopic": "",
"contentType": "",
"userProps": "",
"correl": "",
"expiry": "",
"broker": "6e26bf77a2b3e973",
"x": 610,
"y": 320,
"wires": []
},
{
"id": "2d7c1e3d9c5506ff",
"type": "mqtt out",
"z": "7da81664cc6519a9",
"name": "Optomistically set state",
"topic": "reterminal1/staredled/state",
"qos": "",
"retain": "true",
"respTopic": "",
"contentType": "",
"userProps": "",
"correl": "",
"expiry": "",
"broker": "6e26bf77a2b3e973",
"x": 610,
"y": 440,
"wires": []
},
{
"id": "6e26bf77a2b3e973",
"type": "mqtt-broker",
"name": "HomeAssistant",
"broker": "your.server.local",
"port": "1883",
"clientid": "reterminal",
"autoConnect": true,
"usetls": false,
"protocolVersion": "4",
"keepalive": "60",
"cleansession": true,
"birthTopic": "",
"birthQos": "0",
"birthPayload": "",
"birthMsg": {},
"closeTopic": "",
"closeQos": "0",
"closePayload": "",
"closeMsg": {},
"willTopic": "",
"willQos": "0",
"willPayload": "",
"willMsg": {},
"userProps": "",
"sessionExpiry": ""
}
]
[
{
"id": "667ee5b40d902129",
"type": "tab",
"label": "Light Sensor",
"disabled": false,
"info": "",
"env": []
},
{
"id": "0ebda2f697021dd9",
"type": "light_sensor",
"z": "667ee5b40d902129",
"name": "",
"x": 180,
"y": 160,
"wires": [["cef4a87af67981ac"]]
},
{
"id": "49dc89bf5edab64f",
"type": "mqtt out",
"z": "667ee5b40d902129",
"name": "Set Light Sensor State",
"topic": "reterminal1/light_sensor/state",
"qos": "",
"retain": "true",
"respTopic": "",
"contentType": "",
"userProps": "",
"correl": "",
"expiry": "",
"broker": "6e26bf77a2b3e973",
"x": 620,
"y": 160,
"wires": []
},
{
"id": "cef4a87af67981ac",
"type": "change",
"z": "667ee5b40d902129",
"name": "",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "payload.light",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 380,
"y": 160,
"wires": [["49dc89bf5edab64f"]]
},
{
"id": "6e26bf77a2b3e973",
"type": "mqtt-broker",
"name": "HomeAssistant",
"broker": "your.server.local",
"port": "1883",
"clientid": "reterminal",
"autoConnect": true,
"usetls": false,
"protocolVersion": "4",
"keepalive": "60",
"cleansession": true,
"birthTopic": "",
"birthQos": "0",
"birthPayload": "",
"birthMsg": {},
"closeTopic": "",
"closeQos": "0",
"closePayload": "",
"closeMsg": {},
"willTopic": "",
"willQos": "0",
"willPayload": "",
"willMsg": {},
"userProps": "",
"sessionExpiry": ""
}
]
[
{
"id": "ddba1adee8657868",
"type": "tab",
"label": "Setup",
"disabled": false,
"info": "",
"env": []
},
{
"id": "e81a2aef252ca472",
"type": "mqtt out",
"z": "ddba1adee8657868",
"name": "MQTT Retained",
"topic": "",
"qos": "",
"retain": "true",
"respTopic": "",
"contentType": "",
"userProps": "",
"correl": "",
"expiry": "",
"broker": "6e26bf77a2b3e973",
"x": 700,
"y": 180,
"wires": []
},
{
"id": "220ce06e9e97f58d",
"type": "inject",
"z": "ddba1adee8657868",
"name": "Send Discovery Info for LED USR",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": true,
"onceDelay": 0.1,
"topic": "homeassistant/light/reterminal1-usr-led/config",
"payload": "{\"name\":\"reTerminal USR LED\",\"unique_id\":\"reterminal1_usr_led\",\"state_topic\":\"reterminal1/usrled/state\",\"command_topic\":\"reterminal1/usrled/set\",\"payload_on\":\"ON\",\"payload_off\":\"OFF\",\"device\":{\"identifiers\":[\"reterminal_1\"],\"name\":\"reTerminal Device\",\"model\":\"reTerminal\",\"manufacturer\":\"Seeed Studio\"}}",
"payloadType": "json",
"x": 180,
"y": 40,
"wires": [
[
"e81a2aef252ca472"
]
]
},
{
"id": "21cb89ee2bd06046",
"type": "inject",
"z": "ddba1adee8657868",
"name": "Send Discovery Info for LED STA Green",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": true,
"onceDelay": 0.1,
"topic": "homeassistant/light/reterminal1-sta-green-led/config",
"payload": "{\"name\":\"reTerminal STA Green LED\",\"unique_id\":\"reterminal1_sta_green_led\",\"state_topic\":\"reterminal1/stagreenled/state\",\"command_topic\":\"reterminal1/stagreenled/set\",\"payload_on\":\"ON\",\"payload_off\":\"OFF\",\"device\":{\"identifiers\":[\"reterminal_1\"],\"name\":\"reTerminal Device\",\"model\":\"reTerminal\",\"manufacturer\":\"Seeed Studio\"}}",
"payloadType": "json",
"x": 200,
"y": 100,
"wires": [
[
"e81a2aef252ca472"
]
]
},
{
"id": "bd69e7cefc78abbe",
"type": "inject",
"z": "ddba1adee8657868",
"name": "Send Discovery Info for LED STA Red",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": true,
"onceDelay": 0.1,
"topic": "homeassistant/light/reterminal1-sta-red-led/config",
"payload": "{\"name\":\"reTerminal STA Red LED\",\"unique_id\":\"reterminal1_sta_red_led\",\"state_topic\":\"reterminal1/staredled/state\",\"command_topic\":\"reterminal1/staredled/set\",\"payload_on\":\"ON\",\"payload_off\":\"OFF\",\"device\":{\"identifiers\":[\"reterminal_1\"],\"name\":\"reTerminal Device\",\"model\":\"reTerminal\",\"manufacturer\":\"Seeed Studio\"}}",
"payloadType": "json",
"x": 190,
"y": 160,
"wires": [
[
"e81a2aef252ca472"
]
]
},
{
"id": "6d1cabef3ff4eb1d",
"type": "inject",
"z": "ddba1adee8657868",
"name": "Send Discovery Info for Light Sensor",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": true,
"onceDelay": 0.1,
"topic": "homeassistant/sensor/reterminal1-light-sensor/config",
"payload": "{\"name\":\"reTerminal Light Sensor\",\"unique_id\":\"reterminal1_light_sensor\",\"state_topic\":\"reterminal1/light_sensor/state\",\"device_class\":\"illuminance\",\"unit_of_measurement\":\"Lux\",\"device\":{\"identifiers\":[\"reterminal_1\"],\"name\":\"reTerminal Device\",\"model\":\"reTerminal\",\"manufacturer\":\"Seeed Studio\"}}",
"payloadType": "json",
"x": 190,
"y": 220,
"wires": [
[
"e81a2aef252ca472"
]
]
},
{
"id": "a106c3dcd0f238da",
"type": "inject",
"z": "ddba1adee8657868",
"name": "Send Discovery Info for Buzzer",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": true,
"onceDelay": 0.1,
"topic": "homeassistant/light/reterminal1-buzzer/config",
"payload": "{\"name\":\"reTerminal Buzzer\",\"unique_id\":\"reterminal1_buzzer\",\"state_topic\":\"reterminal1/buzzer/state\",\"command_topic\":\"reterminal1/buzzer/set\",\"icon\":\"mdi:volume-vibrate\",\"payload_on\":\"ON\",\"payload_off\":\"OFF\",\"device\":{\"identifiers\":[\"reterminal_1\"],\"name\":\"reTerminal Device\",\"model\":\"reTerminal\",\"manufacturer\":\"Seeed Studio\"}}",
"payloadType": "json",
"x": 170,
"y": 280,
"wires": [
[
"e81a2aef252ca472"
]
]
},
{
"id": "e55f07ec7f5421bf",
"type": "inject",
"z": "ddba1adee8657868",
"name": "Send Discovery Info for F1",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": true,
"onceDelay": 0.1,
"topic": "homeassistant/binary_sensor/reterminal1-button-f1/config",
"payload": "{\"name\":\"reTerminal Button F1\",\"unique_id\":\"reterminal1_button_f1\",\"state_topic\":\"reterminal1/button_f1/state\",\"device\":{\"identifiers\":[\"reterminal_1\"],\"name\":\"reTerminal Device\",\"model\":\"reTerminal\",\"manufacturer\":\"Seeed Studio\"}}",
"payloadType": "json",
"x": 160,
"y": 320,
"wires": [
[
"e81a2aef252ca472"
]
]
},
{
"id": "b370d43d0ef9bdc3",
"type": "inject",
"z": "ddba1adee8657868",
"name": "Send Discovery Info for F2",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": true,
"onceDelay": 0.1,
"topic": "homeassistant/binary_sensor/reterminal1-button-f2/config",
"payload": "{\"name\":\"reTerminal Button F2\",\"unique_id\":\"reterminal1_button_f2\",\"state_topic\":\"reterminal1/button_f2/state\",\"device\":{\"identifiers\":[\"reterminal_1\"],\"name\":\"reTerminal Device\",\"model\":\"reTerminal\",\"manufacturer\":\"Seeed Studio\"}}",
"payloadType": "json",
"x": 160,
"y": 360,
"wires": [
[
"e81a2aef252ca472"
]
]
},
{
"id": "d4d2a2f95f55a379",
"type": "inject",
"z": "ddba1adee8657868",
"name": "Send Discovery Info for F3",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": true,
"onceDelay": 0.1,
"topic": "homeassistant/binary_sensor/reterminal1-button-f3/config",
"payload": "{\"name\":\"reTerminal Button F3\",\"unique_id\":\"reterminal1_button_f3\",\"state_topic\":\"reterminal1/button_f3/state\",\"device\":{\"identifiers\":[\"reterminal_1\"],\"name\":\"reTerminal Device\",\"model\":\"reTerminal\",\"manufacturer\":\"Seeed Studio\"}}",
"payloadType": "json",
"x": 160,
"y": 460,
"wires": [
[
"e81a2aef252ca472"
]
]
},
{
"id": "4f2d50c40437694d",
"type": "inject",
"z": "ddba1adee8657868",
"name": "Send Discovery Info for O",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": true,
"onceDelay": 0.1,
"topic": "homeassistant/binary_sensor/reterminal1-button-O/config",
"payload": "{\"name\":\"reTerminal Button O\",\"unique_id\":\"reterminal1_button_O\",\"state_topic\":\"reterminal1/button_o/state\",\"device\":{\"identifiers\":[\"reterminal_1\"],\"name\":\"reTerminal Device\",\"model\":\"reTerminal\",\"manufacturer\":\"Seeed Studio\"}}",
"payloadType": "json",
"x": 150,
"y": 520,
"wires": [
[
"e81a2aef252ca472"
]
]
},
{
"id": "57a8d2a47b0e87be",
"type": "inject",
"z": "ddba1adee8657868",
"name": "Send Discovery Info for Screen switch",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": true,
"onceDelay": 0.1,
"topic": "homeassistant/switch/reterminal1-screen-switch/config",
"payload": "{\"name\":\"reTerminal Screen\",\"unique_id\":\"reterminal1_screen_switch\",\"state_topic\":\"reterminal1/screen_switch/state\",\"command_topic\":\"reterminal1/screen_switch/set\",\"payload_on\":\"ON\",\"payload_off\":\"OFF\",\"device\":{\"identifiers\":[\"reterminal_1\"],\"name\":\"reTerminal Device\",\"model\":\"reTerminal\",\"manufacturer\":\"Seeed Studio\"}}",
"payloadType": "json",
"x": 190,
"y": 600,
"wires": [
[
"e81a2aef252ca472"
]
]
},
{
"id": "6e26bf77a2b3e973",
"type": "mqtt-broker",
"name": "HomeAssistant",
"broker": "your.server.local",
"port": "1883",
"clientid": "reterminal",
"autoConnect": true,
"usetls": false,
"protocolVersion": "4",
"keepalive": "60",
"cleansession": true,
"birthTopic": "",
"birthQos": "0",
"birthPayload": "",
"birthMsg": {},
"closeTopic": "",
"closeQos": "0",
"closePayload": "",
"closeMsg": {},
"willTopic": "",
"willQos": "0",
"willPayload": "",
"willMsg": {},
"userProps": "",
"sessionExpiry": ""
}
]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment