Wiki source code of PG1302 -- LoRaWAN Concentrator User Manual
Last modified by Kilight Cao on 2024/06/22 10:43
Hide last authors
author | version | line-number | content |
---|---|---|---|
![]() |
36.1 | 1 | (% style="text-align:center" %) |
![]() |
104.3 | 2 | [[image:image-20220616085956-1.jpeg||height="609" width="609"]] |
![]() |
1.1 | 3 | |
4 | |||
5 | |||
6 | |||
![]() |
133.2 | 7 | **Table of Contents:** |
![]() |
1.1 | 8 | |
![]() |
73.1 | 9 | {{toc/}} |
![]() |
1.1 | 10 | |
![]() |
72.1 | 11 | |
12 | (% class="wikigeneratedid" id="H" %) | ||
13 | ((( | ||
14 | |||
15 | ))) | ||
16 | |||
![]() |
110.2 | 17 | = 1. Introduction = |
![]() |
36.1 | 18 | |
![]() |
110.2 | 19 | == 1.1 What is PG1302 LoRaWAN Concentrator? == |
![]() |
108.19 | 20 | |
![]() |
98.16 | 21 | |
![]() |
108.10 | 22 | ((( |
![]() |
128.2 | 23 | The PG1302 is a (% style="color:blue" %)**multi-channel high-performance transmitter/receiver**(%%) designed to simultaneously receive several LoRa packets using random spreading factors on random channels. Its goal is to enable robust connection between a central wireless data concentrator and a massive amount of wireless end-points spread over a very wide range of distances. |
![]() |
108.10 | 24 | ))) |
![]() |
87.1 | 25 | |
![]() |
108.10 | 26 | ((( |
![]() |
100.1 | 27 | The PG1302 is designed to use with Raspberry Pi to build smart metering fixed networks and Internet of Things applications with up to 5000 nodes per km2 in a moderately interfered environment. |
![]() |
108.10 | 28 | ))) |
![]() |
87.1 | 29 | |
![]() |
108.10 | 30 | ((( |
![]() |
128.2 | 31 | PG1302 is fully compatible with (% style="color:blue" %)**RPi3/4 or Tinker Board**(%%), users can use the pre-build OS from Dragino to set up and easy to use the module by Web UI. Or install the raw LoRaWAN driver in the existing OS. |
![]() |
108.10 | 32 | ))) |
![]() |
100.1 | 33 | |
34 | |||
![]() |
110.2 | 35 | == 1.2 Features == |
![]() |
108.3 | 36 | |
![]() |
36.1 | 37 | |
38 | * Base on Semtech SX1302 solution | ||
![]() |
152.1 | 39 | * Support Raspberry Pi 3B/3B+/4/4B/5/5B, TinkerBoard2/2S, Orange Pi Pc/PC PLUS. |
![]() |
36.1 | 40 | * Up to -140dBm sensitivity |
41 | * Support 3.3v and 5v. | ||
42 | * Mini-PCIe Interface | ||
43 | * Converter board to support Raspberry Pi | ||
44 | |||
![]() |
110.2 | 45 | == 1.3 General Interfaces for PG1302 == |
![]() |
108.6 | 46 | |
47 | |||
![]() |
36.1 | 48 | * SPI interface for LoRa |
49 | * Power Input: 5v, 1A | ||
50 | * 1 x I-PEX for LoRa | ||
![]() |
111.1 | 51 | * Working Temperature: -40 ℃ ~~ 80℃ |
![]() |
36.1 | 52 | |
![]() |
110.2 | 53 | == 1.4 Pin Mapping == |
![]() |
36.1 | 54 | |
![]() |
108.3 | 55 | |
![]() |
36.1 | 56 | |
![]() |
151.2 | 57 | [[image:image-20240506170941-3.png]] |
![]() |
108.3 | 58 | |
![]() |
110.2 | 59 | == 1.5 LEDs == |
![]() |
36.1 | 60 | |
![]() |
108.3 | 61 | |
![]() |
108.16 | 62 | ((( |
![]() |
108.10 | 63 | TX: Blink when transmit a packet |
![]() |
145.1 | 64 | RX: Blink when receiving a packet |
![]() |
108.10 | 65 | Config: Always ON |
![]() |
108.16 | 66 | ))) |
![]() |
36.1 | 67 | |
![]() |
104.5 | 68 | |
![]() |
110.2 | 69 | == 1.6 Power Consumption == |
![]() |
108.3 | 70 | |
![]() |
62.1 | 71 | |
![]() |
108.3 | 72 | <300mA @ 3.3v. |
73 | |||
![]() |
106.2 | 74 | Detail Test Report see [[this link>>https://www.dropbox.com/sh/89virm4y0b02c7i/AAA-cgQEsSc8gNGFYAB0qZ_Za?dl=0]] |
![]() |
104.5 | 75 | |
![]() |
106.2 | 76 | |
![]() |
145.1 | 77 | == 1.7 Antenna Installation == |
![]() |
108.3 | 78 | |
![]() |
62.1 | 79 | |
![]() |
145.1 | 80 | Left: **GPS antenna** |
81 | |||
82 | Right: **LoRa Antenna** | ||
83 | |||
84 | [[image:https://www.thethingsnetwork.org/forum/uploads/default/original/3X/6/2/624619afa8d75a2c21bfd1e3687afaa75ad61cbc.jpeg||alt="PG1302_70"]] | ||
85 | |||
86 | |||
87 | |||
88 | |||
89 | |||
90 | == 1.8 Applications == | ||
91 | |||
92 | |||
![]() |
36.1 | 93 | * Smart Buildings & Home Automation |
94 | * Logistics and Supply Chain Management | ||
95 | * Smart Metering | ||
96 | * Smart Agriculture | ||
97 | * Smart Cities | ||
98 | * Smart Factory | ||
99 | |||
![]() |
110.2 | 100 | = 2. Example: Set up as LoRaWAN gateway = |
![]() |
108.19 | 101 | |
![]() |
110.2 | 102 | == 2.1 System structure == |
![]() |
108.19 | 103 | |
![]() |
36.1 | 104 | |
![]() |
108.10 | 105 | ((( |
![]() |
98.3 | 106 | This example is an example to show how to set up the PG1302 + RPi as a LoRaWAN gateway to use with [[TheThingsNetwork>>url:http://www.thethingsnetwork.org/]](TTN) LoRaWAN server. Set up method for other server are similar. |
![]() |
108.19 | 107 | |
108 | |||
![]() |
108.10 | 109 | ))) |
![]() |
36.1 | 110 | |
111 | [[image:1651743698677-436.png||height="457" width="686"]] | ||
112 | |||
113 | |||
![]() |
110.2 | 114 | == 2.2 Hardware Installation == |
![]() |
103.1 | 115 | |
![]() |
108.3 | 116 | |
![]() |
98.27 | 117 | (% style="color:red" %)**Important Notice: Please power the RPI with 5V,3A cable.** |
![]() |
36.1 | 118 | |
![]() |
144.3 | 119 | [[image:image-20220621104746-1.png||height="351" width="415"]] |
![]() |
36.1 | 120 | |
121 | |||
![]() |
148.1 | 122 | = 3. Install the software. = |
![]() |
36.1 | 123 | |
![]() |
108.11 | 124 | |
![]() |
147.1 | 125 | **Raspberry Pi 3B/3B+/4B/5B** |
![]() |
36.1 | 126 | |
![]() |
103.1 | 127 | * Flash SD card with Dragino pre-build image which supports Web UI. |
![]() |
115.1 | 128 | * Install [[Dragino-FWD>>http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20All%20Gateway%20models/PG1302/#H5.2.2.A0Selecttheappropriatedeviceversiontodownload:]] in existing RPi OS. |
![]() |
36.1 | 129 | |
![]() |
112.1 | 130 | **TinkerBoard2/2S, ** |
![]() |
111.2 | 131 | |
![]() |
115.1 | 132 | * Install [[Dragino-FWD>>http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20All%20Gateway%20models/PG1302/#H5.2.2.A0Selecttheappropriatedeviceversiontodownload:]] in the existing OS. |
![]() |
112.1 | 133 | |
134 | **Orange Pi PC/PC PLUS.** | ||
135 | |||
![]() |
115.1 | 136 | * Install [[Dragino-FWD>>http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20All%20Gateway%20models/PG1302/#H5.2.2.A0Selecttheappropriatedeviceversiontodownload:]] in the existing OS. |
![]() |
112.1 | 137 | |
![]() |
110.2 | 138 | = 4. Flash with pre-build image = |
![]() |
36.1 | 139 | |
![]() |
110.2 | 140 | == 4.1 Download the dragino image for RPI == |
![]() |
108.19 | 141 | |
![]() |
103.1 | 142 | |
![]() |
108.6 | 143 | ((( |
144 | Download PG1302_for_Rpi4_64_with_webui from: [[https:~~/~~/www.dropbox.com/sh/f6nbldh1qbspya5/AACgL6pDkwdBQO1BQqq_Nubwa?dl=0>>https://www.dropbox.com/sh/f6nbldh1qbspya5/AACgL6pDkwdBQO1BQqq_Nubwa?dl=0]] | ||
145 | ))) | ||
![]() |
62.1 | 146 | |
![]() |
108.3 | 147 | |
![]() |
110.2 | 148 | == 4.2 Flash the image to an SD card == |
![]() |
108.6 | 149 | |
![]() |
36.1 | 150 | |
![]() |
103.1 | 151 | Flash the image to the SD card: |
152 | |||
![]() |
36.1 | 153 | [[image:1651744119133-233.png||height="373" width="621"]] |
154 | |||
155 | |||
![]() |
108.3 | 156 | (% style="color:red" %)**Note: Download the flash tool following this link:**[[https:~~/~~/www.balena.io/etcher/>>https://www.balena.io/etcher/]] |
![]() |
36.1 | 157 | |
![]() |
62.1 | 158 | |
![]() |
110.2 | 159 | == 4.3 Access the Linux console == |
![]() |
108.3 | 160 | |
![]() |
103.1 | 161 | |
![]() |
108.11 | 162 | ((( |
![]() |
108.3 | 163 | Connect the RPI Ethernet port to your router, RPi will obtain an IP address from your router. In the router's management portal, you should be able to find what IP address the router has assigned to the RPI. You can use this IP to connect the WEB UI or SSH access of RPI. Make sure your PC and the RPI is in the same network, then use a SSH tool (such as [[putty>>url:http://www.chiark.greenend.org.uk/~~sgtatham/putty/download.html]]) to access it. Below are screenshots |
![]() |
108.11 | 164 | ))) |
![]() |
108.3 | 165 | |
![]() |
108.7 | 166 | |
![]() |
36.1 | 167 | [[image:1651744193675-591.png||height="450" width="466"]] |
168 | |||
![]() |
98.11 | 169 | The account details for Web Login are: |
![]() |
36.1 | 170 | |
![]() |
98.28 | 171 | ((( |
172 | **~ (% style="color:#0000ff" %)User Name: root(%%)** | ||
173 | ))) | ||
![]() |
36.1 | 174 | |
![]() |
98.28 | 175 | ((( |
176 | **~ (% style="color:#0000ff" %)Password: dragino(%%)** | ||
177 | ))) | ||
![]() |
36.1 | 178 | |
![]() |
98.28 | 179 | ((( |
180 | |||
181 | ))) | ||
![]() |
36.1 | 182 | |
![]() |
98.28 | 183 | ((( |
184 | **~ (% style="color:#0000ff" %)Backup account(%%)** | ||
185 | ))) | ||
![]() |
36.1 | 186 | |
![]() |
98.28 | 187 | ((( |
188 | **~ (% style="color:#0000ff" %)Pi/dragino(%%)** | ||
![]() |
103.1 | 189 | |
190 | |||
![]() |
98.28 | 191 | ))) |
![]() |
36.1 | 192 | |
![]() |
103.1 | 193 | After logging in, you will be in the Linux console and type the command here. |
![]() |
36.1 | 194 | |
195 | [[image:1651744358515-107.png||height="366" width="581"]] | ||
196 | |||
197 | |||
![]() |
110.2 | 198 | == 4.4 Access the WebUI of RPi4 == |
![]() |
108.3 | 199 | |
![]() |
110.2 | 200 | === 4.4.1 Home page === |
![]() |
62.1 | 201 | |
![]() |
108.19 | 202 | |
![]() |
108.12 | 203 | ((( |
![]() |
108.15 | 204 | Open a browser on the PC and type the RPI ip address **http:~/~/IP_ADDRESS ** (If the IP is assigned by the uplink router) |
![]() |
98.5 | 205 | You will see the login interface of RPI as shown below. |
206 | The account details for Web Login are: | ||
![]() |
108.12 | 207 | ))) |
![]() |
36.1 | 208 | |
![]() |
98.22 | 209 | ((( |
![]() |
98.29 | 210 | **~ (% style="color:#0000ff" %)User Name: root(%%)** |
211 | (% style="color:#0000ff" %)** Password: dragino** | ||
![]() |
108.3 | 212 | |
213 | |||
![]() |
98.22 | 214 | ))) |
![]() |
36.1 | 215 | |
216 | [[image:1651744457761-993.png||height="352" width="621"]] | ||
217 | |||
218 | |||
![]() |
110.2 | 219 | === 4.4.2 LoRa Page === |
![]() |
108.3 | 220 | |
![]() |
103.1 | 221 | |
![]() |
98.7 | 222 | This page shows the LoRa Radio Settings. There are a set of default frequency band according to LoRaWAN protocol, and user can customize the band* as well. |
![]() |
36.1 | 223 | |
![]() |
108.19 | 224 | |
![]() |
36.1 | 225 | [[image:1651744554845-970.png||height="328" width="621"]] |
226 | |||
![]() |
108.19 | 227 | |
![]() |
98.7 | 228 | Different PG1302 hardware version can support different frequency range: |
![]() |
36.1 | 229 | |
![]() |
108.17 | 230 | * (% style="color:red" %)**868: valid frequency: 863Mhz ~~ 870Mhz. for bands EU868, RU864, IN865 or KZ865.** |
231 | * (% style="color:red" %)**915: valid frequency: 902Mhz ~~ 928Mhz. for bands US915, AU915, AS923 or KR920** | ||
![]() |
36.1 | 232 | |
![]() |
108.9 | 233 | After user choose the frequency plan, he can see the actually frequency in used by checking the (% style="color:#037691" %)**page LogRead ~-~-> LoRa Log** |
![]() |
36.1 | 234 | |
![]() |
108.3 | 235 | (% style="color:red" %)**Note *: [[See this instruction for how to customize frequency band>>doc:Main.How to customized LoRaWAN frequency band.WebHome]]** |
![]() |
36.1 | 236 | |
237 | |||
![]() |
110.2 | 238 | === 4.4.3 LoRaWAN Page === |
![]() |
36.1 | 239 | |
![]() |
110.2 | 240 | ==== 4.4.3.1 Semtech UDP ==== |
![]() |
36.1 | 241 | |
![]() |
108.19 | 242 | |
![]() |
36.1 | 243 | [[image:1651744767914-283.png||height="352" width="621"]] |
244 | |||
![]() |
108.17 | 245 | |
![]() |
108.3 | 246 | (% style="color:red" %)**Note *: [[See this instruction for how to configure TTN>>doc:Main.Notes for TTN.WebHome]].** |
![]() |
36.1 | 247 | |
248 | |||
![]() |
110.2 | 249 | ==== 4.4.3.2 Basic Station ==== |
![]() |
108.3 | 250 | |
![]() |
36.1 | 251 | |
252 | [[image:1651744890629-683.png||height="380" width="621"]] | ||
253 | |||
254 | |||
![]() |
108.3 | 255 | (% style="color:red" %)**Note *: [[See this instruction for how to configure AWS-loT-Core>>doc:Main.AWS IoT Core for LoRaWAN.WebHome]].** |
![]() |
36.1 | 256 | |
![]() |
108.3 | 257 | |
![]() |
110.2 | 258 | === 4.4.4 LogRead === |
![]() |
108.3 | 259 | |
![]() |
110.2 | 260 | ==== 4.4.4.1 LoRa Log ==== |
![]() |
36.1 | 261 | |
![]() |
108.19 | 262 | |
![]() |
36.1 | 263 | [[image:1651744955955-452.png||height="571" width="621"]] |
264 | |||
![]() |
108.19 | 265 | |
![]() |
98.7 | 266 | Show the frequency for LoRa Radio and traffics. |
![]() |
36.1 | 267 | |
268 | |||
![]() |
110.2 | 269 | ==== 4.4.4.2 System Log ==== |
![]() |
108.3 | 270 | |
![]() |
103.1 | 271 | |
![]() |
98.7 | 272 | Show system log. |
![]() |
36.1 | 273 | |
274 | [[image:1651745003470-264.png||height="477" width="621"]] | ||
275 | |||
276 | |||
![]() |
110.2 | 277 | ==== 4.4.4.3 Record Log ==== |
![]() |
108.3 | 278 | |
![]() |
103.1 | 279 | |
![]() |
98.7 | 280 | **Record the system log.** |
![]() |
36.1 | 281 | |
282 | [[image:1651745069814-662.png||height="144" width="621"]] | ||
283 | |||
284 | |||
![]() |
110.2 | 285 | = 5. Install stand-alone LoRa Packet Forwarder = |
![]() |
108.3 | 286 | |
![]() |
116.1 | 287 | == 5.1 Choose the right installation package for your OS == |
![]() |
36.1 | 288 | |
![]() |
108.19 | 289 | |
![]() |
116.1 | 290 | ((( |
291 | **draginofwd-32bit (RPI, Orange PI)** | ||
292 | |||
293 | **Download URL:** https:~/~/www.dragino.com/downloads/downloads/LoRa_Gateway/PG1302/software/draginofwd-32bit.deb | ||
294 | |||
295 | **Linux Command:** wget https:~/~/www.dragino.com/downloads/downloads/LoRa_Gateway/PG1302/software/draginofwd-32bit.deb && dpkg -i draginofwd-32bit.deb | ||
296 | |||
297 | |||
298 | **dragino-64bit (RPI, Orange PI)** | ||
299 | |||
300 | **Download URL: **https:~/~/www.dragino.com/downloads/downloads/LoRa_Gateway/PG1302/software/draginofwd-64bit.deb | ||
301 | ))) | ||
302 | |||
303 | **Linux Command: **wget https:~/~/www.dragino.com/downloads/downloads/LoRa_Gateway/PG1302/software/draginofwd-64bit.deb && dpkg -i draginofwd-64bit.deb | ||
304 | |||
305 | |||
306 | **dragino-tiker-32bit (Tinker Board)** | ||
307 | |||
308 | **Download URL: **https:~/~/www.dragino.com/downloads/downloads/LoRa_Gateway/PG1302/software/draginofwd-tinker-32bit.deb | ||
309 | |||
310 | **Linux Command: **wget https:~/~/www.dragino.com/downloads/downloads/LoRa_Gateway/PG1302/software/draginofwd-tinker-32bit.deb && dpkg -i draginofwd-tinker-32bit.deb | ||
311 | |||
312 | |||
313 | **Install details:** | ||
314 | |||
315 | [[image:image-20220928181226-1.png||height="218" width="1100"]] | ||
316 | |||
317 | |||
![]() |
98.7 | 318 | RPI in this example is RPI model 4B with fresh Raspbian OS install. |
![]() |
36.1 | 319 | |
![]() |
98.30 | 320 | (% class="box" %) |
321 | ((( | ||
![]() |
128.2 | 322 | **~ pi@raspberrypi:~~$ cat /etc/os-release |
![]() |
36.1 | 323 | PRETTY_NAME="Raspbian GNU/Linux 8 (jessie)" |
324 | NAME="Raspbian GNU/Linux" | ||
325 | VERSION_ID="8" | ||
326 | VERSION="8 (jessie)" | ||
327 | ID=raspbian | ||
328 | ID_LIKE=debian | ||
329 | HOME_URL="http:~/~/www.raspbian.org/" | ||
330 | SUPPORT_URL="http:~/~/www.raspbian.org/RaspbianForums" | ||
![]() |
128.2 | 331 | BUG_REPORT_URL="http:~/~/www.raspbian.org/RaspbianBugs"** |
![]() |
103.1 | 332 | |
333 | |||
![]() |
98.30 | 334 | ))) |
![]() |
36.1 | 335 | |
336 | |||
![]() |
117.1 | 337 | == 5.2 Select the mode of connection to the server == |
![]() |
116.1 | 338 | |
339 | |||
![]() |
117.1 | 340 | The Dragino LoRa Packet Forware supports the Semtech UDP and Basic Station mode. |
![]() |
108.3 | 341 | |
![]() |
117.1 | 342 | The User can choose one of the methods as the connection mode. |
![]() |
108.3 | 343 | |
![]() |
117.1 | 344 | |
345 | **~1. Semtech UDP Mode ~-~-> 5.2.1** | ||
346 | |||
347 | **2. Basic Station Mode ~-~-> 5.2.2** | ||
348 | |||
349 | |||
350 | === 5.2.1 Semtech UDP Mode === | ||
351 | |||
352 | |||
![]() |
125.3 | 353 | ==== **a). Get a gateway EUI from the device ETH MAC.** ==== |
![]() |
117.1 | 354 | |
355 | |||
![]() |
103.1 | 356 | In RPI, run the below command to get a Gateway ID |
![]() |
36.1 | 357 | |
![]() |
98.11 | 358 | (% class="box infomessage" %) |
359 | ((( | ||
![]() |
108.3 | 360 | **~ ifconfig eth0** |
![]() |
98.11 | 361 | ))) |
![]() |
36.1 | 362 | |
363 | [[image:1651745210205-512.png||height="130" width="621"]] | ||
364 | |||
![]() |
108.3 | 365 | |
![]() |
91.1 | 366 | ((( |
![]() |
99.2 | 367 | ((( |
![]() |
98.7 | 368 | We got the ether (eth0 MAC) address is b8:27:eb:49:62:bc). Add ffff at the end and remove “:” to get the gateway ID: b827ebxxxxbcffff. Input this to TTN v3. Make sure to select legacy packet forwarder. |
![]() |
108.3 | 369 | |
![]() |
117.1 | 370 | |
371 | |||
![]() |
125.3 | 372 | ==== **b). Input this Gateway EUI to the TTN-Stack** ==== |
373 | |||
374 | |||
![]() |
91.1 | 375 | ))) |
![]() |
99.2 | 376 | ))) |
![]() |
36.1 | 377 | |
378 | [[image:1651745267862-321.png||height="526" width="621"]] | ||
379 | |||
380 | [[image:1651745306744-481.png||height="478" width="621"]] | ||
381 | |||
![]() |
108.3 | 382 | |
![]() |
62.1 | 383 | |
![]() |
125.3 | 384 | ==== **c). After Register, the status should show not connected as below:** ==== |
385 | |||
386 | |||
![]() |
36.1 | 387 | [[image:1651745366987-458.png||height="363" width="621"]] |
388 | |||
389 | |||
![]() |
108.3 | 390 | |
![]() |
125.3 | 391 | ==== **d). Enable SPI and I2C on your device** ==== |
392 | |||
393 | |||
![]() |
117.1 | 394 | **the below example is using Raspberry 4B.** |
![]() |
108.3 | 395 | |
![]() |
36.1 | 396 | |
![]() |
108.3 | 397 | Run (% style="background-color:yellow" %) **sudo raspi-config**(%%) to open the config window |
![]() |
36.1 | 398 | |
![]() |
98.24 | 399 | [[image:1651745476754-240.png||height="234" width="629"]] |
![]() |
36.1 | 400 | |
![]() |
110.2 | 401 | |
![]() |
36.1 | 402 | [[image:image-20220505181135-1.png]] |
403 | |||
![]() |
110.2 | 404 | |
![]() |
98.24 | 405 | [[image:image-20220505181135-2.png||height="229" width="622"]] |
![]() |
36.1 | 406 | |
![]() |
108.3 | 407 | |
408 | |||
![]() |
125.3 | 409 | ==== **e). Access the root account:** ==== |
![]() |
36.1 | 410 | |
![]() |
99.2 | 411 | ((( |
![]() |
98.24 | 412 | [[image:1651745583363-614.png||height="151" width="732"]] |
![]() |
108.3 | 413 | |
![]() |
125.3 | 414 | |
![]() |
108.3 | 415 | |
![]() |
99.2 | 416 | ))) |
![]() |
36.1 | 417 | |
![]() |
125.3 | 418 | ==== **f). Modify the configuration of FWD** ==== |
![]() |
36.1 | 419 | |
420 | |||
![]() |
117.1 | 421 | ((( |
422 | After installation, user can find the configuration file in** (% style="color:#0000ff" %)/etc/lora/ (%%)**Replace the gateway ID we got above to the (% style="color:#0000ff" %)**gateway_ID** (%%)in file (% style="color:#0000ff" %)**local_conf.json.** | ||
423 | ))) | ||
![]() |
36.1 | 424 | |
![]() |
99.2 | 425 | ((( |
![]() |
117.1 | 426 | The default LoRaWAN server points to localhost, user need to put the correct server address to the server_address field in file (% style="color:#0000ff" %)**local_conf.json**(%%), like below. |
![]() |
108.3 | 427 | |
428 | |||
![]() |
117.1 | 429 | the User can find the lora configuration directory in (% style="color:#0000ff" %)**/etc/lora/**(%%) there are the cfg-302 directory and the global_conf.json, and local_conf.json files. |
![]() |
36.1 | 430 | |
![]() |
117.1 | 431 | /etc/lora/ |
432 | ├── cfg-302 ~-~--> global configuration file | ||
433 | ├── devskey ~-~--> Database | ||
434 | ├── global_conf.json ~-~--> Frequency plan for current applications | ||
435 | └── local_conf.json ~-~--> Local fwd configuration | ||
![]() |
36.1 | 436 | |
![]() |
117.1 | 437 | At default, the users need to change two configurations file: global_conf.json and local_conf.json. |
![]() |
108.3 | 438 | |
![]() |
125.3 | 439 | |
![]() |
117.1 | 440 | ===== **1.) Configure gateway EUI and server address, port for fwd** ===== |
![]() |
36.1 | 441 | |
![]() |
108.4 | 442 | |
![]() |
88.1 | 443 | ))) |
![]() |
36.1 | 444 | |
445 | [[image:1651745709709-887.png||height="820" width="621"]] | ||
446 | |||
447 | |||
![]() |
117.1 | 448 | **Note: Users can find the TTN v3 server address from [[Server Addresses ~| The Things Stack for LoRaWAN (thethingsindustries.com)>>url:https://www.thethingsindustries.com/docs/getting-started/server-addresses/#deployments]]** |
![]() |
36.1 | 449 | |
450 | |||
![]() |
117.1 | 451 | ===== **2). Override the global_conf.json file by selecting the appropriate frequency plan for your region in cfg-302** ===== |
452 | |||
453 | |||
454 | the default frequency band is US915 in the (% style="color:#0000ff" %)**global_conf.json**(%%) file. | ||
455 | |||
![]() |
36.1 | 456 | [[image:1651745838008-820.png||height="650" width="621"]] |
457 | |||
![]() |
108.4 | 458 | |
![]() |
117.1 | 459 | If the user wants to change to other frequency bands, the User can copy the file from(% style="color:#0000ff" %)** /etc/lora/cfg-302**(%%) ** **and put it into** (% style="color:#0000ff" %)/etc/lora/global_conf.json(%%).** |
![]() |
36.1 | 460 | |
![]() |
117.1 | 461 | **//eg: cp /etc/lora/cfg-302/EU-global_conf.json /etc/lora/global_conf.json //** |
![]() |
36.1 | 462 | |
![]() |
108.21 | 463 | |
![]() |
117.1 | 464 | |
465 | ====== **Selecting the appropriate frequency plan for your region in cfg-302.** ====== | ||
466 | |||
![]() |
98.24 | 467 | [[image:1651745867516-322.png||height="83" width="740"]] |
![]() |
36.1 | 468 | |
469 | |||
![]() |
117.1 | 470 | ====== **Override the global_conf.json** ====== |
![]() |
108.4 | 471 | |
![]() |
108.17 | 472 | (% class="box infomessage" %) |
473 | ((( | ||
![]() |
108.21 | 474 | **cp /etc/lora/cfg-302/EU-global_conf.json /etc/lora/global_conf.json** |
![]() |
108.17 | 475 | ))) |
476 | |||
![]() |
98.24 | 477 | [[image:1651745984006-868.png||height="87" width="745"]] |
![]() |
36.1 | 478 | |
![]() |
108.17 | 479 | |
![]() |
125.3 | 480 | ==== (% style="color:inherit; font-family:inherit; font-size:23px" %)**g). Running the Fwd Server**(%%) ==== |
![]() |
36.1 | 481 | |
![]() |
108.4 | 482 | |
![]() |
91.1 | 483 | ((( |
![]() |
117.1 | 484 | Run the below command to restart the dragino_fwd: |
![]() |
91.1 | 485 | ))) |
![]() |
36.1 | 486 | |
![]() |
91.1 | 487 | ((( |
![]() |
98.8 | 488 | (% class="box infomessage" %) |
489 | ((( | ||
![]() |
108.4 | 490 | **sudo systemctl start draginofwd** |
![]() |
91.1 | 491 | ))) |
![]() |
98.8 | 492 | ))) |
![]() |
36.1 | 493 | |
![]() |
91.1 | 494 | ((( |
![]() |
98.8 | 495 | debug check the ruing status of fwd: |
![]() |
91.1 | 496 | ))) |
![]() |
36.1 | 497 | |
![]() |
91.1 | 498 | ((( |
![]() |
98.8 | 499 | (% class="box infomessage" %) |
500 | ((( | ||
![]() |
108.4 | 501 | **sudo systemctl status draginofwd** |
![]() |
91.1 | 502 | ))) |
![]() |
98.8 | 503 | ))) |
![]() |
36.1 | 504 | |
![]() |
98.24 | 505 | [[image:1651746045057-414.png||height="193" width="729"]] |
![]() |
36.1 | 506 | |
![]() |
108.4 | 507 | |
![]() |
117.1 | 508 | Wait for a few minutes, the gateway will be online/active on the TTN-Stack. |
![]() |
108.4 | 509 | |
![]() |
36.1 | 510 | [[image:1651746078253-168.png||height="372" width="621"]] |
511 | |||
512 | |||
![]() |
108.4 | 513 | |
![]() |
117.1 | 514 | Get the draginofwd real-time running log: |
![]() |
36.1 | 515 | |
![]() |
95.1 | 516 | (% class="box infomessage" %) |
517 | ((( | ||
![]() |
108.4 | 518 | **~ sudo journalctl -u draginofwd -f** |
![]() |
95.1 | 519 | ))) |
![]() |
36.1 | 520 | |
![]() |
98.37 | 521 | [[image:1651746111963-838.png||height="184" width="730"]] |
![]() |
36.1 | 522 | |
![]() |
93.1 | 523 | |
![]() |
108.21 | 524 | |
![]() |
108.4 | 525 | If there are LoRaWAN nodes transmitting nearby, we can see the traffic in (% style="color:#037691" %)**TTN v3 –> Gateway ~-~-> Live data** |
526 | |||
![]() |
94.1 | 527 | [[image:1651746139304-966.png||height="326" width="621"]] |
![]() |
93.1 | 528 | |
![]() |
108.2 | 529 | |
![]() |
125.3 | 530 | ==== **h). Commands to handle service** ==== |
![]() |
93.1 | 531 | |
![]() |
98.37 | 532 | * (% style="color:#0000ff" %)**Stop** (%%)dragino_fwd service: sudo systemctl stop draginofwd |
533 | * (% style="color:#0000ff" %)**Disable**(%%) dragino_fwd auto run after boot: sudo systemctl disable draginofwd | ||
534 | * (% style="color:#0000ff" %)**Start** (%%)dragino_fwd : sudo systemctl start draginofwd | ||
535 | * (% style="color:#0000ff" %)**Auto run**(%%) dragino_fwd after boot: sudo systemctl enable draginofwd | ||
536 | * (% style="color:#0000ff" %)**Show status** (%%)of dragino_fwd: sudo systemctl status draginofwd | ||
![]() |
36.1 | 537 | |
![]() |
154.1 | 538 | |
539 | |||
540 | |||
![]() |
156.1 | 541 | === 5.2.2 Basic Station Mode. === |
![]() |
154.1 | 542 | |
543 | |||
![]() |
156.1 | 544 | The following example is connecting to TTNv3 via basic station: |
![]() |
117.1 | 545 | |
![]() |
156.1 | 546 | **[[Server Addresses ~| The Things Stack for Basic Station (thethingsindustries.com)>>https://console.cloud.thethings.network/]]** |
![]() |
117.1 | 547 | |
![]() |
156.1 | 548 | |
![]() |
125.3 | 549 | ==== **a). Get a gateway EUI from the device ETH MAC.** ==== |
550 | |||
551 | |||
![]() |
125.1 | 552 | In RPI, run the below command to get a Gateway EUI |
![]() |
117.1 | 553 | |
554 | (% class="box infomessage" %) | ||
555 | ((( | ||
556 | **~ ifconfig eth0** | ||
557 | ))) | ||
558 | |||
559 | [[image:1651745210205-512.png||height="130" width="621"]] | ||
560 | |||
561 | |||
562 | ((( | ||
563 | ((( | ||
564 | We got the ether (eth0 MAC) address is b8:27:eb:49:62:bc). Add ffff at the end and remove “:” to get the gateway ID: b827ebxxxxbcffff. Input this to TTN v3. Make sure to select legacy packet forwarder. | ||
565 | ))) | ||
566 | ))) | ||
567 | |||
568 | |||
569 | |||
![]() |
125.3 | 570 | ==== **b). Register the gateway with the Basic Station Mode on the TTN-Stack** ==== |
![]() |
117.1 | 571 | |
572 | |||
![]() |
125.1 | 573 | [[image:image-20230329164417-5.png]] |
![]() |
117.1 | 574 | |
575 | |||
576 | |||
![]() |
125.3 | 577 | ==== **c). Download the gateway API keys, and then upload them to the gateway.** ==== |
![]() |
117.1 | 578 | |
579 | |||
![]() |
125.1 | 580 | [[image:image-20230329164704-6.png]] |
![]() |
117.1 | 581 | |
582 | |||
![]() |
125.3 | 583 | ==== **d). The status Shows disconnect.** ==== |
![]() |
117.1 | 584 | |
![]() |
125.3 | 585 | |
![]() |
125.1 | 586 | [[image:image-20230329165619-7.png||height="568" width="948"]] |
![]() |
117.1 | 587 | |
588 | |||
![]() |
125.3 | 589 | ==== **e.) Uploda API keys into the gateway** ==== |
![]() |
117.1 | 590 | |
![]() |
125.3 | 591 | |
![]() |
154.1 | 592 | The user can find the Basic Station configuration directory in (% style="color:#0000ff" %)**/etc/station/:** |
![]() |
117.1 | 593 | |
![]() |
125.1 | 594 | //**directory tree:**// |
![]() |
117.1 | 595 | |
![]() |
154.1 | 596 | /etc/station/ |
597 | └── station.conf ~-~--> station configuration file | ||
![]() |
125.1 | 598 | |
599 | |||
600 | **and then upload the downloaded keys to this directory((% style="color:#0000ff" %)/etc/station/(%%))** | ||
601 | |||
602 | eg: | ||
603 | |||
![]() |
154.1 | 604 | /etc/station/. |
605 | ├── cups.key | ||
606 | ├── cups.trust | ||
607 | ├── cups.uri | ||
608 | ├── lns.key | ||
609 | └── station.conf | ||
610 | |||
![]() |
125.1 | 611 | |
![]() |
156.1 | 612 | **lns.key and cups.key are generated by the preceding steps** |
613 | |||
614 | |||
615 | **Download cups.trust** | ||
616 | |||
617 | (% class="box infomessage" %) | ||
618 | ((( | ||
619 | wget [[dragino.com/downloads/downloads/LoRa_Gateway/LPS8/Firmware/customized_script/cups.trust>>url:https://www.dragino.com/downloads/downloads/LoRa_Gateway/LPS8/Firmware/customized_script/cups.trust]] | ||
620 | ))) | ||
621 | |||
622 | |||
623 | **Manually create and edit the cups.uri file** | ||
624 | |||
625 | (% class="box infomessage" %) | ||
626 | ((( | ||
627 | touch cups.uri | ||
628 | |||
629 | nano cups.uri | ||
630 | ))) | ||
631 | |||
632 | Then enter the URI address of the server, for example: **https:~/~/eu1.cloud.thethings.network:443** | ||
633 | |||
634 | |||
635 | |||
![]() |
154.1 | 636 | ==== **f). Configure Gateway EUI** ==== |
![]() |
125.1 | 637 | |
![]() |
154.1 | 638 | [[image:image-20240622094409-1.png]] |
![]() |
125.1 | 639 | |
640 | |||
641 | |||
642 | |||
![]() |
154.1 | 643 | ==== **g). **Start the station service ==== |
![]() |
125.1 | 644 | |
![]() |
154.1 | 645 | After configuring the GWEUI and uploading the certificate, you can start the station service via the below command: |
![]() |
125.1 | 646 | |
![]() |
154.1 | 647 | (% class="box infomessage" %) |
648 | ((( | ||
649 | ln -sf /usr/bin/station_sx1302 /usr/bin/station | ||
650 | |||
651 | systemctl start draginostation | ||
652 | ))) | ||
653 | |||
654 | |||
![]() |
155.1 | 655 | systemctl start draginostation ~-~- start draginostation service |
![]() |
154.1 | 656 | |
![]() |
155.1 | 657 | systemctl stop draginostation ~-~- Stop draginostation service |
![]() |
154.1 | 658 | |
![]() |
155.1 | 659 | systemctl enable draginostation ~-~- enable boot auto start draginostation service |
660 | |||
661 | systemctl disable draginostation ~-~- disable boot auto start draginostation service | ||
662 | |||
663 | |||
664 | |||
![]() |
125.1 | 665 | Tree Directory: |
666 | |||
667 | /etc/station/ | ||
![]() |
154.1 | 668 | |
669 | ├── cups-bak.done | ||
670 | ├── cups-bak.key | ||
671 | ├── cups-bak.trust | ||
672 | ├── cups-bak.uri | ||
![]() |
125.1 | 673 | ├── cups.key |
674 | ├── cups.trust | ||
675 | ├── cups.uri | ||
676 | ├── lns.key | ||
677 | ├── station.conf | ||
![]() |
154.1 | 678 | ├── tc-bak.crt |
679 | ├── tc-bak.done | ||
680 | ├── tc-bak.key | ||
681 | ├── tc-bak.trust | ||
682 | ├── tc-bak.uri | ||
683 | ├── tc.crt | ||
684 | ├── tc.key | ||
685 | ├── tc.trust | ||
686 | └── tc.uri | ||
687 | |||
![]() |
125.1 | 688 | |
689 | |||
![]() |
154.1 | 690 | ==== **h). Check station running log** ==== |
![]() |
125.1 | 691 | |
692 | |||
693 | tail -f /var/log/station.log | ||
694 | |||
695 | [[image:image-20230329201624-11.png]] | ||
696 | |||
![]() |
142.1 | 697 | |
![]() |
143.1 | 698 | |
![]() |
134.1 | 699 | = 6. Add GPS support in PG1302 = |
![]() |
125.1 | 700 | |
![]() |
142.1 | 701 | The PG1302 supports GPS: |
![]() |
36.1 | 702 | |
![]() |
142.1 | 703 | [[image:image-20240118160132-1.png||height="270" width="338"]] |
704 | |||
705 | |||
706 | * **The users can find the GPS device in Raspberry: /dev/ttyS0 or /dev/ttyAMA0** | ||
707 | |||
708 | [[image:image-20240118160407-2.png||height="71" width="458"]] | ||
709 | |||
710 | |||
711 | * **Check the GPS output: cat /dev/ttyS0** | ||
712 | |||
713 | [[image:image-20240118160454-3.png]] | ||
714 | |||
715 | |||
716 | * **Add the GPS to the Semtech UDP package forwarder configuration.** | ||
717 | |||
718 | [[image:image-20240118160928-4.png||height="426" width="464"]] | ||
719 | |||
720 | |||
721 | * **Test GPS function** | ||
722 | |||
723 | **~ 1.) Stop IoT service: systemctl stop draginofwd** | ||
724 | |||
725 | |||
726 | **~ 2.) Run the fwd command and check the output** | ||
727 | |||
728 | |||
729 | [[image:image-20240118161109-5.png]] | ||
730 | |||
731 | |||
732 | **~ 3.) Trouble Shooting:** | ||
733 | |||
734 | If you get many WARNING outputs, which should be the GPS location is invalid, you need to adjust the GPS location, it is recommended to put it outdoors | ||
735 | |||
736 | |||
737 | [[image:image-20240118161333-6.png]] | ||
738 | |||
739 | |||
740 | The user can check the PG1302 board GPS LED status to check the location, | ||
741 | |||
742 | GPS location is valid ~-~--> GPS LED will light up | ||
743 | |||
744 | GPS location is invalid ~-~--> GPS LED will light down | ||
745 | |||
746 | |||
747 | [[image:image-20240118162033-7.png]] | ||
748 | |||
749 | |||
750 | |||
![]() |
134.1 | 751 | = 7. Trouble Shooting = |
![]() |
128.1 | 752 | |
![]() |
142.1 | 753 | (% class="wikigeneratedid" %) |
754 | 7.1 Failed to start the concentrator how to debug | ||
![]() |
128.1 | 755 | |
![]() |
134.1 | 756 | |
![]() |
129.1 | 757 | --When the problem "failed to start the concentrator" occurs, the user needs to check whether the I2C and SPI are enabled,-- |
![]() |
128.1 | 758 | |
![]() |
129.1 | 759 | --Users can enter the following command to check whether I2C is detected, and the detection of **"60"** is correct.-- |
![]() |
128.1 | 760 | |
761 | (% class="box infomessage" %) | ||
762 | ((( | ||
![]() |
129.1 | 763 | --**i2cdetect -y 1**-- |
![]() |
128.1 | 764 | ))) |
765 | |||
![]() |
129.1 | 766 | **Note: This method has been removed because the i2c had been removed on the latest PG1302.** |
![]() |
128.1 | 767 | |
768 | |||
![]() |
129.1 | 769 | |
![]() |
128.1 | 770 | Check whether the SPI path of the configuration file is correct, |
771 | |||
772 | (% class="box infomessage" %) | ||
773 | ((( | ||
![]() |
128.2 | 774 | **cat /etc/lora/global_conf.json ** |
![]() |
128.1 | 775 | ))) |
776 | |||
777 | (% class="wikigeneratedid" %) | ||
778 | [[image:image-20230518092732-2.png||height="378" width="691"]] | ||
779 | |||
780 | |||
781 | |||
![]() |
134.1 | 782 | = 8. Order Info = |
![]() |
128.1 | 783 | |
784 | |||
![]() |
98.37 | 785 | Part Number: (% style="color:#0000ff" %)**PG1302-XX** (%%) Or Part Number: (% style="color:#0000ff" %)**PG1302-PI-XX **(%%)(Include RPi converter board for RPI 3/4) |
![]() |
36.1 | 786 | |
![]() |
98.37 | 787 | **~ (% style="color:#0000ff" %)XX:(%%)** |
![]() |
36.1 | 788 | |
![]() |
108.4 | 789 | * (% style="color:red" %)**868** (%%)(For Bands: EU868,IN865) |
790 | * (% style="color:red" %)**915** (%%)(For Bands: US915,AU915,AS923,KR920) | ||
791 | * (% style="color:red" %)**470** (%%)(For Band: CN470) | ||
![]() |
36.1 | 792 | |
![]() |
134.1 | 793 | = 9. Packing Info = |
![]() |
125.3 | 794 | |
![]() |
36.1 | 795 | |
![]() |
91.1 | 796 | ((( |
![]() |
98.9 | 797 | **PG1302 Package Includes**: |
![]() |
91.1 | 798 | ))) |
![]() |
36.1 | 799 | |
![]() |
98.9 | 800 | ((( |
![]() |
99.5 | 801 | * PG1302 x 1 |
802 | * LoRa Antenna x 1 | ||
![]() |
91.1 | 803 | ))) |
![]() |
98.9 | 804 | |
![]() |
125.3 | 805 | |
![]() |
128.2 | 806 | |
![]() |
98.9 | 807 | ((( |
808 | **PG1302-PI Package Includes**: | ||
![]() |
91.1 | 809 | ))) |
![]() |
36.1 | 810 | |
![]() |
99.5 | 811 | * PG1302 x 1 |
812 | * LoRa Antenna x 1 | ||
813 | * RPi3/4 converter PCB | ||
814 | * Screws to hole converter PCB on RPI. | ||
![]() |
98.25 | 815 | |
![]() |
108.2 | 816 | **PG1302-PI Dimension and weight: ** |
817 | |||
818 | * Device Size: 18 x 8 x 4 cm | ||
819 | * Weight: 150g | ||
820 | |||
![]() |
134.1 | 821 | = 10. Support = |
![]() |
125.3 | 822 | |
![]() |
98.25 | 823 | |
![]() |
98.38 | 824 | ((( |
![]() |
128.2 | 825 | If you are experiencing issues and can't solve, you can send mail to [[support@dragino.com>>mailto:support@dragino.com]]. |
![]() |
98.38 | 826 | ))) |
![]() |
98.25 | 827 | |
![]() |
98.38 | 828 | ((( |
![]() |
98.25 | 829 | With your question as detail as possible. We will reply and help you in the shortest. |
![]() |
91.1 | 830 | ))) |