Version 62.6 by Xiaoling on 2023/05/30 10:10

Show last authors
1 (% style="text-align:center" %)
2 [[image:image-20230530084608-2.jpeg||height="707" width="707"]]
3
4
5 **Table of Contents:**
6
7 {{toc/}}
8
9
10
11
12
13
14 = 1. Introduction =
15
16 == 1.1 What is CPL03-LB LoRaWAN Pulse/Contact Sensor ==
17
18
19 The Dragino CPL03-LB is a (% style="color:blue" %)**LoRaWAN Contact Sensor**(%%) for Internet of Things solution. It detects dry contact status, open time, open counts, and then upload to IoT server via LoRaWAN wireless protocol.
20
21 The CPL03-LB will send periodically data every day as well as for each dry contact action. It also counts the contact open times and calculate last open duration. User can also disable the uplink for each open/close event, instead, device can count each open event and uplink periodically.
22
23 The LoRa wireless technology used in CPL03-LB allows device to send data and reach extremely long ranges at low data-rates. It provides ultra-long range spread spectrum communication and high interference immunity whilst minimizing current consumption.
24
25 CPL03-LB (% style="color:blue" %)**supports open alarm feature**(%%), user can set open alarm for instant notice. CPL03-LB (% style="color:blue" %)**supports Datalog feature**(%%), it can save the data when there is no LoRaWAN network and uplink when network recover.
26
27 CPL03-LB is designed for outdoor use. It has a weatherproof enclosure and industrial level battery to work in low to high temperatures.
28
29 CPL03-LB (% style="color:blue" %)**supports BLE configure**(%%) and (% style="color:blue" %)**wireless OTA update**(%%) which make user easy to use.
30
31 CPL03-LB is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), it is designed for long term use up to 5 years.
32
33 Each CPL03-LB is pre-load with a set of unique keys for LoRaWAN registrations, register these keys to local LoRaWAN server and it will auto connect after power on.
34
35
36 == 1.2 ​Features ==
37
38
39 * LoRaWAN 1.0.3 Class A
40 * Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865
41 * Ultra-low power consumption
42 * Open/Close detect
43 * Open/Close statistics
44 * Temperature & Humidity alarm
45 * supports open alarm feature
46 * supports Datalog feature
47 * Support Bluetooth v5.1 and LoRaWAN remote configure
48 * Support wireless OTA update firmware
49 * Uplink on periodically and open/close event
50 * Downlink to change configure
51 * 8500mAh Battery for long term use
52
53 == 1.3 Specification ==
54
55
56 (% style="color:#037691" %)**Common DC Characteristics:**
57
58 * Supply Voltage: built in 8500mAh Li-SOCI2 battery , 2.5v ~~ 3.6v
59 * Operating Temperature: -40 ~~ 85°C
60
61 (% style="color:#037691" %)**LoRa Spec:**
62
63 * Frequency Range,  Band 1 (HF): 862 ~~ 1020 Mhz
64 * Max +22 dBm constant RF output vs.
65 * RX sensitivity: down to -139 dBm.
66 * Excellent blocking immunity
67
68 (% style="color:#037691" %)**Battery:**
69
70 * Li/SOCI2 un-chargeable battery
71 * Capacity: 8500mAh
72 * Self-Discharge: <1% / Year @ 25°C
73 * Max continuously current: 130mA
74 * Max boost current: 2A, 1 second
75
76 (% style="color:#037691" %)**Power Consumption**
77
78 * Sleep Mode: 5uA @ 3.3v
79 * LoRa Transmit Mode: 125mA @ 20dBm, 82mA @ 14dBm
80
81 == 1.4 Applications ==
82
83
84 * Open/Close Detection
85 * Pulse meter application
86 * Dry Contact Detection
87
88 == 1.5 Sleep mode and working mode ==
89
90
91 (% style="color:blue" %)**Deep Sleep Mode: **(%%)Sensor doesn't have any LoRaWAN activate. This mode is used for storage and shipping to save battery life.
92
93 (% 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.
94
95
96 == 1.5 Button & LEDs ==
97
98
99 [[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675071855856-879.png]]
100
101
102 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
103 |=(% style="width: 167px;background-color:#D9E2F3;color:#0070C0" %)**Behavior on ACT**|=(% style="width: 117px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 225px;background-color:#D9E2F3;color:#0070C0" %)**Action**
104 |(% style="width:167px" %)Pressing ACT between 1s < time < 3s|(% style="width:117px" %)Send an uplink|(% style="width:225px" %)(((
105 If sensor is already Joined to LoRaWAN network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once.
106 Meanwhile, BLE module will be active and user can connect via BLE to configure device.
107 )))
108 |(% style="width:167px" %)Pressing ACT for more than 3s|(% style="width:117px" %)Active Device|(% style="width:225px" %)(((
109 (% style="color:green" %)**Green led**(%%) will fast blink 5 times, device will enter (% style="color:#037691" %)**OTA mode**(%%) for 3 seconds. And then start to JOIN LoRaWAN network.
110 (% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network.
111 Once sensor is active, BLE module will be active and user can connect via BLE to configure device, no matter if device join or not join LoRaWAN network.
112 )))
113 |(% style="width:167px" %)Fast press ACT 5 times.|(% style="width:117px" %)Deactivate Device|(% style="width:225px" %)(% style="color:red" %)**Red led**(%%) will solid on for 5 seconds. Means device is in Deep Sleep Mode.
114
115 == 1.6 BLE connection ==
116
117
118 CPL03-LB support BLE remote configure.
119
120
121 BLE can be used to configure the parameter of sensor or see the console output from sensor. BLE will be only activate on below case:
122
123 * Press button to send an uplink
124 * Press button to active device.
125 * Device Power on or reset.
126
127 If there is no activity connection on BLE in 60 seconds, sensor will shut down BLE module to enter low power mode.
128
129
130 == 1.7 Pin Definitions ==
131
132 [[image:image-20230523174230-1.png]]
133
134
135 == 1.8 Mechanical ==
136
137
138 [[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143884058-338.png]]
139
140
141 [[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143899218-599.png]]
142
143
144 [[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143909447-639.png]]
145
146
147 = 2. Configure CPL03-LB to connect to LoRaWAN network =
148
149 == 2.1 How it works ==
150
151
152 The CPL03-LB 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 CPL03-LB. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 20 minutes.
153
154
155 == 2.2 ​Quick guide to connect to LoRaWAN server (OTAA) ==
156
157
158 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.
159
160 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.
161
162
163 (% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from CPL03-LB.
164
165 Each CPL03-LB is shipped with a sticker with the default device EUI as below:
166
167 [[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]]
168
169
170 You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
171
172
173 (% style="color:blue" %)**Register the device**
174
175 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/1654935135620-998.png?rev=1.1||alt="1654935135620-998.png"]]
176
177
178 (% style="color:blue" %)**Add APP EUI and DEV EUI**
179
180 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-4.png?width=753&height=551&rev=1.1||alt="图片-20220611161308-4.png"]]
181
182
183 (% style="color:blue" %)**Add APP EUI in the application**
184
185
186 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-5.png?width=742&height=601&rev=1.1||alt="图片-20220611161308-5.png"]]
187
188
189 (% style="color:blue" %)**Add APP KEY**
190
191 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-6.png?width=744&height=485&rev=1.1||alt="图片-20220611161308-6.png"]]
192
193
194 (% style="color:blue" %)**Step 2:**(%%) Activate on CPL03-LB
195
196
197 Press the button for 5 seconds to activate the CPL03-LB.
198
199 (% 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.
200
201 After join success, it will start to upload messages to TTN and you can see the messages in the panel.
202
203
204 == 2.3 ​Uplink Payload ==
205
206 === 2.3.1 Device Status, FPORT~=5 ===
207
208
209 Users can use the downlink command(**0x26 01**) to ask CPL03-LB to send device configure detail, include device configure status. CPL03-LB will uplink a payload via FPort=5 to server.
210
211 The Payload format is as below.
212
213
214 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
215 |(% colspan="6" style="background-color:#d9e2f3; color:#0070c0" %)**Device Status (FPORT=5)**
216 |(% style="width:103px" %)**Size (bytes)**|(% style="width:72px" %)**1**|**2**|(% style="width:91px" %)**1**|(% style="width:86px" %)**1**|(% style="width:44px" %)**2**
217 |(% 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
218
219 Example parse in TTNv3
220
221 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/CPL01%20LoRaWAN%20Outdoor%20PulseContact%20%20Sensor%20Manual/WebHome/1652859749264-179.png?width=723&height=275&rev=1.1||alt="1652859749264-179.png"]]
222
223
224 (% style="color:#037691" %)**Sensor Model**(%%): For CPL03-LB, this value is 0x0A
225
226 (% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
227
228 (% style="color:#037691" %)**Frequency Band**:
229
230 *0x01: EU868
231
232 *0x02: US915
233
234 *0x03: IN865
235
236 *0x04: AU915
237
238 *0x05: KZ865
239
240 *0x06: RU864
241
242 *0x07: AS923
243
244 *0x08: AS923-1
245
246 *0x09: AS923-2
247
248 *0x0a: AS923-3
249
250 *0x0b: CN470
251
252 *0x0c: EU433
253
254 *0x0d: KR920
255
256 *0x0e: MA869
257
258
259 (% style="color:#037691" %)**Sub-Band**:
260
261 AU915 and US915:value 0x00 ~~ 0x08
262
263 CN470: value 0x0B ~~ 0x0C
264
265 Other Bands: Always 0x00
266
267
268 (% style="color:#037691" %)**Battery Info**:
269
270 Check the battery voltage.
271
272 Ex1: 0x0B45 = 2885mV
273
274 Ex2: 0x0B49 = 2889mV
275
276
277 === 2.3.2 Sensor Configuration, FPORT~=4 ===
278
279
280 CPL01 will only send this command after getting the downlink command (0x26 02) from the server.
281
282 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
283 |(% colspan="6" style="background-color:#d9e2f3; color:#0070c0; width:504px" %)**Sensor Configuration FPORT=4**
284 |**Size(bytes)**|(% style="width:75px" %)**3**|(% style="width:77px" %)**1**|(% style="width:96px" %)**1**|(% style="width:158px" %)**2**|(% style="width:158px" %)**1**
285 |**Value**|(% style="width:75px" %)TDC (unit:sec)|(% style="width:77px" %)Disalarm|(% style="width:96px" %)Keep status|(% style="width:158px" %)Keep time (unit: sec)|(% style="width:158px" %)Trigger mode
286
287 * (((
288 (% style="color:#037691" %)** TDC: (default: 0x001C20)**
289 )))
290
291 (((
292 Uplink interval for the total pulse count, default value is 0x001C20 which is 7200 seconds = 2 hours.
293
294
295 )))
296
297 * (((
298 (% style="color:#037691" %)** Disalarm: (default: 0)**
299 )))
300
301 (((
302 (% style="color:blue" %)** If Disalarm = 1**(%%), CPL01 will only send uplink at every TDC periodically. This is normally use for pulse meter application, in this application, there are many disconnect/connect event, and platform only care about the total number of pulse.
303 )))
304
305 (((
306 (% style="color:blue" %)** If Disalarm = 0**(%%), CPL01 will send uplink at every TDC periodically.
307
308
309 )))
310
311 * (((
312 (% style="color:#037691" %)** Keep Status & Keep Time**
313 )))
314
315 (((
316 Shows the configure value of [[Alarm Base on Timeout Feature>>||anchor="H3.5AlarmBaseonTimeout"]]
317
318
319 )))
320
321 * (((
322 (% style="color:#037691" %)** Trigger mode (default: 0)**
323 )))
324
325 (((
326 (% style="color:blue" %)** If Trigger mode = 0**(%%), count close to open event.
327 )))
328
329 (((
330 (% style="color:blue" %)** If Trigger mode = 1**(%%), count open to close event.
331 )))
332
333 [[image:1652860064987-743.png||height="152" width="730"]]
334
335
336 [[image:1652860079526-831.png||height="209" width="729"]]
337
338
339 === 2.3.3 Real-Time Open/Close Status, Uplink FPORT~=2 ===
340
341
342 (((
343 (((
344 CPL01 will send this uplink **after** Device Status once join the LoRaWAN network successfully. And CPL01 will:
345 )))
346 )))
347
348 (((
349 (((
350 periodically send this uplink every 2 hours, this interval [[can be changed>>||anchor="H3.1SetTransmitIntervalTime"]].
351 )))
352 )))
353
354 (((
355 (((
356 Uplink Payload totals 11 bytes.
357 )))
358 )))
359
360 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %)
361 |=(% colspan="5" style="background-color:#D9E2F3;color:#0070C0; width: 520px;" %)**Real-Time Open/Close Status, FPORT=2**
362 |(% style="width:60px" %)**Size(bytes)**|(% style="width:65px" %)**1**|(% style="width:65px" %)**3**|(% style="width:240px" %)**3**|(% style="width:90px" %)**4**
363 |(% style="width:101px" %)**Value**|(% style="width:133px" %)Status & [[Alarm>>||anchor="H3.5AlarmBaseonTimeout"]]|(% style="width:92px" %)Total pulse|(% style="width:247px" %)The last open duration (unit: min)|(% style="width:149px" %)[[Unix TimeStamp>>||anchor="H2.4.1UnixTimeStamp"]]
364
365 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:504px" %)
366 |=(% colspan="4" style="background-color:#D9E2F3;color:#0070C0; width: 502px;" %)**Status & Alarm field**
367 |(% style="width:60px" %)**Size(bit)**|(% style="width:70px" %)**6**|(% style="width:228px" %)**1**|(% style="width:146px" %)**1**
368 |(% style="width:76px" %)Value|(% style="width:80px" %)Calculate Flag|(% style="width:208px" %)Alarm: 0: No Alarm; 1: Alarm|(% style="width:136px" %)Contact Status: 0: Open, 1: Close
369
370 * (((
371 (% style="color:#037691" %)** Calculate Flag**
372 )))
373
374 (((
375 The calculate flag is a user define field, IoT server can use this filed to handle different meter with different pulse factor. For example, if there are 100 water meters, meter 1 ~~50 are 1 liter/pulse and meter 51 ~~ 100 has 1.5 liter/pulse.
376 )))
377
378 (((
379 User can set calculate flag to 1 for meter 1~~50 and 2 for meter 51 ~~ 100, So IoT Server can use this field for calculation.
380 )))
381
382 (((
383 Default value: 0. 
384 )))
385
386 (((
387 Range (6 bits): (b)000000 ~~ (b) 111111
388 )))
389
390 (((
391 Refer: [[Set Calculate Flag>>||anchor="H3.9Setthecalculateflag"]]
392
393
394 )))
395
396 * (((
397 (% style="color:#037691" %)** Alarm**
398 )))
399
400 (((
401 See [[Alarm Base on Timeout>>||anchor="H3.5AlarmBaseonTimeout"]]
402
403
404 )))
405
406 * (((
407 (% style="color:#037691" %)** Contact Status**
408 )))
409
410 (((
411 0: Open
412 )))
413
414 (((
415 1: Close
416
417
418 )))
419
420 * (((
421 (% style="color:#037691" %)** Total pulse**
422 )))
423
424 (((
425 Total pulse/counting base on dry [[contact trigger event>>||anchor="H2.3.2SensorConfiguration2CFPORT3D4"]]
426 )))
427
428 (((
429 Range (3 Bytes) : 0x000000 ~~ 0xFFFFFF . Max: 16777215
430
431
432 )))
433
434 * (((
435 (% style="color:#037691" %)** The last open duration**
436 )))
437
438 (((
439 Dry Contact last open duration.
440 )))
441
442 (((
443 Unit: min.
444 )))
445
446 [[image:1652860403792-491.png||height="153" width="735"]]
447
448
449 === 2.3.4 Real-Time Open/Close Status, 3 pulse mode, Uplink FPORT~=6 ===
450
451
452 (% style="color:red" %)**Note:**
453
454 * Firmware support for this mode is not released. If users want to test, please contact Dragino support.
455 * Users need to run (% style="color:blue" %)**AT+MOD=3**(%%) to support this model after updating the firmware.
456 * This mode doesn't support Historical Events and Datalog features.
457
458 (% style="color:blue" %)**CPL03-LB 3 Pulse Wiring:**
459
460 [[image:image-20221013153352-1.png||height="628" width="720"]]
461
462
463 (% style="color:blue" %)**Payload:**
464
465 [[image:image-20221013153352-2.png||height="167" width="1215"]]
466
467
468 (% border="1" cellspacing="5" style="background-color:#f2f2f2; width:447px" %)
469 |(% style="background-color:#d9e2f3; color:#0070c0; width:95px" %)**Size(bytes)**|(% style="background-color:#d9e2f3; color:#0070c0; width:61px" %)**1**|(% style="background-color:#d9e2f3; color:#0070c0; width:98px" %)**3**|(% style="background-color:#d9e2f3; color:#0070c0; width:98px" %)**3**|(% style="background-color:#d9e2f3; color:#0070c0; width:95px" %)**3**
470 |(% style="width:93px" %)Value|(% style="width:59px" %)Status|(% style="width:98px" %)(((
471 Port1 Total Pulse(PB14)
472 )))|(% style="width:96px" %)(((
473 Port2 Total Pulse(PB15)
474 )))|(% style="width:94px" %)(((
475 Port3 Total Pulse(PA4)
476 )))
477
478 (% style="color:blue" %)**Status:**
479
480 (% border="1" cellspacing="5" style="background-color:#f2f2f2; width:257px" %)
481 |(% style="background-color:#d9e2f3; color:#0070c0; width:75px" %)**Size(bit)**|(% style="background-color:#d9e2f3; color:#0070c0; width:112px" %)**6**|(% style="background-color:#d9e2f3; color:#0070c0; width:70px" %)**2**
482 |(% style="width:75px" %)Value|(% style="width:111px" %)Calculate Flag|(% style="width:68px" %)Reserve
483
484 (% style="color:red" %)**Max COUNT for each port is 16777215. Exceed this number will reset to 1.**
485
486
487 (% style="color:blue" %)**Related AT Command:**
488
489 (% style="color:#037691" %)**AT+TTRMOD1:  Port1 count mode;  0: Signal falling edge(Default), 1: Signal raising edge**
490
491 AT+TTRMOD1=0  Downlink Command: 0xA4 01 00
492
493 AT+TTRMOD1=1  Downlink Command: 0xA4 01 01
494
495
496 (% style="color:#037691" %)**AT+TTRMOD2:  Port2 count mode;  0: Signal falling edge(Default), 1: Signal raising edge**
497
498 AT+TTRMOD1=0  Downlink Command: 0xA4 02 00
499
500 AT+TTRMOD1=1  Downlink Command: 0xA4 02 01
501
502
503 (% style="color:#037691" %)**AT+TTRMOD3:  Port3 count mode;  0: Signal falling edge(Default), 1: Signal raising edge**
504
505 AT+TTRMOD1=0  Downlink Command: 0xA4 03 00
506
507 AT+TTRMOD1=1  Downlink Command: 0xA4 03 01
508
509
510 (% style="color:#037691" %)**AT+CALCFLAG:  Calculate Flag ( Default : 0 )**
511
512 AT+CALCFLAG=aa
513
514
515 (% style="color:blue" %)**Downlink Command: 0xA5 aa**
516
517 (% style="color:#037691" %)**AT+COUNTMOD:  Accumulative Mode;  0: Accumulative (Default),1: Reset after uplink.**
518
519 AT+COUNTMOD=0 Downlink Command: 0x0B 00
520
521 AT+COUNTMOD=1 Downlink Command: 0x0B 01
522
523
524 (% style="color:#037691" %)**AT+SETCNT:  Set count value**
525
526 AT+SETCNT=1,aa  Downlink Command: 0xA6 01 aa aa aa
527
528 AT+SETCNT=2,aa  Downlink Command: 0xA6 02 aa aa aa
529
530 AT+SETCNT=3,aa  Downlink Command: 0xA6 03 aa aa aa
531
532
533 (% style="color:blue" %)**Decode:  **(%%)[[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]]
534
535
536 === 2.3.5 Historical Door Open/Close Event, FPORT~=3 ===
537
538
539 (((
540 CPL01 stores sensor values and users can retrieve these history values via the [[downlink command>>||anchor="H2.4DatalogFeature"]].
541 )))
542
543 (((
544 The historical payload includes one or multiplies entries and every entry has the same payload as Real-Time open/close status.
545 )))
546
547 * (((
548 Each data entry is 11 bytes and has the same structure as [[Real-Time open/close status>>||anchor="H2.3.3Real-TimeOpen2FCloseStatus2CUplinkFPORT3D2"]], to save airtime and battery, CPL01 will send max bytes according to the current DR and Frequency bands.
549 )))
550
551 (((
552 For example, in the US915 band, the max payload for different DR is:
553 )))
554
555 (((
556 a) (% style="color:blue" %)**DR0**(%%): max is 11 bytes so one entry of data
557 )))
558
559 (((
560 b) (% style="color:blue" %)**DR1**(%%): max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
561 )))
562
563 (((
564 c) (% style="color:blue" %)**DR2**(%%): total payload includes 11 entries of data
565 )))
566
567 (((
568 d) (% style="color:blue" %)**DR3**(%%): total payload includes 22 entries of data.
569 )))
570
571 (((
572 If CPL01 doesn't have any data in the polling time. It will uplink 11 bytes of 0
573
574
575 )))
576
577 (% style="color:blue" %)** Downlink:**
578
579 (% class="box" %)
580 (((
581 **0x31 61 E9 3A D4 61 E9 3D E0 05**
582 )))
583
584 [[image:1652861353248-624.png||height="189" width="720"]]
585
586
587 (% style="color:blue" %)** Uplink:**
588
589 (% class="box" %)
590 (((
591 **0E 00 23 E6 00 00 00 61 E9 3B 04 0E 00 23 E6 00 00 00 61 E9 3B 25 0D 00 00 00 00 00 00 61 E9 3B C8 0E 00 00 02 00 00 00 61 E9 3B D4 0E 00 00 06 00 00 00 61 E9 3B DB 01 00 00 00 00 00 00 61 E9 3C 91 01 00 00 00 00 00 00 61 E9 3C A1 0D 00 00 00 00 00 00 61 E9 3C BC 0E 00 00 07 00 00 00 61 E9 3C D6 00 00 00 00 00 00 00 61 E9 3D A6**
592 )))
593
594 (% style="color:#037691" %)** **
595
596 (% style="color:#037691" %)**Parsed Value:**
597
598 (((
599 [ALARM, PIN_STATUS, TOTAL_PULSE, CALCULATE_FLAG, LAST_OPEN_DURATION, TIME]
600 )))
601
602 (((
603
604 )))
605
606 (((
607 [TRUE, CLOSE, 9190, 3, 0, 2022-01-20 10:35:48],
608 )))
609
610 (((
611 [TRUE, CLOSE, 9190, 3, 0, 2022-01-20 10:36:21],
612 )))
613
614 (((
615 [FALSE, OPEN, 0, 3, 0, 2022-01-20 10:39:04],
616 )))
617
618 (((
619 [TRUE, CLOSE, 2, 3, 0, 2022-01-20 10:39:16],
620 )))
621
622 (((
623 [TRUE, CLOSE, 6, 3, 0, 2022-01-20 10:39:23],
624 )))
625
626 (((
627 [FALSE, OPEN, 0, 0, 0, 2022-01-20 10:42:25],
628 )))
629
630 (((
631 [FALSE, OPEN, 0, 0, 0, 2022-01-20 10:42:41],
632 )))
633
634 (((
635 [FALSE, OPEN, 0, 3, 0, 2022-01-20 10:43:08],
636 )))
637
638 (((
639 [TRUE, CLOSE, 7, 3, 0, 2022-01-20 10:43:34],
640 )))
641
642 (((
643 [FALSE, CLOSE, 0, 0, 0, 2022-01-20 10:47:02],
644
645
646 )))
647
648 [[image:1652861480446-216.png]]
649
650
651 == 2.4 Payload Decoder file ==
652
653
654 In TTN, use can add a custom payload so it shows friendly reading
655
656 In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]]
657
658
659 == 2.5 Datalog Feature ==
660
661
662 Datalog Feature is to ensure IoT Server can get all sampling data from Sensor even if the LoRaWAN network is down. For each sampling, S31x-LB will store the reading for future retrieving purposes.
663
664
665 === 2.5.1 Ways to get datalog via LoRaWAN ===
666
667
668 Set [[PNACKMD=1>>||anchor="H2.5.4DatalogUplinkpayload28FPORT3D329"]], S31x-LB will wait for ACK for every uplink, when there is no LoRaWAN network,S31x-LB 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.
669
670 * (((
671 a) S31x-LB will do an ACK check for data records sending to make sure every data arrive server.
672 )))
673 * (((
674 b) S31x-LB will send data in **CONFIRMED Mode** when PNACKMD=1, but S31x-LB 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 S31x-LB gets a ACK, S31x-LB will consider there is a network connection and resend all NONE-ACK messages.
675 )))
676
677 Below is the typical case for the auto-update datalog feature (Set PNACKMD=1)
678
679 [[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-20220703111700-2.png?width=1119&height=381&rev=1.1||alt="图片-20220703111700-2.png" height="381" width="1119"]]
680
681
682 === 2.5.2 Unix TimeStamp ===
683
684
685 S31x-LB uses Unix TimeStamp format based on
686
687 [[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"]]
688
689 User can get this time from link:  [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] :
690
691 Below is the converter example
692
693 [[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"]]
694
695
696 So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25
697
698
699 === 2.5.3 Set Device Time ===
700
701
702 User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command.
703
704 Once S31x-LB Joined LoRaWAN network, it will send the MAC command (DeviceTimeReq) and the server will reply with (DeviceTimeAns) to send the current time to S31x-LB. If S31x-LB fails to get the time from the server, S31x-LB will use the internal time and wait for next time request (AT+SYNCTDC to set the time request period, default is 10 days).
705
706 (% 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.**
707
708
709
710 === 2.5.4 Poll sensor value ===
711
712
713 Users can poll sensor values based on timestamps. Below is the downlink command.
714
715 (% border="1" cellspacing="5" style="background-color:#f2f2f2; width:425.818px" %)
716 |(% colspan="4" style="background-color:#d9e2f3; color:#0070c0; width:423px" %)**Downlink Command to poll Open/Close status (0x31)**
717 |(% style="width:58px" %)**1byte**|(% style="width:127px" %)**4bytes**|(% style="width:124px" %)**4bytes**|(% style="width:114px" %)**1byte**
718 |(% style="width:58px" %)31|(% style="width:127px" %)Timestamp start|(% style="width:124px" %)Timestamp end|(% style="width:114px" %)Uplink Interval
719
720 (((
721 Timestamp start and Timestamp end-use Unix TimeStamp format as mentioned above. Devices will reply with all data logs during this period, using the uplink interval.
722 )))
723
724 (((
725 For example, downlink command[[image:image-20220518162852-1.png]]
726 )))
727
728 (((
729 Is to check 2021/11/12 12:00:00 to 2021/11/12 15:00:00's data
730 )))
731
732 (((
733 Uplink Internal =5s,means CPL01 will send one packet every 5s. range 5~~255s.
734 )))
735
736
737 == 2.7 Frequency Plans ==
738
739
740 The S31x-LB uses OTAA mode and below frequency plans by default. If user want to use it with different frequency plan, please refer the AT command sets.
741
742 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]]
743
744
745 = 3. Configure S31x-LB =
746
747 == 3.1 Configure Methods ==
748
749
750 S31x-LB supports below configure method:
751
752 * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
753 * 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.3UARTConnectionforSN50v3basemotherboard]].
754 * LoRaWAN Downlink.  Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
755
756 == 3.2 General Commands ==
757
758
759 These commands are to configure:
760
761 * General system settings like: uplink interval.
762 * LoRaWAN protocol & radio related command.
763
764 They are same for all Dragino Devices which support DLWS-005 LoRaWAN Stack. These commands can be found on the wiki:
765
766 [[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/]]
767
768
769 == 3.3 Commands special design for CPL03-LB ==
770
771
772 These commands only valid for CPL03-LB, as below:
773
774
775 === 3.3.1 Set Transmit Interval Time ===
776
777
778 (((
779 Feature: Change LoRaWAN End Node Transmit Interval.
780
781
782 )))
783
784 (((
785 (% style="color:blue" %)**AT Command: AT+TDC**
786 )))
787
788 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
789 |=(% style="width: 156px;background-color:#D9E2F3; color:#0070c0" %)**Command Example**|=(% style="width: 137px;background-color:#D9E2F3; color:#0070c0" %)**Function**|=(% style="background-color:#D9E2F3; color:#0070c0" %)**Response**
790 |(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|(((
791 30000
792 OK
793 the interval is 30000ms = 30s
794 )))
795 |(% style="width:156px" %)AT+TDC=60000|(% style="width:137px" %)Set Transmit Interval|(((
796 OK
797 Set transmit interval to 60000ms = 60 seconds
798 )))
799
800 (((
801 (% style="color:blue" %)**Downlink Command: 0x01**
802 )))
803
804 (((
805 Format: Command Code (0x01) followed by 3 bytes time value.
806 )))
807
808 (((
809 If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01.
810 )))
811
812 * (((
813 Example 1: Downlink Payload: 0100001E  ~/~/ Set Transmit Interval (TDC) = 30 seconds
814 )))
815 * (((
816 Example 2: Downlink Payload: 0100003C  ~/~/ Set Transmit Interval (TDC) = 60 seconds
817
818
819
820 )))
821
822
823 === 3.3.2 Quit AT Command ===
824
825
826 Feature: Quit AT Command mode, so user needs to input the password again before using AT Commands.
827
828 (% style="color:blue" %)**AT Command: AT+DISAT**
829
830 (% border="1" cellspacing="5" style="background-color:#f2f2f2; width:452px" %)
831 |=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 198px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 99px;background-color:#D9E2F3;color:#0070C0" %)**Response**
832 |(% style="width:155px" %)AT+DISAT|(% style="width:198px" %)Quit AT Commands mode|(% style="width:96px" %)OK
833
834 (% style="color:blue" %)**Downlink Command:**
835
836 No downlink command for this feature.
837
838
839 === 3.3.3 Get Device Status ===
840
841
842 Send a LoRaWAN downlink to ask device send Alarm settings.
843
844 (% style="color:blue" %)**Downlink Payload:  **(%%)0x26 01
845
846 Sensor will upload Device Status via FPORT=5. See payload section for detail.
847
848
849 === 3.3.4 Enable / Disable Alarm ===
850
851
852 Feature: Enable/Disable Alarm for open/close event. Default value 0.
853
854 (% style="color:blue" %)**AT Command:**
855
856 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %)
857 |(% style="background-color:#d9e2f3; color:#0070c0; width:154px" %)**Command Example**|(% style="background-color:#d9e2f3; color:#0070c0; width:278px" %)**Function**|(% style="background-color:#d9e2f3; color:#0070c0; width:88px" %)**Response**
858 |(% style="width:154px" %)AT+DISALARM=1|(% style="width:278px" %)End node will only send packets in TDC time.|OK
859 |(% style="width:154px" %)AT+DISALARM=0|(% style="width:278px" %)End node will send packets in TDC time or status change for door sensor|OK
860
861 (% style="color:blue" %)**Downlink Command:**
862
863 **0xA7 01**  ~/~/  Same As AT+DISALARM=1
864
865 **0xA7 00    ** ~/~/  Same As AT+DISALARM=0
866
867 (% style="color:red" %)**Notice, This command requires setting CPL01 to LDS03A Mode first. See **(%%)**"(% style="color:blue" %)3.7 Set the sensor mode"(%%)**
868
869
870 === 3.3.5 Alarm Base on Timeout ===
871
872
873 (((
874 (((
875 CPL01 can monitor the timeout for a status change, this feature can be used to monitor some events such as door opening too long etc. Related Parameters are:
876
877
878 )))
879 )))
880
881 (((
882 (((
883 (% style="color:#4f81bd" %)**1. Keep Status: Status to be monitor**
884 )))
885 )))
886
887 (((
888 (((
889 Keep Status = 1: Monitor Close to Open event
890 )))
891 )))
892
893 (((
894 (((
895 Keep Status = 0: Monitor Open to Close event
896
897
898 )))
899 )))
900
901 (((
902 (((
903 (% style="color:#4f81bd" %)**2. Keep Time: Timeout to send an Alarm**
904 )))
905 )))
906
907 (((
908 (((
909 Range 0 ~~ 65535(0xFFFF) seconds.
910 )))
911 )))
912
913 (((
914 (((
915 If keep time = 0, Disable Alarm Base on Timeout feature.
916 )))
917 )))
918
919 (((
920 (((
921 If keep time > 0, device will monitor the keep status event and send an alarm when status doesn’t change after timeout.
922 )))
923
924 (((
925
926 )))
927 )))
928
929 (((
930 (((
931 (% style="color:#4f81bd" %)**AT Command**(%%) to configure:
932 )))
933
934 (((
935 (% style="color:blue" %)**AT+TTRIG=1,30**(%%)  ~-~-> When the **Keep Status** change from connect to disconnect, and device remains in disconnect status for more than 30 seconds. CPL01 will send an uplink packet, the [[Alarm bit>>||anchor="H2.3.3Real-TimeOpen2FCloseStatus2CUplinkFPORT3D2"]] (the second bit of 1^^st^^ byte of payload) on this uplink packet is set to 1.
936 )))
937
938 (((
939 (% style="color:blue" %)**AT+TTIG=0,0 **(%%) ~-~-> Default Value, disable timeout Alarm.
940 )))
941 )))
942
943 (((
944
945 )))
946
947 (((
948 (((
949 (% style="color:#4f81bd" %)**Downlink Command**(%%) to configure:
950 )))
951
952 (((
953 **Command: 0xA9 aa bb cc**
954 )))
955 )))
956
957 (((
958 (((
959 A9: Command Type Code
960 )))
961 )))
962
963 (((
964 (((
965 aa: status to be monitored
966 )))
967 )))
968
969 (((
970 (((
971 bb cc: timeout.
972 )))
973 )))
974
975 (((
976
977 )))
978
979 (((
980 (((
981 If user send 0xA9 01 00 1E: equal to AT+TTRIG=1,30
982 )))
983 )))
984
985 (((
986 (((
987 Or
988 )))
989 )))
990
991 (((
992 (((
993 0xA9 00 00 00: Equal to AT+TTRIG=0,0. Disable timeout Alarm.
994 )))
995 )))
996
997
998 === 3.3.6 Clear Flash Record ===
999
1000
1001 Feature: Clear flash storage for data log feature.
1002
1003
1004 (% style="color:#4f81bd" %)**AT Command: AT+CLRDTA**
1005
1006 (% border="1" cellspacing="5" style="background-color:#f2f2f2; width:500px" %)
1007 |=(% style="width: 157px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 169px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 174px;background-color:#D9E2F3;color:#0070C0" %)**Response**
1008 |(% style="width:157px" %)AT+CLRDTA|(% style="width:169px" %)Clear flash storage for data log feature.|Clear all stored sensor data… OK
1009
1010 (((
1011 (((
1012 (% style="color:#4f81bd" %)**Downlink Command:**
1013 )))
1014
1015 (((
1016 * **Example**: 0xA301  ~/~/  Same as AT+CLRDTA
1017 )))
1018 )))
1019
1020
1021
1022 === 3.3.7 Set trigger mode ===
1023
1024
1025 Feature: Set the trigger interrupt mode.
1026
1027 (% style="color:blue" %)**AT Command: AT+TTRMOD**
1028
1029 (% border="1" cellspacing="5" style="background-color:#f2f2f2; width:495px" %)
1030 |=(% style="width: 157px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 246px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 92px;background-color:#D9E2F3;color:#0070C0" %)**Response**
1031 |(% style="width:157px" %)(((
1032 AT+TTRMOD=1
1033 )))|(% style="width:156px" %)Count and trigger from open to close (rising edge)|(% style="width:89px" %)(((
1034 (((
1035 OK
1036 )))
1037 )))
1038 |(% style="width:157px" %)(((
1039 AT+TTRMOD=0
1040 )))|(% style="width:156px" %)Count and trigger from close to open (falling edge)|(% style="width:89px" %)(((
1041 OK
1042 )))
1043
1044 (% style="color:blue" %)**Downlink Command:**
1045
1046 * **Example**: 0xA401  ~/~/  Same as AT+ TTRMOD =1
1047
1048
1049
1050
1051
1052
1053 === 3.3.8 Set the calculate flag ===
1054
1055
1056 Feature: Set the calculate flag
1057
1058 (% style="color:blue" %)**AT Command: AT+CALCFLAG**
1059
1060 (% border="1" cellspacing="5" style="background-color:#f2f2f2; width:461px" %)
1061 |=(% style="width: 158px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 193px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 110px;background-color:#D9E2F3;color:#0070C0" %)**Response**
1062 |(% style="width:158px" %)AT+CALCFLAG =1|(% style="width:192px" %)Set the calculate flag to 1.|(% style="width:109px" %)OK
1063 |(% style="width:158px" %)AT+CALCFLAG =2|(% style="width:192px" %)Set the calculate flag to 2.|(% style="width:109px" %)OK
1064
1065 (% style="color:blue" %)**Downlink Command:**
1066
1067 * **Example**: 0XA501  ~/~/  Same as AT+CALCFLAG =1
1068
1069
1070
1071
1072 === 3.3.9 Set count number ===
1073
1074
1075 Feature: Manually set the count number
1076
1077 (% style="color:blue" %)**AT Command: AT+SETCNT**
1078
1079 (% border="1" cellspacing="5" style="background-color:#f2f2f2; width:479px" %)
1080 |=(% style="width: 160px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 223px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 96px;background-color:#D9E2F3;color:#0070C0" %)**Response**
1081 |(% style="width:160px" %)AT+ SETCNT =0|(% style="width:221px" %)Set the count number to 0.|(% style="width:95px" %)OK
1082 |(% style="width:160px" %)AT+ SETCNT =100|(% style="width:221px" %)Set the count number to 100.|(% style="width:95px" %)OK
1083
1084 (% style="color:blue" %)**Downlink Command:**
1085
1086 * **Example**: 0xA6000001  ~/~/  Same as AT+ SETCNT =1
1087
1088 * **Example**: 0xA6000064  ~/~/  Same as AT+ SETCNT =100
1089
1090
1091
1092
1093 === 3.3.10 Set Interrupt Mode ===
1094
1095
1096 Feature, Set Interrupt mode for PA8 of pin.
1097
1098 When AT+INTMOD=0 is set, PA8 is used as a digital input port.
1099
1100 (% style="color:blue" %)**AT Command: AT+INTMOD**
1101
1102 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
1103 |=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 197px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 158px;background-color:#D9E2F3;color:#0070C0" %)**Response**
1104 |(% style="width:154px" %)AT+INTMOD=?|(% style="width:196px" %)Show current interrupt mode|(% style="width:157px" %)(((
1105 0
1106 OK
1107 the mode is 0 =Disable Interrupt
1108 )))
1109 |(% style="width:154px" %)AT+INTMOD=2|(% style="width:196px" %)(((
1110 Set Transmit Interval
1111 0. (Disable Interrupt),
1112 ~1. (Trigger by rising and falling edge)
1113 2. (Trigger by falling edge)
1114 3. (Trigger by rising edge)
1115 )))|(% style="width:157px" %)OK
1116
1117 (% style="color:blue" %)**Downlink Command: 0x06**
1118
1119 Format: Command Code (0x06) followed by 3 bytes.
1120
1121 This means that the interrupt mode of the end node is set to 0x000003=3 (rising edge trigger), and the type code is 06.
1122
1123 * Example 1: Downlink Payload: 06000000  ~/~/  Turn off interrupt mode
1124
1125 * Example 2: Downlink Payload: 06000003  ~/~/  Set the interrupt mode to rising edge trigger
1126
1127
1128
1129
1130
1131
1132 === 3.3.11 Set Power Output Duration ===
1133
1134
1135 Control the output duration 5V . Before each sampling, device will
1136
1137 ~1. first enable the power output to external sensor,
1138
1139 2. keep it on as per duration, read sensor value and construct uplink payload
1140
1141 3. final, close the power output.
1142
1143 (% style="color:blue" %)**AT Command: AT+5VT**
1144
1145 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
1146 |=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 197px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 158px;background-color:#D9E2F3;color:#0070C0" %)**Response**
1147 |(% style="width:154px" %)AT+5VT=?|(% style="width:196px" %)Show 5V open time.|(% style="width:157px" %)0 (default)
1148 OK
1149 |(% style="width:154px" %)AT+5VT=500|(% style="width:196px" %)Close after a delay of 1000 milliseconds.|(% style="width:157px" %)OK
1150
1151 (% style="color:blue" %)**Downlink Command: 0x07**
1152
1153 Format: Command Code (0x07) followed by 2 bytes.
1154
1155 The first and second bytes are the time to turn on.
1156
1157 * Example 1: Downlink Payload: 070000  **~-~-->**  AT+5VT=0
1158 * Example 2: Downlink Payload: 0701F4  **~-~-->**  AT+5VT=500
1159
1160 = 4. Battery & Power Consumption =
1161
1162
1163 S31x-LB use ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
1164
1165 [[**Battery Info & Power Consumption Analyze**>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
1166
1167
1168 = 5. OTA Firmware update =
1169
1170
1171 (% class="wikigeneratedid" %)
1172 User can change firmware S31x-LB to:
1173
1174 * Change Frequency band/ region.
1175 * Update with new features.
1176 * Fix bugs.
1177
1178 Firmware and changelog can be downloaded from : **[[Firmware download link>>url:https://www.dropbox.com/sh/kwqv57tp6pejias/AAAopYMATh1GM6fZ-VRCLrpDa?dl=0]]**
1179
1180
1181 Methods to Update Firmware:
1182
1183 * (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/]]
1184 * Update through UART TTL interface. **[[Instruction>>url:http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H1.LoRaSTv4baseHardware]]**.
1185
1186 = 6. FAQ =
1187
1188
1189
1190 = 7. Order Info =
1191
1192
1193 Part Number: (% style="color:blue" %)**S31-LB-XX  / S31B-LB-XX**
1194
1195 (% style="color:red" %)**XX**(%%): The default frequency band
1196
1197 * (% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band
1198
1199 * (% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band
1200
1201 * (% style="color:red" %)**EU433**(%%): LoRaWAN EU433 band
1202
1203 * (% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band
1204
1205 * (% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band
1206
1207 * (% style="color:red" %)**US915**(%%): LoRaWAN US915 band
1208
1209 * (% style="color:red" %)**IN865**(%%): LoRaWAN IN865 band
1210
1211 * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
1212
1213 = 8. ​Packing Info =
1214
1215
1216 (% style="color:#037691" %)**Package Includes**:
1217
1218 * S31x-LB LoRaWAN Temperature & Humidity Sensor
1219
1220 (% style="color:#037691" %)**Dimension and weight**:
1221
1222 * Device Size: cm
1223
1224 * Device Weight: g
1225
1226 * Package Size / pcs : cm
1227
1228 * Weight / pcs : g
1229
1230 = 9. Support =
1231
1232
1233 * 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.
1234
1235 * 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]].