Changes for page MQTT Forward Instruction
Last modified by Kilight Cao on 2024/08/31 16:26
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -9,6 +9,7 @@ 9 9 Dragino LoRa/LoRaWAN gateway support MQTT forwarding. It can forward the sensor data from LoRa network to MQTT server , and vice verse. 10 10 11 11 12 + 12 12 == 1.1 Support Devices == 13 13 14 14 ... ... @@ -15,7 +15,7 @@ 15 15 This MQTT forward instruction is for below devices: 16 16 17 17 * Firmware Version > LG02_LG08-5.3.1580178039 [[Firmware Download>>url:http://www.dragino.com/downloads/index.php?dir=LoRa_Gateway/LPS8/Firmware/Release/]] 18 -* LG01N, OLG01N ((% style="color:red" %)**Warning**(%%): LG01-P LG01-S use another instruction: [[MQTT for LG01-P/LG01S>>doc: Main.Through MQTT to upload data.WebHome]])19 +* LG01N, OLG01N ((% style="color:red" %)**Warning**(%%): LG01-P LG01-S use another instruction: [[MQTT for LG01-P/LG01S>>doc:Through MQTT to upload data.WebHome]]) 19 19 * LG02, OLG02 20 20 * LG308, DLOS8 21 21 * LPS8 ... ... @@ -23,6 +23,8 @@ 23 23 * MS14 series if installed with the same firmware. (in this case, the MQTT forward will work , but no LoRa support) 24 24 25 25 27 + 28 + 26 26 = 2. Firmware Change Log for MQTT feature = 27 27 28 28 ... ... @@ -34,8 +34,11 @@ 34 34 ** Initiate version 35 35 36 36 40 + 41 + 37 37 = 3. MQTT forward operating principle = 38 38 44 + 39 39 == 3.1 Network Structure == 40 40 41 41 ... ... @@ -44,11 +44,14 @@ 44 44 * **For Uplink:** The sensor sends data to LoRa Gateway via LoRa wireless, The gateway will process these data and forward to remote MQTT Broker via Internet. 45 45 * **For Downlink:** The gateway subscribe a topic in the MQTT broker, when there is update on the topic, the gateway will know and broadcast the data to Local LoRa network. 46 46 53 + 54 + 47 47 [[image:image-20220527133547-1.png]] 48 48 49 49 General MQTT structure 50 50 51 51 60 + 52 52 == 3.2 How sensor data is forwarded == 53 53 54 54 ... ... @@ -55,6 +55,7 @@ 55 55 In this MQTT forward feature, the key point is how the gateway process the sensor data. 56 56 57 57 67 + 58 58 === 3.2.1 Upstream === 59 59 60 60 ... ... @@ -62,6 +62,8 @@ 62 62 63 63 ((( 64 64 The data flow works as below diagram. 75 + 76 + 65 65 ))) 66 66 67 67 [[image:image-20220527134000-2.png]] ... ... @@ -78,6 +78,8 @@ 78 78 79 79 ((( 80 80 93 + 94 + 81 81 ))) 82 82 83 83 === 3.2.2 Downstream === ... ... @@ -87,6 +87,8 @@ 87 87 88 88 ((( 89 89 Below are the data flow for downstream. 104 + 105 + 90 90 ))) 91 91 92 92 [[image:image-20220527134038-3.png]] ... ... @@ -94,6 +94,7 @@ 94 94 Downstream path 95 95 96 96 113 + 97 97 == 3.3 Macro Definition == 98 98 99 99 ... ... @@ -102,6 +102,7 @@ 102 102 ((( 103 103 Currently the (% style="color:#4f81bd" %)**-t (topic)**(%%) and (% style="color:#4f81bd" %)**-m (message)**(%%) support Macros. 104 104 122 + 105 105 106 106 ))) 107 107 ... ... @@ -115,6 +115,8 @@ 115 115 * HOSTNAME: Device Hostname 116 116 117 117 136 + 137 + 118 118 === 3.3.2 -m message macro === 119 119 120 120 ... ... @@ -125,6 +125,8 @@ 125 125 * JSON: Convert META to json format. 126 126 127 127 148 + 149 + 128 128 === 3.3.3 Example for Macro === 129 129 130 130 ... ... @@ -150,6 +150,7 @@ 150 150 ))) 151 151 152 152 175 + 153 153 == 3.4 Modify the MQTT to support more options == 154 154 155 155 ... ... @@ -277,8 +277,10 @@ 277 277 ))) 278 278 279 279 303 + 280 280 = 4. Example to communicate to a simple MQTT server = 281 281 306 + 282 282 == 4.1 Overview == 283 283 284 284 ... ... @@ -285,6 +285,7 @@ 285 285 This section is an example to show how to set up LG01-N to communicate with a MQTT server. The MQTT server is a simple utility set up in a local PC. Note: User can set up same server via [[this instruction>>url:http://www.steves-internet-guide.com/install-mosquitto-broker/]]. 286 286 287 287 313 + 288 288 == 4.2 Simulate via MQTT.fx utility == 289 289 290 290 ... ... @@ -313,6 +313,7 @@ 313 313 Downstream: Subscribe a topic to get downstream 314 314 315 315 342 + 316 316 == 4.3 Simulate via Dragino Command Line == 317 317 318 318 ... ... @@ -334,6 +334,7 @@ 334 334 mosquitto_pub 335 335 336 336 364 + 337 337 (% style="color:blue" %)**For Downstream** 338 338 339 339 Use [[mosquitto_sub>>url:https://mosquitto.org/man/mosquitto_sub-1.html]] to subscribe the change on the topic. ... ... @@ -343,6 +343,7 @@ 343 343 mosquitto_sub 344 344 345 345 374 + 346 346 == 4.4 Configure Dragino UI for MQTT connection == 347 347 348 348 ... ... @@ -366,6 +366,7 @@ 366 366 forward to MQTT 367 367 368 368 398 + 369 369 === 4.4.1 Configure the MQTT Client for Upstream === 370 370 371 371 ... ... @@ -386,6 +386,7 @@ 386 386 MQTT Publish configure 387 387 388 388 419 + 389 389 [[image:image-20220527135929-13.png]] 390 390 391 391 MQTT Channel settings ... ... @@ -414,6 +414,7 @@ 414 414 MQTT Publish 415 415 416 416 448 + 417 417 === 4.4.2 Configure the MQTT Client for Downstream === 418 418 419 419 ... ... @@ -477,11 +477,14 @@ 477 477 * Downstream: Listening broadcast message from gateway, and print it in console. 478 478 * The LoRa parameter settings in Arduino should match the LoRa settings in gateway, as below: 479 479 512 + 513 + 480 480 [[image:image-20220527140354-18.png]] 481 481 482 482 LoRa Parameter should match 483 483 484 484 519 + 485 485 Below is the test result after the Arduino Sketch is running. 486 486 487 487 [[image:image-20220527140459-19.png]] ... ... @@ -489,11 +489,13 @@ 489 489 Upstream Data Flow 490 490 491 491 527 + 492 492 [[image:image-20220527140542-20.png]] 493 493 494 494 Downstream Data Flow 495 495 496 496 533 + 497 497 === 4.5.2 Use LoRaWAN Protocol for communication ~-~- For LG308/LPS8/DLOS8 === 498 498 499 499 ... ... @@ -530,36 +530,44 @@ 530 530 [[image:image-20220613191345-4.png]] 531 531 532 532 570 + 533 533 (% style="color:blue" %)**Step 4**(%%): Map the Device Address to Remote ID in MQTT server. 534 534 535 535 [[image:image-20220613190635-2.png]] 536 536 537 537 576 + 538 538 (% style="color:blue" %)**Step 5: Upstream**(%%): Save the change, we can see the log info via "sytem log", End Node and MQTT Server 539 539 540 540 [[image:image-20220527141843-24.png]] 541 541 542 542 582 + 583 + 543 543 [[image:image-20220527141933-25.png]] 544 544 545 545 Choose ASCII Format 546 546 547 547 589 + 548 548 [[image:image-20220527142028-26.png]] 549 549 550 550 LHT65 Decoder 551 551 552 552 595 + 553 553 (% style="color:blue" %)**Step 6: Set up subscribe**(%%)**:** Subscribe a topci for downstream. 554 554 555 555 [[image:image-20220613191426-5.png]] 556 556 557 557 601 + 558 558 (% style="color:blue" %)**Step 7: Downstream**(%%): Save the change, we can see the log info via "sytem log", End Node and MQTT Server. 559 559 560 560 [[image:image-20220527142239-28.png]] 561 561 562 562 607 + 563 563 === 4.5.3 MQTT Downstream format === 564 564 565 565 ... ... @@ -588,6 +588,7 @@ 588 588 Check out this link for more mosquito-related directives [[https:~~/~~/mosquitto.org/man/mosquitto_pub-1.html>>https://mosquitto.org/man/mosquitto_pub-1.html]] 589 589 590 590 636 + 591 591 = 5. How to Debug = 592 592 593 593 ... ... @@ -594,6 +594,7 @@ 594 594 User can login the gateway's console and run (% style="color:#4f81bd" %)**logread -f**(%%). It will shows the output when there is packet arrive.User can see if it is correct. 595 595 596 596 643 + 597 597 = 6. How to ask for Support = 598 598 599 599