Last modified by Xiaoling on 2023/04/20 18:14
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 2 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -12,6 +12,8 @@ 12 12 * No internet connection. 13 13 * User wants to get data forward in gateway and forward to their server base on MQTT/HTTP, etc. (Combine ABP communication method and [[MQTT forward together>>MQTT Forward Instruction]]). 14 14 15 + 16 + 15 15 ((( 16 16 The basic of this feature is the decoding of (% style="color:red" %)**LoRaWAN ABP End Node**(%%). Requirements: 17 17 ))) ... ... @@ -21,6 +21,8 @@ 21 21 1. Firmware version for below instruction:**[[(% style="color:purple" %)Since LG02_LG08~~-~~-build-v5.4.1593400722-20200629-1120>>url:http://www.dragino.com/downloads/index.php?dir=LoRa_Gateway/LPS8/Firmware/Release/]](%%)** 22 22 23 23 26 + 27 + 24 24 = 2. How it works = 25 25 26 26 ... ... @@ -44,11 +44,14 @@ 44 44 45 45 We need to input above keys in LG308 and enable ABP decryption. 46 46 51 + 47 47 [[image:image-20220527161119-1.png]] 48 48 54 + 49 49 Input the ABP keys in LG308 50 50 51 51 58 + 52 52 == 2.1 Upstream == 53 53 54 54 ... ... @@ -55,14 +55,18 @@ 55 55 Now when this End Node (Dev Addr=2602111D) send a uplink packet. When this packet arrive LG308, LG308 will decode it and put the decode data on the file /var/iot/channels/2602111D . So we have this data for further process with other applications in LG308. 56 56 57 57 ((( 58 -We can see the log of LG308 to know this packet arrive 65 +We can see the log of LG308 to know this packet arrive. 66 + 67 + 59 59 ))) 60 60 61 61 [[image:image-20220527161149-2.png]] 62 62 72 + 63 63 LG308 log by "(% style="color:red" %)**logread -f**" (%%)command 64 64 65 65 76 + 66 66 The data of End Node is stored in the file /var/iot/channels/2602111D. We can use hexdump command to check it. 67 67 68 68 (% class="box" %) ... ... @@ -77,6 +77,8 @@ 77 77 * **SNR**: 3030 3030 3030 3546 = 0x0000 005F = 95, need to divide 10 so SNR is 9.5 78 78 * **Payload**: 0xcc0c 0b63 0266 017f ff7f ff00 79 79 91 + 92 + 80 80 (% class="box" %) 81 81 ((( 82 82 (% style="color:red" %)**Notice 1**(%%): The data file stored in LG308 for the end node is bin file. If the end node sends ASCII string to gateway, the output will as below: ... ... @@ -87,6 +87,7 @@ 87 87 000001c 88 88 ))) 89 89 103 + 90 90 (% class="box" %) 91 91 ((( 92 92 (% style="color:red" %)**Notice 2**(%%): The upstream payload length should match the LoRaWAN length requirement (max length depends on Frequency and DR), otherwise the gateway can't decode the payload. ... ... @@ -93,6 +93,7 @@ 93 93 ))) 94 94 95 95 110 + 96 96 === 2.2.1 Decode Method === 97 97 98 98 ... ... @@ -162,6 +162,7 @@ 162 162 163 163 164 164 180 + 165 165 == 2.2 Downstream == 166 166 167 167 ... ... @@ -171,6 +171,7 @@ 171 171 172 172 (% style="color:#037691" %)**dev_addr,imme/time,txt/hex,payload** 173 173 190 + 174 174 Since fimware > Dragino-v2 lgw-5.4.1608518541 . Support more option 175 175 176 176 (% style="color:#037691" %)**dev_addr,imme/time,txt/hex,payload,txpw,txbw,SF,frequency,rxwindow** ... ... @@ -195,7 +195,6 @@ 195 195 196 196 197 197 198 - 199 199 (% style="color:blue" %)**Completely exmaple:** 200 200 201 201 * **Old version:** echo 018193F4,imme,hex,0101 > /var/iot/push/test ... ... @@ -203,9 +203,8 @@ 203 203 204 204 205 205 222 +(% style="color:#037691" %)**Downstream Frequency:** 206 206 207 -(% style="color:#037691" %)**Downstream Frequency** 208 - 209 209 The LG308 will use the RX2 window info to send the downstream payload, use the default LoRaWAN settings, as below: 210 210 211 211 * EU868: 869.525Mhz, DR0(SF12BW125) ... ... @@ -219,7 +219,6 @@ 219 219 220 220 221 221 222 - 223 223 (% style="color:#037691" %)**Examples:** 224 224 225 225 (% class="box" %) ... ... @@ -226,25 +226,19 @@ 226 226 ((( 227 227 we can use echo command to create files in LG308 for downstream. 228 228 root@dragino-1d25dc:~~# echo 2602111D,time,hex,12345678 > /var/iot/push/test 229 -))) 230 230 231 -(% class="box" %) 232 -((( 244 + 233 233 **1)** From logread -f of gateway, we can see it has been added as pedning. 234 234 lora_pkt_fwd[4286]: INFO~~ [DNLK]Looking file : test 235 235 lora_pkt_fwd[4286]: INFO~~ [DNLK]devaddr:2602111D, txmode:time, pdfm:hex, size:4, payload1:4Vx,payload_hex:77C1BB90 236 236 lora_pkt_fwd[4286]: INFO~~ [DNLK] DNLINK PENDING!(1 elems). 237 -))) 238 238 239 -(% class="box" %) 240 -((( 250 + 241 241 **2)** When there is an upstrea from end node, this downstream will be sent and shows: 242 242 lora_pkt_fwd[4286]: INFO: tx_start_delay=1497 (1497.000000) - (1497, bw_delay=0.000000, notch_delay=0.000000) 243 243 lora_pkt_fwd[4286]: [LGWSEND]lgw_send done: count_us=3537314420, freq=923300000, size=17 244 -))) 245 245 246 -(% class="box" %) 247 -((( 255 + 248 248 **3)** and the end node will got: 249 249 [5764825]~*~*~*~** UpLinkCounter= 98 ~*~*~*~** 250 250 [5764827]TX on freq 905300000 Hz at DR 0 ... ... @@ -257,10 +257,8 @@ 257 257 Rssi= -41 258 258 Receive data 259 259 (% style="color:#037691" %)**2:12345678** (%%) ~-~-> Hex 260 -))) 261 261 262 -(% class="box" %) 263 -((( 269 + 264 264 **4) **If we use the command "echo 2602111D,time,txt,12345678 > /var/iot/push/test" for downstream, the end node will got: 265 265 [5955877]~*~*~*~** UpLinkCounter= 102 ~*~*~*~** 266 266 [5955879]TX on freq 904100000 Hz at DR 0 ... ... @@ -276,6 +276,7 @@ 276 276 ))) 277 277 278 278 285 + 279 279 = 3. Example 1: Communicate with LT-22222-L = 280 280 281 281 ... ... @@ -319,36 +319,46 @@ 319 319 # whether the Device 2 has been changed.// 320 320 ))) 321 321 322 -**~1. Input keys** 323 323 330 +(% style="color:blue" %)**1. Input keys** 331 + 332 + 324 324 [[image:image-20220527162450-3.png]] 325 325 326 326 Input Keys in LPS8 327 327 328 328 329 -**2. Make sure the LPS8 and LT use the same frequency bands, choose EU868 in this test.** 330 330 331 -** 3.ChooseBuilt-in server**339 +(% style="color:blue" %)**2. Make sure the LPS8 and LT use the same frequency bands, choose EU868 in this test.** 332 332 341 + 342 +(% style="color:blue" %)**3. Choose Built-in server** 343 + 344 + 333 333 [[image:image-20220527162518-4.png]] 334 334 335 335 Choose Built-in server 336 336 337 337 338 -**4. Run the script.** 339 339 340 - [[image:image-20220527162552-5.png]]351 +(% style="color:blue" %)**4. Run the script.** 341 341 353 + 354 +[[image:image-20220722115213-2.png]] 355 + 342 342 Run the script 343 343 344 344 345 -**5. Output:** 346 346 347 - [[image:image-20220527162619-6.png]]360 +(% style="color:blue" %)**5. Output:** 348 348 362 + 363 +[[image:image-20220722115133-1.png]] 364 + 349 349 Output from LPS8 350 350 351 351 368 + 352 352 = 4. Example 2: Communicate to TCP Server = 353 353 354 354 ... ... @@ -374,8 +374,9 @@ 374 374 375 375 376 376 377 -**run socket tool in PC** 394 +(% style="color:blue" %)**run socket tool in PC** 378 378 396 + 379 379 [[image:image-20220527163028-9.png]] 380 380 381 381 ... ... @@ -383,8 +383,9 @@ 383 383 384 384 385 385 386 -**Input Server address and port** 404 +(% style="color:blue" %)**Input Server address and port** 387 387 406 + 388 388 [[image:image-20220527163106-10.png]] 389 389 390 390 Input Server address and port ... ... @@ -391,8 +391,9 @@ 391 391 392 392 393 393 394 -**See value receive in socket tool:** 413 +(% style="color:blue" %)**See value receive in socket tool:** 395 395 415 + 396 396 [[image:image-20220527163144-11.png]] 397 397 398 398 value receive in socket tool
- image-20220722115133-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +35.1 KB - Content
- image-20220722115213-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +27.7 KB - Content