Show last authors
1 (% style="text-align:center" %)
2 [[image:image-20250228144849-1.jpeg||height="490" width="490"]]
3
4
5
6
7 (% _mstvisible="1" %)
8 (% _msthash="315238" _msttexthash="18964465" _mstvisible="3" %)**Table of Contents:**
9
10 {{toc/}}
11
12
13
14
15
16
17
18
19 = 1.  Introduction =
20
21 == 1.1  What is the PB05-L LoRaWAN Push Button? ==
22
23
24 The **PB05-L LoRaWAN Button** is a wireless device with (% style="color:blue" %)**5 push buttons**(%%). When a button is pressed, the device sends a signal to the IoT server using the LoRaWAN protocol.
25
26 It runs on (% style="color:blue" %)**2 x AA batteries**(%%), lasting for approximately (% style="color:blue" %)**30k presses**(%%) across all five buttons. When the batteries run out, they can be easily replaced.
27
28 The PB05-L also has a **built-in speaker** that plays different sounds when a button is pressed or when a response is received from the server. If needed, the speaker can be turned off.
29
30 This device is **fully compatible with LoRaWAN v1.0.3** and works with any standard LoRaWAN gateway.
31
32 {{info}}
33 **Note:** Battery life depends on how often the device sends data. Check the [[battery analyzer>>||anchor="H4.2A0PowerConsumptionAnalyze"]] for details.
34 {{/info}}
35
36 == 1.2  Features ==
37
38
39 * Wall-mountable
40 * LoRaWAN v1.0.3 Class A protocol
41 * 5 push buttons
42 * Built-in speaker
43 * Frequency bands: CN470, EU433, KR920, US915, EU868, AS923, AU915
44 * AT commands for parameter configuration
45 * Remote parameter configuration via LoRaWAN downlink
46 * Firmware upgradeable via programming port
47 * Supports 2 × AA LR6 batteries
48 * IP52-rated for dust and water resistance
49
50
51 == 1.3  Power Consumption ==
52
53
54 * **Idle:** 5 µA
55 * **Transmit:** Max 110 mA
56
57
58 == 1.4  Storage & Operation Temperature ==
59
60
61 -10 ~~ 50 °C  or -40 ~~ 60 °C (depends on the battery type, see [[FAQ>>||anchor="H6.5Whyiseedifferentworkingtemperatureforthedevice3F"]])
62
63
64 == 1.5  Applications ==
65
66
67 * Smart Buildings & Home Automation
68 * Logistics and Supply Chain Management
69 * Smart Metering
70 * Smart Agriculture
71 * Smart Cities
72 * Smart Factory
73
74
75 See **Use Cases** for more information.
76
77
78 == 1.6 Device Apperance ==
79
80
81 (% class="wikigeneratedid" %)
82 [[image:image-20250303102218-1.jpeg||height="340" width="572"]]
83
84 (% class="wikigeneratedid" %)
85 (% style="color:red" %)**Note: For customization purposes, the PVC sticker is not attached by default.**
86
87
88 == 1.7 Mechanical Drawings ==
89
90
91 [[image:image-20250312090840-1.png||height="509" width="671"]]
92
93
94 = 2.  Operation Mode =
95
96 == 2.1  How it works? ==
97
98
99 Each PB05-L is shipped with a unique set of **LoRaWAN OTAA keys**. To use the PB05-L in a LoRaWAN network, the user must enter these OTAA keys into the LoRaWAN network server.
100
101 Once the device is within the network’s coverage, it will automatically join and start transmitting sensor data. By default, the device sends an uplink every **20 minutes**.
102
103
104 == 2.2  How to Activate PB05-L? ==
105
106
107 (% style="color:red" %)** 1.  Open the enclosure from the bottom as shown in the image below.**
108
109 [[image:image-20250303105217-1.jpeg||height="298" width="493"]]
110
111
112 (% style="color:red" %)** 2.  Insert 2 x AA LR6 batteries. Make sure to insert them in the correct direction.**
113
114 [[image:image-20250303105439-2.jpeg||height="241" width="489"]]
115
116
117 (% style="color:red" %)** 3. Activate the device by pressing and holding (long press) the ACT button.**
118
119 [[image:image-20250303105945-3.jpeg||height="217" width="518"]]
120
121 You can check [[LED Status>>||anchor="H2.8LEDIndicator"]] to determine the working state of the PB05-L.
122
123
124 == 2.3  Example to join LoRaWAN network ==
125
126
127 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.
128
129 (% _mstvisible="1" class="wikigeneratedid" %)
130 Assume the LPS8v2 is already set to connect to [[TTN V3 network >>url:https://eu1.cloud.thethings.network/]]. We need to add the PB05-L device in TTN V3 portal. 
131
132 [[image:image-20250305164059-1.jpeg]]
133
134 (% style="color:blue" %)**Step 1**(%%):  Create a device in TTN V3 with the OTAA keys from PB05-L.
135
136 Each PB05-L is shipped with a sticker with the default DEV EUI as below:
137
138 [[image:image-20230426083617-1.png||height="294" width="633"]]
139
140
141 Enter these keys in the LoRaWAN Server portal. Below is TTN V3 screen shot:
142
143
144 **Create the application.**
145
146 [[image:image-20250306095548-1.jpeg]]
147
148
149 [[image:image-20250306095614-2.jpeg]]
150
151
152 **Add devices to the created Application.**
153
154 [[image:image-20250306095639-3.jpeg]]
155
156
157
158 **Enter end device specifics manually.**
159
160 [[image:image-20250306095706-4.jpeg]]
161
162 [[image:image-20250306095754-5.jpeg]]
163
164
165 (% style="color:blue" %)**Step 2: **(%%)Add decoder
166
167 In TTN, user can add a custom payload so it shows friendly reading.
168
169 Click this link to get the decoder: [[PB05-L decoder>>https://github.com/dragino/dragino-end-node-decoder/tree/main/PB05]].
170
171 Below is TTN screen shot:
172
173 [[image:image-20241030172839-3.png||height="508" width="918"]]
174
175
176 (% style="color:blue" %)**Step 3:**(%%) Use ACT button to activate PB05-L 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.
177
178 [[image:image-20241030173150-5.png||height="304" width="1292"]]
179
180
181 == 2.4  Uplink Payload ==
182
183
184 Uplink payloads include two types: **Valid Sensor Valu**e and **Other Status / Control Commands**.
185
186 * **Valid Sensor Value**: Use FPort=2
187 * **Other Status / Control Commands**: Use an FPort other than 2.
188
189
190 === 2.4.1  Uplink FPORT~=5, Device Status ===
191
192
193 You can get the **Device Status** uplink through the downlink command:
194
195 (% style="color:#4472c4" %)**Downlink:  **(%%)**0x2601**
196
197 The device uplinks the status using FPort=5.
198
199 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:370px" %)
200 |=(% 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**
201 |(% 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
202
203 [[image:image-20241030165804-1.png]]
204
205 Example Payload (FPort=5):  [[image:image-20241030170029-2.png||height="24" width="136"]]
206
207 (% style="color:#4472c4" %)**Sensor Model**(%%): For PB05-L, this value is 0x3B.
208
209 (% style="color:#4472c4" %)**Firmware Version**(%%): 0x0100 means v1.0.0 version.
210
211 (% style="color:#4472c4" %)**Frequency Band**:
212
213 * 0x01: EU868
214 * 0x02: US915
215 * 0x03: IN865
216 * 0x04: AU915
217 * 0x05: KZ865
218 * 0x06: RU864
219 * 0x07: AS923
220 * 0x08: AS923-1
221 * 0x09: AS923-2
222 * 0x0a: AS923-3
223
224
225 (% style="color:#4472c4" %)**Sub-Band**(%%): Value 0x00 ~~ 0x08 (only for CN470, AU915,US915. For others, it's 0x00)
226
227 (% style="color:#4472c4" %)**BAT**(%%): Shows the battery voltage for PB05-L.
228
229 (% style="color:#4472c4" %)**Example**(%%): 0x0C48 = 3144mV
230
231
232 === 2.4.2  Uplink FPORT~=2, Real time sensor value ===
233
234
235 PB05-L will send this uplink after Device Status uplink once join LoRaWAN network successfully. And it will periodically send this uplink. Default interval is 20 minutes and [[can be changed>>||anchor="H3.1A0DownlinkCommandSet"]].
236
237 Uplink uses FPORT=2 and every 20 minutes send one uplink by default.
238
239 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:470px" %)
240 |=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
241 **Size(bytes)**
242 )))|=(% style="width: 50px; background-color: rgb(79, 129, 189); color: white;" %)2|=(% style="width: 170px; background-color: rgb(79, 129, 189); color: white;" %)(((
243 **1**
244 )))|=(% style="width: 50px; background-color: rgb(79, 129, 189); color: white;" %)(((
245 **1**
246 )))|=(% style="width: 140px; background-color: rgb(79, 129, 189); color: white;" %)(((
247 **1**
248 )))
249 |(% style="width:97px" %)(((
250 Value
251 )))|(% style="width:63px" %)Battery|(% style="width:101px" %)(((
252 Sound_key & Sound_ACK
253 )))|(% style="width:62px" %)(((
254 (((
255 Alarm
256 )))
257 )))|(% style="width:140px" %)key1 & key2 & key3 & key4 & key5
258
259 (% style="color:blue" %)**key1 & key2 & key3 & key4 & key5:**
260
261 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:470px" %)
262 |=(% style="width: 81px; background-color: rgb(79, 129, 189); color: white;" %)**Size(bit)**|=(% style="width: 79px; background-color: rgb(79, 129, 189); color: white;" %)**bit[1:7]**|=(% style="width: 310px; background-color: rgb(79, 129, 189); color: white;" %)**bit0**
263 |(% style="width:81px" %)(((
264 Value
265 )))|(% style="width:79px" %)Reserve|(% style="width:294px" %)key1 & key2 & key3 & key4 & key5
266
267 Example in TTN.
268
269 [[image:image-20241031101215-3.png]]
270
271
272 * (((
273 (% class="wikigeneratedid" id="HBattery:" %)
274 (% style="color:blue" %)**Battery:**
275 )))
276
277 Check the battery voltage.
278
279 Ex1: 0x0CEA = 3306mV
280
281 Ex2: 0x0D08 = 3336mV
282
283
284 * (% style="color:blue" %)**Sound_key & Sound_ACK:**
285
286 Key sound and ACK sound are enabled by default.
287
288 Example 1: 0x03
289
290 Sound_ACK: (03>>1) & 0x01=1, OPEN.
291
292 **~ ** Sound_key:  03 & 0x01=1, OPEN.
293
294 Example 2: 0x01
295
296 Sound_ACK: (01>>1) & 0x01=0, CLOSE.
297
298 **~ ** Sound_key:  01 & 0x01=1, OPEN.
299
300
301 * (% style="color:blue" %)**Alarm:**
302
303 Key alarm.
304
305 Ex1: 0x01 & 0x01=1, "TRUE", key alarm packet.
306
307 Ex2: 0x00 & 0x01=0, "FALSE", normal uplink data.
308
309
310 * (% style="color:blue" %)**key1**
311
312 (% class="wikigeneratedid" %)
313 Displays whether the uplink data is triggered by key 1.
314
315 01 (H): (0x01&0x01)=01(H) =0000 000**1**(B)  bit0=1, "Yes"
316
317 02 (H): (0x02&0x01)=0  bit0=0, "No"
318
319
320 * (% style="color:blue" %)**key2**
321
322 (% class="wikigeneratedid" %)
323 Displays whether the uplink data is triggered by key 2.
324
325 02 (H): (0x02>>1)&0x01 =01(H) =0000 000**1**(B)  bit0=1, "Yes"
326
327 04 (H): (0x04>>1)&0x01 =0  bit0=0, "No"
328
329
330 * (% style="color:blue" %)**key3**
331
332 (% class="wikigeneratedid" %)
333 Displays whether the uplink data is triggered by key 3.
334
335 04 (H): (0x04>>2)&0x01 =01(H) =0000 000**1**(B)  bit0=1, "Yes"
336
337 08 (H): (0x08>>2)&0x01 =0  bit0=0, "No"
338
339
340 * (% style="color:blue" %)**key4**
341
342 (% class="wikigeneratedid" %)
343 Displays whether the uplink data is triggered by key 4.
344
345 08 (H): (0x08>>3)&0x01 =01(H) =0000 000**1**(B)  bit0=1, "Yes"
346
347 10 (H): (0x10>>3)&0x01 =0  bit0=0, "No"
348
349
350 * (% style="color:blue" %)**key5**
351
352 (% class="wikigeneratedid" %)
353 Displays whether the uplink data is triggered by key 5.
354
355 10 (H): (0x10>>4)&0x01 =01(H) =0000 000**1**(B)  bit0=1, "Yes"
356
357 01 (H): (0x01>>4)&0x01 =0  bit0=0, "No"
358
359
360 === 2.4.3  Uplink FPORT~=3, Datalog sensor value ===
361
362
363 PB05-L stores sensor value and user can retrieve these history value via downlink command. The Datalog sensor value are sent via FPORT=3.
364
365 The historical payload includes one or multiplies entries.
366
367 (% border="1" cellspacing="2" style="background-color:#f2f2f2; width:510px" %)
368 |=(% style="width: 60px; background-color: rgb(79, 129, 189); color: white;" %)(((
369 **Size(bytes)**
370 )))|=(% style="width: 50px; background-color: rgb(79, 129, 189); color: white;" %)4|=(% style="width: 170px; background-color: rgb(79, 129, 189); color: white;" %)(((
371 **1**
372 )))|=(% style="width: 50px; background-color: rgb(79, 129, 189); color: white;" %)(((
373 **1**
374 )))|=(% style="width: 110px; background-color: rgb(79, 129, 189); color: white;" %)(((
375 **1**
376 )))|=(% style="width: 70px; background-color: rgb(79, 129, 189); color: white;" %)4
377 |(% style="width:87px" %)(((
378 Value
379 )))|(% style="width:78px" %)Reserve|(% style="width:102px" %)(((
380 key5 & key4 & key3 & key2 & key1
381 )))|(% style="width:75px" %)Reserve|(% style="width:55px" %)Poll message flag & alarm|(% style="width:68px" %)Unix Time Stamp
382
383 (% style="color:blue" %)**key5 & key4 & key3 & key2 & key1:**
384
385 (% border="1" cellspacing="2" style="background-color:#f2f2f2; width:470px" %)
386 |=(% style="width: 81px; background-color: rgb(79, 129, 189); color: white;" %)**Size(bit)**|=(% style="width: 79px; background-color: rgb(79, 129, 189); color: white;" %)**bit[1:7]**|=(% style="width: 310px; background-color: rgb(79, 129, 189); color: white;" %)**bit0**
387 |(% style="width:81px" %)(((
388 Value
389 )))|(% style="width:79px" %)Reserve|(% style="width:294px" %)key5 & key4 & key3 & key2 & key1
390
391 (% style="color:blue" %)**Poll message flag & Alarm:**
392
393 (% border="1" cellspacing="2" style="background-color:#f2f2f2; width:510px" %)
394 |=(% style="width: 60px;background-color:#4F81BD;color:white" %)**Size(bit)**|=(% style="width: 80px; background-color: rgb(79, 129, 189); color: white;" %)**bit**7|=(% style="width: 80px; background-color: rgb(79, 129, 189); color: white;" %)(((
395 **bit6**
396 )))|=(% style="width: 80px; background-color: rgb(79, 129, 189); color: white;" %)bit5|=(% style="width: 80px; background-color: rgb(79, 129, 189); color: white;" %)bit4|=(% style="width: 60px; background-color: rgb(79, 129, 189); color: white;" %)**bit[3:1]**|=(% style="width: 70px; background-color: rgb(79, 129, 189); color: white;" %)**bit0**
397 |(% style="width:97px" %)Status&Ext|(% style="width:63px" %)No ACK Message|(% style="width:101px" %)Poll Message Flag|(% style="width:140px" %)Sync time OK|(% style="width:140px" %)Unix Time Request|(% style="width:140px" %)Reserve|(% style="width:140px" %)(((
398 Alarm:1
399 )))
400
401 (% style="color:blue" %)**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>>url:https://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/#H4.13AutoSendNone-ACKmessages]] feature)
402
403 (% style="color:blue" %)**Poll Message Flag: **(%%)1: This message is a poll message reply.
404
405
406 * Each data entry is 11 bytes, to save airtime and battery, PB05-L will send max bytes according to the current DR and Frequency bands.(% style="display:none" %)
407
408 For example, in US915 band, the max payload for different DR is:
409
410 1. **DR0**: max is 11 bytes so one entry of data
411 1. **DR1**: max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
412 1. **DR2**: total payload includes 11 entries of data
413 1. **DR3**: total payload includes 22 entries of data.
414
415 If user sends below downlink command:  [[image:image-20241031142131-3.png||height="31" width="216"]]
416
417 Where : Start time: 6722DD98 = time 24/10/31 Thursday 01:30:00
418
419 Stop time: 672300C0 = time 24/10/31 Thursday 04:00:00
420
421
422 PB05-L will uplink this payload:
423
424 [[image:image-20241031135901-2.png]]
425
426 **000000001000416722E531**
427
428 000000000800416722E538000000000400416722E540000000000200416722E54A000000000100416722E552000000000000406722E9BA000000000000406722EE6A000000000000406722F31A000000000000406722F7CA000000001000416722F9BA000000001000416722F9F6000000000800416722FB0E000000000000406722FC7A
429
430 Where the first 11 bytes is for the first entry:
431
432 [[image:image-20241031153803-1.png||height="35" width="240"]]
433
434 The first four bytes are reserved, meaningless.
435
436 key5 & key4 & key3 & key2 & key1: __10(H)__
437
438 * key5: ((0x10>>4)&0x01) = 1, "Yes".
439 * key4: ((0x10>>3)&0x01) = 0, "No".
440 * key3: ((0x10>>2)&0x01) = 0, "No".
441 * key2: ((0x10>>2)&0x01) = 0, "No".
442 * key1: (0x10 & 0x01) = 0, "No".
443
444 The sixth byte is reserved, meaningless.
445
446 poll message flag & Alarm: 41(H)  means reply data, For Alarm: 0x41&0x01 =1, "True".
447
448 Unix time is 0x6722E531= 1730340145s= 24/10/31 02:02:25
449
450
451 If PB05-L doesn't have any data in the polling time, it will uplink 11 bytes of 0:
452
453 [[image:image-20241031113339-4.png||height="307" width="1112"]](% style="display:none" %)
454
455 See more info about the [[Datalog feature>>||anchor="H2.6A0DatalogFeature"]].
456
457 (% style="display:none" %) (%%)
458
459 == 2.5 Show data on Datacake ==
460
461
462 (((
463 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:
464 )))
465
466 (((
467
468 )))
469
470 (((
471 (% style="color:blue" %)**Step 1**(%%):  Be sure that your device is programmed and properly connected to the LoRaWAN network.
472 )))
473
474 (((
475 (% 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.
476 )))
477
478 (((
479 ~1. Add Datacake:
480 )))
481
482 (((
483 2. Select default key as Access Key:
484 )))
485
486 (((
487 3. In Datacake console ([[https:~~/~~/datacake.co/>>url:https://datacake.co/]]) , add PB05-L:
488 )))
489
490 (((
491 Please refer to the figure below.
492 )))
493
494 [[image:image-20240510150924-2.png||height="500" width="970"]]
495
496 Log in to DATACAKE, copy the API under the account.
497
498 [[image:image-20240510151944-3.png||height="482" width="989"]]
499
500
501 [[image:image-20241031114021-5.png||height="526" width="896"]]
502
503
504 [[image:image-20240510152300-5.png||height="249" width="995"]]
505
506
507 [[image:image-20240510152355-6.png||height="459" width="701"]]
508
509 [[image:image-20241031114330-6.png||height="462" width="626"]]
510
511 [[image:image-20240510152634-9.png||height="609" width="602"]]
512
513
514 [[image:image-20241031114443-7.png||height="498" width="601"]]
515
516 [[image:image-20241031114600-8.png||height="295" width="826"]]
517
518
519 Copy and paste the [[TTN decoder>>https://github.com/dragino/dragino-end-node-decoder/tree/main/PB05]] here and save.
520
521 [[image:image-20240510153624-13.png||height="286" width="731"]]
522
523 Visual widgets please read the DATACAKE documentation.
524
525 (% style="display:none" %) (%%)
526
527 == 2.6  Datalog Feature ==
528
529
530 (% _msthash="315262" _msttexthash="32283004" _mstvisible="1" %)
531 When user want to retrieve sensor value, he can send a poll command from the IoT platform to ask sensor to send value in the required time slot.
532
533
534 === 2.6.1  Unix TimeStamp ===
535
536
537 Unix TimeStamp shows the sampling time of uplink payload. format base on
538
539 [[image:image-20220523001219-11.png||_mstalt="450450" _mstvisible="3" height="97" width="627"]]
540
541 User can get this time from link:  [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/||_mstvisible="3"]] :
542
543 For example: if the Unix Timestamp we got is hex 0x6722DD98, we can convert it to Decimal: 1730338200. and then convert to the time: 2024/10/31 Thursday 01:30:00 (GMT).
544
545 [[image:1655782409139-256.png]]
546
547
548 === 2.6.2 Set Device Time ===
549
550
551 (((
552 (% style="color:blue" %)**There are two ways to set device's time:**
553 )))
554
555 (((
556 **1.  Through LoRaWAN MAC Command (Default settings)**
557 )))
558
559 (((
560 User need to set **AT+SYNCMOD=1** to enable sync time via MAC command.
561 )))
562
563 (((
564 Once PB05-L Joined LoRaWAN network, it will send the MAC command (DeviceTimeReq) and the server will reply with (DeviceTimeAns) to send the current time to PB05-L. If PB05-L fails to get the
565
566 time from the server, PB05-L will use the internal time and wait for next time request (AT+SYNCTDC to set the time request period, default is 10 days).
567 )))
568
569 (((
570 (% 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.**
571 )))
572
573 (((
574 **2. Manually Set Time**
575 )))
576
577 (((
578 User needs to set **AT+SYNCMOD=0** to manual time, otherwise, the user set time will be overwritten by the time set by the server.
579 )))
580
581
582 === 2.6.3 Poll sensor value ===
583
584
585 User can poll sensor value based on timestamps from the server.
586
587 Below is the downlink command.
588
589 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:428px" %)
590 |(% style="background-color:#4f81bd; color:white; width:59px" %)**1byte**|(% style="background-color:#4f81bd; color:white; width:128px" %)**4bytes**|(% style="background-color:#4f81bd; color:white; width:124px" %)**4bytes**|(% style="background-color:#4f81bd; color:white; width:117px" %)**1byte**
591 |(% style="width:58px" %)31|(% style="width:128px" %)Timestamp start|(% style="width:123px" %)Timestamp end|(% style="width:116px" %)Uplink Interval
592
593 Timestamp start and Timestamp end use Unix TimeStamp format as mentioned above. Devices will reply with all data log during this time period, use the uplink interval.
594
595 For example, downlink command [[image:image-20241031142131-3.png||height="31" width="216"]]
596
597 Is to check 2024/10/31 01:30:00 to 2020/12/1 04:00:00's data
598
599 Uplink Internal =5s, means PB05-L will send one packet every 5s. range 5~~255s.
600
601
602 === 2.6.4  Datalog Uplink payload ===
603
604
605 See [[Uplink FPORT=3, Datalog sensor value>>||anchor="H2.4.3A0UplinkFPORT3D32CDatalogsensorvalue"]]
606
607 (% style="display:none" %) (%%) (% style="display:none" %)
608
609 == 2.7 Button ==
610
611
612 * ACT button
613
614 Long press this button PB05-L will reset and join network again.
615
616 [[image:image-20250303110613-4.jpeg||height="198" width="472"]]
617
618 * Alarm button
619
620 The PB05-L has five alarm buttons.
621
622 When you press one of the alarm buttons, the PB05-L will immediately uplink data, and the alarm flag is "TRUE", and the corresponding button is "Yes".
623
624 [[image:image-20250303111505-5.jpeg||height="252" width="374"]](% style="display:none" %)
625
626
627 == 2.8 LED Indicator ==
628
629
630 (((
631 The PB05-L has a triple color LED which for easy showing different stage.
632 )))
633
634 Hold the ACT green light to rest, then the green flashing node restarts, the blue flashing once upon request for network access, and the green constant light for 5 seconds after successful network access
635
636 (((
637 (% style="color:#037691" %)**In a normal working state**:
638 )))
639
640 * When the node is restarted, hold the ACT (% style="color:green" %)**GREEN**(%%) lights up , then the (% style="color:green" %)**GREEN**(%%) flashing node restarts.The (% style="color:blue" %)**BLUE**(%%) flashing once upon request for network access, and the (% style="color:green" %)**GREEN**(%%) constant light for 5 seconds after successful network access.
641 * During OTAA Join:
642 ** **For each Join Request uplink:** the (% style="color:green" %)**GREEN LED** (%%)will blink once.
643 ** **Once Join Successful:** the (% style="color:green" %)**GREEN LED**(%%) will be solid on for 5 seconds.
644 * After joined, for each uplink, the (% style="color:blue" %)**BLUE LED**(%%) or (% style="color:green" %)**GREEN LED** (%%)will blink once.
645 * Press the alarm button,The (% style="color:red" %)**RED**(%%) flashes until the node receives the ACK from the platform and the (% style="color:blue" %)**BLUE**(%%) light stays 5s.
646
647 (((
648
649 )))
650
651 == 2.9 Buzzer ==
652
653
654 The PB05 has** button sound** and** ACK sound** and users can turn on or off both sounds by using [[AT+SOUND>>||anchor="H3.3A0SetbuttonsoundandACKsound"]].
655
656 * (% style="color:#4f81bd" %)**Button sound**(%%)** **is the music produced by the node after the alarm button is pressed.
657
658 Users can use[[ AT+OPTION>>||anchor="H3.4A0Setbuzzermusictype2807E429"]] to set different button sounds.
659
660 * (% style="color:#4f81bd" %)**ACK sound **(%%)is the notification tone that the node receives ACK.
661
662 == 2.10 E2 Extension Cable ==
663
664
665 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20220619092222-1.png?width=188&height=182&rev=1.1||alt="image-20220619092222-1.png"]][[image:image-20250303135532-3.jpeg||height="184" width="234"]]
666
667 **1m long breakout cable for PB05-L. Features:**
668
669 * (((
670 Use for AT Command, works for both LHT52/LHT65N/PB05-L.
671 )))
672 * (((
673 Update firmware for PB05-L, works for both LHT52/LHT65N/PB05-L.
674 )))
675 * (((
676 Exposed All pins from the PB05-L Type-C connector
677 )))
678
679 [[image:image-20250303134914-1.png||height="320" width="456"]]
680
681
682 = 3.  Configure PB05-L via AT command or LoRaWAN downlink =
683
684
685 Users can configure PB05-L via AT Command or LoRaWAN Downlink.
686
687 * AT Command Connection:
688
689 [[image:image-20250303141745-4.jpeg||height="489" width="505"]]
690
691 In PC, User needs to set **serial tool**(such as [[putty>>url:https://www.chiark.greenend.org.uk/~~sgtatham/putty/latest.html||style="background-color: rgb(255, 255, 255);"]], SecureCRT) baud rate to (% style="color:green" %)**9600**(%%) to access to access serial console for PB05-L. The AT commands are disable by default and need to enter password (default:(% style="color:green" %)**123456**(%%)) to active it. Timeout to input AT Command is 5 min, after 5-minute, user need to input password again.
692
693 (((
694 Input password and ATZ to activate PB05-L, as shown below:
695
696 [[image:image-20250303114409-8.png]]
697
698
699 )))
700
701 * LoRaWAN Downlink instruction for different platforms: [[IoT LoRaWAN Server>>doc:Main.WebHome]]
702
703 There are two kinds of commands to configure PB05-L, they are:
704
705 * (% style="color:#4f81bd" %)**General Commands:**
706
707 These commands are to configure:
708
709 * General system settings like: uplink interval.
710
711 * LoRaWAN protocol & radio-related commands.
712
713 They are the same for all Dragino Devices which supports DLWS-005 LoRaWAN Stack(Note~*~*). These commands can be found on the wiki: [[End Device Downlink Command>>doc:Main.End Device AT Commands and Downlink Command.WebHome]]
714
715
716 * (% style="color:#4f81bd" %)**Commands special design for PB05-L**
717
718 These commands are only valid for PB05-L, as below:
719
720 (((
721
722 )))
723
724 == 3.1  Downlink Command Set ==
725
726
727 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
728 |=(% style="width: 100px; background-color: rgb(79, 129, 189); color: white;" %)**Command Example**|=(% style="width: 161px; background-color: rgb(79, 129, 189); color: white;" %)**Function**|=(% style="width: 92px; background-color: rgb(79, 129, 189); color: white;" %)**Response**|=(% style="width: 157px; background-color: rgb(79, 129, 189); color: white;" %)**Downlink**
729 |(% style="width:130px" %)AT+TDC=?|(% style="width:151px" %)(((
730
731
732 View current TDC time
733 )))|(% style="width:92px" %)(((
734 1200000
735 OK
736 )))|(% style="width:206px" %)Default 1200000(ms)
737 |(% style="width:130px" %)AT+TDC=300000|(% style="width:151px" %)Set TDC time|(% style="width:92px" %)OK|(% style="width:206px" %)(((
738 (((
739 0X0100012C:
740 01: fixed command
741 00012C: 0X00012C=
742
743 300(seconds)
744 )))
745
746 (((
747
748 )))
749 )))
750 |(% style="width:130px" %)ATZ|(% style="width:151px" %)Reset node|(% style="width:92px" %) |(% style="width:206px" %)0x04FF
751 |(% style="width:130px" %)AT+FDR|(% style="width:151px" %)Restore factory settings|(% style="width:92px" %) |(% style="width:206px" %)0X04FE
752 |(% style="width:130px" %)AT+CFM=?|(% style="width:151px" %)View the current confirmation mode status|(% style="width:92px" %)(((
753 0,7,0
754 OK
755 )))|(% style="width:206px" %)Default 0,7,0
756 |(% style="width:130px" %)AT+CFM=1,7,1|(% style="width:151px" %)(((
757 Confirmed uplink mode, the maximum number of retries is seven, and uplink fcnt increase by 1 for each retry
758 )))|(% style="width:92px" %)(((
759 OK
760 )))|(% style="width:206px" %)(((
761 05010701
762 05: fixed command
763 01:confirmed uplink
764 07: retry 7 times
765 01: fcnt count plus 1
766 )))
767 |(% style="width:130px" %)AT+NJM=?|(% style="width:151px" %)(((
768 Check the current network connection method
769 )))|(% style="width:92px" %)(((
770 1
771 OK
772 )))|(% style="width:206px" %)Default 1
773 |(% style="width:130px" %)AT+NJM=0|(% style="width:151px" %)Change the network connection method to ABP|(% style="width:92px" %)(((
774 Attention:Take effect after ATZ
775 OK
776 )))|(% style="width:206px" %)(((
777 0X2000: ABP
778 0x2001: OTAA
779 20: fixed command
780 )))
781 |(% style="width:130px" %)AT+RPL=?|(% style="width:151px" %)View current RPL settings|(% style="width:92px" %)(((
782 0
783 OK
784 )))|(% style="width:206px" %)Default 0
785 |(% style="width:130px" %)AT+RPL=1|(% style="width:151px" %)set RPL=1    |(% style="width:92px" %)OK|(% style="width:206px" %)(((
786 0x2101:
787 21: fixed command
788 01: for details, check wiki
789 )))
790 |(% style="width:130px" %)AT+ADR=?|(% style="width:151px" %)View current ADR status|(% style="width:92px" %)(((
791 1
792 OK
793 )))|(% style="width:206px" %)Default 0
794 |(% style="width:130px" %)AT+ADR=0|(% style="width:151px" %)Set the ADR state to off|(% style="width:92px" %)OK|(% style="width:206px" %)(((
795 0x2200: close
796 0x2201: open
797 22: fixed command
798 )))
799 |(% style="width:130px" %)AT+DR=?|(% style="width:151px" %)View the current DR settings|(% style="width:92px" %)OK|(% style="width:206px" %)
800 |(% style="width:130px" %)AT+DR=1|(% style="width:151px" %)(((
801 set DR to 1
802 It takes effect only when ADR=0
803 )))|(% style="width:92px" %)OK|(% style="width:206px" %)(((
804 0X22000101:
805 00: ADR=0
806 01: DR=1
807 01: TXP=1
808 22: fixed command
809 )))
810 |(% style="width:130px" %)AT+TXP=?|(% style="width:151px" %)View the current TXP|(% style="width:92px" %)OK|(% style="width:206px" %)
811 |(% style="width:130px" %)AT+TXP=1|(% style="width:151px" %)(((
812 set TXP to 1
813 It takes effect only when ADR=0
814 )))|(% style="width:92px" %)OK|(% style="width:206px" %)(((
815 0X22000101:
816 00: ADR=0
817 01: DR=1
818 01: TXP=1
819 22: fixed command
820 )))
821 |(% style="width:130px" %)AT+RJTDC=10|(% style="width:151px" %)Set RJTDC time interval|(% style="width:92px" %)OK|(% style="width:206px" %)(((
822 0X26000A:
823 26: fixed command
824 000A: 0X000A=10(min)
825 for details, check wiki
826 )))
827 |(% style="width:130px" %) |(% style="width:151px" %)(((
828 (((
829 ~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_
830
831 Retrieve stored data for a specified period of time
832 )))
833
834 (((
835
836 )))
837 )))|(% style="width:92px" %) |(% style="width:206px" %)(((
838 0X3161DE7C7061DE8A800A:
839 31: fixed command
840 61DE7C70:0X61DE7C70=2022/1/12 15:00:00
841 61DE8A80:0X61DE8A80=2022/1/12 16:00:00
842 0A: 0X0A=10(second)
843 View details 2.6.2
844 )))
845 |(% style="width:130px" %)AT+DDETECT=?|(% style="width:151px" %)View the current DDETECT setting status and time|(% style="width:92px" %)(((
846 1,1440,2880
847 OK
848 )))|(% style="width:206px" %)Default 1,1440,2880(min)
849 |(% style="width:130px" %)AT+DDETECT=(((
850 1,1440,2880
851 )))|(% style="width:151px" %)(((
852 Set DDETECT setting status and time
853 ((% style="color:red" %)When the node does not receive the downlink packet within the set time, it will re-enter the network(%%))
854 )))|(% style="width:92px" %)OK|(% style="width:206px" %)(((
855 0X320005A0: close
856 0X320105A0: open
857 32: fixed command
858 05A0: 0X05A0=1440(min)
859 )))
860
861 == 3.2  Set Password ==
862
863
864 Feature: Set device password, max 9 digits.
865
866 (% style="color:#4f81bd" %)**AT Command: AT+PWORD**
867
868 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:372px" %)
869 |(% 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**
870 |(% style="width:155px" %)AT+PWORD=?|(% style="width:124px" %)Show password|(% style="width:86px" %)(((
871 123456
872 OK
873 )))
874 |(% style="width:155px" %)AT+PWORD=999999|(% style="width:124px" %)Set password|(% style="width:86px" %)OK
875
876 (% style="color:#4f81bd" %)**Downlink Command:**
877
878 No downlink command for this feature.
879
880
881 == 3.3  Set button sound and ACK sound ==
882
883
884 Feature: Turn on/off button sound and ACK alarm.
885
886 (% style="color:#4f81bd" %)**AT Command: AT+SOUND**
887
888 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:372px" %)
889 |(% 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**
890 |(% style="width:155px" %)(((
891 AT+SOUND=?
892 )))|(% style="width:124px" %)Get the current status of button sound and ACK sound|(% style="width:86px" %)(((
893 1,1
894 OK
895 )))
896 |(% style="width:155px" %)(((
897 AT+SOUND=0,1
898 )))|(% style="width:124px" %)Turn off the button sound and turn on ACK sound|(% style="width:86px" %)OK
899
900 (% style="color:#4f81bd" %)**Downlink Command: 0xA1 **
901
902 Format: Command Code (0xA1) followed by 2 bytes mode value.
903
904 The first byte after 0XA1 sets the button sound, and the second byte after 0XA1 sets the ACK sound.** (0: off, 1: on)**
905
906 * **Example: **Downlink Payload: A10001  ~/~/ Set AT+SOUND=0,1  Turn off the button sound and turn on ACK sound.
907
908 == 3.4  Set buzzer music type(0~~4) ==
909
910
911 Feature: Set different alarm key response sounds.There are five different types of button music.
912
913 (% style="color:#4f81bd" %)**AT Command: AT+OPTION**
914
915 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:372px" %)
916 |(% 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**
917 |(% style="width:155px" %)(((
918 AT+OPTION=?
919 )))|(% style="width:124px" %)(((
920 Get the buzzer music type
921 )))|(% style="width:86px" %)(((
922 3
923
924 OK
925 )))
926 |(% style="width:155px" %)AT+OPTION=1|(% style="width:124px" %)Set the buzzer music to type 1|(% style="width:86px" %)OK
927
928 (% style="color:#4f81bd" %)**Downlink Command: 0xA3**
929
930 Format: Command Code (0xA3) followed by 1 byte mode value.
931
932 * **Example: **Downlink Payload: A300  ~/~/ Set AT+OPTION=0  Set the buzzer music to type 0.
933
934 == 3.5  Set Valid Push Time ==
935
936
937 Feature: Set the holding time for pressing the alarm button to avoid miscontact. Values range from** 0 ~~1000ms**.
938
939 (% style="color:#4f81bd" %)**AT Command: AT+STIME**
940
941 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:372px" %)
942 |(% 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**
943 |(% style="width:155px" %)(((
944 AT+STIME=?
945 )))|(% style="width:124px" %)(((
946 Get the button sound time
947 )))|(% style="width:86px" %)(((
948 0
949 OK
950 )))
951 |(% style="width:155px" %)(((
952 AT+STIME=1000
953 )))|(% style="width:124px" %)Set the button sound time to 1000**ms**|(% style="width:86px" %)OK
954
955 (% style="color:#4f81bd" %)**Downlink Command: 0xA2**
956
957 Format: Command Code (0xA2) followed by 2 bytes mode value.
958
959 * **Example: **Downlink Payload: A203E8  ~/~/ Set AT+STIME=1000  
960
961 **~ Explain: **Hold the alarm button for 10 seconds before the node will send the alarm packet.
962
963
964 = 4.  Battery & How to replace =
965
966 == 4.1  Battery Type and replace ==
967
968
969 PB05-L uses 2 x AA LR6(1.5v) batteries. If the batteries running low (shows 2.1v in the platform). Users can buy generic AA battery and replace it.
970
971 (% style="color:red" %)**Note: **
972
973 1.  The PB05-L doesn't have any screw, users can use nail to open it by the middle.
974
975 [[image:image-20250303112351-7.png||height="234" width="494"]]
976
977
978 2.  Make sure the direction is correct when install the AA batteries.
979
980 [[image:image-20250303105439-2.jpeg||height="241" width="489"]]
981
982
983 == 4.2  Power Consumption Analyze ==
984
985
986 Dragino battery powered product are all runs in Low Power mode. We have an update battery calculator which base on the measurement of the real device. User can use this calculator to check the battery life and calculate the battery life if want to use different transmit interval.
987
988 Instruction to use as below:
989
990 (% style="color:blue" %)**Step 1**(%%):  Downlink the up-to-date DRAGINO_Battery_Life_Prediction_Table.xlsx from:
991
992 [[battery calculator>>https://www.dropbox.com/sh/sxrgszkac4ips0q/AAA4XjBI3HAHNpdbU3ALN1j0a/Battery%20Document/Battery_Analyze?dl=0&subfolder_nav_tracking=1]]
993
994
995 (% style="color:blue" %)**Step 2**(%%):  (% style="display:none" %) (%%)Open it and choose
996
997 * Product Model
998 * Uplink Interval
999 * Working Mode
1000
1001 And the Life expectation in difference case will be shown on the right.
1002
1003 [[image:image-20220621143643-7.png||height="429" width="1326"]]
1004
1005
1006
1007 = 5. OTA Firmware update =
1008
1009 **User can change firmware PB05-L to:**
1010
1011 * Change Frequency band/ region.
1012 * Update with new features.
1013 * Fix bugs.
1014
1015 **Firmware and changelog can be downloaded from :** **[[Firmware download link>>https://www.dropbox.com/scl/fo/ztlw35a9xbkomu71u31im/ACMiK0Y0E5C2ZEcSKxgvmeE/LoRaWAN%20End%20Node/PB05/Firmware?dl=0&rlkey=ojjcsw927eaow01dgooldq3nu&subfolder_nav_tracking=1]]**
1016
1017 **Methods to Update Firmware:**
1018
1019 * (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/]]**
1020 * 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]]**.
1021
1022 = 6. Use Cases =
1023
1024 == 6.1 Public Transport Satisfaction ==
1025
1026 Public transport satisfaction terminals, placed inside buses, trams, or train stations, allow passengers to quickly rate aspects like cleanliness, punctuality, or overall experience after a ride, providing cities and transport operators with valuable real-time feedback, even from locations with poor cellular or WiFi coverage. This helps to improve service quality and passenger satisfaction.
1027
1028
1029 == 6.2 Event or Conference Feedback ==
1030
1031 Event or conference feedback terminals, strategically placed at session exits, information booths, or entrance gates, enable attendees to rate specific talks, exhibitors, or their overall event experience on the spot. This setup provides organizers with detailed, location-specific feedback in real time, without relying on constant internet connectivity, allowing them to assess and improve various aspects of the event efficiently.
1032
1033
1034 == 6.3 Retail Stores or Service Desks ==
1035
1036 Placed at cashier counters or near store exits, these devices allow customers to quickly rate staff behavior, checkout experience, and store cleanliness. The feedback is captured in real time, giving store managers valuable, honest insights to help improve service quality and enhance the overall shopping experience.
1037
1038
1039 = 7. FAQ =
1040
1041
1042 == 7.1 How to design customized sticker? ==
1043
1044
1045 PB05-L is shipped with a default PVC stick with satisfied icons. This sticker is not attached to the design for easy customizerd purpose. User can design customized PVC sticker and change the panel design.
1046
1047 Below is the [[link>>https://www.dropbox.com/scl/fo/4i7ezfiwdxqvnmo5d30pe/AO8KACW7i6tRiNC22ZLR_RU?rlkey=9z9bdlix0hal7dmy9lztgmrel&st=9su98u3a&dl=0]] for the design template.
1048
1049
1050 = 8. Order Info =
1051
1052
1053 Part Number: (% style="color:#4472c4" %)**PB05-L-XX**
1054
1055 (% style="color:#4472c4" %)**XX **(%%): The default frequency band
1056
1057 * (% style="color:red" %)**AS923**(%%)**: **LoRaWAN AS923 band
1058 * (% style="color:red" %)**AU915**(%%)**: **LoRaWAN AU915 band
1059 * (% style="color:red" %)**EU433**(%%)**: **LoRaWAN EU433 band
1060 * (% style="color:red" %)**EU868**(%%)**:** LoRaWAN EU868 band
1061 * (% style="color:red" %)**KR920**(%%)**: **LoRaWAN KR920 band
1062 * (% style="color:red" %)**US915**(%%)**: **LoRaWAN US915 band
1063 * (% style="color:red" %)**IN865**(%%)**:  **LoRaWAN IN865 band
1064 * (% style="color:red" %)**CN470**(%%)**: **LoRaWAN CN470 band
1065
1066 = 9. Packing Info =
1067
1068
1069 (% style="color:#4472c4" %)**Package Includes:**
1070
1071 * PB05-L LoRaWAN Push Buttons x 1
1072
1073 (% style="color:#4472c4" %)**Dimension and weight:**
1074
1075 * Device Size: cm
1076 * Device Weight: g
1077 * Package Size / pcs : cm
1078 * Weight / pcs : g
1079
1080 = 10. Support =
1081
1082
1083 * 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.
1084 * 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.com>>url:file:///D:/市场资料/说明书/LoRa/LT系列/support@dragino.com]].
Copyright ©2010-2024 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0