Wiki source code of PB01 -- LoRaWAN Button User Manual
Last modified by Dilisi S on 2025/01/13 02:15
Show last authors
author | version | line-number | content |
---|---|---|---|
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 (% style="color:blue" %)**PB01 LoRaWAN Push Button**(%%) is a wireless LoRaWAN device equipped with (% style="color:blue" %)**a single 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 | (% style="color:blue" %)**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 | (% style="color:blue" %)**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 | You can check the [[LED Status>>||anchor="H2.8LEDIndicator"]] to determine the working state of the PB01. | ||
118 | |||
119 | |||
120 | == 2.3 Registering with a LoRaWAN network == | ||
121 | |||
122 | |||
123 | This section explains how to register the PB01 with a LoRaWAN Network Server, such as The Things Stack Cloud. After registering, the PB01 can join the network once you long-press the ACT button. | ||
124 | |||
125 | (% _mstvisible="1" class="wikigeneratedid" %) | ||
126 | The following network diagram shows how the PB01 communicates with The Things Stack Cloud (similarly to other LoRaWAN Network Servers) end to end. | ||
127 | |||
128 | |||
129 | [[image:pb01-ttn.jpg]] | ||
130 | |||
131 | |||
132 | Each PB01 is shipped with its unique registration information printed on a sticker affixed inside the cardboard package that the device is packed in. The registration information includes the following: | ||
133 | |||
134 | * DevEUI | ||
135 | * AppEUI | ||
136 | * AppKey | ||
137 | |||
138 | This information is required to perform the OTAA (Over-the-Air Activation) of the device, which is the most secure way of activating the device with a LoRaWAN network server. | ||
139 | |||
140 | [[image:image-20230426083617-1.png||height="294" width="633"]] | ||
141 | |||
142 | |||
143 | === 2.3.1 Add PB01 to The Things Stack === | ||
144 | |||
145 | |||
146 | PB01 currently supports only **manual **registartion with The Things Stack. | ||
147 | |||
148 | |||
149 | ==== 2.3.1.1 Creating an application ==== | ||
150 | |||
151 | |||
152 | Sign up for a free account with [[The Things Stack Sandbox>>url:https://eu1.cloud.thethings.network/]] if you do not have one yet. Then, create an **application **as shown in the screenshots below. | ||
153 | |||
154 | |||
155 | ==== 2.3.1.2 Adding manually ==== | ||
156 | |||
157 | |||
158 | You can refer to the screenshots below to register your PB01 using The Things Stack's manual registration option. | ||
159 | |||
160 | On The Things Stack console: | ||
161 | |||
162 | * Click **Applications**. | ||
163 | * Click <**your application**>. E.g. dragino-docs | ||
164 | * Click **End devices**. | ||
165 | * Click **+ Register end devic**e button. | ||
166 | |||
167 | [[image:5.png]] | ||
168 | |||
169 | |||
170 | * Select **Enter end device specifies manually** option. | ||
171 | * **Frequency plan**: Select the frequency plan that matches your device. E.g.: Europe 863-870 MHz (SF9 for RX2 - recommended). | ||
172 | * **LoRaWAN version**: LoRaWAN Specification 1.0.3 | ||
173 | * Regional Parameters version: You can't change it and it will select automatically. | ||
174 | |||
175 | [[image:2.png]] | ||
176 | |||
177 | |||
178 | * **JoinEUI**: Enter the **AppEUI** of the device (see the registration information sticker) and Click the **Confirm** button. | ||
179 | * **DevEUI**: Enter the DevEUI of the device (see the registration information sticker). | ||
180 | * **AppKey**: Enter the AppKey of the device (see the registration information sticker). | ||
181 | * **End device ID**: Enter a name for your end device to uniquely identify it within this application. | ||
182 | * Click **View registered end device** option. | ||
183 | * Click **Register end device** button. | ||
184 | |||
185 | [[image:3.png]] | ||
186 | |||
187 | |||
188 | You will be navigated to the **Device overview **page. | ||
189 | (% style="display:none" %) | ||
190 | |||
191 | |||
192 | ==== 2.3.1.3 Activate the PB01 ==== | ||
193 | |||
194 | |||
195 | Long press the **ACT** button to activate the PB01. It will then join The Things Stack. Once successfully connected, the device will begin uplinking sensor data to The Things Stack, which can be viewed on the **Live data** panel. | ||
196 | |||
197 | [[image:image-20240507143104-5.png||height="434" width="1398"]] | ||
198 | |||
199 | |||
200 | == 2.4 Uplink Payload == | ||
201 | |||
202 | |||
203 | Uplink payloads include two types: Valid Sensor Value and other status / control command. | ||
204 | |||
205 | * Valid Sensor Value: Use FPORT=2 | ||
206 | * Other control command: Use FPORT other than 2. | ||
207 | |||
208 | === 2.4.1 Uplink FPort~=5, Device Status === | ||
209 | |||
210 | |||
211 | 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. | ||
212 | |||
213 | (% style="color:#4472c4" %)**Downlink: **(%%)**0x2601 ** | ||
214 | |||
215 | The device uplinks its status via FPort=5, and the payload format is as follows: | ||
216 | |||
217 | (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:370px" %) | ||
218 | |=(% 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** | ||
219 | |(% 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 | ||
220 | |||
221 | The following figure shows the decoded device status payload as displayed on The Things Stack. | ||
222 | |||
223 | [[image:image-20240507152130-12.png||height="469" width="1366"]](% style="display:none" %) | ||
224 | |||
225 | |||
226 | For example, if the device status uplink includes the payload, [[image:image-20240507152254-13.png||height="26" width="130"]] | ||
227 | |||
228 | |||
229 | (% style="color:#4472c4" %)**Sensor model**(%%): 0x35 - for PB01, this value is 0x35. | ||
230 | |||
231 | (% style="color:#4472c4" %)**Firmware version**(%%): 0x0100 - value 0x0100 means v1.0.0. | ||
232 | |||
233 | (% style="color:#4472c4" %)**Frequency band**(%%): 01 - means EU868. The following are the possible values for other frequency bands. | ||
234 | |||
235 | *0x01: EU868 | ||
236 | |||
237 | *0x02: US915 | ||
238 | |||
239 | *0x03: IN865 | ||
240 | |||
241 | *0x04: AU915 | ||
242 | |||
243 | *0x05: KZ865 | ||
244 | |||
245 | *0x06: RU864 | ||
246 | |||
247 | *0x07: AS923 | ||
248 | |||
249 | *0x08: AS923-1 | ||
250 | |||
251 | *0x09: AS923-2 | ||
252 | |||
253 | *0x0A: AS923-3 | ||
254 | |||
255 | (% style="color:#4472c4" %)**Sub band**(%%): 0xFF - value 0x00 ~~ 0x08 (only for CN470, AU915, US915. Others are 0x00) | ||
256 | |||
257 | (% style="color:#4472c4" %)**BAT**(%%): 0x 0CDE - represents the battery voltage for PB01. The values 0x0CDE means 3294 mV = 3.294 V | ||
258 | |||
259 | |||
260 | === 2.4.2 Uplink FPort~=2, Real time sensor values === | ||
261 | |||
262 | |||
263 | 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. | ||
264 | |||
265 | 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. | ||
266 | |||
267 | (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:460px" %) | ||
268 | |=(% style="width: 60px;background-color:#4F81BD;color:white" %)((( | ||
269 | **Size(bytes)** | ||
270 | )))|=(% style="width: 60px;background-color:#4F81BD;color:white" %)2|=(% style="width: 140px;background-color:#4F81BD;color:white" %)((( | ||
271 | **1** | ||
272 | )))|=(% style="width: 60px;background-color:#4F81BD;color:white" %)((( | ||
273 | **1** | ||
274 | )))|=(% style="width: 90px;background-color:#4F81BD;color:white" %)((( | ||
275 | **2** | ||
276 | )))|=(% style="width: 50px;background-color:#4F81BD;color:white" %)((( | ||
277 | **2** | ||
278 | ))) | ||
279 | |(% style="width:97px" %)((( | ||
280 | Value | ||
281 | )))|(% style="width:39px" %)Battery|(% style="width:39px" %)((( | ||
282 | Sound_ACK & Sound_key | ||
283 | )))|(% style="width:100px" %)((( | ||
284 | ((( | ||
285 | Alarm | ||
286 | ))) | ||
287 | )))|(% style="width:77px" %)((( | ||
288 | ((( | ||
289 | Temperature | ||
290 | ))) | ||
291 | )))|(% style="width:47px" %)((( | ||
292 | Humidity | ||
293 | ))) | ||
294 | |||
295 | The following figure shows the decoded real time sensor values payload as displayed on The Things Stack. | ||
296 | |||
297 | [[image:image-20240507150155-11.png||height="549" width="1261"]] | ||
298 | |||
299 | |||
300 | 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** | ||
301 | |||
302 | |||
303 | ==== (% style="color:blue" %)**Battery:**(%%) ==== | ||
304 | |||
305 | Byte 1 and 2: Check the battery voltage. | ||
306 | |||
307 | * Example 1: 0x0CEA = 3306mV | ||
308 | * Example 2: 0x0D08 = 3336mV | ||
309 | |||
310 | ==== (% style="color:blue" %)**Sound_ACK & Sound_key:**(%%) ==== | ||
311 | |||
312 | Byte 3: Key sound and ACK sound are enabled by default. | ||
313 | |||
314 | * Example1: 0x03 | ||
315 | |||
316 | Sound_ACK: (03>>1) & 0x01=1, OPEN. | ||
317 | |||
318 | **~ ** Sound_key: 03 & 0x01=1, OPEN. | ||
319 | |||
320 | * Example 2: 0x01 | ||
321 | |||
322 | Sound_ACK: (01>>1) & 0x01=0, CLOSE. | ||
323 | |||
324 | **~ ** Sound_key: 01 & 0x01=1, OPEN. | ||
325 | |||
326 | |||
327 | ==== (% style="color:blue" %)**Alarm:**(%%) ==== | ||
328 | |||
329 | Byte 4: Key alarm. | ||
330 | |||
331 | * Example 1: 0x01 & 0x01=1, TRUE. | ||
332 | * Example 2: 0x00 & 0x01=0, FALSE. | ||
333 | |||
334 | ==== (% style="color:blue" %)**Temperature:**(%%) ==== | ||
335 | |||
336 | Byte 5 and 6: Temperature. | ||
337 | |||
338 | * Example 1: 0x0111/10=27.3°C | ||
339 | * Example 2: (0xFF0D-65536)/10=-24.3°C | ||
340 | |||
341 | If payload is: FF0D : (FF0D & 8000 == 1) , temp = (FF0D - 65536)/100 =-24.3°C | ||
342 | |||
343 | (FF0D & 8000 : Check whether the highest bit is 1. If the highest bit is 1, the value is negative) | ||
344 | |||
345 | |||
346 | ==== (% style="color:blue" %)**Humidity:**(%%) ==== | ||
347 | |||
348 | Byte 7 and 8: Humidity | ||
349 | |||
350 | * Humidity: 0x02A8/10=68.0% | ||
351 | |||
352 | === 2.4.3 Uplink FPort~=3, Datalog sensor value === | ||
353 | |||
354 | |||
355 | PB01 stores sensor values, and you can retrieve these historical values via a downlink command. The Datalog sensor values are sent via FPort=3. | ||
356 | |||
357 | [[image:image-20240510144912-1.png||height="471" width="1178"]](% style="display:none" %) | ||
358 | |||
359 | |||
360 | 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: | ||
361 | |||
362 | 1. **DR0**: maximum payload is 11 bytes. The device will uplink one entry of data. | ||
363 | 1. **DR1**: maximum payload is 53 bytes. The device will upload 4 entries of data (total of 44 bytes) | ||
364 | 1. **DR2**: A payload includes 11 entries of data | ||
365 | 1. **DR3**: A payload includes 22 entries of data. | ||
366 | |||
367 | (% 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.** | ||
368 | |||
369 | See [[Datalog feature>>||anchor="H2.6A0DatalogFeature"]] for more information. | ||
370 | |||
371 | (% style="display:none" %) (%%) | ||
372 | |||
373 | === 2.4.4 Decoding the payload in The Things Stack Cloud === | ||
374 | |||
375 | |||
376 | 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. | ||
377 | |||
378 | 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]] | ||
379 | |||
380 | Select your **end device**, then click the **Payload Formatters **tab, followed by the **Uplink** tab. Next, select '**Custom Javascript Formatte**r' from the '**Formatter Type**' dropdown list. Finally, paste the payload formatter in the '**Formatter Code**' box and click the '**Save Changes**' button. | ||
381 | |||
382 | [[image:image-20240507162814-16.png||height="778" width="1135"]] | ||
383 | |||
384 | |||
385 | == 2.5 Show data on Datacake == | ||
386 | |||
387 | |||
388 | ((( | ||
389 | The Datacake IoT platform contains a user-friendly interface for displaying sensor data. Once sensor data is available in The Things Stack, Datacake can be used to connect to The Things Stack and visualize the data. | ||
390 | ))) | ||
391 | |||
392 | ((( | ||
393 | We assume that you have successfully registered and activated your PB01 with The Things Stack Cloud. To configure your application to forward data to Datacake, you will need to add an integration. Follow the steps below: | ||
394 | ))) | ||
395 | |||
396 | ((( | ||
397 | |||
398 | |||
399 | **Step 1:** | ||
400 | |||
401 | * Go to The Things Stack Cloud Console ~-~-> Applications ~-~-> <your application> ~-~-> Integrations ~-~-> Webhooks. | ||
402 | ))) | ||
403 | |||
404 | ((( | ||
405 | * On the **Choose webhook template** page, select **Datacake**. | ||
406 | * The **Setup webhook for Datacake** page appears. Do not close this window until you complete **Step 2**. You will need this page open to continue with **Step 3**. | ||
407 | |||
408 | |||
409 | ))) | ||
410 | |||
411 | ((( | ||
412 | |||
413 | ))) | ||
414 | |||
415 | [[image:image-20240510150924-2.png||height="612" width="1186"]] | ||
416 | |||
417 | |||
418 | **Step 2:** | ||
419 | |||
420 | * Log in to your [[**Datacake**>>https://datacake.co]] account. In the left navigation, click on **Account Settings**. On the Account Settings page, in the **API Token** tab, copy the **API token** by clicking the **Copy** button. | ||
421 | |||
422 | [[image:image-20240510151944-3.png||height="581" width="1191"]] | ||
423 | |||
424 | |||
425 | **Step 3:** | ||
426 | |||
427 | * On the **Setup webhook for Datacake** page, in the **Webhook ID** textbox, type a name to identify your webhook. | ||
428 | * Paste the **Datacake API Token** you copied in the previous step into the **Token** textbox. | ||
429 | * Click the **Create Datacake webhook** button. | ||
430 | |||
431 | [[image:image-20240510152150-4.png||height="697" width="1188"]] | ||
432 | |||
433 | |||
434 | **Step 4:** | ||
435 | |||
436 | On the **Datacake** **Devices** page, select **+ Add Device** button. | ||
437 | |||
438 | [[image:image-20240510152300-5.png||height="298" width="1191"]] | ||
439 | |||
440 | |||
441 | **Step 5:** | ||
442 | |||
443 | In the **Add Device** window, select **LoRaWAN** as the connectivity type for the **PB01** | ||
444 | |||
445 | [[image:image-20240510152355-6.png||height="782" width="1193"]] | ||
446 | |||
447 | |||
448 | **Step 6:** | ||
449 | |||
450 | * On the **Add LoRaWAN Device** window, **STEP 1 - Product** tab: | ||
451 | ** Select the **New Product** option and then provide a **name** for your device in the **Product Name**, for example, **pb01-1**. | ||
452 | ** Click on the **Next** button. | ||
453 | |||
454 | [[image:image-20240510152542-8.png||height="545" width="739"]] | ||
455 | |||
456 | |||
457 | **Step 7:** | ||
458 | |||
459 | * On the **Add LoRaWAN Device** window, **STEP 2 - Network Server** tab: | ||
460 | ** Select **The Things Stack V3**. | ||
461 | ** Click on the **Next** button. | ||
462 | |||
463 | [[image:image-20240510152634-9.png||height="748" width="740"]] | ||
464 | |||
465 | |||
466 | **Step 8:** | ||
467 | |||
468 | * On the **Add LoRaWAN Device** window, **STEP 3 - Devices** tab: | ||
469 | ** Under **Add Devices**, select the **Manual **tab if it is not selected by default. | ||
470 | ** In the **DEVEUI** box, type the **DevEUI** of your PB01. | ||
471 | ** In the **NAME** textbox, provide a name for your PB01 to identify within Datacake. | ||
472 | ** Click on the **Next** button. | ||
473 | |||
474 | [[image:image-20240510152809-10.png||height="607" width="732"]] | ||
475 | |||
476 | |||
477 | **Step 9:** | ||
478 | |||
479 | * The PB01 is now successfully integrated with Datacake, and you will receive all PB01 uplinks from The Things Stack. | ||
480 | * Go to **Fleet ~-~-> PB01** and then select the **Debug** tab. You can see all the uplinks from your PB01. | ||
481 | |||
482 | [[image:image-20240510153934-14.png||height="460" width="1199"]] | ||
483 | |||
484 | |||
485 | **Step 10:** | ||
486 | |||
487 | * Go to the **Configuration** tab. | ||
488 | |||
489 | [[image:image-20240510153435-12.png||height="428" width="1197"]] | ||
490 | |||
491 | |||
492 | **Step 11:** | ||
493 | |||
494 | * Scroll down the page and locate the **Payload Decoder **section. | ||
495 | * Copy the payload decoder for The Things Stack from [[here>>https://github.com/dragino/dragino-end-node-decoder/blob/main/PB01/PB01_TTN_decoder.txt]] and paste it in the Payload Decoder box. | ||
496 | |||
497 | [[image:image-20240510153624-13.png||height="468" width="1195"]] | ||
498 | |||
499 | |||
500 | **Step 12:** | ||
501 | |||
502 | * With Datacake, you can build **dashboards** to visualize your data on various widgets. Please read the [[Datacake documentation>>https://docs.datacake.de]] for more information. | ||
503 | |||
504 | (% style="display:none" %) (%%) | ||
505 | |||
506 | == 2.6 Show data on ThingsEye.io == | ||
507 | |||
508 | |||
509 | The Things Stack application supports integration with **ThingsEye.io**. Once integrated, ThingsEye.io acts as an MQTT client for The Things Stack MQTT broker, allowing it to subscribe to upstream traffic and publish downlink traffic. | ||
510 | |||
511 | |||
512 | === 2.6.1 Configuring The Things Stack === | ||
513 | |||
514 | We use The Things Stack Sandbox in this example: | ||
515 | |||
516 | * In **The Things Stack Sandbox**, go to the **Application **of the PB01 you added. | ||
517 | * Select **MQTT** under **Integrations** in the left menu. | ||
518 | * In the **Connection information **section, under **Connection credentials**, The Things Stack displays an auto-generated **username**. You can use it or provide a new one. | ||
519 | * Click the **Generate new API key** button to generate a password. You can view it by clicking on the **visibility toggle/eye** icon. The API key works as the password. | ||
520 | |||
521 | {{info}} | ||
522 | The username and password (API key) you created here are required in the next section. | ||
523 | {{/info}} | ||
524 | |||
525 | [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/tts-mqtt-integration.png?rev=1.1||alt="tts-mqtt-integration.png"]] | ||
526 | |||
527 | |||
528 | === 2.6.2 Configuring ThingsEye.io === | ||
529 | |||
530 | |||
531 | The ThingsEye.io IoT platform is not open for self-registration at the moment. If you are interested in testing the platform, please send your project information to [[admin@thingseye.io>>mailto:admin@thingseye.io]], and we will create an account for you. | ||
532 | |||
533 | * Login to your [[ThingsEye.io >>url:https://thingseye.io]]account. | ||
534 | * Under the **Integrations center**, click **Integrations**. | ||
535 | * Click the **Add integration** button (the button with the **+** symbol). | ||
536 | |||
537 | [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye-io-step-1.png?rev=1.2||alt="thingseye-io-step-1.png"]] | ||
538 | |||
539 | |||
540 | On the **Add integration** window, configure the following: | ||
541 | |||
542 | **Basic settings:** | ||
543 | |||
544 | * Select **The Things Stack Community** from the **Integration type** list. | ||
545 | * Enter a suitable name for your integration in the **Name **text** **box or keep the default name. | ||
546 | * Ensure the following options are turned on. | ||
547 | ** Enable integration | ||
548 | ** Debug mode | ||
549 | ** Allow creating devices or assets | ||
550 | * Click the **Next** button. you will be navigated to the **Uplink data converter** tab. | ||
551 | |||
552 | [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye-io-step-2.png?rev=1.1||alt="thingseye-io-step-2.png"]] | ||
553 | |||
554 | |||
555 | **Uplink data converter:** | ||
556 | |||
557 | * Click the **Create new** button if it is not selected by default. | ||
558 | * Enter a suitable name for the uplink data converter in the **Name **text** **box or keep the default name. | ||
559 | * Click the **JavaScript** button. | ||
560 | * Paste the uplink decoder function into the text area (first, delete the default code). The demo uplink decoder function can be found [[here>>url:https://raw.githubusercontent.com/ThingsEye-io/te-platform/refs/heads/main/Data%20Converters/The_Things_Network_MQTT_Uplink_Converter.js]]. | ||
561 | * Click the **Next** button. You will be navigated to the **Downlink data converter **tab. | ||
562 | |||
563 | [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye-io-step-3.png?rev=1.1||alt="thingseye-io-step-3.png"]] | ||
564 | |||
565 | |||
566 | **Downlink data converter (this is an optional step):** | ||
567 | |||
568 | * Click the **Create new** button if it is not selected by default. | ||
569 | * Enter a suitable name for the downlink data converter in the **Name **text** **box or keep the default name. | ||
570 | * Click the **JavaScript** button. | ||
571 | * Paste the downlink decoder function into the text area (first, delete the default code). The demo downlink decoder function can be found [[here>>url:https://raw.githubusercontent.com/ThingsEye-io/te-platform/refs/heads/main/Data%20Converters/The_Things_Network_MQTT_Downlink_Converter.js]]. | ||
572 | * Click the **Next** button. You will be navigated to the **Connection** tab. | ||
573 | |||
574 | [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye-io-step-4.png?rev=1.1||alt="thingseye-io-step-4.png"]] | ||
575 | |||
576 | |||
577 | **Connection:** | ||
578 | |||
579 | * Choose **Region** from the **Host type**. | ||
580 | * Enter the **cluster** of your **The Things Stack** in the **Region** textbox. You can find the cluster in the url (e.g., https:~/~/**eu1**.cloud.thethings.network/...). | ||
581 | * Enter the **Username** and **Password** of the MQTT integration in the **Credentials** section. The **username **and **password **can be found on the MQTT integration page of your The Things Stack account (See **2.5.1 Configuring The Things Stack**). | ||
582 | * Click the **Check connection** button to test the connection. If the connection is successful, you will see the message saying **Connected**. | ||
583 | |||
584 | [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/message-1.png?rev=1.1||alt="message-1.png"]] | ||
585 | |||
586 | |||
587 | * Click the **Add** button. | ||
588 | |||
589 | [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye-io-step-5.png?rev=1.1||alt="thingseye-io-step-5.png"]] | ||
590 | |||
591 | |||
592 | Your integration has been added to the** Integrations** list and will be displayed on the **Integrations** page. Check whether the status is shown as **Active**. If not, review your configuration settings and correct any errors. | ||
593 | |||
594 | |||
595 | [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye.io_integrationsCenter_integrations.png?rev=1.2||alt="thingseye.io_integrationsCenter_integrations.png"]] | ||
596 | |||
597 | |||
598 | ==== 2.6.2.1 Viewing integration details ==== | ||
599 | |||
600 | |||
601 | Click on your integration from the list. The **Integration details** window will appear with the **Details **tab selected. The **Details **tab shows all the settings you have provided for this integration. | ||
602 | |||
603 | |||
604 | [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/integration-details.png?rev=1.1||alt="integration-details.png"]] | ||
605 | |||
606 | |||
607 | If you want to edit the settings you have provided, click on the **Toggle edit mode** button. Once you have done click on the **Apply changes **button. | ||
608 | |||
609 | {{info}} | ||
610 | See also [[ThingsEye documentation>>url:https://wiki.thingseye.io/xwiki/bin/view/Main/]]. | ||
611 | {{/info}} | ||
612 | |||
613 | ==== 2.6.2.2 Viewing events ==== | ||
614 | |||
615 | |||
616 | The **Events **tab displays all the uplink messages from the **PB01**. | ||
617 | |||
618 | * Select **Debug **from the **Event type** dropdown. | ||
619 | * Select the** time frame** from the **time window**. | ||
620 | |||
621 | [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye-events.png?rev=1.1||alt="thingseye-events.png"]] | ||
622 | |||
623 | |||
624 | * To view the **JSON payload** of a message, click on the **three dots (...)** in the **Message** column of the desired message. | ||
625 | |||
626 | [[image:pb01-payload.png]] | ||
627 | |||
628 | |||
629 | ==== 2.6.2.3 Deleting an integration ==== | ||
630 | |||
631 | |||
632 | If you want to delete an integration, click the **Delete integratio**n button on the Integrations page. | ||
633 | |||
634 | |||
635 | ==== 2.6.2.4 Viewing sensor data on a dashboard ==== | ||
636 | |||
637 | |||
638 | You can create a dashboard with ThingsEye to visualize the sensor data coming from the PB01. The following image shows a dashboard created for the PB01. See **Creating a dashboard** in ThingsEye documentation for more information. | ||
639 | |||
640 | |||
641 | [[image:Screenshot 2025-01-11 at 21.15.59.png]] | ||
642 | |||
643 | |||
644 | == 2.7 Datalog Feature == | ||
645 | |||
646 | |||
647 | (% _msthash="315262" _msttexthash="32283004" _mstvisible="1" %) | ||
648 | 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. | ||
649 | |||
650 | |||
651 | === 2.7.1 Unix Timestamp === | ||
652 | |||
653 | |||
654 | The Unix timestamp indicates the sampling time of the uplink payload, based on the following format: | ||
655 | |||
656 | [[image:image-20220523001219-11.png||_mstalt="450450" _mstvisible="3" height="97" width="627"]] | ||
657 | |||
658 | You can get this time from the link: [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/||_mstvisible="3"]] : | ||
659 | |||
660 | 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). | ||
661 | |||
662 | [[image:1655782409139-256.png]] | ||
663 | |||
664 | |||
665 | === 2.7.2 Poll sensor value === | ||
666 | |||
667 | |||
668 | ((( | ||
669 | 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. | ||
670 | ))) | ||
671 | |||
672 | ((( | ||
673 | For example, if the downlink command is: [[image:image-20220621113526-13.png]] (% _mstvisible="3" style="display:none" %) | ||
674 | ))) | ||
675 | |||
676 | ((( | ||
677 | **0x31 **: Prefix | ||
678 | |||
679 | **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**. | ||
680 | |||
681 | **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. | ||
682 | ))) | ||
683 | |||
684 | |||
685 | === 2.7.3 Datalog Uplink payload === | ||
686 | |||
687 | |||
688 | See [[Uplink FPort=3, Datalog sensor value>>||anchor="H2.4.3A0UplinkFPort3D32CDatalogsensorvalue"]] | ||
689 | |||
690 | (% style="display:none" %) (%%) (% style="display:none" %) | ||
691 | |||
692 | == 2.8 Buttons == | ||
693 | |||
694 | |||
695 | * **ACT button** | ||
696 | |||
697 | Long press this button, and the PB01 will reset and rejoin the network. | ||
698 | |||
699 | [[image:image-20240510161626-17.png||height="192" width="224"]] | ||
700 | |||
701 | |||
702 | * **Alarm button** | ||
703 | |||
704 | Press this button to immediately send an uplink, and the alarm will be set to 'TRUE'. | ||
705 | |||
706 | [[image:image-20240705095149-5.png||height="164" width="162"]](% style="display:none" %) | ||
707 | |||
708 | |||
709 | == 2.9 LED Indicators == | ||
710 | |||
711 | |||
712 | ((( | ||
713 | The PB01 has a single LED that displays different colors to indicate various stages: | ||
714 | |||
715 | 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. | ||
716 | 1. ((( | ||
717 | **Normal Working State:** | ||
718 | |||
719 | * 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. | ||
720 | ))) | ||
721 | 1. ((( | ||
722 | **During OTAA Join:** | ||
723 | |||
724 | * For each Join Request uplink, the LED will blink GREEN once. | ||
725 | * Once the join is successful, the LED will remain solid GREEN for 5 seconds. | ||
726 | * After joining, for each uplink, the LED will blink either BLUE or GREEN. | ||
727 | ))) | ||
728 | 1. ((( | ||
729 | **Alarm Button:** | ||
730 | |||
731 | * 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. | ||
732 | ))) | ||
733 | ))) | ||
734 | |||
735 | ((( | ||
736 | |||
737 | ))) | ||
738 | |||
739 | == 2.10 Buzzer == | ||
740 | |||
741 | |||
742 | 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. | ||
743 | |||
744 | * **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. | ||
745 | * **ACK Sound:** This is the notification tone emitted when the node receives an acknowledgment (ACK). | ||
746 | |||
747 | = 3. Configure PB01 via AT command or LoRaWAN downlink = | ||
748 | |||
749 | |||
750 | You can configure PB01 via AT Commands or LoRaWAN Downlinks. | ||
751 | |||
752 | * See [[FAQ>>||anchor="H6.FAQ"]] to find out how to connect PB01 with a computer to configure it using AT commands. | ||
753 | |||
754 | * LoRaWAN Downlink instruction for different platforms can be found at: [[IoT LoRaWAN Server>>doc:Main.WebHome]] | ||
755 | |||
756 | (% style="display:none" %) | ||
757 | |||
758 | There are two types of commands to configure the PB01: | ||
759 | |||
760 | 1. ((( | ||
761 | **General Commands:** | ||
762 | These commands are used to configure: | ||
763 | |||
764 | * General system settings, such as the uplink interval. | ||
765 | * LoRaWAN protocol and radio-related parameters. | ||
766 | |||
767 | 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:#]]. | ||
768 | ))) | ||
769 | 1. **Commands Specifically Designed for PB01:** | ||
770 | These commands are valid only for the PB01, as listed below (see Downlink Commands): | ||
771 | |||
772 | == 3.1 Downlink Commands == | ||
773 | |||
774 | |||
775 | (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %) | ||
776 | |=(% 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** | ||
777 | |(% style="width:130px" %)AT+TDC=?|(% style="width:151px" %)((( | ||
778 | Get the current TDC (uplink) time | ||
779 | )))|(% style="width:92px" %)((( | ||
780 | 1200000 | ||
781 | OK | ||
782 | )))|(% style="width:206px" %)Default 1200000(ms) | ||
783 | |(% style="width:130px" %)AT+TDC=300000|(% style="width:151px" %)Set the TDC (uplink) time|(% style="width:92px" %)OK|(% style="width:206px" %)((( | ||
784 | ((( | ||
785 | 0x0100012C: | ||
786 | 01: Prefix | ||
787 | 00012C: 0X00012C=300(seconds) | ||
788 | ))) | ||
789 | |||
790 | ((( | ||
791 | |||
792 | ))) | ||
793 | ))) | ||
794 | |(% style="width:130px" %)ATZ|(% style="width:151px" %)Reset the node|(% style="width:92px" %) |(% style="width:206px" %)0x04FF | ||
795 | |(% style="width:130px" %)AT+FDR|(% style="width:151px" %)Restore to factory settings|(% style="width:92px" %) |(% style="width:206px" %)0x04FE | ||
796 | |(% style="width:130px" %)AT+CFM=?|(% style="width:151px" %)View the current confirmation mode status|(% style="width:92px" %)((( | ||
797 | 0,7,0 | ||
798 | OK | ||
799 | )))|(% style="width:206px" %)Default 0,7,0 | ||
800 | |(% style="width:130px" %)AT+CFM=1,7,1|(% style="width:151px" %)((( | ||
801 | Confirmed uplink mode, the maximum number of retries is seven, and uplink fcnt increase by 1 for each retry | ||
802 | )))|(% style="width:92px" %)((( | ||
803 | OK | ||
804 | )))|(% style="width:206px" %)((( | ||
805 | 05010701 | ||
806 | 05: fixed command | ||
807 | 01:confirmed uplink | ||
808 | 07: retry 7 times | ||
809 | 01: fcnt count plus 1 | ||
810 | ))) | ||
811 | |(% style="width:130px" %)AT+NJM=?|(% style="width:151px" %)((( | ||
812 | Check the current network connection method | ||
813 | )))|(% style="width:92px" %)((( | ||
814 | 1 | ||
815 | OK | ||
816 | )))|(% style="width:206px" %)Default 1 | ||
817 | |(% style="width:130px" %)AT+NJM=0|(% style="width:151px" %)Change the network connection method to ABP|(% style="width:92px" %)((( | ||
818 | Attention:Take effect after ATZ | ||
819 | OK | ||
820 | )))|(% style="width:206px" %)((( | ||
821 | 0x2000: ABP | ||
822 | 0x2001: OTAA | ||
823 | 20: fixed command | ||
824 | ))) | ||
825 | |(% style="width:130px" %)AT+RPL=?|(% style="width:151px" %)View current RPL settings|(% style="width:92px" %)((( | ||
826 | 0 | ||
827 | OK | ||
828 | )))|(% style="width:206px" %)Default 0 | ||
829 | |(% style="width:130px" %)AT+RPL=1|(% style="width:151px" %)Set RPL=1 |(% style="width:92px" %)OK|(% style="width:206px" %)((( | ||
830 | 0x2101: | ||
831 | 21: fixed command | ||
832 | 01: for details, check wiki | ||
833 | ))) | ||
834 | |(% style="width:130px" %)AT+ADR=?|(% style="width:151px" %)View current ADR status|(% style="width:92px" %)((( | ||
835 | 1 | ||
836 | OK | ||
837 | )))|(% style="width:206px" %)Default 0 | ||
838 | |(% style="width:130px" %)AT+ADR=0|(% style="width:151px" %)Set the ADR state to off|(% style="width:92px" %)OK|(% style="width:206px" %)((( | ||
839 | 0x2200: close | ||
840 | 0x2201: open | ||
841 | 22: fixed command | ||
842 | ))) | ||
843 | |(% style="width:130px" %)AT+DR=?|(% style="width:151px" %)View the current DR settings|(% style="width:92px" %)OK|(% style="width:206px" %) | ||
844 | |(% style="width:130px" %)AT+DR=1|(% style="width:151px" %)((( | ||
845 | Set DR to 1. | ||
846 | It takes effect only when ADR=0 | ||
847 | )))|(% style="width:92px" %)OK|(% style="width:206px" %)((( | ||
848 | 0x22000101: | ||
849 | 00: ADR=0 | ||
850 | 01: DR=1 | ||
851 | 01: TXP=1 | ||
852 | 22: fixed command | ||
853 | ))) | ||
854 | |(% style="width:130px" %)AT+TXP=?|(% style="width:151px" %)View the current TXP|(% style="width:92px" %)OK|(% style="width:206px" %) | ||
855 | |(% style="width:130px" %)AT+TXP=1|(% style="width:151px" %)((( | ||
856 | Set TXP to 1. | ||
857 | It takes effect only when ADR=0 | ||
858 | )))|(% style="width:92px" %)OK|(% style="width:206px" %)((( | ||
859 | 0x22000101: | ||
860 | 00: ADR=0 | ||
861 | 01: DR=1 | ||
862 | 01: TXP=1 | ||
863 | 22: fixed command | ||
864 | ))) | ||
865 | |(% style="width:130px" %)AT+RJTDC=10|(% style="width:151px" %)Set RJTDC time interval|(% style="width:92px" %)OK|(% style="width:206px" %)((( | ||
866 | 0x26000A: | ||
867 | 26: fixed command | ||
868 | 000A: 0X000A=10(min) | ||
869 | for details, check wiki | ||
870 | ))) | ||
871 | |(% style="width:130px" %) |(% style="width:151px" %)((( | ||
872 | ((( | ||
873 | ~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_~_ | ||
874 | |||
875 | Retrieve stored data for a specified period of time | ||
876 | ))) | ||
877 | |||
878 | ((( | ||
879 | |||
880 | ))) | ||
881 | )))|(% style="width:92px" %) |(% style="width:206px" %)((( | ||
882 | 0x3161DE7C7061DE8A800A: | ||
883 | 31: fixed command | ||
884 | 61DE7C70:0X61DE7C70=2022/1/12 15:00:00 | ||
885 | 61DE8A80:0X61DE8A80=2022/1/12 16:00:00 | ||
886 | 0A: 0X0A=10(second) | ||
887 | View details 2.6.2 | ||
888 | ))) | ||
889 | |(% style="width:130px" %)AT+DDETECT=?|(% style="width:151px" %)View the current DDETECT setting status and time|(% style="width:92px" %)((( | ||
890 | 1,1440,2880 | ||
891 | OK | ||
892 | )))|(% style="width:206px" %)Default 1,1440,2880(min) | ||
893 | |(% style="width:130px" %)AT+DDETECT=((( | ||
894 | 1,1440,2880 | ||
895 | )))|(% style="width:151px" %)((( | ||
896 | Set DDETECT setting status and time | ||
897 | ((% style="color:red" %)When the node does not receive the downlink packet within the set time, it will re-enter the network(%%)) | ||
898 | )))|(% style="width:92px" %)OK|(% style="width:206px" %)((( | ||
899 | 0x320005A0: close | ||
900 | 0x320105A0: open | ||
901 | 32: fixed command | ||
902 | 05A0: 0X05A0=1440(min) | ||
903 | ))) | ||
904 | |||
905 | == 3.2 Set Password == | ||
906 | |||
907 | |||
908 | **Feature**: Set the device password with a maximum of 9 digits. | ||
909 | |||
910 | (% style="color:#4f81bd" %)**AT command:** | ||
911 | |||
912 | (% border="2" style="width:500px" %) | ||
913 | |(% style="width:141px" %)**Command**|(% style="width:357px" %)**AT+PWORD** | ||
914 | |(% style="width:141px" %)**Parameters**|(% style="width:357px" %)**password** : maximum up to 9 digits | ||
915 | |(% style="width:141px" %)**Get**|(% style="width:357px" %)AT+PWORD=? | ||
916 | |(% style="width:141px" %)**Response**|(% style="width:357px" %)((( | ||
917 | Returns the current password | ||
918 | OK | ||
919 | ))) | ||
920 | |(% style="width:141px" %)**Set**|(% style="width:357px" %)AT+PWORD=<password> | ||
921 | |(% style="width:141px" %)**Response**|(% style="width:357px" %)OK | ||
922 | |(% style="width:141px" %)**Example**|(% style="width:357px" %)((( | ||
923 | AT+PWORD=999999999 | ||
924 | Set the password 999999999 | ||
925 | ))) | ||
926 | |||
927 | (% style="color:#4f81bd" %)**Downlink command:** | ||
928 | |||
929 | There is no downlink command for this feature. | ||
930 | |||
931 | |||
932 | == 3.3 Set button sound and ACK sound == | ||
933 | |||
934 | |||
935 | **Feature**: Turn on/off button sound and ACK alarm. | ||
936 | |||
937 | (% style="color:#4f81bd" %)**AT command:** | ||
938 | |||
939 | (% border="2" style="width:500px" %) | ||
940 | |(% style="width:143px" %)**Command**|(% style="width:355px" %)**AT+SOUND** | ||
941 | |(% style="width:143px" %)**Parameters**|(% style="width:355px" %)((( | ||
942 | **button_sound** : | ||
943 | **0** - off | ||
944 | **1** - on | ||
945 | **ack_sound** : | ||
946 | **0** - off | ||
947 | **1** - on | ||
948 | ))) | ||
949 | |(% style="width:143px" %)**Get**|(% style="width:355px" %)AT+SOUND=? | ||
950 | |(% style="width:143px" %)**Response**|(% style="width:355px" %)((( | ||
951 | Returns the current sound settings. <button_sound>,<ack_sound> | ||
952 | OK | ||
953 | ))) | ||
954 | |(% style="width:143px" %)**Set**|(% style="width:355px" %)((( | ||
955 | AT+SOUND=<button_sound>,<ack_sound> | ||
956 | ))) | ||
957 | |(% style="width:143px" %)**Response**|(% style="width:355px" %)OK | ||
958 | |(% style="width:143px" %)**Example**|(% style="width:355px" %)((( | ||
959 | AT+SOUND=0,1 | ||
960 | This will turn off the button sound and turn on the ACK sound. | ||
961 | ))) | ||
962 | |||
963 | (% style="color:#4f81bd" %)**Downlink command:** | ||
964 | |||
965 | (% border="2" style="width:500px" %) | ||
966 | |(% style="width:143px" %)**Prefix**|(% style="width:355px" %)**0xA1** | ||
967 | |(% style="width:143px" %)**Parameters**|(% style="width:355px" %)((( | ||
968 | **button_sound** : 1 byte in hexadecimal. | ||
969 | **00** - off | ||
970 | **01** - on | ||
971 | **ack_sound** : 1 byte in hexadecimal. | ||
972 | **00** - off | ||
973 | **01** - on | ||
974 | ))) | ||
975 | |(% style="width:143px" %)**Payload format**|(% style="width:355px" %)<prefix><button_sound><ack_sound> | ||
976 | |(% style="width:143px" %)**Example**|(% style="width:355px" %)((( | ||
977 | A10001 | ||
978 | Turn off the button sound and turn on ACK sound. | ||
979 | ))) | ||
980 | |||
981 | == 3.4 Set buzzer music type (0~~4) == | ||
982 | |||
983 | |||
984 | Feature: Set different alarm key response sounds.There are five different types of button music. | ||
985 | |||
986 | (% style="color:#4f81bd" %)**AT Command:** | ||
987 | |||
988 | (% border="2" style="width:500px" %) | ||
989 | |(% style="width:146px" %)**Command**|(% style="width:352px" %)**AT+OPTION** | ||
990 | |(% style="width:146px" %)**Parameters**|(% style="width:352px" %)((( | ||
991 | **<buzzer_music_type> :** | ||
992 | **0** | ||
993 | **1** | ||
994 | **2** | ||
995 | **3** | ||
996 | ))) | ||
997 | |(% style="width:146px" %)**Get**|(% style="width:352px" %)AT+OPTION=? | ||
998 | |(% style="width:146px" %)**Response**|(% style="width:352px" %)((( | ||
999 | Return the current music type. | ||
1000 | OK | ||
1001 | ))) | ||
1002 | |(% style="width:146px" %)**Set**|(% style="width:352px" %)AT+OPTION=<buzzer_music_type> | ||
1003 | |(% style="width:146px" %)**Response**|(% style="width:352px" %)OK | ||
1004 | |(% style="width:146px" %)**Example**|(% style="width:352px" %)((( | ||
1005 | AT+OPTION=1 | ||
1006 | Set the buzzer music to type 1 | ||
1007 | ))) | ||
1008 | |||
1009 | (% style="color:#4f81bd" %)**Downlink command:** | ||
1010 | |||
1011 | (% border="2" style="width:500px" %) | ||
1012 | |(% style="width:145px" %)**Prefix**|(% style="width:353px" %)**0xA3** | ||
1013 | |(% style="width:145px" %)**Parameters**|(% style="width:353px" %)((( | ||
1014 | **<buzzer_music_type> : **1 byte in hexadecimal | ||
1015 | **0** | ||
1016 | **1** | ||
1017 | **2** | ||
1018 | **3** | ||
1019 | ))) | ||
1020 | |(% style="width:145px" %)**Payload format**|(% style="width:353px" %)<prefix><buzzer_music-type> | ||
1021 | |(% style="width:145px" %)**Example**|(% style="width:353px" %)((( | ||
1022 | A300 | ||
1023 | Set the buzzer music to type 0. | ||
1024 | ))) | ||
1025 | |||
1026 | == 3.5 Set Button Press Time == | ||
1027 | |||
1028 | |||
1029 | **Feature**: Set the holding time for pressing the alarm button to prevent accidental activation. The values range from 0 to 1000 ms. | ||
1030 | |||
1031 | (% style="color:#4f81bd" %)**AT Command:** | ||
1032 | |||
1033 | (% border="2" style="width:500px" %) | ||
1034 | |(% style="width:145px" %)**Command**|(% style="width:353px" %)**AT+STIME** | ||
1035 | |(% style="width:145px" %)**Parameters**|(% style="width:353px" %)**button_press_duration** : in milliseconds | ||
1036 | |(% style="width:145px" %)**Get**|(% style="width:353px" %)AT+STIME=? | ||
1037 | |(% style="width:145px" %)**Response**|(% style="width:353px" %)Returns the current button press duration. | ||
1038 | |(% style="width:145px" %)**Set**|(% style="width:353px" %)((( | ||
1039 | AT+STIME=<button_press_duration> | ||
1040 | ))) | ||
1041 | |(% style="width:145px" %)**Response**|(% style="width:353px" %)OK | ||
1042 | |(% style="width:145px" %)**Example**|(% style="width:353px" %)((( | ||
1043 | AT+STIME=1000 | ||
1044 | Set the button sound duration to 1000 ms. | ||
1045 | ))) | ||
1046 | |||
1047 | (% style="color:#4f81bd" %)**Downlink Command:** | ||
1048 | |||
1049 | (% border="2" style="width:500px" %) | ||
1050 | |(% style="width:146px" %)**Prefix**|(% style="width:352px" %)**0xA2** | ||
1051 | |(% style="width:146px" %)**Parameters**|(% style="width:352px" %)**button_press_duration** : in milliseconds, 2 bytes in hex | ||
1052 | |(% style="width:146px" %)**Payload format**|(% style="width:352px" %)<prefix><button_press_duration> | ||
1053 | |(% style="width:146px" %)**Example**|(% style="width:352px" %)((( | ||
1054 | A203E8 | ||
1055 | Hold the alarm button for 10 seconds before the node sends the alarm uplink packet. | ||
1056 | ))) | ||
1057 | |||
1058 | = 4. Battery = | ||
1059 | |||
1060 | |||
1061 | PB01 uses 2xAAA LR03 (1.5V) batteries. | ||
1062 | |||
1063 | |||
1064 | == 4.1 Replacing batteries == | ||
1065 | |||
1066 | |||
1067 | 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. | ||
1068 | |||
1069 | (% style="color:red" %)**Note: ** | ||
1070 | |||
1071 | 1. The PB01 doesn't have any screws; you can use a nail to open the battery cover. | ||
1072 | |||
1073 | [[image:image-20220621143535-5.png]] | ||
1074 | |||
1075 | |||
1076 | 2. Make sure the direction is correct when installing the AAA batteries. | ||
1077 | |||
1078 | [[image:image-20220621143535-6.png]] | ||
1079 | |||
1080 | |||
1081 | == 4.2 Power Consumption Analysis == | ||
1082 | |||
1083 | |||
1084 | 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. | ||
1085 | |||
1086 | **Instructions for use:** | ||
1087 | |||
1088 | **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]]. | ||
1089 | |||
1090 | **Step 2:** Open the file and select: | ||
1091 | |||
1092 | * Product Model | ||
1093 | * Uplink Interval | ||
1094 | * Working Mode | ||
1095 | |||
1096 | The expected battery life for different scenarios will be displayed on the right. | ||
1097 | |||
1098 | [[image:image-20220621143643-7.png||height="429" width="1326"]] | ||
1099 | |||
1100 | |||
1101 | = 5. Accessories = | ||
1102 | |||
1103 | |||
1104 | * ((( | ||
1105 | **AS-02 USB Type-C Converter** | ||
1106 | |||
1107 | 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"]]. | ||
1108 | ))) | ||
1109 | |||
1110 | [[image:image-20220621141724-3.png]] | ||
1111 | |||
1112 | |||
1113 | = 6. FAQ = | ||
1114 | |||
1115 | == 6.1 How to use AT Commands to configure PB01 == | ||
1116 | |||
1117 | |||
1118 | 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. | ||
1119 | |||
1120 | [[image:image-20240511085914-1.png||height="570" width="602"]] | ||
1121 | |||
1122 | |||
1123 | **Connection:** | ||
1124 | |||
1125 | * (% style="background-color:yellow" %)USB to TTL GND <~-~-> Program Converter GND pin | ||
1126 | * (% style="background-color:yellow" %)USB to TTL RXD <~-~-> Program Converter D+ pin | ||
1127 | * (% style="background-color:yellow" %)USB to TTL TXD <~-~-> Program Converter A11 pin | ||
1128 | |||
1129 | ((( | ||
1130 | |||
1131 | ))) | ||
1132 | |||
1133 | ((( | ||
1134 | 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. | ||
1135 | |||
1136 | Enter the password 123456 and type "ATZ" to reboot the PB01, as shown below: | ||
1137 | ))) | ||
1138 | |||
1139 | [[image:image-20240510174509-18.png||height="572" width="791"]] | ||
1140 | |||
1141 | |||
1142 | == 6.2 AT Commands == | ||
1143 | |||
1144 | |||
1145 | ((( | ||
1146 | * Sending "ATZ" will reboot the device. | ||
1147 | * Sending "AT+FDR" will restore the device to factory settings. | ||
1148 | * Get the device's AT command settings by sending "AT+CFG." The following is the output after issuing the AT+CFG command. | ||
1149 | ))) | ||
1150 | |||
1151 | ((( | ||
1152 | |||
1153 | ))) | ||
1154 | |||
1155 | ((( | ||
1156 | **Sample output:** | ||
1157 | ))) | ||
1158 | |||
1159 | ((( | ||
1160 | AT+DEUI=FA 23 45 55 55 55 55 51 | ||
1161 | |||
1162 | AT+APPEUI=FF AA 23 45 42 42 41 11 | ||
1163 | |||
1164 | AT+APPKEY=AC D7 35 81 63 3C B6 05 F5 69 44 99 C1 12 BA 95 | ||
1165 | |||
1166 | AT+DADDR=FFFFFFFF | ||
1167 | |||
1168 | AT+APPSKEY=FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF | ||
1169 | |||
1170 | AT+NWKSKEY=FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF | ||
1171 | |||
1172 | AT+ADR=1 | ||
1173 | |||
1174 | AT+TXP=7 | ||
1175 | |||
1176 | AT+DR=5 | ||
1177 | |||
1178 | AT+DCS=0 | ||
1179 | |||
1180 | AT+PNM=1 | ||
1181 | |||
1182 | AT+RX2FQ=869525000 | ||
1183 | |||
1184 | AT+RX2DR=0 | ||
1185 | |||
1186 | AT+RX1DL=5000 | ||
1187 | |||
1188 | AT+RX2DL=6000 | ||
1189 | |||
1190 | AT+JN1DL=5000 | ||
1191 | |||
1192 | AT+JN2DL=6000 | ||
1193 | |||
1194 | AT+NJM=1 | ||
1195 | |||
1196 | AT+NWKID=00 00 00 13 | ||
1197 | |||
1198 | AT+FCU=61 | ||
1199 | |||
1200 | AT+FCD=11 | ||
1201 | |||
1202 | AT+CLASS=A | ||
1203 | |||
1204 | AT+NJS=1 | ||
1205 | |||
1206 | AT+RECVB=0: | ||
1207 | |||
1208 | AT+RECV= | ||
1209 | |||
1210 | AT+VER=EU868 v1.0.0 | ||
1211 | |||
1212 | AT+CFM=0,7,0 | ||
1213 | |||
1214 | AT+SNR=0 | ||
1215 | |||
1216 | AT+RSSI=0 | ||
1217 | |||
1218 | AT+TDC=1200000 | ||
1219 | |||
1220 | AT+PORT=2 | ||
1221 | |||
1222 | AT+PWORD=123456 | ||
1223 | |||
1224 | AT+CHS=0 | ||
1225 | |||
1226 | AT+RX1WTO=24 | ||
1227 | |||
1228 | AT+RX2WTO=6 | ||
1229 | |||
1230 | AT+DECRYPT=0 | ||
1231 | |||
1232 | AT+RJTDC=20 | ||
1233 | |||
1234 | AT+RPL=0 | ||
1235 | |||
1236 | AT+TIMESTAMP=systime= 2024/5/11 01:10:58 (1715389858) | ||
1237 | |||
1238 | AT+LEAPSEC=18 | ||
1239 | |||
1240 | AT+SYNCMOD=1 | ||
1241 | |||
1242 | AT+SYNCTDC=10 | ||
1243 | |||
1244 | AT+SLEEP=0 | ||
1245 | |||
1246 | AT+ATDC=1 | ||
1247 | |||
1248 | AT+UUID=003C0C53013259E0 | ||
1249 | |||
1250 | AT+DDETECT=1,1440,2880 | ||
1251 | |||
1252 | AT+SETMAXNBTRANS=1,0 | ||
1253 | |||
1254 | AT+DISFCNTCHECK=0 | ||
1255 | |||
1256 | AT+DISMACANS=0 | ||
1257 | |||
1258 | AT+PNACKMD=0 | ||
1259 | |||
1260 | AT+SOUND=0,0 | ||
1261 | |||
1262 | AT+STIME=0 | ||
1263 | |||
1264 | AT+OPTION=3 | ||
1265 | |||
1266 | |||
1267 | ))) | ||
1268 | |||
1269 | ((( | ||
1270 | **Example:** | ||
1271 | ))) | ||
1272 | |||
1273 | [[image:image-20240511091518-2.png||height="601" width="836"]] | ||
1274 | |||
1275 | |||
1276 | == 6.3 How to update the firmware? == | ||
1277 | |||
1278 | |||
1279 | 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, | ||
1280 | |||
1281 | * supports new features | ||
1282 | * fixes bugs | ||
1283 | * allows change the LoRaWAN frequency bands. | ||
1284 | |||
1285 | The PB01 is shipped with firmware preloaded. The firmware is divided into a bootloader and a work program. | ||
1286 | |||
1287 | If the bootloader is erased for any reason, you will need to download the firmware (which includes both the bootloader and the work program). | ||
1288 | |||
1289 | 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]] | ||
1290 | |||
1291 | |||
1292 | === 6.3.1 Update firmware (Assume device have bootloader) === | ||
1293 | |||
1294 | |||
1295 | Follow the steps below only if the firmware needs to be updated and the bootloader of your device is already there, is not corrupted, and is working properly. | ||
1296 | |||
1297 | (% style="color:blue" %)**Step 1**(%%):** Connect UART as per FAQ 6.1** | ||
1298 | |||
1299 | (% 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]]. ** | ||
1300 | |||
1301 | |||
1302 | === 6.3.2 Update firmware (Assume device doesn't have bootloader) === | ||
1303 | |||
1304 | |||
1305 | This method is required if the bootloader of your device is corrupted, and the firmware needs to be updated along with the bootloader. | ||
1306 | |||
1307 | Download both the bootloader and the work 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 work program. | ||
1308 | |||
1309 | |||
1310 | (% style="color:blue" %)**Step 1**(%%):** Installing/downloading the required software** | ||
1311 | |||
1312 | * Install [[TremoProgrammer>>url:https://www.dropbox.com/scl/fo/gk1rb5pnnjw4kv5m5cs0z/h?rlkey=906ouvgbvif721f9bj795vfrh&dl=0]] | ||
1313 | |||
1314 | [[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"]] | ||
1315 | |||
1316 | * Download the **firmware** file from this [[location>>https://www.dropbox.com/scl/fo/y7pvm58wcr8319d5o4ujr/APZtqlbzRCNbHoPWTmmMMWs?rlkey=wfh93x2dhcev3ydn0846rinf0&st=kdp6lg7t&dl=0]]. | ||
1317 | * Download the bootloader, **LoRa_OTA_Bootloder_v1.3.bin** from this [[location>>https://www.dropbox.com/sh/g4cp2lm85ovr8hu/AADX-4aEE-7SuKQAKTWrgKHIa?dl=0]]. | ||
1318 | |||
1319 | (% style="color:blue" %)**Step 2**(%%):** Connecting the hardware together ** | ||
1320 | |||
1321 | * Connect the PC to the PB01 via a USB-TTL adapter. | ||
1322 | |||
1323 | {{info}} | ||
1324 | **Note:** To download the firmware this way, you need to pull the boot pin (Program Converter D- pin) high to enter burn mode. After burning, disconnect the node's boot pin and the USB-TTL adapter's 3V3 pin, then reset the node to exit burn mode. | ||
1325 | {{/info}} | ||
1326 | |||
1327 | **Connection:** | ||
1328 | |||
1329 | * (% style="background-color:yellow" %)USB-TTL GND <~-~-> Program Converter GND pin | ||
1330 | * (% style="background-color:yellow" %)USB-TTL RXD <~-~-> Program Converter D+ pin | ||
1331 | * (% style="background-color:yellow" %)USB-TTL TXD <~-~-> Program Converter A11 pin | ||
1332 | * (% style="background-color:yellow" %)USB-TTL 3V3 <~-~-> Program Converter D- pin | ||
1333 | |||
1334 | (% style="color:blue" %)**Step 3**(%%):** Downloading firmware to the PB01** | ||
1335 | |||
1336 | * Configure the Serial Settings such as Port (COM port) and Baudrate (921600). | ||
1337 | * Under the **Download Files**, select the downloaded bootloader file and set the memory address to **0x08000000**. Then select the downloaded firmware file from your local drive, for example, eu868.bin. See the image below for more information. | ||
1338 | * Reset the PB01 to start downloading the program. This will switch the PB01 to program mode. To do that, you can follow one of the following methods. | ||
1339 | ** Reinstall the batteries to reset the PB01 | ||
1340 | ** 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]] ). | ||
1341 | * Click on the **Start** button to download the files into PB01. | ||
1342 | |||
1343 | [[image:image-20240701160913-1.png]] | ||
1344 | |||
1345 | |||
1346 | * The download progress is shown on the progress bar. Once completed, you will see the message '**Download files successfully**'. | ||
1347 | |||
1348 | [[image:image-20240701160924-2.png]] | ||
1349 | |||
1350 | |||
1351 | (% style="color:blue" %)**Step 4**(%%):** Completing the process** | ||
1352 | |||
1353 | Finally, disconnect the Program Converter D- pin, reset the node again, and the node will exit burn mode. | ||
1354 | |||
1355 | |||
1356 | == 6.4 How to change the LoRa Frequency Bands/Region? == | ||
1357 | |||
1358 | |||
1359 | 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. | ||
1360 | |||
1361 | 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 update the firmware>>||anchor="H6.3A0Howtoupgradethefirmware3F"]] to complete the process. | ||
1362 | |||
1363 | |||
1364 | == 6.5 Why do I see a different working temperature for the device? == | ||
1365 | |||
1366 | |||
1367 | The working temperature range of device depends on the battery the user chooses. | ||
1368 | |||
1369 | * A normal AAA battery can support a working range of -10 to 50°C. | ||
1370 | * A special AAA battery can support a working range of -40 to 60°C. For example, [[Energizer L92>>https://data.energizer.com/pdfs/l92.pdf]] | ||
1371 | |||
1372 | = 7. Ordering Information = | ||
1373 | |||
1374 | == 7.1 PB01 == | ||
1375 | |||
1376 | |||
1377 | Part Number: (% style="color:#4472c4" %)PB01-LW-XX(%%) (white button) / (% style="color:#4472c4" %)PB01-LR-XX (%%)(Red Button) | ||
1378 | |||
1379 | (% style="color:#4472c4" %)**XX **(%%): The default frequency band | ||
1380 | |||
1381 | * (% style="color:red" %)**AS923**(%%)**: **LoRaWAN AS923 band | ||
1382 | * (% style="color:red" %)**AU915**(%%)**: **LoRaWAN AU915 band | ||
1383 | * (% style="color:red" %)**EU433**(%%)**: **LoRaWAN EU433 band | ||
1384 | * (% style="color:red" %)**EU868**(%%)**:** LoRaWAN EU868 band | ||
1385 | * (% style="color:red" %)**KR920**(%%)**: **LoRaWAN KR920 band | ||
1386 | * (% style="color:red" %)**US915**(%%)**: **LoRaWAN US915 band | ||
1387 | * (% style="color:red" %)**IN865**(%%)**: **LoRaWAN IN865 band | ||
1388 | * (% style="color:red" %)**CN470**(%%)**: **LoRaWAN CN470 band | ||
1389 | |||
1390 | = 8. Packaging Information = | ||
1391 | |||
1392 | |||
1393 | **Package Includes**: | ||
1394 | |||
1395 | * PB01 LoRaWAN Push Button x 1 | ||
1396 | |||
1397 | = 9. Support = | ||
1398 | |||
1399 | |||
1400 | * 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. | ||
1401 | * 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]]. | ||
1402 | |||
1403 | = 10. Reference material = | ||
1404 | |||
1405 | |||
1406 | * [[Datasheets, photos, payload decoders, firmware>>https://www.dropbox.com/scl/fo/y7pvm58wcr8319d5o4ujr/APZtqlbzRCNbHoPWTmmMMWs?rlkey=wfh93x2dhcev3ydn0846rinf0&st=kdp6lg7t&dl=0]] | ||
1407 | |||
1408 | = 11. FCC Warning = | ||
1409 | |||
1410 | |||
1411 | **This device complies with Part 15 of the FCC Rules. Operation is subject to the following two conditions:** | ||
1412 | |||
1413 | (1) This device may not cause harmful interference; | ||
1414 | (2) This device must accept any interference received, including interference that may cause undesired operation. | ||
1415 | |||
1416 |