Show last authors
1 (% style="text-align:center" %)
2 [[image:image-20240705094013-3.png]]
3
4
5
6
7
8 (% _mstvisible="1" %)
9 (% _msthash="315238" _msttexthash="18964465" _mstvisible="3" %)**Table of Contents:**
10
11 {{toc/}}
12
13
14
15
16
17
18
19
20 = 1.  Introduction =
21
22 == 1.1  What is the PB01 LoRaWAN Push Button? ==
23
24
25 The **PB01 LoRaWAN Push Button** is a wireless LoRaWAN device equipped with a single (% style="color:blue" %)**push button**(%%). When the user presses the button, the PB01 sends an uplink to the LoRaWAN Network Server using the long-range LoRaWAN wireless protocol. Additionally, the PB01 measures (% style="color:blue" %)**environment temperature & humidity**(%%) and periodically uplinks this data to the LoRaWAN Network Server.
26
27 The PB01 is powered by (% style="color:blue" %)**2 x AAA batteries**(%%), allowing it to operate for several years.* Users can easily replace the batteries once they are drained.
28
29 The PB01 also features a built-in speaker that can produce different sounds when the button is pressed or when a reply (downlink) is received from the Network Server. The speaker can be disabled if the user prefers.
30
31 The PB01 is fully compatible with the LoRaWAN v1.0.3 protocol, and works seamlessly with standard LoRaWAN gateways.
32
33 ~* Battery life depends on the frequency of data transmission. Please refer to the [[battery analyzer>>||anchor="H4.2A0PowerConsumptionAnalyze"]] for details.
34
35
36 == 1.2  Features ==
37
38
39 * Wall-mountable
40 * LoRaWAN v1.0.3 protocol, Class A mode
41 * 1 x push button (available in different colors)
42 * Built-in temperature and humidity sensor
43 * Built-in speaker
44 * Frequency bands: CN470, EU433, KR920, US915, EU868, AS923, AU915
45 * AT commands for parameter changes
46 * Remote parameter configuration via LoRaWAN downlink
47 * Firmware upgradable via programming port
48 * Supports 2 x AAA LR03 batteries
49 * IP rating: IP52
50
51 == 1.3  Specification ==
52
53
54 **Built-in Temperature Sensor:**
55
56 * **Resolution**: 0.01 °C
57 * **Accuracy Tolerance**: Typ ±0.2 °C
58 * **Long-Term Drift**: < 0.03 °C/year
59 * **Operating Range**: -10 ~~ 50 °C or -40 ~~ 60 °C (depends on battery type; see [[FAQ>>||anchor="H6.5Whyiseedifferentworkingtemperatureforthedevice3F"]])
60
61 **Built-in Humidity Sensor:**
62
63 * **Resolution**: 0.01 %RH
64 * **Accuracy Tolerance**: Typ ±1.8 %RH
65 * **Long-Term Drift**: < 0.2 %RH/year
66 * **Operating Range**: 0 ~~ 99.0 %RH (no dew)
67
68 == 1.4  Power Consumption ==
69
70
71 PB01 : Idle: 5 uA, Transmit: max 110 mA
72
73
74 == 1.5  Storage & Operation Temperature ==
75
76
77 -10 ~~ 50 °C  or -40 ~~ 60 °C (depends on battery type; see [[FAQ>>||anchor="H6.5Whyiseedifferentworkingtemperatureforthedevice3F"]])
78
79
80 == 1.6  Applications ==
81
82
83 * Smart buildings & home automation
84 * Logistics & supply chain management
85 * Smart metering
86 * Smart agriculture
87 * Smart cities
88 * Smart factories
89
90 = 2.  Operation Mode =
91
92 == 2.1  How It Works? ==
93
94
95 Each PB01 is shipped with registration information that can be used to register and activate the device with a LoRaWAN Network Server using Over-The-Air Activation (OTAA), which is the most secure method for activating an end device on a LoRaWAN Network Server. It also supports Activation-By-Personalization (ABP), but this method is not recommended as it is less secure.
96
97 After registration, if the PB01 is within the LoRaWAN network's coverage area, it can join the network and start transmitting sensor data to the LoRaWAN Network Server. The default uplink interval is **20 minutes**.
98
99
100 == 2.2  How to turn on PB01? ==
101
102
103 (% style="color:red" %)** 1.  Open the enclosure from the bottom.**
104
105 [[image:image-20220621093835-1.png]]
106
107
108 (% style="color:red" %)** 2.  Insert 2 x AAA LR03 batteries to turn on the device.**
109
110 [[image:image-20220621093835-2.png]]
111
112
113 (% style="color:#ff0000" %)** 3. After **(% style="caret-color:#ff0000; color:#ff0000" %)**activating with a LoRaWAN network**(% style="color:#ff0000" %)**, you can re-join/restart the device by long pressing the ACT button as shown in the image below.**
114
115 [[image:image-20220621093835-3.png]]
116
117
118 You can check the [[LED Status>>||anchor="H2.8LEDIndicator"]] to determine the working state of the PB01.
119
120
121 == 2.3  Example to join LoRaWAN network ==
122
123
124 This section shows an example for how to join the [[TheThingsNetwork>>url:https://www.thethingsnetwork.org/]] LoRaWAN IoT server. Usages with other LoRaWAN IoT servers are of similar procedure.
125
126 (% _mstvisible="1" class="wikigeneratedid" %)
127 Assume the LPS8v2 is already set to connect to [[TTN V3 network >>url:https://eu1.cloud.thethings.network/]]. We need to add the PB01 device in TTN V3 portal. 
128
129 [[image:image-20240705094824-4.png]]
130
131 (% style="color:blue" %)**Step 1**(%%):  Create a device in TTN V3 with the OTAA keys from PB01.
132
133 Each PB01 is shipped with a sticker with the default DEV EUI as below:
134
135 [[image:image-20230426083617-1.png||height="294" width="633"]]
136
137
138 Enter these keys in the LoRaWAN Server portal. Below is TTN V3 screen shot:
139
140 Create application.
141
142 choose to create the device manually.
143
144 Add JoinEUI(AppEUI), DevEUI, AppKey.(% style="display:none" %)
145
146 [[image:image-20240507142116-1.png||height="410" width="1138"]](% style="display:none" %) (%%)
147
148
149 [[image:image-20240507142157-2.png||height="559" width="1147"]]
150
151 [[image:image-20240507142401-3.png||height="693" width="1202"]]
152
153 [[image:image-20240507142651-4.png||height="760" width="1190"]]
154
155 **Default mode OTAA**(% style="display:none" %)
156
157
158 (% style="color:blue" %)**Step 2**(%%):  Use ACT button to activate PB01 and it will auto join to the TTN V3 network. After join success, it will start to upload sensor data to TTN V3 and user can see in the panel.
159
160 [[image:image-20240507143104-5.png||height="434" width="1398"]]
161
162
163 == 2.4  Uplink Payload ==
164
165
166 Uplink payloads include two types: Valid Sensor Value and other status / control command.
167
168 * Valid Sensor Value: Use FPORT=2
169 * Other control command: Use FPORT other than 2.
170
171 === 2.4.1  Uplink FPort~=5, Device Status ===
172
173
174 The 'Device Status' uplink is sent by the PB01 as its first uplink after successfully joining a LoRaWAN network. However, you can manually retrieve the device status as an uplink by sending a command as a downlink to the device. The format of the downlink command should be in hexadecimal.
175
176 (% style="color:#4472c4" %)**Downlink:  **(%%)**0x2601 **
177
178 The device uplinks its status via FPort=5, and the payload format is as follows:
179
180 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:370px" %)
181 |=(% style="width: 60px;background-color:#4F81BD;color:white" %)**Size(bytes)(% style="display:none" %) (%%)**|=(% style="width: 60px;background-color:#4F81BD;color:white" %)**1**|=(% style="width: 80px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 80px;background-color:#4F81BD;color:white" %)**1**|=(% style="width: 60px;background-color:#4F81BD;color:white" %)**1**|=(% style="width: 30px;background-color:#4F81BD;color:white" %)**2**
182 |(% style="width:99px" %)Value|(% style="width:62px" %)Sensor Model|(% style="width:80px" %)Firmware Version|(% style="width:82px" %)Frequency Band|(% style="width:85px" %)Sub-band|(% style="width:46px" %)BAT
183
184 The following figure shows the decoded device status payload as displayed on The Things Stack.
185
186 [[image:image-20240507152130-12.png||height="469" width="1366"]](% style="display:none" %)
187
188
189 For example, if the device status uplink includes the payload, [[image:image-20240507152254-13.png||height="26" width="130"]]
190
191
192 (% style="color:#4472c4" %)**Sensor model**(%%): 0x35 - for PB01, this value is 0x35.
193
194 (% style="color:#4472c4" %)**Firmware version**(%%): 0x0100 - value 0x0100 means v1.0.0.
195
196 (% style="color:#4472c4" %)**Frequency band**(%%): 01 - means EU868. The following are the possible values for other frequency bands.
197
198 *0x01: EU868
199
200 *0x02: US915
201
202 *0x03: IN865
203
204 *0x04: AU915
205
206 *0x05: KZ865
207
208 *0x06: RU864
209
210 *0x07: AS923
211
212 *0x08: AS923-1
213
214 *0x09: AS923-2
215
216 *0x0A: AS923-3
217
218 (% style="color:#4472c4" %)**Sub band**(%%): 0xFF - value 0x00 ~~ 0x08 (only for CN470, AU915, US915. Others are 0x00)
219
220 (% style="color:#4472c4" %)**BAT**(%%): 0x 0CDE - represents the battery voltage for PB01. The values 0x0CDE means 3294 mV = 3.294 V
221
222
223 === 2.4.2  Uplink FPort~=2, Real time sensor values ===
224
225
226 The PB01 sends real time sensor values after the Device Status uplink. The device will continue to send this uplink periodically. The default interval is 20 minutes, but it can be changed.
227
228 This type of uplink uses FPort=2 and, by default, is sent every 20 minutes. The default uplink interval [[can be changed>>||anchor="H3.1A0DownlinkCommandSet"]] using AT commands.
229
230 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:460px" %)
231 |=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
232 **Size(bytes)**
233 )))|=(% style="width: 60px;background-color:#4F81BD;color:white" %)2|=(% style="width: 140px;background-color:#4F81BD;color:white" %)(((
234 **1**
235 )))|=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
236 **1**
237 )))|=(% style="width: 90px;background-color:#4F81BD;color:white" %)(((
238 **2**
239 )))|=(% style="width: 50px;background-color:#4F81BD;color:white" %)(((
240 **2**
241 )))
242 |(% style="width:97px" %)(((
243 Value
244 )))|(% style="width:39px" %)Battery|(% style="width:39px" %)(((
245 Sound_ACK & Sound_key
246 )))|(% style="width:100px" %)(((
247 (((
248 Alarm
249 )))
250 )))|(% style="width:77px" %)(((
251 (((
252 Temperature
253 )))
254 )))|(% style="width:47px" %)(((
255 Humidity
256 )))
257
258 The following figure shows the decoded real time sensor values payload as displayed on The Things Stack.
259
260 [[image:image-20240507150155-11.png||height="549" width="1261"]]
261
262
263 For example, if the real time sensor values uplink includes the payload (FPort=2):  (% style="background-color:yellow" %)**0C EA 03 01 01 11 02 A8**
264
265
266 ==== (% style="color:blue" %)**Battery:**(%%) ====
267
268 Byte 1 and 2: Check the battery voltage.
269
270 * Example 1: 0x0CEA = 3306mV
271 * Example 2: 0x0D08 = 3336mV
272
273 ==== (% style="color:blue" %)**Sound_ACK & Sound_key:**(%%) ====
274
275 Byte 3: Key sound and ACK sound are enabled by default.
276
277 * Example1: 0x03
278
279 Sound_ACK: (03>>1) & 0x01=1, OPEN.
280
281 **~ ** Sound_key:  03 & 0x01=1, OPEN.
282
283 * Example 2: 0x01
284
285 Sound_ACK: (01>>1) & 0x01=0, CLOSE.
286
287 **~ ** Sound_key:  01 & 0x01=1, OPEN.
288
289
290 ==== (% style="color:blue" %)**Alarm:**(%%) ====
291
292 Byte 4: Key alarm.
293
294 * Example 1: 0x01 & 0x01=1, TRUE.
295 * Example 2: 0x00 & 0x01=0, FALSE.
296
297 ==== (% style="color:blue" %)**Temperature:**(%%) ====
298
299 Byte 5 and 6: Temperature.
300
301 * Example 1: 0x0111/10=27.3℃
302 * Example 2: (0xFF0D-65536)/10=-24.3℃
303
304 If payload is: FF0D :  (FF0D & 8000 == 1) , temp = (FF0D - 65536)/100 =-24.3℃
305
306 (FF0D & 8000:Check whether the highest bit is 1. If the highest bit is 1, the value is negative)
307
308
309 ==== (% style="color:blue" %)**Humidity:**(%%) ====
310
311 Byte 7 and 8: Humidity
312
313 * Humidity: 0x02A8/10=68.0%
314
315 === 2.4.3  Uplink FPort~=3, Datalog sensor value ===
316
317
318 PB01 stores sensor values, and you can retrieve these historical values via a downlink command. The Datalog sensor values are sent via FPort=3.
319
320 [[image:image-20240510144912-1.png||height="471" width="1178"]](% style="display:none" %)
321
322
323 Each data entry is 11 bytes. To save airtime and battery, the maximum payload size is depending on the current Date Rate and the frequency band.(% style="display:none" %) (%%) For example, in US915 band, the maximum payload for different DR is as follows:
324
325 1. **DR0**: maximum payload is 11 bytes. The device will uplink one entry of data.
326 1. **DR1**: maximum payload is 53 bytes. The device will upload 4 entries of data (total of 44 bytes)
327 1. **DR2**: A payload includes 11 entries of data
328 1. **DR3**: A payload includes 22 entries of data.
329
330 (% style="color:red" %)**Note: The PB01 will save 178 sets of historical data. If the device doesn't have any data during the polling time, it will uplink 11 bytes of 0s.**
331
332 See [[Datalog feature>>||anchor="H2.6A0DatalogFeature"]] for more information.
333
334 (% style="display:none" %) (%%)
335
336 === 2.4.4  Decoder in TTN V3 ===
337
338
339 In the LoRaWAN protocol, the uplink payload uses HEX format to store data. You need to add a payload formatter or decoder in the LoRaWAN server to extract each field and convert them into readable values.
340
341 The following figure shows how to add the uplink payload formatter in The Things Stack. The uplink decoder for PB01 can be found here:  [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]]
342
343 [[image:image-20240507162814-16.png||height="778" width="1135"]]
344
345 (((
346
347 )))
348
349 == 2.5 Show data on Datacake ==
350
351
352 (((
353 Datacake IoT platform provides a human friendly interface to show the sensor data in charts, once we have sensor data in TTN V3, we can use Datacake to connect to TTN V3 and see the data in Datacake. Below are the steps:
354 )))
355
356 (((
357
358 )))
359
360 (((
361 (% style="color:blue" %)**Step 1**(%%):  Be sure that your device is programmed and properly connected to the LoRaWAN network.
362 )))
363
364 (((
365 (% style="color:blue" %)**Step 2**(%%):  Configure your Application to forward data to Datacake you will need to add integration. Go to TTN V3 Console ~-~-> Applications ~-~-> Integrations ~-~-> Add Integrations.
366 )))
367
368 (((
369 ~1. Add Datacake:
370 )))
371
372 (((
373 2. Select default key as Access Key:
374 )))
375
376 (((
377 3. In Datacake console ([[https:~~/~~/datacake.co/>>url:https://datacake.co/]]) , add PB01:
378 )))
379
380 (((
381 Please refer to the figure below.
382 )))
383
384 [[image:image-20240510150924-2.png||height="612" width="1186"]]
385
386
387 Log in to DATACAKE, copy the API under the account.
388
389 [[image:image-20240510151944-3.png||height="581" width="1191"]]
390
391
392
393 [[image:image-20240510152150-4.png||height="697" width="1188"]]
394
395
396 [[image:image-20240510152300-5.png||height="298" width="1191"]]
397
398
399 [[image:image-20240510152355-6.png||height="782" width="1193"]]
400
401 [[image:image-20240510152542-8.png||height="545" width="739"]]
402
403 [[image:image-20240510152634-9.png||height="748" width="740"]]
404
405
406 [[image:image-20240510152809-10.png||height="607" width="732"]]
407
408 [[image:image-20240510153934-14.png||height="460" width="1199"]]
409
410
411 [[image:image-20240510153435-12.png||height="428" width="1197"]]
412
413
414 Copy and paste the [[TTN decoder>>https://github.com/dragino/dragino-end-node-decoder]] here and save.
415
416 [[image:image-20240510153624-13.png||height="468" width="1195"]]
417
418
419 Visual widgets please read the DATACAKE documentation.
420
421 (% style="display:none" %) (%%)
422
423 == 2.6  Datalog Feature ==
424
425
426 (% _msthash="315262" _msttexthash="32283004" _mstvisible="1" %)
427 To retrieve a sensor value, you can send a poll command from the network server to request the sensor to send the value within the required time period.
428
429
430 === 2.6.1  Unix Timestamp ===
431
432
433 The Unix timestamp indicates the sampling time of the uplink payload, based on the following format:
434
435 [[image:image-20220523001219-11.png||_mstalt="450450" _mstvisible="3" height="97" width="627"]]
436
437 You can get this time from the link:  [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/||_mstvisible="3"]] :
438
439 For example, if the Unix timestamp is in HEX format as 0x60137afd, you can convert it to decimal: 1611889405, and then convert it to the time: 2021-Jan-29, Friday, 03:03:25 (GMT).
440
441
442 [[image:1655782409139-256.png]]
443
444
445 === 2.6.2  Poll sensor value ===
446
447
448 (((
449 You can poll sensor values based on timestamps from the server. The start and end timestamps use the Unix timestamp format as mentioned above. The device will reply with all data logs from this time period, using the uplink interval.
450 )))
451
452 (((
453 For example, if the downlink command is: [[image:image-20220621113526-13.png]] (% _mstvisible="3" style="display:none" %)
454 )))
455
456 (((
457 **0x31 **: Prefix
458
459 **0x5FC5F350** and **0x5FC60160 **: This is equivalent to checking the stored data between **2020/12/1 07:40:00** and **2020/12/1 08:40:00**.
460
461 **0x05 **: The uplink interval is 5 seconds, which means the PB01 will send one packet every 5 seconds. The uplink interval can be mentioned in the downlink payload with a range of 5 to 255 seconds.
462 )))
463
464
465 === 2.6.3  Datalog Uplink payload ===
466
467
468 See [[Uplink FPort=3, Datalog sensor value>>||anchor="H2.4.3A0UplinkFPort3D32CDatalogsensorvalue"]]
469
470 (% style="display:none" %) (%%) (% style="display:none" %)
471
472 == 2.7 Buttons ==
473
474
475 * **ACT button**
476
477 Long press this button, and the PB01 will reset and rejoin the network.
478
479 [[image:image-20240510161626-17.png||height="192" width="224"]]
480
481
482 * **Alarm button**
483
484 Press this button to immediately send an uplink, and the alarm will be set to 'TRUE'.
485
486 [[image:image-20240705095149-5.png||height="164" width="162"]](% style="display:none" %)
487
488
489 == 2.8 LED Indicators ==
490
491
492 (((
493 The PB01 has a single LED that displays different colors to indicate various stages:
494
495 1. **Hold the ACT button:** The LED will light up GREEN. GREEN flashing indicates the node is restarting. A BLUE flash signals a request for network access, and a solid GREEN light for 5 seconds signifies successful network access.
496 1. (((
497 **Normal Working State:**
498
499 * When the node restarts, hold the ACT button, and the LED will turn GREEN. GREEN flashing indicates a restart. A BLUE flash signals a request for network access, and a solid GREEN light for 5 seconds indicates successful network access.
500 )))
501 1. (((
502 **During OTAA Join:**
503
504 * For each Join Request uplink, the LED will blink GREEN once.
505 * Once the join is successful, the LED will remain solid GREEN for 5 seconds.
506 * After joining, for each uplink, the LED will blink either BLUE or GREEN.
507 )))
508 1. (((
509 **Alarm Button:**
510
511 * When the alarm button is pressed, the LED will flash RED until the node receives an acknowledgment (ACK) from the platform, followed by the LED staying BLUE for 5 seconds.
512 )))
513 )))
514
515 (((
516
517 )))
518
519 == 2.9 Buzzer ==
520
521
522 The PB01 produces different sounds or tones for the following events, which can be turned on or off using the [[AT+SOUND>>||anchor="H3.3A0SetbuttonsoundandACKsound"]] command.
523
524 * **Button Sound:** This is the tone produced by the node after the alarm button is pressed. Users can use the [[AT+OPTION>>||anchor="H3.4A0Setbuzzermusictype2807E429"]] command to set different button sounds.
525 * **ACK Sound:** This is the notification tone emitted when the node receives an acknowledgment (ACK).
526
527 = 3.  Configure PB01 via AT command or LoRaWAN downlink =
528
529
530 You can configure PB01 via AT Commands or LoRaWAN Downlinks.
531
532 * See [[FAQ>>||anchor="H6.FAQ"]] to find out how to connect PB01 with a computer to configure it using AT commands.
533
534 * LoRaWAN Downlink instruction for different platforms can be found at: [[IoT LoRaWAN Server>>doc:Main.WebHome]]
535
536 (% style="display:none" %)
537
538 There are two types of commands to configure the PB01:
539
540 1. (((
541 **General Commands:**
542 These commands are used to configure:
543
544 * General system settings, such as the uplink interval.
545 * LoRaWAN protocol and radio-related parameters.
546
547 These commands are the same for all Dragino devices that support the DLWS-005 LoRaWAN stack (Note~*~*). You can find these commands on the wiki: [[End Device Downlink Command>>path:#]].
548 )))
549 1. **Commands Specifically Designed for PB01:**
550 These commands are valid only for the PB01, as listed below (see Downlink Commands):
551
552 == 3.1  Downlink Commands ==
553
554
555 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
556 |=(% style="width: 130px; background-color: rgb(79, 129, 189); color: white;" %)**Command Example**|=(% style="width: 150px; background-color: rgb(79, 129, 189); color: white;" %)**Function**|=(% style="width: 90px; background-color: rgb(79, 129, 189); color: white;" %)**Response**|=(% style="width: 140px; background-color: rgb(79, 129, 189); color: white;" %)**Downlink**
557 |(% style="width:130px" %)AT+TDC=?|(% style="width:151px" %)(((
558 Get the current TDC (uplink) time
559 )))|(% style="width:92px" %)(((
560 1200000
561 OK
562 )))|(% style="width:206px" %)Default 1200000(ms)
563 |(% style="width:130px" %)AT+TDC=300000|(% style="width:151px" %)Set the TDC (uplink) time|(% style="width:92px" %)OK|(% style="width:206px" %)(((
564 (((
565 0X0100012C:
566 01: fixed command
567 00012C: 0X00012C=300(seconds)
568 )))
569
570 (((
571
572 )))
573 )))
574 |(% style="width:130px" %)ATZ|(% style="width:151px" %)Reset the node|(% style="width:92px" %) |(% style="width:206px" %)0x04FF
575 |(% style="width:130px" %)AT+FDR|(% style="width:151px" %)Restore to factory settings|(% style="width:92px" %) |(% style="width:206px" %)0X04FE
576 |(% style="width:130px" %)AT+CFM=?|(% style="width:151px" %)View the current confirmation mode status|(% style="width:92px" %)(((
577 0,7,0
578
579 OK
580 )))|(% style="width:206px" %)Default 0,7,0
581 |(% style="width:130px" %)AT+CFM=1,7,1|(% style="width:151px" %)(((
582 Confirmed uplink mode, the maximum number of retries is seven, and uplink fcnt increase by 1 for each retry
583 )))|(% style="width:92px" %)(((
584 OK
585 )))|(% style="width:206px" %)(((
586 05010701
587
588 05: fixed command
589
590 01:confirmed uplink
591
592 07: retry 7 times
593
594 01: fcnt count plus 1
595 )))
596 |(% style="width:130px" %)AT+NJM=?|(% style="width:151px" %)(((
597 Check the current network connection method
598 )))|(% style="width:92px" %)(((
599 1
600 OK
601 )))|(% style="width:206px" %)Default 1
602 |(% style="width:130px" %)AT+NJM=0|(% style="width:151px" %)Change the network connection method to ABP|(% style="width:92px" %)(((
603 Attention:Take effect after ATZ
604 OK
605 )))|(% style="width:206px" %)(((
606 0X2000: ABP
607 0x2001: OTAA
608 20: fixed command
609 )))
610 |(% style="width:130px" %)AT+RPL=?|(% style="width:151px" %)View current RPL settings|(% style="width:92px" %)(((
611 0
612 OK
613 )))|(% style="width:206px" %)Default 0
614 |(% style="width:130px" %)AT+RPL=1|(% style="width:151px" %)set RPL=1    |(% style="width:92px" %)OK|(% style="width:206px" %)(((
615 0x2101:
616 21: fixed command
617 01: for details, check wiki
618 )))
619 |(% style="width:130px" %)AT+ADR=?|(% style="width:151px" %)View current ADR status|(% style="width:92px" %)(((
620 1
621 OK
622 )))|(% style="width:206px" %)Default 0
623 |(% style="width:130px" %)AT+ADR=0|(% style="width:151px" %)Set the ADR state to off|(% style="width:92px" %)OK|(% style="width:206px" %)(((
624 0x2200: close
625 0x2201: open
626 22: fixed command
627 )))
628 |(% style="width:130px" %)AT+DR=?|(% style="width:151px" %)View the current DR settings|(% style="width:92px" %)OK|(% style="width:206px" %)
629 |(% style="width:130px" %)AT+DR=1|(% style="width:151px" %)(((
630 set DR to 1
631 It takes effect only when ADR=0
632 )))|(% style="width:92px" %)OK|(% style="width:206px" %)(((
633 0X22000101:
634 00: ADR=0
635 01: DR=1
636 01: TXP=1
637 22: fixed command
638 )))
639 |(% style="width:130px" %)AT+TXP=?|(% style="width:151px" %)View the current TXP|(% style="width:92px" %)OK|(% style="width:206px" %)
640 |(% style="width:130px" %)AT+TXP=1|(% style="width:151px" %)(((
641 set TXP to 1
642 It takes effect only when ADR=0
643 )))|(% style="width:92px" %)OK|(% style="width:206px" %)(((
644 0X22000101:
645 00: ADR=0
646 01: DR=1
647 01: TXP=1
648 22: fixed command
649 )))
650 |(% style="width:130px" %)AT+RJTDC=10|(% style="width:151px" %)Set RJTDC time interval|(% style="width:92px" %)OK|(% style="width:206px" %)(((
651 0X26000A:
652 26: fixed command
653 000A: 0X000A=10(min)
654 for details, check wiki
655 )))
656 |(% style="width:130px" %) |(% style="width:151px" %)(((
657 (((
658 ~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_
659
660 Retrieve stored data for a specified period of time
661 )))
662
663 (((
664
665 )))
666 )))|(% style="width:92px" %) |(% style="width:206px" %)(((
667 0X3161DE7C7061DE8A800A:
668 31: fixed command
669 61DE7C70:0X61DE7C70=2022/1/12 15:00:00
670 61DE8A80:0X61DE8A80=2022/1/12 16:00:00
671 0A: 0X0A=10(second)
672 View details 2.6.2
673 )))
674 |(% style="width:130px" %)AT+DDETECT=?|(% style="width:151px" %)View the current DDETECT setting status and time|(% style="width:92px" %)(((
675 1,1440,2880
676 OK
677 )))|(% style="width:206px" %)Default 1,1440,2880(min)
678 |(% style="width:130px" %)AT+DDETECT=(((
679 1,1440,2880
680 )))|(% style="width:151px" %)(((
681 Set DDETECT setting status and time
682 ((% style="color:red" %)When the node does not receive the downlink packet within the set time, it will re-enter the network(%%))
683 )))|(% style="width:92px" %)OK|(% style="width:206px" %)(((
684 0X320005A0: close
685 0X320105A0: open
686 32: fixed command
687 05A0: 0X05A0=1440(min)
688 )))
689
690 == 3.2  Set Password ==
691
692
693 **Feature**: Set the device password with a maximum of 9 digits.
694
695
696 (% style="color:#4f81bd" %)**AT command**
697
698 (% border="2" style="width:500px" %)
699 |(% style="width:141px" %)**Command**|(% style="width:357px" %)AT+PWORD
700 |(% style="width:141px" %)**Parameters**|(% style="width:357px" %)**password** : maximum up to 9 digits
701 |(% style="width:141px" %)**Get**|(% style="width:357px" %)AT+PWORD=?
702 |(% style="width:141px" %)**Response**|(% style="width:357px" %)(((
703 Returns the current password
704
705 OK
706 )))
707 |(% style="width:141px" %)**Set**|(% style="width:357px" %)AT+PWORD=<password>
708 |(% style="width:141px" %)**Response**|(% style="width:357px" %)OK
709 |(% style="width:141px" %)**Example**|(% style="width:357px" %)(((
710 AT+PWORD=999999999
711
712 Set the password 999999999
713 )))
714
715 (% style="color:#4f81bd" %)**Downlink command**
716
717 There is no downlink command for this feature.
718
719
720 == 3.3  Set button sound and ACK sound ==
721
722
723 **Feature**: Turn on/off button sound and ACK alarm.
724
725
726 (% style="color:#4f81bd" %)**AT command**
727
728 (% border="2" style="width:500px" %)
729 |(% style="width:143px" %)**Command**|(% style="width:355px" %)AT+SOUND
730 |(% style="width:143px" %)**Parameters**|(% style="width:355px" %)(((
731 **button_sound** :
732
733 **0** - off
734
735 **1** - on
736
737 **ack_sound** :
738
739 **0** - off
740
741 **1** - on
742 )))
743 |(% style="width:143px" %)**Get**|(% style="width:355px" %)AT+SOUND=?
744 |(% style="width:143px" %)**Response**|(% style="width:355px" %)(((
745 Returns the current sound settings. <button_sound>,<ack_sound>
746
747 OK
748 )))
749 |(% style="width:143px" %)**Set**|(% style="width:355px" %)(((
750 AT+SOUND=<button_sound>,<ack_sound>
751 )))
752 |(% style="width:143px" %)**Response**|(% style="width:355px" %)OK
753 |(% style="width:143px" %)**Example**|(% style="width:355px" %)(((
754 AT+SOUND=0,1
755
756 This will turn off the button sound and turn on the ACK sound.
757 )))
758
759 (% style="color:#4f81bd" %)**Downlink command**
760
761 (% border="2" style="width:500px" %)
762 |(% style="width:143px" %)**Prefix**|(% style="width:355px" %)0xA1
763 |(% style="width:143px" %)**Parameters**|(% style="width:355px" %)(((
764 **button_sound** : 1 byte in hexadecimal.
765
766 **00** - off
767
768 **01** - on
769
770 **ack_sound** : 1 byte in hexadecimal.
771
772 **00** - off
773
774 **01** - on
775 )))
776 |(% style="width:143px" %)**Payload format**|(% style="width:355px" %)<prefix><button_sound><ack_sound>
777 |(% style="width:143px" %)**Example**|(% style="width:355px" %)(((
778 A10001
779
780 Turn off the button sound and turn on ACK sound.
781 )))
782
783 == 3.4  Set buzzer music type (0~~4) ==
784
785
786 Feature: Set different alarm key response sounds.There are five different types of button music.
787
788
789 (% style="color:#4f81bd" %)**AT Command**
790
791 (% border="2" style="width:500px" %)
792 |(% style="width:146px" %)**Command**|(% style="width:352px" %)AT+OPTION
793 |(% style="width:146px" %)**Parameters**|(% style="width:352px" %)(((
794 **<buzzer_music_type> :**
795
796 **0**
797
798 **1**
799
800 **2**
801
802 **3**
803 )))
804 |(% style="width:146px" %)**Get**|(% style="width:352px" %)AT+OPTION=?
805 |(% style="width:146px" %)**Response**|(% style="width:352px" %)(((
806 Return the current music type.
807
808 OK
809 )))
810 |(% style="width:146px" %)**Set**|(% style="width:352px" %)AT+OPTION=<buzzer_music_type>
811 |(% style="width:146px" %)**Response**|(% style="width:352px" %)OK
812 |(% style="width:146px" %)**Example**|(% style="width:352px" %)(((
813 AT+OPTION=1
814
815 Set the buzzer music to type 1
816 )))
817
818
819 (% style="color:#4f81bd" %)**Downlink command**
820
821 (% border="2" style="width:500px" %)
822 |(% style="width:145px" %)**Prefix**|(% style="width:353px" %)0xA3
823 |(% style="width:145px" %)**Parameters**|(% style="width:353px" %)(((
824 **<buzzer_music_type> : **1 byte in hexadecimal
825
826 **0**
827
828 **1**
829
830 **2**
831
832 **3**
833 )))
834 |(% style="width:145px" %)**Payload format**|(% style="width:353px" %)<prefix><buzzer_music-type>
835 |(% style="width:145px" %)**Example**|(% style="width:353px" %)(((
836 A300
837
838 Set the buzzer music to type 0.
839 )))
840
841
842 == 3.5  Set Valid Push Time ==
843
844
845 **Feature**: Set the holding time for pressing the alarm button to avoid accidental activation. The values range from 0 to 1000 ms.
846
847
848 (% style="color:#4f81bd" %)**AT Command: AT+STIME**
849
850 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:372px" %)
851 |(% style="background-color:#4f81bd; color:white; width:155px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:128px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:89px" %)**Response**
852 |(% style="width:155px" %)(((
853 AT+STIME=?
854 )))|(% style="width:124px" %)(((
855 Get the button sound time
856 )))|(% style="width:86px" %)(((
857 0
858 OK
859 )))
860 |(% style="width:155px" %)(((
861 AT+STIME=1000
862 )))|(% style="width:124px" %)Set the button sound time to 1000**ms**|(% style="width:86px" %)OK
863
864 (% style="color:#4f81bd" %)**Downlink Command: 0xA2**
865
866 Format: Command Code (0xA2) followed by 2 bytes mode value.
867
868 * **Example: **Downlink Payload: A203E8  ~/~/ Set AT+STIME=1000  
869
870 **~ Explain: **Hold the alarm button for 10 seconds before the node will send the alarm packet.
871
872
873
874 = 4.  Battery =
875
876
877 PB01 uses 2xAAA LR03 (1.5V) batteries.
878
879
880 == 4.1  Replacing batteries ==
881
882
883 If the batteries are running low (if the battery voltage drops to 2.1V), you can use any two generic AAA batteries to replace them.
884
885 (% style="color:red" %)**Note: **
886
887 1. The PB01 doesn't have any screws; you can use a nail to open the battery cover.
888
889 [[image:image-20220621143535-5.png]]
890
891
892 2. Make sure the direction is correct when installing the AAA batteries.
893
894 [[image:image-20220621143535-6.png]]
895
896
897 == 4.2  Power Consumption Analysis ==
898
899
900 Dragino's battery-powered products all operate in Low Power mode. We provide an updated battery calculator based on real device measurements. You can use this calculator to estimate battery life and calculate it for different transmission intervals.
901
902 **Instructions for use:**
903
904 **Step 1:** Download the latest version of the **DRAGINO_Battery_Life_Prediction_Table.xlsx** from the [[battery calculator>>https://www.dropbox.com/sh/sxrgszkac4ips0q/AAA4XjBI3HAHNpdbU3ALN1j0a/Battery%20Document/Battery_Analyze?dl=0&subfolder_nav_tracking=1]].
905
906 **Step 2:** Open the file and select:
907
908 * Product Model
909 * Uplink Interval
910 * Working Mode
911
912 The expected battery life for different scenarios will be displayed on the right.
913
914
915 [[image:image-20220621143643-7.png||height="429" width="1326"]]
916
917
918 = 5.  Accessories =
919
920
921 * (((
922 **AS-02 USB Type-C Converter**
923
924 The AS-02 is an optional accessory. It is a USB Type-C converter that provides access to the AT console of the PB01 when used with a USB-TTL adapter. For more details, see this [[link>>||anchor="H6.1HowtouseATCommandtoconfigurePB01"]].
925 )))
926
927 [[image:image-20220621141724-3.png]]
928
929
930 = 6. FAQ =
931
932 == 6.1 How to use AT Commands to configure PB01 ==
933
934
935 PB01 supports the AT Command set. Users can use a USB-to-TTL adapter along with the AS-02 USB Type-C converter to connect to the PB01 and issue AT commands, as shown below.
936
937 [[image:image-20240511085914-1.png||height="570" width="602"]]
938
939
940 **Connection:**
941
942 * (% style="background-color:yellow" %)USB to TTL GND <~-~-> Program Converter GND pin
943 * (% style="background-color:yellow" %)USB to TTL RXD  <~-~-> Program Converter D+ pin
944 * (% style="background-color:yellow" %)USB to TTL TXD  <~-~-> Program Converter A11 pin
945
946 (((
947
948 )))
949
950 (((
951 On the PC, you need to set the serial tool (such as [[PuTTY>>https://www.chiark.greenend.org.uk/~~sgtatham/putty/latest.html]], SecureCRT) baud rate to **9600** to access the serial console for the PB01. The AT commands are disabled by default, and you need to enter the password (default: **123456**) to activate them. The timeout for entering AT commands is 5 minutes; after 5 minutes, the user will need to enter the password again.
952
953 Enter the password 123456 and type "ATZ" to reboot the PB01, as shown below:
954 )))
955
956 [[image:image-20240510174509-18.png||height="572" width="791"]]
957
958
959 == 6.2  AT Commands ==
960
961
962 (((
963 * Sending "ATZ" will reboot the device.
964 * Sending "AT+FDR" will restore the device to factory settings.
965 * Get the device's AT command settings by sending "AT+CFG." The following is the output after issuing the AT+CFG command.
966 )))
967
968 (((
969
970 )))
971
972 (((
973 **Sample output:**                                           
974 )))
975
976 (((
977 AT+DEUI=FA 23 45 55 55 55 55 51
978
979 AT+APPEUI=FF AA 23 45 42 42 41 11
980
981 AT+APPKEY=AC D7 35 81 63 3C B6 05 F5 69 44 99 C1 12 BA 95
982
983 AT+DADDR=FFFFFFFF
984
985 AT+APPSKEY=FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
986
987 AT+NWKSKEY=FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
988
989 AT+ADR=1
990
991 AT+TXP=7
992
993 AT+DR=5
994
995 AT+DCS=0
996
997 AT+PNM=1
998
999 AT+RX2FQ=869525000
1000
1001 AT+RX2DR=0
1002
1003 AT+RX1DL=5000
1004
1005 AT+RX2DL=6000
1006
1007 AT+JN1DL=5000
1008
1009 AT+JN2DL=6000
1010
1011 AT+NJM=1
1012
1013 AT+NWKID=00 00 00 13
1014
1015 AT+FCU=61
1016
1017 AT+FCD=11
1018
1019 AT+CLASS=A
1020
1021 AT+NJS=1
1022
1023 AT+RECVB=0:
1024
1025 AT+RECV=
1026
1027 AT+VER=EU868 v1.0.0
1028
1029 AT+CFM=0,7,0
1030
1031 AT+SNR=0
1032
1033 AT+RSSI=0
1034
1035 AT+TDC=1200000
1036
1037 AT+PORT=2
1038
1039 AT+PWORD=123456
1040
1041 AT+CHS=0
1042
1043 AT+RX1WTO=24
1044
1045 AT+RX2WTO=6
1046
1047 AT+DECRYPT=0
1048
1049 AT+RJTDC=20
1050
1051 AT+RPL=0
1052
1053 AT+TIMESTAMP=systime= 2024/5/11 01:10:58 (1715389858)
1054
1055 AT+LEAPSEC=18
1056
1057 AT+SYNCMOD=1
1058
1059 AT+SYNCTDC=10
1060
1061 AT+SLEEP=0
1062
1063 AT+ATDC=1
1064
1065 AT+UUID=003C0C53013259E0
1066
1067 AT+DDETECT=1,1440,2880
1068
1069 AT+SETMAXNBTRANS=1,0
1070
1071 AT+DISFCNTCHECK=0
1072
1073 AT+DISMACANS=0
1074
1075 AT+PNACKMD=0
1076
1077 AT+SOUND=0,0
1078
1079 AT+STIME=0
1080
1081 AT+OPTION=3
1082
1083
1084 )))
1085
1086 (((
1087 **Example:**
1088 )))
1089
1090 [[image:image-20240511091518-2.png||height="601" width="836"]]
1091
1092
1093 == 6.3  How to upgrade the firmware? ==
1094
1095
1096 PB01 requires a USB-to-TTL adapter along with the AS-02 USB Type-C converter to upload a new firmware image to PB01: Upgrading the device firmware,
1097
1098 * supports new features
1099 * fixes bugs
1100 * allows change the LoRaWAN frequency bands.
1101
1102 The PB01 is shipped with firmware preloaded. The firmware is divided into a bootloader and a work program.
1103
1104 If the bootloader is erased for any reason, you will need to download the firmware (which includes both the bootloader and the work program).
1105
1106 The latest firmware version for the PB01 can be downloaded from this link: [[firmware>>url:https://www.dropbox.com/scl/fo/y7pvm58wcr8319d5o4ujr/APZtqlbzRCNbHoPWTmmMMWs?rlkey=wfh93x2dhcev3ydn0846rinf0&st=kdp6lg7t&dl=0]]
1107
1108
1109 === 6.3.1 Update firmware (Assume device have bootloader) ===
1110
1111
1112 Follow the steps below only if the firmware needs to be updated and the bootloader of your device is not corrupted and is working properly.
1113
1114
1115 (% style="color:blue" %)**Step 1**(%%):** Connect UART as per FAQ 6.1**
1116
1117 (% style="color:blue" %)**Step 2**(%%):** Update follow [[Instruction for update via DraginoSensorManagerUtility.exe>>url:http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H3.2.1UpdateafirmwareviaDraginoSensorManagerUtility.exe]]. **
1118
1119
1120 === 6.3.2 Update firmware (Assume device doesn't have bootloader) ===
1121
1122
1123 Follow the steps below if the firmware needs to be updated along with the bootloader. This method is required if the bootloader of your device is corrupted.
1124
1125
1126 Download both the bootloader and the worker program. After updating the firmware, the device will have the bootloader installed, allowing you to use the above 6.3.1 method to update the worker program.
1127
1128
1129 (% style="color:blue" %)**Step 1**(%%):** **Install [[TremoProgrammer>>url:https://www.dropbox.com/scl/fo/gk1rb5pnnjw4kv5m5cs0z/h?rlkey=906ouvgbvif721f9bj795vfrh&dl=0]]  first.
1130
1131 [[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-20220615170542-5.png?rev=1.1||alt="image-20220615170542-5.png"]]
1132
1133 (% style="color:blue" %)**Step 2**(%%): Hardware Connection
1134
1135 Connect PC and PB01 via USB-TTL adapter .
1136
1137 (% style="color:red" %)**Note: To download firmware in this way, you need to pull the boot pin(Program Converter D- pin) high to enter the burn mode. After burning, disconnect the boot pin of the node and the 3V3 pin of the USB-TTL adapter, and reset the node to exit the burning mode.**
1138
1139 **Connection:**
1140
1141 * (% style="background-color:yellow" %)USB-TTL GND <~-~-> Program Converter GND pin
1142 * (% style="background-color:yellow" %)USB-TTL RXD  <~-~-> Program Converter D+ pin
1143 * (% style="background-color:yellow" %)USB-TTL TXD  <~-~-> Program Converter A11 pin
1144 * (% style="background-color:yellow" %)USB-TTL 3V3 <~-~-> Program Converter D- pin
1145
1146 (% style="color:blue" %)**Step 3**(%%):** **Select the device port to be connected, baud rate and bin file to be downloaded.
1147
1148 [[image:image-20240701160913-1.png]]
1149
1150 Users need to reset the node to start downloading the program.
1151 ~1. Reinstall the battery to reset the node
1152 2. Hold down the ACT button to reset the node (see [[2.7>>http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/PB01--LoRaWAN_Button_User_Manual/#H2.7Button]] ).
1153
1154 When this interface appears, it indicates that the download has been completed.
1155
1156 [[image:image-20240701160924-2.png]]
1157
1158 Finally, Disconnect Program Converter D- pin, reset the node again , and the node exits burning mode.
1159
1160
1161 == 6.4  How to change the LoRa Frequency Bands/Region? ==
1162
1163
1164 If you want to change the frequency band/region of your device, the only way is to** upgrade its firmware** to support the desired frequency band/region. When downloading the firmware, ensure you choose the correct image that supports the required frequency band/region.
1165
1166 We have named each firmware file to make it easy for you to identify its frequency band/region. For example, for the **EU868** band, the file name is **eu868.bin.** You can follow the instructions in the section [[how to upgrade image>>||anchor="H6.3A0Howtoupgradethefirmware3F"]] to complete the process.
1167
1168
1169 == 6.5 Why i see different working temperature for the device? ==
1170
1171
1172 The working temperature range of device depends on the battery user choose.
1173
1174 * Normal AAA Battery can support -10 ~~ 50°C working range.
1175 * Special AAA battery can support -40 ~~ 60 °C working range. For example: [[Energizer L92>>https://data.energizer.com/pdfs/l92.pdf]]
1176
1177 = 7. Ordering Information =
1178
1179 == 7.1 PB01 ==
1180
1181
1182 Part Number: (% style="color:#4472c4" %)PB01-LW-XX(%%) (white button) / (% style="color:#4472c4" %)PB01-LR-XX(%%)(Red Button)
1183
1184 (% style="color:#4472c4" %)**XX **(%%): The default frequency band
1185
1186 * (% style="color:red" %)**AS923**(%%)**: **LoRaWAN AS923 band
1187 * (% style="color:red" %)**AU915**(%%)**: **LoRaWAN AU915 band
1188 * (% style="color:red" %)**EU433**(%%)**: **LoRaWAN EU433 band
1189 * (% style="color:red" %)**EU868**(%%)**:** LoRaWAN EU868 band
1190 * (% style="color:red" %)**KR920**(%%)**: **LoRaWAN KR920 band
1191 * (% style="color:red" %)**US915**(%%)**: **LoRaWAN US915 band
1192 * (% style="color:red" %)**IN865**(%%)**:  **LoRaWAN IN865 band
1193 * (% style="color:red" %)**CN470**(%%)**: **LoRaWAN CN470 band
1194
1195 = 7. Packaging Information =
1196
1197
1198 **Package Includes**:
1199
1200 * PB01 LoRaWAN Push Button x 1
1201
1202 = 8. Support =
1203
1204
1205 * Support is provided Monday to Friday, from 09:00 to 18:00 GMT+8. Due to different time zones, we cannot offer live support. However, your questions will be answered as soon as possible within the aforementioned schedule.
1206 * Please provide as much information as possible regarding your inquiry (e.g., product models, an accurate description of your problem, and steps to replicate it) and send an email to [[support@dragino.com>>mailto:support@dragino.com]].
1207
1208 = 9.  Reference material =
1209
1210
1211 * [[Datasheets, photos, payload decoders, firmware>>https://www.dropbox.com/scl/fo/y7pvm58wcr8319d5o4ujr/APZtqlbzRCNbHoPWTmmMMWs?rlkey=wfh93x2dhcev3ydn0846rinf0&st=kdp6lg7t&dl=0]]
1212
1213 = 10. FCC Warning =
1214
1215
1216 **This device complies with Part 15 of the FCC Rules. Operation is subject to the following two conditions:**
1217
1218 (1) This device may not cause harmful interference;
1219 (2) This device must accept any interference received, including interference that may cause undesired operation.
1220
1221
Copyright ©2010-2024 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0