Changes for page BACnet
Last modified by Kilight Cao on 2025/06/03 14:23
From version 1.1
edited by Kilight Cao
on 2023/04/01 09:45
on 2023/04/01 09:45
Change comment:
There is no comment for this version
To version 20.1
edited by Kilight Cao
on 2025/06/03 11:42
on 2025/06/03 11:42
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 11 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,1 +1,63 @@ 1 -BACnet 1 +**Table of Contents:** 2 + 3 +{{toc/}} 4 + 5 + 6 += 1. BACnet = 7 + 8 +== 1.1 Introduction == 9 + 10 +=== 1.1.1 What is BACnet === 11 + 12 + 13 +BACnet, short for Building Automation and Control networks. 14 + 15 +The BACnet communication protocol defines a number of services for communication between devices, and services can be divided into five categories: services related to device object management including Who-Is, I-Am, Who-Has, and other services, services related to object access including reading attributes, writing attributes and other services, and services related to alarms and events include acknowledgment alarms, change of state reports, etc. In addition, there are services related to file reading and writing and virtual terminals. 16 + 17 + 18 +=== 1.1.2 List supported products and requirements === 19 + 20 + 21 +Gateway model: LPS8v2,LG01v2,MS20,MS48-LR 22 + 23 + 24 += 2. Bridge LoRaWAN network to BACnet network = 25 + 26 + 27 +By following the steps below in the configuration example, Users can convert the uplink data of the lorawan sensor to BACnet data 28 + 29 +LPS8v2 includes a local ChirpStack Server. This example shows how to configure LHT65N to use with BACnet. This example assumes users already have: 30 + 31 +* LHT65N register on LPS8v2 Built-In ChirpStack server already 32 +* The user is able to see the data on the built-in ChirpStack server device page. 33 + 34 +Below are the steps to configure lps8v2 BACnet. 35 + 36 + 37 +== 2.1 Register gateway == 38 + 39 + 40 +For information on how to register a gateway connection to chirpstack, please refer to the link: 41 + 42 +**[[https:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Notes%20for%20ChirpStack/#H4.A0SemtechUDPforChirpStackv4>>https://wiki.dragino.com/xwiki/bin/view/Main/Notes%20for%20ChirpStack/#H4.A0SemtechUDPforChirpStackv4]]** 43 + 44 + 45 +== 2.2 Register Node == 46 + 47 +For information on how to register a Node connection to chirpstack, please refer to the link: 48 + 49 +**[[https:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Notes%20for%20ChirpStack/#H2.A0Nodeusageintroduction>>https://wiki.dragino.com/xwiki/bin/view/Main/Notes%20for%20ChirpStack/#H2.A0Nodeusageintroduction]]** 50 + 51 + 52 +== 2.3 Configure BACnet == 53 + 54 +After completing the steps of registering the gateway and nodes as mentioned above, start configuring BACnet 55 + 56 +Video on the configuration of BACnet: 57 + 58 + 59 +=== step 1. Enable BACnet === 60 + 61 + 62 + 63 +
- LHT65N_TTN_to_BACnet.json
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +8.2 KB - Content
-
... ... @@ -1,0 +1,334 @@ 1 +[ 2 + { 3 + "id": "b356382079d5c6a0", 4 + "type": "tab", 5 + "label": "TTN to BACnet", 6 + "disabled": false, 7 + "info": "", 8 + "env": [] 9 + }, 10 + { 11 + "id": "f66b1b60040f4067", 12 + "type": "template", 13 + "z": "b356382079d5c6a0", 14 + "name": "LHT65N-1 10001 battery", 15 + "field": "payload", 16 + "fieldType": "msg", 17 + "format": "handlebars", 18 + "syntax": "mustache", 19 + "template": "baccli -i 10001 -p battery -w {{payload}}\n", 20 + "output": "str", 21 + "x": 590, 22 + "y": 100, 23 + "wires": [ 24 + [ 25 + "d9290c0c62e0f7c0", 26 + "cc39d099b49cf9fe" 27 + ] 28 + ] 29 + }, 30 + { 31 + "id": "d9290c0c62e0f7c0", 32 + "type": "exec", 33 + "z": "b356382079d5c6a0", 34 + "command": "", 35 + "addpay": "payload", 36 + "append": "", 37 + "useSpawn": "false", 38 + "timer": "", 39 + "winHide": false, 40 + "oldrc": false, 41 + "name": "EXEC", 42 + "x": 1050, 43 + "y": 220, 44 + "wires": [ 45 + [ 46 + "af8dbd68b05f6313" 47 + ], 48 + [ 49 + "af8dbd68b05f6313" 50 + ], 51 + [] 52 + ] 53 + }, 54 + { 55 + "id": "cc39d099b49cf9fe", 56 + "type": "debug", 57 + "z": "b356382079d5c6a0", 58 + "name": "Full Script", 59 + "active": true, 60 + "tosidebar": true, 61 + "console": false, 62 + "tostatus": false, 63 + "complete": "payload", 64 + "targetType": "msg", 65 + "statusVal": "", 66 + "statusType": "auto", 67 + "x": 1040, 68 + "y": 100, 69 + "wires": [] 70 + }, 71 + { 72 + "id": "af8dbd68b05f6313", 73 + "type": "debug", 74 + "z": "b356382079d5c6a0", 75 + "name": "output", 76 + "active": true, 77 + "tosidebar": true, 78 + "console": false, 79 + "tostatus": false, 80 + "complete": "payload", 81 + "targetType": "msg", 82 + "statusVal": "", 83 + "statusType": "auto", 84 + "x": 1210, 85 + "y": 220, 86 + "wires": [] 87 + }, 88 + { 89 + "id": "866c4581bd0de190", 90 + "type": "mqtt in", 91 + "z": "b356382079d5c6a0", 92 + "name": "LHT65N-1", 93 + "topic": "v3/5000000@ttn/devices/eui-d0a7a83cc714b96f/up", 94 + "qos": "0", 95 + "datatype": "auto-detect", 96 + "broker": "d1413e55f801d787", 97 + "nl": false, 98 + "rap": true, 99 + "rh": 0, 100 + "inputs": 0, 101 + "x": 120, 102 + "y": 140, 103 + "wires": [ 104 + [ 105 + "09bb2ca9b68d9137", 106 + "3b08d85a66d0c58a" 107 + ] 108 + ] 109 + }, 110 + { 111 + "id": "09bb2ca9b68d9137", 112 + "type": "function", 113 + "z": "b356382079d5c6a0", 114 + "name": "function 3", 115 + "func": "var data = msg.payload\nvar bat = data[\"uplink_message\"][\"decoded_payload\"][\"BatV\"]\nvar tem = data[\"uplink_message\"][\"decoded_payload\"][\"TempC_DS\"]\nvar tem2 = data[\"uplink_message\"][\"decoded_payload\"][\"TempC_SHT\"]\nvar hum = data[\"uplink_message\"][\"decoded_payload\"][\"Hum_SHT\"]\nvar data2 = {payload: bat},data3={payload:tem},data4={payload:tem2},data5={payload:hum}\n//return data2\nreturn[data2,data3,data4,data5]", 116 + "outputs": 4, 117 + "noerr": 0, 118 + "initialize": "", 119 + "finalize": "", 120 + "libs": [], 121 + "x": 340, 122 + "y": 200, 123 + "wires": [ 124 + [ 125 + "f66b1b60040f4067", 126 + "0cf8a6fc743b8619" 127 + ], 128 + [ 129 + "2f48e806d3e4bd5e", 130 + "0cf8a6fc743b8619" 131 + ], 132 + [ 133 + "0cf8a6fc743b8619", 134 + "15c7503d379cb571" 135 + ], 136 + [ 137 + "700c1799a8cd28a1", 138 + "0cf8a6fc743b8619" 139 + ] 140 + ] 141 + }, 142 + { 143 + "id": "0cf8a6fc743b8619", 144 + "type": "debug", 145 + "z": "b356382079d5c6a0", 146 + "name": "debug 5", 147 + "active": true, 148 + "tosidebar": true, 149 + "console": false, 150 + "tostatus": false, 151 + "complete": "payload", 152 + "targetType": "msg", 153 + "statusVal": "", 154 + "statusType": "auto", 155 + "x": 340, 156 + "y": 80, 157 + "wires": [] 158 + }, 159 + { 160 + "id": "3b08d85a66d0c58a", 161 + "type": "debug", 162 + "z": "b356382079d5c6a0", 163 + "name": "debug 6", 164 + "active": true, 165 + "tosidebar": true, 166 + "console": false, 167 + "tostatus": false, 168 + "complete": "false", 169 + "statusVal": "", 170 + "statusType": "auto", 171 + "x": 160, 172 + "y": 240, 173 + "wires": [] 174 + }, 175 + { 176 + "id": "2f48e806d3e4bd5e", 177 + "type": "template", 178 + "z": "b356382079d5c6a0", 179 + "name": "LHT65N-1 10001 temp1", 180 + "field": "payload", 181 + "fieldType": "msg", 182 + "format": "handlebars", 183 + "syntax": "mustache", 184 + "template": "baccli -i 10001 -p temp1 -w {{payload}}\n", 185 + "output": "str", 186 + "x": 590, 187 + "y": 160, 188 + "wires": [ 189 + [ 190 + "046eca291b77ebd3" 191 + ] 192 + ] 193 + }, 194 + { 195 + "id": "15c7503d379cb571", 196 + "type": "template", 197 + "z": "b356382079d5c6a0", 198 + "name": "LHT65N-1 10001 temp2", 199 + "field": "payload", 200 + "fieldType": "msg", 201 + "format": "handlebars", 202 + "syntax": "mustache", 203 + "template": "baccli -i 10001 -p temp2 -w {{payload}}", 204 + "output": "str", 205 + "x": 590, 206 + "y": 220, 207 + "wires": [ 208 + [ 209 + "56c2605dd962c0d4" 210 + ] 211 + ] 212 + }, 213 + { 214 + "id": "56c2605dd962c0d4", 215 + "type": "delay", 216 + "z": "b356382079d5c6a0", 217 + "name": "", 218 + "pauseType": "delay", 219 + "timeout": "4", 220 + "timeoutUnits": "seconds", 221 + "rate": "1", 222 + "nbRateUnits": "1", 223 + "rateUnits": "second", 224 + "randomFirst": "1", 225 + "randomLast": "5", 226 + "randomUnits": "seconds", 227 + "drop": false, 228 + "allowrate": false, 229 + "outputs": 1, 230 + "x": 800, 231 + "y": 220, 232 + "wires": [ 233 + [ 234 + "d9290c0c62e0f7c0" 235 + ] 236 + ] 237 + }, 238 + { 239 + "id": "046eca291b77ebd3", 240 + "type": "delay", 241 + "z": "b356382079d5c6a0", 242 + "name": "", 243 + "pauseType": "delay", 244 + "timeout": "2", 245 + "timeoutUnits": "seconds", 246 + "rate": "1", 247 + "nbRateUnits": "1", 248 + "rateUnits": "second", 249 + "randomFirst": "1", 250 + "randomLast": "5", 251 + "randomUnits": "seconds", 252 + "drop": false, 253 + "allowrate": false, 254 + "outputs": 1, 255 + "x": 800, 256 + "y": 160, 257 + "wires": [ 258 + [ 259 + "d9290c0c62e0f7c0" 260 + ] 261 + ] 262 + }, 263 + { 264 + "id": "700c1799a8cd28a1", 265 + "type": "template", 266 + "z": "b356382079d5c6a0", 267 + "name": "LHT65N-1 10001 humidity", 268 + "field": "payload", 269 + "fieldType": "msg", 270 + "format": "handlebars", 271 + "syntax": "mustache", 272 + "template": "baccli -i 10001 -p humidity -w {{payload}}", 273 + "output": "str", 274 + "x": 590, 275 + "y": 280, 276 + "wires": [ 277 + [ 278 + "9a8f158109d93abb" 279 + ] 280 + ] 281 + }, 282 + { 283 + "id": "9a8f158109d93abb", 284 + "type": "delay", 285 + "z": "b356382079d5c6a0", 286 + "name": "", 287 + "pauseType": "delay", 288 + "timeout": "6", 289 + "timeoutUnits": "seconds", 290 + "rate": "1", 291 + "nbRateUnits": "1", 292 + "rateUnits": "second", 293 + "randomFirst": "1", 294 + "randomLast": "5", 295 + "randomUnits": "seconds", 296 + "drop": false, 297 + "allowrate": false, 298 + "outputs": 1, 299 + "x": 800, 300 + "y": 280, 301 + "wires": [ 302 + [ 303 + "d9290c0c62e0f7c0" 304 + ] 305 + ] 306 + }, 307 + { 308 + "id": "d1413e55f801d787", 309 + "type": "mqtt-broker", 310 + "name": "", 311 + "broker": "eu1.cloud.thethings.network", 312 + "port": "1883", 313 + "clientid": "", 314 + "autoConnect": true, 315 + "usetls": false, 316 + "protocolVersion": "4", 317 + "keepalive": "60", 318 + "cleansession": true, 319 + "birthTopic": "", 320 + "birthQos": "0", 321 + "birthPayload": "", 322 + "birthMsg": {}, 323 + "closeTopic": "", 324 + "closeQos": "0", 325 + "closePayload": "", 326 + "closeMsg": {}, 327 + "willTopic": "", 328 + "willQos": "0", 329 + "willPayload": "", 330 + "willMsg": {}, 331 + "userProps": "", 332 + "sessionExpiry": "" 333 + } 334 +]
- image-20230401114036-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +78.3 KB - Content
- image-20230401114458-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +19.2 KB - Content
- image-20230401114641-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +15.8 KB - Content
- image-20230401114653-4.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +7.8 KB - Content
- image-20230401114706-5.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +11.2 KB - Content
- image-20230401114720-6.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +13.5 KB - Content
- image-20230401114729-7.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +46.1 KB - Content
- image-20230401142357-8.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +134.1 KB - Content
- image-20230401144525-9.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +47.4 KB - Content
- image-20230401144951-10.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +78.2 KB - Content