Last modified by Mengting Qiu on 2025/07/03 19:29

Show last authors
1
2
3 [[image:image-20240124134538-1.png||data-xwiki-image-style-alignment="center" height="365" width="415"]]
4
5
6
7
8
9
10
11 **Table of Contents:**
12
13 {{toc/}}
14
15
16
17
18
19
20 = 1. Introduction =
21
22 == 1.1 What is AQS02-L LoRaWAN Indoor CO Sensor ==
23
24
25 The Dragino AQS02-L is an (% style="color:blue" %)**Indoor LoRaWAN Air Quality Sensor**(%%) for the Internet of Things solution. It is designed to measure the surrounding environment parameters include:(% style="color:blue" %)** CO, Temperature , Relative Air Humidity and Air pressure**(%%), and then upload to IoT server via LoRaWAN wireless protocol.
26
27 AQS02-L is powered by a (% style="color:blue" %)**ER18505 4000mAh battery**(%%). The battery can last more than 2 years and is easy to change.
28
29 AQS02-L (% style="color:blue" %)**supports BLE configure**(%%) and (% style="color:blue" %)**wireless OTA update**(%%) which make user easy to use.
30
31 AQS02-L supports (% style="color:blue" %)**CO Alarm and Temperature Alarm* features**(%%), users can get an alarm for instant notice.
32
33 AQS02-L supports (% style="color:blue" %)**Datalog feature**(%%), User can retrieve the sensor data from LoRaWAN commands.
34
35 (% style="color:red" %)**Note*:**(%%) CO Alarm and temperature Alarm will decrease a lot the battery life.
36
37
38 == 1.2 ​Features ==
39
40
41 * LoRaWAN 1.0.3 Class A
42 * Monitor CO/Temperature/Relative Humidity/Pressure
43 * Support CO alarm
44 * Support Datalog Feature
45 * Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865
46 * Support Bluetooth v5.1 and LoRaWAN remote configure
47 * Support wireless OTA update firmware
48 * Uplink on periodically
49 * Downlink to change configure
50 * 4000mAh batteries powered
51
52 == 1.3 Specification ==
53
54
55 (% style="color:#037691" %)**Common DC Characteristics:**
56
57 * Supply Voltage: built in 4000mAh Li-SOCI2 battery , 2.5v ~~ 3.6v
58 * Operating Temperature: -20 ~~ 65°C
59
60 (% style="color:#037691" %)**CO Sensor:**
61
62 * Sensor: [[Senseair Sunrise Article No. 006-0-0008>>https://senseair.com/product/sunrise/]](% style="color:#037691" %)**    **
63 * Target gas: Carbon dioxide(CO)
64 * Operating principle: Non-dispersiveinfrared(NDIR)
65 * Operating range: 0-50°C, 0-85% RH(non-condensing)
66 * Measurement range: 400ppm to 5000 ppm (extended range up to 10000 ppm )
67 * Accuracy:
68 ** 400-1500ppm  ±(30 ppm +3% of reading)
69 ** 1501-2500ppm  ±75 ppm
70 ** 2501-5000ppm  ±(30 ppm +3% of reading)               
71 * Pressure Compensation
72
73 (% style="color:#037691" %)**Temperature Sensor:**
74
75 * Sensor: [[bme280>>https://www.bosch-sensortec.com/products/environmental-sensors/humidity-sensors-bme280/]](% style="color:#037691" %)**     **
76 * Range: -20 ~~ 65 °C
77 * Accuracy: Typ ±1.0@ 0-65 °C
78 * Resolution: 0.1°C
79
80 Hardware v1.2 and later
81
82 * Sensor: [[sht41>>https://sensirion.com/products/catalog/SHT41]](% style="color:#037691" %)**     **
83 * Range: -40 ~~ 125 °C
84 * Accuracy: ±0.2°C
85 * Resolution: 0.01°C
86
87 (% style="color:#037691" %)**Humidity Sensor: **
88
89 * Sensor: [[bme280>>https://www.bosch-sensortec.com/products/environmental-sensors/humidity-sensors-bme280/]]
90 * Range: 0 ~~ 99.9% RH
91 * Accurancy: ± 3%RH (20 ~~ 80%RH)
92 * Resolution: 0.1% RH
93 * Long term stability: 0.5 %RH/yr
94
95 Hardware v1.2 and later
96
97 * Sensor: [[sht41>>https://sensirion.com/products/catalog/SHT41]](% style="color:#037691" %)**  **
98 * Range: 0 ~~ 99.9% RH
99 * Accurancy: ± 1.8%RH
100 * Resolution: 0.1% RH
101
102 (% style="color:#037691" %)**Air Pressure: **
103
104 * Sensor: [[bme280>>https://www.bosch-sensortec.com/products/environmental-sensors/humidity-sensors-bme280/]]
105 * Range: 300~~1100hPa
106 * Accuracy: ± 1.0 hPa (0-65 °C)
107 * Resolution: 0.18Pa
108 * Long term stability: ±1.0 hPa/yr
109
110 (% style="color:#037691" %)**LoRa Spec:**
111
112 * Frequency Range,  Band 1 (HF): 862 ~~ 1020 Mhz
113 * Max +22 dBm constant RF output vs.
114 * RX sensitivity: down to -139 dBm.
115 * Excellent blocking immunity
116
117 (% style="color:#037691" %)**Battery:**
118
119 * Li/SOCI2 un-chargeable battery
120 * Capacity: 4000mAh
121 * Self-Discharge: <1% / Year @ 25°C
122
123 (% style="color:#037691" %)**Power Consumption**
124
125 * Sleep Mode: 6uA @ 3.3v
126 * LoRa Transmit Mode: 125mA @ 20dBm, 82mA @ 14dBm
127
128 == 1.4 Applications ==
129
130 * Smart Building
131 * Industrial Monitoring and Control
132
133 == 1.5 Sleep mode and working mode ==
134
135
136 (% style="color:blue" %)**Deep Sleep Mode: **(%%)Sensor doesn't have any LoRaWAN activity. This mode is used for storage and shipping to save battery life.
137
138 (% style="color:blue" %)**Working Mode:** (%%)In this mode, Sensor will work as LoRaWAN Sensor to Join LoRaWAN network and send out sensor data to server. Between each sampling/tx/rx periodically, sensor will be in IDLE mode), in IDLE mode, sensor has the same power consumption as Deep Sleep mode.
139
140
141 == 1.6 BLE connection ==
142
143
144 AQS02-L supports BLE remote configure.
145
146 BLE can be used to configure the parameter of AQS02-L or see the console output from AQS02-L. BLE will be only activate on below case:
147
148 * Press button to send an uplink.
149 * Press button to active AQS02-L.
150 * Device Power on or reset.
151
152 If there is no activity connection on BLE in 60 seconds, AQS02-L will shut down BLE module to enter low power mode.
153
154
155 = 2. Configure AQS02-L to connect to LoRaWAN network =
156
157 == 2.1 How it works ==
158
159
160 The AQS02-L is configured as (% style="color:#037691" %)**LoRaWAN OTAA Class A**(%%) mode by default. It has OTAA keys to join LoRaWAN network. To connect a local LoRaWAN network, you need to input the OTAA keys in the LoRaWAN IoT server and press the button to activate the AQS02-L. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 20 minutes.
161
162
163 == 2.2 ​Quick guide to connect to LoRaWAN server (OTAA) ==
164
165
166 Following is an example for how to join the [[TTN v3 LoRaWAN Network>>url:https://console.cloud.thethings.network/]]. Below is the network structure; we use the [[LPS8v2>>url:https://www.dragino.com/products/lora-lorawan-gateway/item/228-lps8v2.html]] as a LoRaWAN gateway in this example.
167
168 The LPS8V2 is already set to connected to [[TTN network >>url:https://console.cloud.thethings.network/]], so what we need to now is configure the TTN server.
169
170 [[image:image-20240124150425-1.png||height="378" width="757"]]
171
172 (% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from AQS02-L.
173
174 Each AQS02-L is shipped with a sticker with the default device EUI as below:
175
176 [[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]]
177
178
179 You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
180
181 **Create the application.**
182
183 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/SAC01L_LoRaWAN_Temperature%26Humidity_Sensor_User_Manual/WebHome/image-20250423093843-1.png?width=756&height=264&rev=1.1||alt="image-20250423093843-1.png"]]
184
185 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LTC2-LB--LoRaWAN_Temperature_Transmitter_User_Manual/WebHome/image-20240907111305-2.png?width=1000&height=572&rev=1.1||alt="image-20240907111305-2.png"]]
186
187
188 **Add devices to the created Application.**
189
190 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LTC2-LB--LoRaWAN_Temperature_Transmitter_User_Manual/WebHome/image-20240907111659-3.png?width=977&height=185&rev=1.1||alt="image-20240907111659-3.png"]]
191
192 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LTC2-LB--LoRaWAN_Temperature_Transmitter_User_Manual/WebHome/image-20240907111820-5.png?width=975&height=377&rev=1.1||alt="image-20240907111820-5.png"]]
193
194
195 **Enter end device specifics manually.**
196
197 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LTC2-LB--LoRaWAN_Temperature_Transmitter_User_Manual/WebHome/image-20240907112136-6.png?width=697&height=687&rev=1.1||alt="image-20240907112136-6.png"]]
198
199
200 **Add DevEUI and AppKey. Customize a platform ID for the device.**
201
202 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LTC2-LB--LoRaWAN_Temperature_Transmitter_User_Manual/WebHome/image-20240907112427-7.png?rev=1.1||alt="image-20240907112427-7.png"]]
203
204
205 (% style="color:blue" %)**Step 2:**(%%) Add decoder.
206
207 In TTN, user can add a custom payload so it shows friendly reading.
208
209 Click this link to get the decoder: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder/tree/main/>>url:https://github.com/dragino/dragino-end-node-decoder/tree/main/]]
210
211 Below is TTN screen shot:
212
213 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS25-LBLDS25-LS--LoRaWAN_LiDAR_Distance_Auto-Clean_Sensor_User_Manual/WebHome/image-20241009140556-1.png?width=1184&height=488&rev=1.1||alt="image-20241009140556-1.png" height="488" width="1184"]]
214
215 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS25-LBLDS25-LS--LoRaWAN_LiDAR_Distance_Auto-Clean_Sensor_User_Manual/WebHome/image-20241009140603-2.png?width=1168&height=562&rev=1.1||alt="image-20241009140603-2.png" height="562" width="1168"]]
216
217
218 (% style="color:blue" %)**Step 3:**(%%) Activate on AQS02-L
219
220 Press the button for 5 seconds to activate the AQS02-L.
221
222 (% style="color:green" %)**Green LED**(%%) will fast blink 5 times, device will enter (% style="color:blue" %)**OTA mode**(%%) for 3 seconds. And then start to JOIN LoRaWAN network. (% style="color:green" %)**Green LED**(%%) will solidly turn on for 5 seconds after joined in network.
223
224 After join success, it will start to upload messages to TTN and you can see the messages in the panel.
225
226
227 (% style="color:blue" %)**Step 4: **(%%)Calibration AQS02-L
228
229 Button CO calibration function (Equivalent to AT+CALCMD=3)
230
231
232 The first step is to put your device into sleep mode. Press the button five times quickly and the device will light up solid red for 5 seconds.
233
234 In the second step, take the device outside to an environment without combustion sources and people, let it sit for a few minutes, and then press the button three times quickly. The calibration is complete after the blue light stays on for 5 seconds.
235
236 The last step is to reset the device, press and hold the button until the green light flashes.
237
238 For more calibration methods, please refer to this link: [[Calibration AQS02-L>>||anchor="H3.4Calibrationcommand"]]
239
240
241 == 2.3 ​Uplink Payload ==
242
243 === 2.3.1 Device Status, FPORT~=5 ===
244
245
246 Users can use the downlink command(**0x26 01**) to ask AQS02-L to send device configure detail, include device configure status. AQS02-L will uplink a payload via FPort=5 to the server.
247
248 The Payload format is as below.
249
250 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
251 |(% colspan="6" style="background-color:#4f81bd; color:white" %)**Device Status (FPORT=5)**
252 |(% style="width:103px" %)**Size (bytes)**|(% style="width:72px" %)**1**|(% style="width:91px" %)**2**|(% style="width:91px" %)**1**|(% style="width:86px" %)**1**|(% style="width:67px" %)**2**
253 |(% style="width:103px" %)Value|(% style="width:72px" %)Sensor Model|Firmware Version|(% style="width:91px" %)Frequency Band|(% style="width:86px" %)Sub-band|(% style="width:44px" %)BAT
254
255 Example parse in TTNv3
256
257 [[image:image-20240112094511-1.png||height="280" width="1110"]]
258
259
260 (% style="color:#037691" %)**Sensor Model**(%%): For AQS02-L, this value is 0x37
261
262 (% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
263
264 (% style="color:#037691" %)**Frequency Band**:
265
266 0x01: EU868
267
268 0x02: US915
269
270 0x03: IN865
271
272 0x04: AU915
273
274 0x05: KZ865
275
276 0x06: RU864
277
278 0x07: AS923
279
280 0x08: AS923-1
281
282 0x09: AS923-2
283
284 0x0a: AS923-3
285
286 0x0b: CN470
287
288 0x0c: EU433
289
290 0x0d: KR920
291
292 0x0e: MA869
293
294
295 (% style="color:#037691" %)**Sub-Band**:
296
297 AU915 and US915:value 0x00 ~~ 0x08
298
299 CN470: value 0x0B ~~ 0x0C
300
301 Other Bands: Always 0x00
302
303
304 (% style="color:#037691" %)**Battery Info**:
305
306 Check the battery voltage.
307
308 Ex1: 0x0B45 = 2885mV
309
310 Ex2: 0x0B49 = 2889mV
311
312
313 === 2.3.2  Sensor Data. FPORT~=2 ===
314
315
316 Sensor Data is uplink via FPORT=2
317
318 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
319 |=(% style="width: 70px;background-color:#4F81BD;color:white" %)(((
320 **Size(bytes)**
321 )))|=(% style="width: 50px;background-color:#4F81BD;color:white" %)2|=(% style="width: 90px;background-color:#4F81BD;color:white" %)2|=(% style="width: 80px;background-color:#4F81BD;color:white" %)2|=(% style="width: 60px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 50px;background-color:#4F81BD;color:white" %)2|=(% style="width: 110px; background-color: rgb(79, 129, 189); color: white;" %)1
322 |(% style="width:99px" %)Value|(% style="width:69px" %)(((
323 Battery
324 )))|(% style="width:130px" %)Temperature|(% style="width:82px" %)(((
325 Humidity
326 )))|(% style="width:87px" %)Pressure|(% style="width:53px" %)(((
327 CO
328 )))|(% style="width:95px" %)Alarm flag&Other flag
329
330 **Alarm flag & Other flag:**
331
332 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
333 |=(% style="width: 70px;background-color:#4F81BD;color:white" %)**Size(bit)**|=(% style="width: 90px; background-color: rgb(79, 129, 189); color: white;" %)**[bit7:bit5]**|=(% style="width: 69px; background-color: rgb(79, 129, 189); color: white;" %)**bit4**|=(% style="width: 72px; background-color: rgb(79, 129, 189); color: white;" %)**bit3**|=(% style="width: 73px; background-color: rgb(79, 129, 189); color: white;" %)**bit2**|=(% style="width: 70px; background-color: rgb(79, 129, 189); color: white;" %)**bit1**|=(% style="width: 66px; background-color: rgb(79, 129, 189); color: white;" %)**bit0**
334 |(% style="width:99px" %)Value|(% style="width:85px" %)(((
335 Reserve
336 )))|(% style="width:64px" %)(((
337 SHT41_sensor
338 )))|(% style="width:67px" %)TEMPL_ flag|(% style="width:68px" %)TEMPH_ flag|(% style="width:65px" %)COL_ flag|(% style="width:66px" %)COH_ flag
339
340 [[image:image-20240112094817-2.png||height="294" width="1148"]]
341
342
343 ==== (% style="color:#4472c4" %)**Battery**(%%) ====
344
345 Sensor Battery Level.
346
347 Ex1: 0x0B45 = 2885mV
348
349 Ex2: 0x0B49 = 2889mV
350
351
352 ==== (% style="color:#4472c4" %)**Temperature**(%%) ====
353
354 **The temperature collection before hardware v1.2 comes from bme280. The following is the payload analysis.**
355
356 If payload is: 0105H:  (0105 & 8000 == 0), temp = 0105H /10 = 26.1 degree
357
358 If payload is: FF3FH :  (FF3F & 8000 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
359
360 (FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative)
361
362 **The temperature collection aftre hardware v1.2(Includes v1.2)  comes from sht41. The following is the payload analysis.**
363
364 If payload is: 0A32H:  (0A32 & 8000 == 0), temp = 0A32H /100 = 26.10 degree
365
366 If payload is: F876H :  (F876 & 8000 == 1) , temp = (F876H - 65536)/100 = -19.30 degrees.
367
368 (F876 & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative)
369
370
371 ==== (% style="color:#4472c4" %)**Humidity**(%%) ====
372
373 **Before hardware v1.2, the humidity comes from bme280, and after hardware v1.2(Includes v1.2), the humidity comes from sht41.**
374
375 Read:0x(018F)=399  Value:  399 / 10=39.9, So 39.9%
376
377
378 ==== (% style="color:#4472c4" %)**Pressure**(%%) ====
379
380 **Example**:
381
382 If payload is: 279BH, Pressure = 279BH /10 = 1013.9 hPa
383
384
385 ==== (% style="color:#4472c4" %)**CO**(%%) ====
386
387 **Example**:
388
389 If payload is: 01FDH, CO = 01FDH= 509ppm
390
391
392 ==== (% style="color:#4472c4" %)**Alarm flag**(%%) ====
393
394 TEMPH_flag: When it is True, the actual temperature exceeds the set alarm temperature.
395
396 TEMPL_flag: When it is True, the actual temperature lower than the set alarm temperature.
397
398 COH_flag: When it is True, the actual CO concentration exceeds the set alarm CO concentration.
399
400 COL_flag: When it is True, the actual CO concentration lower than the set alarm CO concentration.
401
402 **Example**:
403
404 AT+TEMPALARM=25,60  ~-~-~-~-~-~->  temperature: 23.1, TEMPH_flag: "False", TEMPL_flag: "True"
405
406 AT+COALARM=400,2000  ~-~-~-~-~-~->  co: 2368, COH_flag:"True", COL_flag:"False"
407
408
409 ==== (% style="color:#4472c4" %)**SHT41_sensor**(%%) ====
410
411 Using SHT41 sensors after and including hardware v1.2, this flag is 1, and before hardware v1.2, this flag is 0.
412
413
414 == 2.4 Payload Decoder file ==
415
416
417 In TTN, user can add a custom payload so it shows friendly reading
418
419 In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from:
420
421 [[https:~~/~~/github.com/dragino/dragino-end-node-decoder/tree/main>>https://github.com/dragino/dragino-end-node-decoder/tree/main/AQS01-L]]
422
423
424 == 2.5 Datalog Feature ==
425
426
427 Datalog Feature is to ensure IoT Server can get all sampling data from Sensor even if the LoRaWAN network is down. For each sampling, AQS02-L will store the reading for future retrieving purposes.
428
429
430 === 2.5.1 How datalog works ===
431
432
433 AQS02-L will wait for ACK for every uplink, when there is no LoRaWAN network,AQS02-L will mark these records with non-ack messages and store the sensor data, and it will send all messages (10s interval) after the network recovery.
434
435 * (((
436 a) AQS02-L will do an ACK check for data records sending to make sure every data arrive server.
437 )))
438 * (((
439 b) AQS02-L will send data in **CONFIRMED Mode**, but AQS02-L won't re-transmit the packet if it doesn't get ACK, it will just mark it as a NONE-ACK message. In a future uplink if AQS02-L gets a ACK, AQS02-L will consider there is a network connection and resend all NONE-ACK messages.
440
441
442 )))
443
444 === 2.5.2 Enable Datalog ===
445
446
447 User need to make sure below two settings are enable to use datalog;
448
449 * (% style="color:blue" %)**SYNCMOD=1(Default)**(%%) to enable sync time via LoRaWAN MAC command, click here ([[AT+SYNCMOD>>https://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/#H4.6Settimesynchronizationmethod28ThenetworkservermustsupportLoRaWANv1.0.329]]) for detailed instructions.
450 * (% style="color:blue" %)**PNACKMD=1**(%%)** **to enable datalog feature, click here ([[AT+PNACKMD>>https://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/#H7.26RequesttheservertosendanACK]]) for detailed instructions.
451
452
453
454 Once AQS02-L Joined LoRaWAN network, it will send the MAC command (DeviceTimeReq) and the server will reply with (DeviceTimeAns) to send the current time to AQS02-L . If AQS02-L fails to get the time from the server, AQS02-L will use the internal time and wait for next time request (AT+SYNCTDC to set the time request period, default is 10 days).
455
456 (% style="color:red" %)**Note: LoRaWAN Server need to support LoRaWAN v1.0.3(MAC v1.0.3) or higher to support this MAC command feature, Chirpstack,TTN V3 v3 and loriot support but TTN V3 v2 doesn't support. If server doesn't support this command, it will through away uplink packet with this command, so user will lose the packet with time request for TTN V3 v2 if SYNCMOD=1.**
457
458
459 === 2.5.3 Unix TimeStamp ===
460
461
462 **AQS02-L uses Unix TimeStamp format based on**
463
464
465 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20220523001219-11.png?width=627&height=97&rev=1.1||alt="图片-20220523001219-11.png" height="97" width="627"]]
466
467 User can get this time from link:  [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] :
468
469 Below is the converter example
470
471 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20220523001219-12.png?width=720&height=298&rev=1.1||alt="图片-20220523001219-12.png" height="298" width="720"]]
472
473
474 So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25
475
476
477 === 2.5.4 Datalog Uplink payload (FPORT~=3) ===
478
479
480 The Datalog uplinks will use below payload format.
481
482 **Retrieval data payload:**
483
484 (% border="1" cellspacing="5" style="background-color:#f2f2f2; width:500px" %)
485 |=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
486 **Size(bytes)**
487 )))|=(% style="width: 40px; background-color:#4F81BD;color:white" %)**2**|=(% style="width: 55px; background-color:#4F81BD;color:white" %)**2**|=(% style="width: 65px; background-color:#4F81BD;color:white" %)**2**|=(% style="width: 180px; background-color:#4F81BD;color:white" %)**1**|=(% style="width: 100px; background-color:#4F81BD;color:white" %)**4**
488 |(% style="width:103px" %)Value|(% style="width:68px" %)(((
489 CO
490 )))|(% style="width:104px" %)(((
491 (((
492 Humidity
493 )))
494
495 (((
496
497 )))
498 )))|(% style="width:87px" %)(((
499 Temperature
500 )))|(% style="width:178px" %)(((
501 Poll message flag
502 )))|(% style="width:137px" %)Unix Time Stamp
503
504 **Poll message flag :**
505
506
507 [[image:image-20240112095124-3.png||height="101" width="483"]]
508
509 **No ACK Message**:  1: This message means this payload is fromn Uplink Message which doesn't get ACK from the server before ( for **PNACKMD=1** feature)
510
511 **Poll Message Flag**: 1: This message is a poll message reply.
512
513 * Poll Message Flag is set to 1.
514
515 * Each data entry is 11 bytes, to save airtime and battery, devices will send max bytes according to the current DR and Frequency bands.
516
517 For example, in US915 band, the max payload for different DR is:
518
519 **a) DR0:** max is 11 bytes so one entry of data
520
521 **b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
522
523 **c) DR2:** total payload includes 11 entries of data
524
525 **d) DR3: **total payload includes 22 entries of data.
526
527 If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0   
528
529 **Example:**
530
531 If AQS02-L has below data inside Flash:
532
533
534 [[image:image-20240112095403-4.png||height="278" width="523"]]
535
536 If user sends below downlink command: 3165A010F865A015E405
537
538 Where : Start time: 65A010F8 = time 24/1/11 16:02:00
539
540 Stop time: 65A015E4 = time 24/1/11 16:23:00
541
542
543 **AQS01-L will uplink this payload.**
544
545 [[image:image-20240112101407-1.png||height="244" width="1092"]]
546
547
548 //**01E401A400F14065A0112E**//01CE01A500F14065A0114F01C401A400F14065A0118A02EC01B300F24065A0138202F001B100F34065A013F4023801AD00F24065A0143302EB01BC00F24065A014D603D701B900F14065A015D3
549
550
551 Where the first 11 bytes is for the first entry: 01 E4 01 A4 00 F1 40 65 A0 11 2E
552
553 * **CO**=0x01E4=484 ppm
554 * **Hum**=0x01A4/10=42 %
555 * **Temp**=0x00F1/10=24.1 ℃
556 * **poll message flag **=0x40,means reply data,sampling uplink message.
557 * **Unix time** is 0x65A0112E=1704888040s=24/1/11 16:02:54
558
559 (% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||alt="数据 URI 图片" draggable="true" height="15" role="presentation" title="单击并拖动以移动" width="15"]](% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220, 220, 220, 0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||alt="数据 URI 图片" draggable="true" height="15" role="presentation" title="单击并拖动以移动" width="15"]](% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" title="单击并拖动以调整大小" %)的(% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||alt="数据 URI 图片" draggable="true" height="15" role="presentation" title="单击并拖动以移动" width="15"]](% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220, 220, 220, 0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||alt="数据 URI 图片" draggable="true" height="15" role="presentation" title="单击并拖动以移动" width="15"]](% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" title="单击并拖动以调整大小" %)的
560
561 == 2.6 Frequency Plans ==
562
563
564 The AQS02-L uses OTAA mode and below frequency plans by default. Each frequency band use different firmware, user update the firmware to the corresponding band for their country.
565
566 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]]
567
568
569 == 2.7 ​Firmware Change Log ==
570
571
572 **Firmware download link: **[[https:~~/~~/www.dropbox.com/scl/fo/o5v6j7qewlks12eso98kl/h?rlkey=v1ian3hmva65924j4h4n0yfz8&dl=0>>https://www.dropbox.com/scl/fo/o5v6j7qewlks12eso98kl/h?rlkey=v1ian3hmva65924j4h4n0yfz8&dl=0]]
573
574
575 = 3. Configure AQS02-L =
576
577 == 3.1 Configure Methods ==
578
579
580 AQS02-L supports below configure method:
581
582 * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
583 * AT Command via UART Connection : See [[UART Connection>>http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H2.6A0UARTConnectionforAQS01-Lmotherboard]].
584 * LoRaWAN Downlink.  Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
585
586 == 3.2 General Commands ==
587
588
589 These commands are to configure:
590
591 * General system settings like: uplink interval.
592 * LoRaWAN protocol & radio related command.
593
594 They are same for all Dragino Devices which support DLWS-005 LoRaWAN Stack. These commands can be found on the wiki:
595
596 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/]]
597
598
599 == 3.3 Commands special design for AQS02-L ==
600
601
602 These commands only valid for AQS02-L, as below:
603
604
605 === 3.3.1 Set Transmit Interval Time ===
606
607
608 Feature: Change LoRaWAN End Node Transmit Interval.
609
610 (% style="color:blue" %)**AT Command: AT+TDC**
611
612 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
613 |=(% style="width: 156px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 137px;background-color:#4F81BD;color:white" %)**Function**|=(% style="background-color:#4F81BD;color:white" %)**Response**
614 |(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|(((
615 30000
616 OK
617 the interval is 30000ms = 30s
618 )))
619 |(% style="width:156px" %)AT+TDC=60000|(% style="width:137px" %)Set Transmit Interval|(((
620 OK
621 Set transmit interval to 60000ms = 60 seconds
622 )))
623
624 (% style="color:blue" %)**Downlink Command: 0x01**
625
626 Format: Command Code (0x01) followed by 3 bytes time value.
627
628 If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01.
629
630 * Example 1: Downlink Payload: 0100001E  ~/~/  Set Transmit Interval (TDC) = 30 seconds
631 * Example 2: Downlink Payload: 0100003C  ~/~/  Set Transmit Interval (TDC) = 60 seconds
632
633 === 3.3.2 Get Device Status ===
634
635
636 Send a LoRaWAN downlink to ask device send Alarm settings.
637
638 (% style="color:blue" %)**Downlink Payload:  **(%%)0x26 01
639
640 Sensor will upload Device Status via FPORT=5. See payload section for detail.
641
642
643 === 3.3.3 Set Temperature Alarm Threshold ===
644
645
646 * (% style="color:blue" %)**AT Command:**
647
648 (% style="color:#037691" %)**AT+TEMPALARM=min,max  (Among them, 100 is an invalid value, which means not set)**
649
650 * When min=100, and max≠100, Alarm higher than max
651 * When min≠100, and max=100, Alarm lower than min
652 * When min≠100 and max≠100, Alarm higher than max or lower than min
653
654 Example:
655
656 AT+TEMPALARM=100,30   ~/~/ Alarm when temperature higher than 30.
657
658 * (% style="color:blue" %)**Downlink Payload:**
659
660 (% style="color:#037691" %)**0x(0C 01 64 1E)**  (%%) ~/~/ Set AT+TEMPALARM=100,30
661
662 (% style="color:red" %)**(note: 3^^rd^^ byte= 0x64 for low limit(not set), 4^^th^^ byte = 0x1E for high limit: 30)**
663
664
665 === 3.3.4 Set CO Alarm Threshold ===
666
667
668 The CO alarm function detects CO once every minute, so it consumes more power.
669
670 * (% style="color:blue" %)**AT Command:**
671
672 (% style="color:#037691" %)**AT+COALARM=min,max  (Among them, 0 is an invalid value, which means not set)**
673
674 * When min=0, and max≠0, Alarm higher than max
675 * When min≠0, and max=0, Alarm lower than min
676 * When min≠0 and max≠0, Alarm higher than max or lower than min
677
678 Example:
679
680 AT+COALARM=400,0  ~/~/ Alarm when humidity lower than 400.
681
682 * (% style="color:blue" %)**Downlink Payload:**
683
684 (% style="color:#037691" %)**0x(0C 02  01 90 00 00)**(%%)  ~/~/ Set AT+COALARM=400,0
685
686 (% style="color:red" %)**(note: 3^^rd^^ byte+4^^rd^^ byte= 0x0190 for low limit (400ppm), 5^^th^^ byte+6^^rd^^ byte = 0x00 for high limit (not set))**
687
688
689 === 3.3.5 Set Alarm Interval ===
690
691
692 The shortest time of two Alarm packet. (unit: min)
693
694 * (% style="color:blue" %)**AT Command:**
695
696 (% style="color:#037691" %)**AT+ATDC=20** (%%) ~/~/ The shortest interval of two Alarm packets is 20 minutes, Means if there is an alarm packet uplink, there won't be another one in the next 20 minutes.
697
698 * (% style="color:blue" %)**Downlink Payload:**
699
700 (% style="color:#037691" %)**0x(0D 14)**(%%)     **~-~--> ** Set AT+ATDC=0x 14 = 20 minutes
701
702
703 === 3.3.6 Set Time Sync Mode ===
704
705
706 Feature: Enable/Disable Sync system time via LoRaWAN MAC Command (DeviceTimeReq), LoRaWAN server must support v1.0.3 protocol to reply to this command.
707
708 SYNCMOD is set to 1 by default. If user wants to set a different time from the LoRaWAN server, the user needs to set this to 0.
709
710 (% style="color:blue" %)**AT Command:**
711
712 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:500px" %)
713 |=(% style="width: 155px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 288px; background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 57px;background-color:#4F81BD;color:white" %)**Response**
714 |(% style="width:155px" %)(((
715 AT+SYNCMOD=1
716 )))|(% style="width:259px" %)(((
717 Enable Sync system time via LoRaWAN MAC Command (DeviceTimeReq) The default is zero time zone.
718 )))|(% style="width:44px" %)(((
719 OK
720 )))
721 |(% style="width:155px" %)(((
722 AT+SYNCMOD=1,8
723 )))|(% style="width:259px" %)(((
724 Enable Sync system time via LoRaWAN MAC Command (DeviceTimeReq) Set to East eight time zone.
725 )))|(% style="width:44px" %)(((
726 OK
727 )))
728 |(% style="width:155px" %)AT+SYNCMOD=1,-12|(% style="width:259px" %)Enable Sync system time via LoRaWAN MAC Command (DeviceTimeReq) Set to West Twelve Time Zone.|(% style="width:44px" %)OK
729
730 (% style="color:blue" %)**Downlink Command:**
731
732 0x28 01 ~/~/ Same As AT+SYNCMOD=1
733
734 0x28 01 08 ~/~/ Same As AT+SYNCMOD=1,8
735
736 0x28 01 F4 ~/~/ Same As AT+SYNCMOD=1,-12
737
738 0x28 00 ~/~/ Same As AT+SYNCMOD=0
739
740
741 === 3.3.7 Request the server to send an ACK ===
742
743
744 (% style="color:blue" %)**AT Command: AT+PNACKMD**
745
746 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
747 |=(% style="width: 160px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 293px; background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 57px;background-color:#4F81BD;color:white" %)**Response**
748 |(% style="width:155px" %)AT+PNACKMD=1|(% style="width:253px" %)If the node uploads the ACK as confirm, it will request the server to send an ACK. If the server ack is not received, the node will upload the packets that have not received the ACK the next time it receives the ACK|(% style="width:100px" %)1(((
749 OK
750 )))
751 |(% style="width:155px" %)AT+PNACKMD=0|(% style="width:253px" %)off request the server to send an ACK|(% style="width:100px" %)(((
752 0
753 OK
754 )))
755
756 (% style="color:blue" %)**Downlink Command: 0x34**
757
758 0X34 01  ~/~/Same As AT+PNACKMD=1
759
760 0x34 00  ~/~/Same As AT+PNACKMD=0
761
762
763 == 3.4 Calibration command ==
764
765
766 (% style="color:red" %)**Note: If the device is not calibrated for the first time, there will be a certain degree of drift.**
767
768 After having performed the calibration,all following measurements will use the adjusted calibration parameters.
769
770
771 === 3.4.1 Restore factory Calibration  (AT+CALCMD~=0) ===
772
773
774 Restores calibration parameters factory calibration values.
775
776 (% style="color:blue" %)**Downlink Payload**(%%)**:  **0x0F 00
777
778
779 === 3.4.2 Forced ABC Calibration (AT+CALCMD~=1) ===
780
781
782 Sensor will perform an ABC calibration after receiving this command if sensor has valid ABC data.The command can be used if one for some reason wants to do an ABC adjustment before one ABC period has passed(when a normal ABC calibration is done).
783
784 (% style="color:blue" %)**Downlink Payload**(%%)**:  **0x0F 01
785
786
787 === 3.4.3 Target Calibration (AT+CALCMD~=2 Equivalent to AT+CALCMD~=2,400) ===
788
789
790 Target concentration calibration assumes that sensor is put into a target environment with a known CO concentration. Such as outdoor fresh air 400ppm.
791
792 (% style="color:blue" %)**Downlink Payload**(%%)**:  **0x0F 02 ==> AT+CALCMD=2
793
794 0x0F 02 01 90 ==> AT+CALCMD=2,400
795
796 0x0F 02 01 F4 ==> AT+CALCMD=2,500
797
798
799 === 3.4.4 Background Calibration  (AT+CALCMD~=3) ===
800
801
802 A “fresh air” baseline environment is by default 400 ppm at normal ambient atmospheric pressure by sea level. It can be referenced in a crude way by placing the sensor in direct proximity to outdoor air, free of combustion sources and human presence, preferably during either by open window or fresh air inlets or similar. Calibration gas by exactly 400ppm can be purchased and used. Background calibration and ABC calibration share the same target value (fresh air = 400ppm).
803
804 (% style="color:blue" %)**Downlink Payload**(%%)**:  **0x0F 03
805
806
807 === 3.4.5 Zero Calibration  (AT+CALCMD~=4) ===
808
809
810 Zero-calibrations are the most accurate recalibration routine. A zero-ppm environment is most easily created by flushing the optical cell of the sensor module and filling up an encapsulating enclosure with nitrogen gas, N2, displacing all previous air volume concentrations. Another less reliable or accurate zero reference point can be created by scrubbing an airflow using e.g. Soda lime.
811
812 (% style="color:blue" %)**Downlink Payload**(%%)**:  **0x0F 04
813
814
815 == 3.5 calibration mode ==
816
817 === 3.5.1 Enabled ABC Calibration (AT+CALMOD~=1, default) ===
818
819
820 The Automatic Baseline Correction algorithm is a proprietary Senseair method for referencing to “fresh air” as the lowest, but required stable, CO-equivalent internal signal the sensor has measured during a set time period. This time period by default is 180hrs as to catch low-occupancy and other lower-emission time periods and favourable outdoor wind-directions and similar which can plausibly and routinely expose the sensor to the most true fresh air environment. If such an environment can never be expected to occur, either by sensor locality or ever-presence of CO emission sources, or exposure to even lower concentrations than the natural fresh air baseline, then ABC recalibration can’t be used. In each new measurement period, the sensor will compare it to the stored one at the ABC parameters registers, and if new values show a lower CO-equivalent raw signal while also in a stable environment, the reference is updated with these new values. The ABC algorithm also has a limit on how much it is allowed to change the baseline correction offset with, per each ABC cycle, meaning that self-calibrating to adjust to bigger drifts or signal changes may take more than one ABC cycle.
821
822 (% style="color:blue" %)**Downlink Payload**(%%)**:  **0x0E 01
823
824
825 === 3.5.2 Disabled ABC Calibration (AT+CALMOD~=0) ===
826
827
828 If the device is in a greenhouse or enclosed environment, it is recommended to turn off ABC calibration. And use Target Calibration for calibration.
829
830 (% style="color:blue" %)**Downlink Payload**(%%)**:  **0x0E 00
831
832
833 === 3.5.3 Button CO calibration function (Equivalent to AT+CALCMD~=3) ===
834
835
836 The first step is to put your device into sleep mode. Press the button five times quickly and the device will light up solid red for 5 seconds.
837
838 In the second step, take the device outside to an environment without combustion sources and people, let it sit for a few minutes, and then press the button three times quickly. The calibration is complete after the blue light stays on for 5 seconds.
839
840 The last step is to reset the device, press and hold the button until the green light flashes.
841
842
843 = 4. Battery & Power Consumption =
844
845 == 4.1 Battery Life ==
846
847
848 In a normal 20 minutes uplink situation , the battery life can last from 2 ~~ 8 years depends on signal environment. The Alarm feature will reduce the battery life a lot .
849
850 See below link for detail information about the battery life calculation.
851
852 [[**Battery Info & Power Consumption Analyze**>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
853
854
855 == 4.2 Replace Battery ==
856
857
858 AQS02-L uses an ER18505 battery. If the battery is running out, User can purchase an ER18505 battery and replace. Make sure don't mess the + & - position.
859
860 [[image:image-20240108140200-1.png||height="503" width="803"]]
861
862
863 = 5. OTA Firmware update =
864
865
866 (% class="wikigeneratedid" %)
867 User can change firmware AQS02-L to:
868
869 * Change Frequency band/ region.
870 * Update with new features.
871 * Fix bugs.
872
873 Firmware and changelog can be downloaded from : **[[Firmware download link>>https://www.dropbox.com/scl/fo/o5v6j7qewlks12eso98kl/h?rlkey=v1ian3hmva65924j4h4n0yfz8&dl=0]]**
874
875
876 Methods to Update Firmware:
877
878 * (Recommanded way) OTA firmware update via wireless : **[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/]]**
879 * Update through UART TTL interface : **[[Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H2.6A0UARTConnectionforAQS01-Lmotherboard]]**.
880
881 = 6. FAQ =
882
883 == 6.1 Do i need to calibrate the CO reading of AQS02-L? ==
884
885
886 The Operating principle for CO measurement used in AQS02-L is Non-dispersive infrared (NDIR). There is no need Calibration for this method.
887
888
889 = 7. Order Info =
890
891
892 Part Number: (% style="color:blue" %)**AQS02-L-XX**
893
894 (% style="color:red" %)**XX**(%%): The default frequency band
895
896 * (% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band
897
898 * (% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band
899
900 * (% style="color:red" %)**EU433**(%%): LoRaWAN EU433 band
901
902 * (% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band
903
904 * (% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band
905
906 * (% style="color:red" %)**US915**(%%): LoRaWAN US915 band
907
908 * (% style="color:red" %)**IN865**(%%): LoRaWAN IN865 band
909
910 * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
911
912 = 8. ​Packing Info =
913
914
915 (% style="color:#037691" %)**Package Includes**:
916
917 * AQS02-L LoRaWAN Indoor CO Sensor
918
919 (% style="color:#037691" %)**Dimension and weight**:
920
921 * Device Size: cm
922
923 * Device Weight: g
924
925 * Package Size / pcs : cm
926
927 * Weight / pcs : g
928
929 = 9. Support =
930
931
932 * Support is provided Monday to Friday, from 09:00 to 18:00 GMT+8. Due to different timezones we cannot offer live support. However, your questions will be answered as soon as possible in the before-mentioned schedule.
933
934 * Provide as much information as possible regarding your enquiry (product models, accurately describe your problem and steps to replicate it etc) and send a mail to [[Support@dragino.cc>>mailto:Support@dragino.cc]].