Wiki source code of How to further process data receive in gateway
Show last authors
author | version | line-number | content |
---|---|---|---|
1 | |||
2 | |||
3 | **Table of Contents:** | ||
4 | |||
5 | {{toc/}} | ||
6 | |||
7 | |||
8 | |||
9 | = 1. Introduction = | ||
10 | |||
11 | |||
12 | This instruction explains how to process the LoRa/LoRaWAN data receive on LoRa/LoRaWAN gateway. | ||
13 | |||
14 | ((( | ||
15 | There are different network topology. Please check the suitable one for you. | ||
16 | |||
17 | |||
18 | |||
19 | ))) | ||
20 | |||
21 | = 2. Case 1: Standard LoRaWAN connection~-~- LoRaWAN server is a public server = | ||
22 | |||
23 | |||
24 | [[image:image-20220527151200-1.png]] | ||
25 | |||
26 | LoRaWAN connection | ||
27 | |||
28 | |||
29 | ((( | ||
30 | This is a standard LoRaWAN connection. Gateway will forward all end nodes' data to LoRaWAN server. The LoRaWAN server stores the sensor data and communicate with Application server. The Application server in charge for data process for different industrial solutions. | ||
31 | ))) | ||
32 | |||
33 | ((( | ||
34 | |||
35 | ))) | ||
36 | |||
37 | ((( | ||
38 | Reference Link: | ||
39 | ))) | ||
40 | |||
41 | * Gateway set up instruction to LoRaWAN server. [[Gateway User Manual>>https://www.dragino.com/downloads/downloads/LoRa_Gateway/LG308-LG301/LG308_LoRaWAN_Gateway_User_Manual_v1.4.2.pdf]] | ||
42 | * Examples free public LoRaWAN server is: [[The Things Network>>url:https://www.thethingsnetwork.org/]]. | ||
43 | * TTN provides the [[integration instruction>>url:https://www.thethingsnetwork.org/docs/applications/integrations.html]] for how to connect to Application servers. | ||
44 | |||
45 | |||
46 | |||
47 | |||
48 | = 3. Case 2: Standard LoRaWAN connection~-~- LoRaWAN server is a private server = | ||
49 | |||
50 | |||
51 | [[image:image-20220527151408-2.png]] | ||
52 | |||
53 | LoRaWAN connection | ||
54 | |||
55 | ((( | ||
56 | Basically, this is the same network topology as above, except users build the LoRaWAN server themselves. Below are two open source LoRaWAN servers commonly used: | ||
57 | ))) | ||
58 | |||
59 | * [[ChirpStack>>url:https://www.chirpstack.io/]] | ||
60 | * [[TTN Stack V3>>url:https://www.thethingsnetwork.org/tech-stack#section1]] | ||
61 | * [[lorawan-server by Petr Gotthard>>url:https://github.com/gotthardp/lorawan-server]] | ||
62 | |||
63 | ((( | ||
64 | Please note LoRaWAN server is for managing device and store sensor data, you still need to link the LoRaWAN server to an application server for your IoT solution to better analize the data and show to final clients. | ||
65 | ))) | ||
66 | |||
67 | |||
68 | |||
69 | = 4. Case 3: Standard LoRaWAN connection~-~- use Gateway built-in LoRaWAN server to connect to external IoT server = | ||
70 | |||
71 | |||
72 | (% style="color:blue" %)**Application Scenario**: | ||
73 | |||
74 | * There is already IoT server but no LoRaWAN server. | ||
75 | * Not willing to use public LoRaWAN server nor built own LoRaWAN server. | ||
76 | |||
77 | |||
78 | |||
79 | (% style="color:blue" %)**Suitable Gateway:** | ||
80 | |||
81 | * LoRaWAN Gateway model: [[LPS8v2>>doc:Main.User Manual for All Gateway models.HP0C.WebHome]]. | ||
82 | |||
83 | |||
84 | |||
85 | (% style="color:blue" %)**How it works:** | ||
86 | |||
87 | * a) LPS8v2 already includes a LoRaWAN server (TTN Stack v3). Enable this server in Web UI. | ||
88 | * b) Input End Nodes keys in LPS8v2 LoRaWAN server. | ||
89 | * c) Configure LPS8v2, End Node and LoRaWAN server frequency plan. | ||
90 | * d) Configure local LoRaWAN server to forward data to external Application Server. | ||
91 | |||
92 | |||
93 | |||
94 | [[image:image-20220626095429-4.png||height="523" width="864"]] | ||
95 | |||
96 | |||
97 | |||
98 | = 5. Case 4: Standard LoRaWAN connection~-~- use Gateway built-in LoRaWAN server and IoT server = | ||
99 | |||
100 | |||
101 | (% style="color:blue" %)**Application Scenario**: | ||
102 | |||
103 | * No cloud IoT Server or LoRaWAN server | ||
104 | * Not willing to use public LoRaWAN server nor built own LoRaWAN server. | ||
105 | |||
106 | |||
107 | |||
108 | (% style="color:blue" %)**Suitable Gateway:** | ||
109 | |||
110 | * LoRaWAN Gateway model: [[LPS8v2>>doc:Main.User Manual for All Gateway models.HP0C.WebHome]]. | ||
111 | |||
112 | |||
113 | |||
114 | (% style="color:blue" %)**How it works:** | ||
115 | |||
116 | * a) LPS8v2 already includes a LoRaWAN server (TTN Stack v3). Enable this server in Web UI. | ||
117 | * b) Input End Nodes keys in LPS8v2 LoRaWAN server. | ||
118 | * c) Configure LPS8v2, End Node and LoRaWAN server frequency plan. | ||
119 | * d) Configure IoT server (Node-Red) in LPS8v2 | ||
120 | |||
121 | |||
122 | |||
123 | [[image:image-20220626100457-6.png||height="513" width="824"]] | ||
124 | |||
125 | |||
126 | |||
127 | = 6. Case 5: Standard LoRaWAN connection~-~- without LoRaWAN server, use ABP LoRaWAN End node = | ||
128 | |||
129 | |||
130 | (% style="color:red" %)**Recommend using Case3 as a replacement.** | ||
131 | |||
132 | |||
133 | (% style="color:blue" %)**Below gateways support this mode:** | ||
134 | |||
135 | * 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]] | ||
136 | |||
137 | |||
138 | |||
139 | (% style="color:blue" %)**How it works:** | ||
140 | |||
141 | * a) LoRaWAN End Nodes runs ABP mode | ||
142 | * b) No LoRaWAN server involved. | ||
143 | * c) Gateway stores keys from node and decode end nodes' data locally | ||
144 | * d) Gateway sends end node data to Application Server. | ||
145 | |||
146 | |||
147 | |||
148 | Reference Instruction: [[Communication with ABP End Node>>Communicate with ABP End Node without LoRaWAN Network Server --- LG308]] | ||
149 | |||
150 | |||
151 | [[image:image-20220527151531-3.png]] | ||
152 | |||
153 | LoRaWAN connection without LoRaWAN server | ||
154 | |||
155 | |||
156 | |||
157 | = 7. Case 6: None standard LoRaWAN connection~-~- without LoRaWAN server, none standard LoRaWAN protocol, no security = | ||
158 | |||
159 | |||
160 | This method is to encryption part from LoRaWAN protocol and make the server side simple. | ||
161 | |||
162 | [[image:image-20220527151609-4.png]] | ||
163 | |||
164 | Unencrypt Network modified from LoRaWAN | ||
165 | |||
166 | |||
167 | Detail see: [[How to send none encryption LoRaWAN Packet>>How to send none encryption LoRaWAN Packet]] | ||
168 | |||
169 | |||
170 | |||
171 | = 8. Case 7: Private LoRa connection~-~- without LoRaWAN server, use Raw LoRa protocol = | ||
172 | |||
173 | |||
174 | (% style="color:blue" %)**Below gateways support this mode:** | ||
175 | |||
176 | * LoRaWAN Gateway model: [[LG01-N>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/143-lg01n.html]], [[OLG01-N>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/144-olg01n.html]], [[LG02>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/135-lg02.html]], [[OLG02>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/136-olg02.html]] | ||
177 | |||
178 | |||
179 | |||
180 | (% style="color:blue" %)**How it works:** | ||
181 | |||
182 | * a) LoRa End Node send Raw LoRa packet base on pre-define format | ||
183 | * b) No LoRaWAN server involved. | ||
184 | * c) Gateway parse the packet and get sensor ID and data. | ||
185 | * d) Gateway sends these data to Application Server. | ||
186 | |||
187 | Reference Intruction: [[MQTT Forward Instruction>>MQTT Forward Instruction]] | ||
188 | |||
189 | |||
190 | [[image:image-20220527152437-5.png]] | ||
191 | |||
192 | Raw LoRa uplink | ||
193 | |||
194 |