Last modified by Xiaoling on 2023/04/20 18:14
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 0 added, 2 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Kilight1 +XWiki.Xiaoling - Content
-
... ... @@ -1,4 +1,5 @@ 1 -**Table of Contents:** 1 +* 2 +** Table of** **Contents: 2 2 3 3 {{toc/}} 4 4 ... ... @@ -43,14 +43,11 @@ 43 43 44 44 We need to input above keys in LG308 and enable ABP decryption. 45 45 46 - 47 47 [[image:image-20220527161119-1.png]] 48 48 49 - 50 50 Input the ABP keys in LG308 51 51 52 52 53 - 54 54 == 2.1 Upstream == 55 55 56 56 ... ... @@ -57,18 +57,14 @@ 57 57 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. 58 58 59 59 ((( 60 -We can see the log of LG308 to know this packet arrive. 61 - 62 - 58 +We can see the log of LG308 to know this packet arrive 63 63 ))) 64 64 65 65 [[image:image-20220527161149-2.png]] 66 66 67 - 68 68 LG308 log by "(% style="color:red" %)**logread -f**" (%%)command 69 69 70 70 71 - 72 72 The data of End Node is stored in the file /var/iot/channels/2602111D. We can use hexdump command to check it. 73 73 74 74 (% class="box" %) ... ... @@ -93,7 +93,6 @@ 93 93 000001c 94 94 ))) 95 95 96 - 97 97 (% class="box" %) 98 98 ((( 99 99 (% 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. ... ... @@ -100,7 +100,6 @@ 100 100 ))) 101 101 102 102 103 - 104 104 === 2.2.1 Decode Method === 105 105 106 106 ... ... @@ -140,27 +140,22 @@ 140 140 Above scripts are store in /etc/lora/decoder/. User can put their scripts here and select it in the UI. 141 141 142 142 143 - 144 144 === 2.2.2 How to Decode My End Node === 145 145 146 146 147 - **1.**Configure the ABP keys for your end node in the gateway. enable ABP decode in Web UI138 +1/ Configure the ABP keys for your end node in the gateway. enable ABP decode in Web UI 148 148 149 - **2.**Don't choose MQTT service, use LoRaWAN.140 +2/ Don't choose MQTT service, use LoRaWAN. 150 150 151 - **3.**When your end node send a message to the gateway, there will be a file store in /var/iot/channels. full path should be /var/iot/channels/END_NODE_DEV_ADDR142 +3/ When your end node send a message to the gateway, there will be a file store in /var/iot/channels. full path should be /var/iot/channels/END_NODE_DEV_ADDR 152 152 153 - **4.**Use the /etc/lora/decoder/Dragino_LHT65 as template to decode your payload. This script is written in Lua language. User can manually call this script when you see the data file in /var/iot/channels by running:144 +4/ Use the /etc/lora/decoder/Dragino_LHT65 as template to decode your payload. This script is written in Lua language. User can manually call this script when you see the data file in /var/iot/channels by running: 154 154 155 155 {{{/etc/lora/decoder/Dragino_LHT65 END_NODE_DEV_ADDR 156 156 }}} 157 157 158 - **5.**What you see as output is the MQTT data device will upload, user's end node has different payload compare with LHT65, most properly this file will report with error. User need to modify to match the actual payload.149 +5/ What you see as output is the MQTT data device will upload, user's end node has different payload compare with LHT65, most properly this file will report with error. User need to modify to match the actual payload. Some notice: 159 159 160 - 161 -(% style="color:red" %) 162 -**Some notice:** 163 - 164 164 * RSSI and SNR are added when gateway receive the packet, so there is always this field. 165 165 * If you rename the file, please make it executable. 166 166 * See this link for lua.bit module: [[http:~~/~~/luaforge.net/projects/bit/>>url:http://luaforge.net/projects/bit/]] ... ... @@ -168,6 +168,8 @@ 168 168 * the last line return is what will be used for MQTT 169 169 * User can use other language ,not limited to Lua, just make sure the return is what you want to send. 170 170 158 + 159 + 171 171 == 2.2 Downstream == 172 172 173 173 ... ... @@ -177,11 +177,10 @@ 177 177 178 178 (% style="color:#037691" %)**dev_addr,imme/time,txt/hex,payload** 179 179 169 +Since fimware > Dragino-v2 lgw-5.4.1608518541 . Support more option 180 180 181 - Sincefimware> [[Draginogw~~-~~-build-v5.4.1668567157>>https://www.dragino.com/downloads/index.php?dir=LoRa_Gateway/LG308-LG301/Firmware/Release/]] . Support moreoption171 +(% style="color:#037691" %)**dev_addr,imme/time,txt/hex,payload,txpw,txbw,SF,frequency,rxwindow** 182 182 183 -(% style="color:#037691" %)**dev_addr,imme/time,txt/hex,payload,txpw,txbw,SF,frequency,rxwindow,Fport** 184 - 185 185 * **dev_addr:** Inptu the device address 186 186 * **imme/time:** 187 187 ** imme: send downstream immediately,For Class C end node. ... ... @@ -199,15 +199,17 @@ 199 199 * **SF:** Spreading Factor : SF7/SF8/SF9/SF10/SF11/SF12 200 200 * **Frequency:** Transmit Frequency: example: 923300000 201 201 * **rxwindow:** transmit on Rx1Window or Rx2Window. 202 -* **Fport: **Transmit port,example:8 203 203 191 + 204 204 (% style="color:blue" %)**Completely exmaple:** 205 205 206 206 * **Old version:** echo 018193F4,imme,hex,0101 > /var/iot/push/test 207 -* **New version:** echo 018193F4,imme,hex,0101,20,1,SF12,923300000,2 ,8> /var/iot/push/test195 +* **New version:** echo 018193F4,imme,hex,0101,20,1,SF12,923300000,2 > /var/iot/push/test 208 208 209 -(% style="color:#037691" %)**Downstream Frequency:** 210 210 198 + 199 +(% style="color:#037691" %)**Downstream Frequency** 200 + 211 211 The LG308 will use the RX2 window info to send the downstream payload, use the default LoRaWAN settings, as below: 212 212 213 213 * EU868: 869.525Mhz, DR0(SF12BW125) ... ... @@ -219,6 +219,8 @@ 219 219 * IN865: 866.55Mhz, SF10 BW125 220 220 * RU864: 869.1Mhz, SF12 BW125 221 221 212 + 213 + 222 222 (% style="color:#037691" %)**Examples:** 223 223 224 224 (% class="box" %) ... ... @@ -225,19 +225,25 @@ 225 225 ((( 226 226 we can use echo command to create files in LG308 for downstream. 227 227 root@dragino-1d25dc:~~# echo 2602111D,time,hex,12345678 > /var/iot/push/test 220 +))) 228 228 229 - 222 +(% class="box" %) 223 +((( 230 230 **1)** From logread -f of gateway, we can see it has been added as pedning. 231 231 lora_pkt_fwd[4286]: INFO~~ [DNLK]Looking file : test 232 232 lora_pkt_fwd[4286]: INFO~~ [DNLK]devaddr:2602111D, txmode:time, pdfm:hex, size:4, payload1:4Vx,payload_hex:77C1BB90 233 233 lora_pkt_fwd[4286]: INFO~~ [DNLK] DNLINK PENDING!(1 elems). 228 +))) 234 234 235 - 230 +(% class="box" %) 231 +((( 236 236 **2)** When there is an upstrea from end node, this downstream will be sent and shows: 237 237 lora_pkt_fwd[4286]: INFO: tx_start_delay=1497 (1497.000000) - (1497, bw_delay=0.000000, notch_delay=0.000000) 238 238 lora_pkt_fwd[4286]: [LGWSEND]lgw_send done: count_us=3537314420, freq=923300000, size=17 235 +))) 239 239 240 - 237 +(% class="box" %) 238 +((( 241 241 **3)** and the end node will got: 242 242 [5764825]~*~*~*~** UpLinkCounter= 98 ~*~*~*~** 243 243 [5764827]TX on freq 905300000 Hz at DR 0 ... ... @@ -250,8 +250,10 @@ 250 250 Rssi= -41 251 251 Receive data 252 252 (% style="color:#037691" %)**2:12345678** (%%) ~-~-> Hex 251 +))) 253 253 254 - 253 +(% class="box" %) 254 +((( 255 255 **4) **If we use the command "echo 2602111D,time,txt,12345678 > /var/iot/push/test" for downstream, the end node will got: 256 256 [5955877]~*~*~*~** UpLinkCounter= 102 ~*~*~*~** 257 257 [5955879]TX on freq 904100000 Hz at DR 0 ... ... @@ -267,7 +267,6 @@ 267 267 ))) 268 268 269 269 270 - 271 271 = 3. Example 1: Communicate with LT-22222-L = 272 272 273 273 ... ... @@ -311,46 +311,36 @@ 311 311 # whether the Device 2 has been changed.// 312 312 ))) 313 313 313 +**~1. Input keys** 314 314 315 -(% style="color:blue" %)**1. Input keys** 316 - 317 - 318 318 [[image:image-20220527162450-3.png]] 319 319 320 320 Input Keys in LPS8 321 321 322 322 320 +**2. Make sure the LPS8 and LT use the same frequency bands, choose EU868 in this test.** 323 323 324 - (% style="color:blue" %)**2.Make sure the LPS8 and LT use the same frequency bands, chooseEU868inthistest.**322 +**3. Choose Built-in server** 325 325 326 - 327 -(% style="color:blue" %)**3. Choose Built-in server** 328 - 329 - 330 330 [[image:image-20220527162518-4.png]] 331 331 332 332 Choose Built-in server 333 333 334 334 329 +**4. Run the script.** 335 335 336 - (% style="color:blue" %)**4.Run the script.**331 +[[image:image-20220527162552-5.png]] 337 337 338 - 339 -[[image:image-20220722115213-2.png]] 340 - 341 341 Run the script 342 342 343 343 336 +**5. Output:** 344 344 345 - (% style="color:blue" %)**5.Output:**338 +[[image:image-20220527162619-6.png]] 346 346 347 - 348 -[[image:image-20220722115133-1.png]] 349 - 350 350 Output from LPS8 351 351 352 352 353 - 354 354 = 4. Example 2: Communicate to TCP Server = 355 355 356 356 ... ... @@ -376,9 +376,8 @@ 376 376 377 377 378 378 379 - (% style="color:blue" %)**run socket tool in PC**368 +**run socket tool in PC** 380 380 381 - 382 382 [[image:image-20220527163028-9.png]] 383 383 384 384 ... ... @@ -386,9 +386,8 @@ 386 386 387 387 388 388 389 - (% style="color:blue" %)**Input Server address and port**377 +**Input Server address and port** 390 390 391 - 392 392 [[image:image-20220527163106-10.png]] 393 393 394 394 Input Server address and port ... ... @@ -395,9 +395,8 @@ 395 395 396 396 397 397 398 - (% style="color:blue" %)**See value receive in socket tool:**385 +**See value receive in socket tool:** 399 399 400 - 401 401 [[image:image-20220527163144-11.png]] 402 402 403 403 value receive in socket tool
- image-20220722115133-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -35.1 KB - Content
- image-20220722115213-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -27.7 KB - Content