<
From version < 19.1 >
edited by Xiaoye
on 2022/08/02 11:54
To version < 21.4 >
edited by Xiaoling
on 2023/04/20 18:11
>
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.Xiaoye
1 +XWiki.Xiaoling
Content
... ... @@ -10,6 +10,7 @@
10 10  The Dragino LoRaWAN gateway can commuicate with LoRaWAN ABP End Node without the need of LoRaWAN server. It can be used in some cases such as:
11 11  
12 12  * No internet connection.
13 +
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 15  (((
... ... @@ -16,12 +16,14 @@
16 16  The basic of this feature is the decoding of (% style="color:red" %)**LoRaWAN ABP End Node**(%%). Requirements:
17 17  )))
18 18  
19 -1. LoRaWAN End Node in ABP mode. Make sure your end node works in this mode. End node most are default set to OTAA mode
20 -1. LoRaWAN Gateway model: [[LPS8>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/148-lps8.html]], [[LG308>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/140-lg308.html]], [[DLOS8>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/160-dlos8.html]] ,[[LIG16>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/171-lig16.html]]
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/]](%%)**
20 +* LoRaWAN End Node in ABP mode. Make sure your end node works in this mode. End node most are default set to OTAA mode
22 22  
22 +* LoRaWAN Gateway model: [[LPS8>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/148-lps8.html]], [[LG308>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/140-lg308.html]], [[DLOS8>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/160-dlos8.html]] ,[[LIG16>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/171-lig16.html]]
23 23  
24 +* 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/]](%%)**
24 24  
26 +
27 +
25 25  = 2. How it works =
26 26  
27 27  
... ... @@ -45,12 +45,13 @@
45 45  
46 46  We need to input above keys in LG308 and enable ABP decryption.
47 47  
51 +
48 48  [[image:image-20220527161119-1.png]]
49 49  
54 +
50 50  Input the ABP keys in LG308
51 51  
52 52  
53 -
54 54  == 2.1 Upstream ==
55 55  
56 56  
... ... @@ -57,14 +57,18 @@
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
64 +We can see the log of LG308 to know this packet arrive.
65 +
66 +
61 61  )))
62 62  
63 63  [[image:image-20220527161149-2.png]]
64 64  
71 +
65 65  LG308 log by "(% style="color:red" %)**logread -f**" (%%)command
66 66  
67 67  
75 +
68 68  The data of End Node is stored in the file /var/iot/channels/2602111D. We can use hexdump command to check it.
69 69  
70 70  (% class="box" %)
... ... @@ -76,10 +76,11 @@
76 76  )))
77 77  
78 78  * **RSSI**: 4646 4646 4646 3946 = 0xFFFF FF9F : So RSSI = (0xFFFF FF9F - 0x100000000) = -97
87 +
79 79  * **SNR**: 3030 3030 3030 3546 = 0x0000 005F = 95, need to divide 10 so SNR is 9.5
89 +
80 80  * **Payload**: 0xcc0c 0b63 0266 017f ff7f ff00
81 81  
82 -
83 83  (% class="box" %)
84 84  (((
85 85  (% 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:
... ... @@ -97,7 +97,6 @@
97 97  )))
98 98  
99 99  
100 -
101 101  === 2.2.1 Decode Method ===
102 102  
103 103  
... ... @@ -137,7 +137,6 @@
137 137  Above scripts are store in /etc/lora/decoder/. User can put their scripts here and select it in the UI.
138 138  
139 139  
140 -
141 141  === 2.2.2 How to Decode My End Node ===
142 142  
143 143  
... ... @@ -159,10 +159,15 @@
159 159  **Some notice:**
160 160  
161 161  * RSSI and SNR are added when gateway receive the packet, so there is always this field.
169 +
162 162  * If you rename the file, please make it executable.
171 +
163 163  * See this link for lua.bit module: [[http:~~/~~/luaforge.net/projects/bit/>>url:http://luaforge.net/projects/bit/]]
173 +
164 164  * Lua json module: [[http:~~/~~/json.luaforge.net/>>url:http://json.luaforge.net/]]
175 +
165 165  * the last line return is what will be used for MQTT
177 +
166 166  * User can use other language ,not limited to Lua, just make sure the return is what you want to send.
167 167  
168 168  
... ... @@ -176,19 +176,25 @@
176 176  
177 177  (% style="color:#037691" %)**dev_addr,imme/time,txt/hex,payload**
178 178  
179 -Since fimware > Dragino-v2 lgw-5.4.1608518541 . Support more option
180 180  
181 -(% style="color:#037691" %)**dev_addr,imme/time,txt/hex,payload,txpw,txbw,SF,frequency,rxwindow**
192 +Since fimware > [[Dragino lgw~~-~~-build-v5.4.1668567157>>https://www.dragino.com/downloads/index.php?dir=LoRa_Gateway/LG308-LG301/Firmware/Release/]] . Support more option
182 182  
194 +(% style="color:#037691" %)**dev_addr,imme/time,txt/hex,payload,txpw,txbw,SF,frequency,rxwindow,Fport**
195 +
183 183  * **dev_addr:** Inptu the device address
197 +
184 184  * **imme/time:**
185 185  ** imme: send downstream immediately,For Class C end node.
186 186  ** time: send downstream after receive device's uplink. For Class A end node
201 +
187 187  * **txt/hex:**
188 188  ** txt: send payload in ASCII
189 189  ** hex: send payload in HEX
205 +
190 190  * **payload: **payload to be sent, payload lenght should match the LoRaWAN protocol requirement.
207 +
191 191  * **txpw:** Transmit Power. example: 20
209 +
192 192  * **txbw:** bandwidth:
193 193  ** 1: 500 kHz
194 194  ** 2: 250 kHz
... ... @@ -195,27 +195,43 @@
195 195  ** 3: 125 kHz
196 196  ** 4: 62.5 kHz
197 197  * **SF:** Spreading Factor : SF7/SF8/SF9/SF10/SF11/SF12
216 +
198 198  * **Frequency:** Transmit Frequency: example: 923300000
218 +
199 199  * **rxwindow:** transmit on Rx1Window or Rx2Window.
200 200  
221 +* **Fport: **Transmit port,example:8
222 +
223 +
201 201  (% style="color:blue" %)**Completely exmaple:**
202 202  
203 203  * **Old version:** echo 018193F4,imme,hex,0101 > /var/iot/push/test
204 -* **New version:** echo 018193F4,imme,hex,0101,20,1,SF12,923300000,2 > /var/iot/push/test
205 205  
206 -(% style="color:#037691" %)**Downstream Frequency**
228 +* **New version:** echo 018193F4,imme,hex,0101,20,1,SF12,923300000,2,8 > /var/iot/push/test
207 207  
230 +
231 +Downstream(% style="color:#037691" %)** Frequency:**
232 +
208 208  The LG308 will use the RX2 window info to send the downstream payload, use the default LoRaWAN settings, as below:
209 209  
210 210  * EU868: 869.525Mhz, DR0(SF12BW125)
236 +
211 211  * US915: 923.3Mhz, SF12 BW500
238 +
212 212  * CN470: 505.3Mhz, SF12 BW125
240 +
213 213  * AU915: 923.3Mhz, SF12 BW500
242 +
214 214  * AS923: 923.2Mhz, SF10 BW125
244 +
215 215  * KR920: 921.9Mhz, SF12 BW125
246 +
216 216  * IN865: 866.55Mhz, SF10 BW125
248 +
217 217  * RU864: 869.1Mhz, SF12 BW125
218 218  
251 +
252 +
219 219  (% style="color:#037691" %)**Examples:**
220 220  
221 221  (% class="box" %)
... ... @@ -264,7 +264,6 @@
264 264  )))
265 265  
266 266  
267 -
268 268  = 3. Example 1: Communicate with LT-22222-L =
269 269  
270 270  
... ... @@ -309,38 +309,44 @@
309 309  )))
310 310  
311 311  
312 -**~1. Input keys**
345 +(% style="color:blue" %)**1. Input keys**
313 313  
347 +
314 314  [[image:image-20220527162450-3.png]]
315 315  
316 316  Input Keys in LPS8
317 317  
318 318  
319 -**2. Make sure the LPS8 and LT use the same frequency bands, choose EU868 in this test.**
320 320  
354 +(% style="color:blue" %)**2. Make sure the LPS8 and LT use the same frequency bands, choose EU868 in this test.**
321 321  
322 -**3. Choose Built-in server**
323 323  
357 +(% style="color:blue" %)**3. Choose Built-in server**
358 +
359 +
324 324  [[image:image-20220527162518-4.png]]
325 325  
326 326  Choose Built-in server
327 327  
328 328  
329 -**4. Run the script.**
330 330  
366 +(% style="color:blue" %)**4. Run the script.**
367 +
368 +
331 331  [[image:image-20220722115213-2.png]]
332 332  
333 333  Run the script
334 334  
335 335  
336 -**5. Output:**
337 337  
375 +(% style="color:blue" %)**5. Output:**
376 +
377 +
338 338  [[image:image-20220722115133-1.png]]
339 339  
340 340  Output from LPS8
341 341  
342 342  
343 -
344 344  = 4. Example 2: Communicate to TCP Server =
345 345  
346 346  
... ... @@ -351,9 +351,9 @@
351 351  
352 352  Full instruction video inlcude how to write scripts to fit server needed is here:
353 353  
354 -
355 355  (% style="color:#037691" %)**Video Instruction**(%%): **[[https:~~/~~/youtu.be/-nevW6U2TsE>>url:https://youtu.be/-nevW6U2TsE]]**
356 356  
395 +(% style="display:none" %) (%%)
357 357  
358 358  (% style="color:red" %)**Note: Firmware version must be higher than lgw-5.4.1607519907**
359 359  
... ... @@ -366,8 +366,9 @@
366 366  
367 367  
368 368  
369 -**run socket tool in PC**
408 +(% style="color:blue" %)**run socket tool in PC**
370 370  
410 +
371 371  [[image:image-20220527163028-9.png]]
372 372  
373 373  
... ... @@ -375,8 +375,9 @@
375 375  
376 376  
377 377  
378 -**Input Server address and port**
418 +(% style="color:blue" %)**Input Server address and port**
379 379  
420 +
380 380  [[image:image-20220527163106-10.png]]
381 381  
382 382  Input Server address and port
... ... @@ -383,10 +383,11 @@
383 383  
384 384  
385 385  
386 -**See value receive in socket tool:**
427 +(% style="color:blue" %)**See value receive in socket tool:**
387 387  
388 -[[image:image-20220527163144-11.png]]
389 389  
430 +[[image:image-20220527163144-11.png||height="502" width="1371"]]
431 +
390 390  value receive in socket tool
391 391  
392 392  
Copyright ©2010-2024 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0