Show last authors
1 **~ Contents:**
2
3 {{toc/}}
4
5
6 = 1. The Things Network-V3 =
7
8 == 1.1 Introduction ==
9
10 === 1.1.1 What is The Things Network ===
11
12 (((
13 The Things Network is a global collaborative Internet of Things ecosystem that creates networks, devices and solutions using LoRaWAN.
14 )))
15
16 (((
17 The Things Network runs The Things Stack Community Edition, which is a crowdsourced, open and decentralized LoRaWAN network. This network is a great way to get started testing devices, applications, and integrations, and get familiar with LoRaWAN.
18 )))
19
20 === 1.1.2 Login or crate an account ===
21
22 (((
23 [[Login or create an account>>url:https://console.cloud.thethings.network/]] to get started with The Things Network and start using The Things Stack Console.
24 )))
25
26 (((
27 Once you have an account,get started by following steps for adding Gateway,Device and Intergrations.
28 )))
29
30 === 1.1.3 List the support products and Requirements ===
31
32 LoRaWAN Gateway model: Existing Gateway
33
34 = 2. Gateway Registration for Semtech UDP =
35
36 == 2.1 Primary LoRaWAN Server ==
37
38 [[image:https://wiki.dragino.com/images/thumb/0/0c/TTN_v3_Primary_001.png/600px-TTN_v3_Primary_001.png||height="296" width="600"]]
39
40 Register Gateway
41
42
43 [[image:https://wiki.dragino.com/images/thumb/b/ba/TTN_v3_Primary_002.png/600px-TTN_v3_Primary_002.png||height="283" width="600"]]
44
45 Put Gateway ID
46
47
48 [[image:https://wiki.dragino.com/images/thumb/a/a6/TTN_v3_Primary_003.png/600px-TTN_v3_Primary_003.png||height="279" width="600"]]
49
50 Choose Frequency Band
51
52
53 [[image:https://wiki.dragino.com/images/thumb/4/44/TTN_v3_Primary_004.png/600px-TTN_v3_Primary_004.png||height="350" width="600"]]
54
55 Show Status
56
57 == 2.2 Secondary LoRaWAN Server ==
58
59 === 2.2.1 Introduction ===
60
61 The Dragino gateway has supports the Secondary server settings.
62
63 === 2.2.2 Below list the support products and Requirements: ===
64
65 1. LoRaWAN Gateway model: [[LIG16>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/171-lig16.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]] [[LPS8>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/148-lps8.html]]
66
67 1. Firmware version since :[[lgw~~-~~-build-v5.4.1644658774>>url:http://www.dragino.com/downloads/index.php?dir=LoRa_Gateway/LIG16/Firmware/Release/]]
68
69 === 2.2.3 Example ===
70
71 The following takes Helium as a Secondary LoRaWAN server as an example,
72
73 === 2.2.4 Step 1: Download and Install the helium gateway-rs ===
74
75 The users is needing to download and install the helium gateway-rs then click the button of Save&Apply
76
77 [[image:https://wiki.dragino.com/images/thumb/f/f8/Helium_Secondary_001.png/600px-Helium_Secondary_001.png||height="350" width="600"]]
78
79 Download and Install gateway-rs
80
81 === 2.2.5 Step 2: Back to Semtech UDP page ===
82
83 Back to the page of Semtech UDP check the secondary server settings and click the button of Save&Apply
84
85 [[image:https://wiki.dragino.com/images/thumb/c/c8/Helium_Secondary_002.png/600px-Helium_Secondary_002.png||height="415" width="600"]]
86
87 Configuration of helium
88
89 = 3. Gateway Registration for Basics Station =
90
91 == 3.1 Introduction ==
92
93 (((
94 (((
95 The LoRa Basics™ Station protocol simplifies management of large scale LoRaWAN networks. LoRa Basics™ Station is the preferred way of connecting Gateways to The Things Stack. [[The LoRa Basics Station doc>>url:https://www.thethingsindustries.com/docs/gateways/lora-basics-station/]]
96 )))
97 )))
98
99 (((
100 **Below list the support products and Requirements:**
101 )))
102
103 (((
104 (((
105 ~1. LoRaWAN Gateway model: [[LIG16>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/171-lig16.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]] [[LPS8>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/148-lps8.html]]
106 )))
107
108 (((
109 2. Firmware version since :[[lgw~~-~~-build-v5.4.1640315898>>url:https://www.dragino.com/downloads/index.php?dir=LoRa_Gateway/LPS8/Firmware/Release/]]
110 )))
111 )))
112
113 (((
114 **What do you need to prepare**
115 )))
116
117 (((
118 (((
119 A gateway that can access the internet normally
120 )))
121 )))
122
123 == 3.2 Step 1. Add Gateway ==
124
125 (((
126 (((
127 The example for **EU**
128 )))
129 )))
130
131 (((
132 (((
133 User can add your gateway into The Things Network V3 according to the previous step
134 )))
135 )))
136
137 (((
138 (((
139 Following picture is the successful added.
140 )))
141 )))
142
143 [[image:https://wiki.dragino.com/images/thumb/5/5f/Add_gateway_1.1.png/600px-Add_gateway_1.1.png||height="397" width="600"]]
144
145 Add Gateway
146
147 == 3.3 Step 2. Create the API key ==
148
149 user need to create the CUPS API key and LNS API key.
150
151 [[image:https://wiki.dragino.com/images/thumb/c/c6/Create_cups_api_key.png/600px-Create_cups_api_key.png||height="394" width="600"]]
152
153 Create CUPS API key
154
155
156 [[image:https://wiki.dragino.com/images/thumb/5/55/Create_lns_api_key.png/600px-Create_lns_api_key.png||height="403" width="600"]]
157
158 Create LNS API key
159
160 (% style="color:red" %)**Note : Please copy the API key.**
161
162 == 3.4 Step 3. Update the gateway setting ==
163
164 In the LoRa Basics Station LNS Authentication Key field, paste the API key you generated in the previous step.
165
166 [[image:https://wiki.dragino.com/images/thumb/2/2f/Paste_the_lns_API_key.png/600px-Paste_the_lns_API_key.png||height="363" width="600"]]
167
168 paste the API key
169
170 == 3.5 Step 4. Access the gateway GUI ==
171
172 User need to update the API key and install the Certificate
173
174 [[image:https://wiki.dragino.com/images/thumb/a/a3/Access_gateway_gui_ttnstation.png/600px-Access_gateway_gui_ttnstation.png||height="354" width="600"]]
175
176 Access the gateway GUI
177
178 == 3.6 Step 5. Configure Station ==
179
180 User need to input Server URI, Server CUPS Key and LNS Key, as well as install CUPS certificate.
181
182 **just to clarify.**
183
184 (% class="box" %)
185 (((
186 CUPS Server URI  ~-~-> Server Adress
187 CUPS Authorization Key         ~-~-> Server CUPS API Key
188 LNS Authorization Key  ~-~-> Server LNS API Key
189 CUPS certificate  ~-~-> Server CA(user can use the button to install the certificate by default)
190 )))
191
192 [[image:https://wiki.dragino.com/images/thumb/8/8c/Confiure_station_cao.png/600px-Confiure_station_cao.png||height="321" width="600"]]
193
194 Congfigure Station
195
196 == 3.7 Start Station ==
197
198 (((
199 When the user has finished the configuration,Please click Sace&Apply to start station to connect The Things Network.
200 )))
201
202 == 3.8 Siccessful Connection ==
203
204 If user completes the above steps,which will see live date in the TTN.
205
206 [[image:https://wiki.dragino.com/images/thumb/4/49/Station_live_date_cao.png/600px-Station_live_date_cao.png||height="391" width="600"]]
207
208 Station live date
209
210 == 3.9 Trouble Shooting ==
211
212 User can check the station log in the logread/system log page.
213
214 [[image:https://wiki.dragino.com/images/thumb/7/7c/Station_log_xiao.png/600px-Station_log_xiao.png||height="457" width="600"]]
215
216 Station Log
217
218 and recode the station log in the system/Recode log page.
219
220 [[image:https://wiki.dragino.com/images/thumb/5/50/Recore_log_xiao.png/600px-Recore_log_xiao.png||height="147" width="600"]]
221
222 Recore Log
223
224 = 4. Configure node connection to TTNv3 =
225
226 (((
227 (((
228 Following is an example for how to join the TTN v3 LoRaWAN Network.
229 )))
230 )))
231
232 (((
233 (((
234 The gateway is already set up to connect to the TTN network, so we now need to configure the TTNv3 server.
235 )))
236 )))
237
238 (((
239 (((
240 We take LES01 as an example.
241 )))
242 )))
243
244 == 4.1 Step1 ==
245
246 (((
247 (((
248 Create a device in TTN with the OTAA keys from LSE01.
249 )))
250 )))
251
252 (((
253 (((
254 Each LSE01 is shipped with a sticker with the default device EUI as below:
255 )))
256 )))
257
258 (((
259 (((
260 You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
261 )))
262 )))
263
264 [[image:https://wiki.dragino.com/images/thumb/c/c7/TTNv3--01.png/600px-TTNv3--01.png||alt="TTNv3--01.png" height="277" width="600"]]
265
266 [[image:https://wiki.dragino.com/images/thumb/1/17/TTNv3--02.png/600px-TTNv3--02.png||alt="TTNv3--02.png" height="226" width="600"]]
267
268 == 4.2 Step2 ==
269
270 (((
271 (((
272 There are all our nodes in the repository. Users can choose the corresponding brand, model, firmware version and frequency.The decoder and configuration information of the node are pre-configured.Users do not need to configure them.
273 )))
274 )))
275
276 [[image:https://wiki.dragino.com/images/thumb/f/fc/TTNv3--03.png/600px-TTNv3--03.png||alt="TTNv3--03.png" height="333" width="600"]]
277
278 == 4.3 Step3 ==
279
280 Add APP EUI in the application:
281
282 [[image:https://wiki.dragino.com/images/thumb/9/9f/TTNv3--04.png/600px-TTNv3--04.png||alt="TTNv3--04.png" height="439" width="600"]]
283
284 == 4.4 Step4 ==
285
286 Add APP KEY and DEV EUI:
287
288 [[image:https://wiki.dragino.com/images/thumb/a/a4/TTNv3--05.png/600px-TTNv3--05.png||alt="TTNv3--05.png" height="500" width="600"]]
289
290 = 5. TTN V3 integrated into MQTT server =
291
292 == 5.1 Introduction ==
293
294 (((
295 (((
296 The Application Server exposes an MQTT server to work with streaming events. In order to use the MQTT server you need to create a new API key, which will function as connection password. You can also use an existing API key, as long as it has the necessary rights granted.
297 )))
298 )))
299
300 == 5.2 Create device steps at MQTT ==
301
302 (((
303 (((
304 The user creates a new API KEY after creating a device on TTN V3.
305 )))
306 )))
307
308 (((
309 (((
310 Then copy the password and open MQTT.fx.
311 )))
312 )))
313
314 (((
315 (((
316 Fill in Broker Address and Broker port.
317 )))
318 )))
319
320 [[image:https://wiki.dragino.com/images/thumb/8/82/V3_MQTT1_.png/600px-V3_MQTT1_.png||alt="V3 MQTT1 .png" height="325" width="600"]]
321
322 Fill in the username and password into MQTT.
323
324
325 [[image:https://wiki.dragino.com/images/thumb/6/6a/V3_MQTT2.png/600px-V3_MQTT2.png||alt="V3 MQTT2.png" height="434" width="600"]]
326
327 The Application Server publishes uplink traffic on the following topics:
328
329 (% class="box" %)
330 (((
331 v3/{application id}@{tenant id}/devices/{device id}/join
332 v3/{application id}@{tenant id}/devices/{device id}/up
333 v3/{application id}@{tenant id}/devices/{device id}/down/queued
334 v3/{application id}@{tenant id}/devices/{device id}/down/sent
335 v3/{application id}@{tenant id}/devices/{device id}/down/ack
336 v3/{application id}@{tenant id}/devices/{device id}/down/nack
337 v3/{application id}@{tenant id}/devices/{device id}/down/failed
338 v3/{application id}@{tenant id}/devices/{device id}/service/data
339 v3/{application id}@{tenant id}/devices/{device id}/location/solved
340 )))
341
342 (((
343 (((
344 **Note**: Remember that the format of these topics for The Things Stack Open Source would contain {application id} instead of {application id}@{tenant id}.
345 )))
346 )))
347
348 [[image:https://wiki.dragino.com/images/thumb/d/dc/V3_MQTT3.png/600px-V3_MQTT3.png||alt="V3 MQTT3.png" height="400" width="600"]]
349
350 (((
351 (((
352 While you could subscribe to all of these topics separately, for the simplicity of this tutorial we use # to subscribe to all topics, i.e. to receive all uplink traffic.
353 )))
354 )))
355
356 [[image:https://wiki.dragino.com/images/thumb/e/e8/V3_MQTT4.jpg/600px-V3_MQTT4.jpg||alt="V3 MQTT4.jpg" height="326" width="600"]]
357
358 (((
359 (((
360 Downlinks can be scheduled by publishing the message to the topic v3/{application id}@{tenant id}/devices/{device id}/down/push.
361 )))
362 )))
363
364 (((
365 (((
366 **Note**: Remember that the format of this topic for The Things Stack Open Source deployment would be v3/{application id}/devices/{device id}/down/push.
367 )))
368 )))
369
370 (((
371 (((
372 Instead of /push, you can also use /replace to replace the downlink queue. Replacing with an empty array clears the downlink queue. Example:
373 )))
374 )))
375
376 [[image:https://wiki.dragino.com/images/thumb/e/e8/V3_MQTT5.png/600px-V3_MQTT5.png||alt="V3 MQTT5.png" height="289" width="600"]]
377
378 (((
379 To send an unconfirmed downlink message to the device dev1 in application app1 in tenant tenant1 with the hexadecimal payload BE EF on FPort 15 with normal priority, use the topic v3/app1@tenant1/devices/dev1/down/push with the following contents:
380 )))
381
382 (((
383 **Note**: Use this handy tool to convert hexadecimal to base64.
384 )))
385
386 [[image:https://wiki.dragino.com/images/thumb/9/9f/V3_MQTT6.png/600px-V3_MQTT6.png||alt="V3 MQTT6.png" height="313" width="600"]]
387
388 == 5.3 Send Downlink message ==
389
390 (((
391 How to configure downlink in TTN V3?
392 )))
393
394 (((
395 A few examples: set the transmission interval to 90 seconds.
396 )))
397
398 (((
399 Downlink command:01 00 00 5A
400 )))
401
402 [[image:https://wiki.dragino.com/images/thumb/9/90/Downlink_50.png/600px-Downlink_50.png||height="327" width="600"]]
403
404 downlink
405
406 After sending, you can view it in live data.
407
408 [[image:https://wiki.dragino.com/images/thumb/1/15/Downlink_51.png/600px-Downlink_51.png||height="141" width="600"]]
409
410 downlink
411
412 (((
413 When downlink is successfully sent, the downlink information can be received on the serial port.
414 )))
415
416 (((
417 **Note**: If the downlink byte sent is longer, the number of bytes will be displayed.
418 )))
419
420 [[image:https://wiki.dragino.com/images/thumb/c/c9/Downlink_52.png/600px-Downlink_52.png||height="407" width="600"]]
421
422 downlink
423
424 (((
425 (((
426 If you want to get a successful reply to send downlink in TTN v3. You need to set the response level.
427 )))
428 )))
429
430 (((
431 (((
432 If the equipment uses CLASS A. You can set **AT+RPL=2** or send the downlink command: **2102**
433 )))
434 )))
435
436 (((
437 (((
438 If the equipment uses CLASS C. You can set** AT+RPL=4** or send the downlink command: **2104**
439 )))
440 )))
441
442 (((
443 (((
444 When the device successfully receives the downlink, the server will receive a confirmation packet of 00.
445 )))
446 )))
447
448 [[image:https://wiki.dragino.com/images/thumb/d/d9/Downlink_54.png/600px-Downlink_54.png||height="127" width="600"]]
449
450 downlink
451
452 = 6. Request Remote Support =
453
454 (((
455 These pages are useful to check what is wrong on the Join process. Below shows the four steps that we can check the Join Process.
456 \\If problem not solve, and you need dragino remote support, please follow to this document: [[TTN Support instruction>>url:https://www.dragino.com/downloads/index.php?dir=&file=TTNv3_Support_Guide.pdf]](% style="color:red" %) **If user has checked below steps and still can't solve the problem, please send us (support @ dragino.com) the screenshots for each step to check. They include:**
457 )))
458
459 * End node is connected to serial port to show the Join frequency and DR. (If possible)
460 * Gateway (from gateway UI) traffic to show the packet got from end node and receive from Server. (If possible)
461 * Gateway traffic (from server UI) to shows the data exchange between gateway and server. (Normally possible)
462 * End Node traffic (from server UI) to shows end node activity in server. (Normally possible)
463 * End Node Keys screen shot shows in end node and server. so we can check if the keys are correct. (In most case, we found keys doesn't match, especially APP EUI)
464
465 **~1. End Device Join Screen shot, we can check:**
466
467 * If the device is sending join request to server?
468 * What frequency the device is sending?
469
470 [[image:https://wiki.dragino.com/images/thumb/7/77/LoRaWAN_Communication_Debug1.png/600px-LoRaWAN_Communication_Debug1.png||height="596" width="600"]]
471
472 Console Output from End device to see the transmit frequency
473
474 User can run **AT+CFG **command to print configuration information.
475
476 * Is the device in OTAA mode or ABP mode? **AT+NJM=1** (OTAA mode), **AT+NJM=0** (ABP mode)
477
478 [[image:https://wiki.dragino.com/images/thumb/c/c5/LoRaWAN_Communication_Debug23.png/600px-LoRaWAN_Communication_Debug23.png||height="514" width="600"]]
479
480 Console Output from End device to see the transmit frequency
481
482 **2. Gateway packet traffic in gateway web or ssh. we can check:**
483
484 * (((
485 If the gateway receive the Join request packet from sensor? (If this fail, check if the gateway and sensor works on the match frequency)
486 )))
487 * (((
488 If the gateway gets the Join Accept message from server and transmit it via LoRa?
489 )))
490
491 [[image:https://wiki.dragino.com/images/thumb/1/1c/OTAA_Join-2.png/600px-OTAA_Join-2.png||height="325" width="600"]]
492
493 Console Output from Gateway to see packets between end node and server.
494
495
496 **3. Gateway Traffic Page in LoRaWAN Server**
497
498 * (((
499 If the Join Request packet arrive the gateway traffic in server? If not, check the internet connection and gateway LoRaWAN server settings.
500 )))
501 * (((
502 If the server send back a Join Accept for the Join Request? if not, check if the keys from the device match the keys you put in the server, or try to choose a different server route for this end device.
503 )))
504 * (((
505 If the Join Accept message are in correct frequency? If you set the server to use US915 band, and your end node and gateway is EU868, you will see the Join Accept message are in US915 band so no possible to Join success.
506 )))
507
508 [[image:https://wiki.dragino.com/images/thumb/d/da/LoRaWAN_Communication_Debug22.png/600px-LoRaWAN_Communication_Debug22.png||height="268" width="600"]]
509
510 The Traffic for the End node in the server, use TTNv3 as example
511
512
513 [[image:https://wiki.dragino.com/images/thumb/4/4b/LoRaWAN_Communication_Debug3.png/600px-LoRaWAN_Communication_Debug3.png||height="281" width="600"]]
514
515 The Traffic for the End node in the server, use TTNv3 as example
516
517 **4. Data Page in LoRaWAN server**
518
519 * (((
520 (((
521 (((
522 If this data page shows the Join Request message from the end node? If not, most properly you have wrong settings in the keys. Keys in the server doesn't match the keys in End Node.
523 )))
524 )))
525 )))
526
527 [[image:https://wiki.dragino.com/images/thumb/9/99/LoRaWAN_Communication_Debug4.png/600px-LoRaWAN_Communication_Debug4.png||height="222" width="600"]]
528
529 The data for the end device set in server
530
531 [[image:https://wiki.dragino.com/images/thumb/6/69/LoRaWAN_Communication_Debug5.png/600px-LoRaWAN_Communication_Debug5.png||height="279" width="600"]]
532
533 Check if OTAA Keys match the keys in device
Copyright ©2010-2024 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0