Version 186.1 by Yi Wang on 2025/04/19 14:20

Show last authors
1 (% style="text-align:center" %)
2 [[image:image-20250409163937-1.png||height="439" width="473"]]
3
4
5
6
7
8 **Table of Contents:**
9
10 {{toc/}}
11
12
13
14
15
16
17 = 1. Introduction =
18
19 == 1.1 What is BH01-LB/LS BLE to LoRaWAN Hub ==
20
21
22 Dragino BH01-LB/LS (% style="color:blue" %)**BLE to LoRaWAN Hub**(%%) is an edge communication node device designed for loT applications. It uses the BLE Bluetooth module to periodically scan and collect data from surrounding Bluetooth temperature and humidity sensors (such as BCN02, iBeasons or third-party BLE sensors), and then uses the LoRaWAN protocol to transmit the data over long distances to the cloud platform, achieving seamless connection between Bluetooth devices and low-power wide area networks.
23
24 BH01-LB/LS is a BLE to LoRaWAN Hub which can turn BLE devices to LoRaWAN devices. This feature can help system intergrator has widely choice in sensor selection and simplify the network structure.
25
26 It is suitable for cold chain warehouse monitoring, smart agricultural environment monitoring, asset tracking and urban infrastructure health management.It combines the fexibility of Bluetooth and the wide coverage of LoRaWAN. Compared with wifi connection, it can siginifcantly reduce the deployment cost of the Internet of Things.
27
28 BH01-LB/LS has a (% style="color:blue" %)**built-in BLE module**(%%), user can configure the sensor remotely via Mobile Phone. It also support (% style="color:blue" %)**OTA upgrade**(%%) via private LoRa protocol for easy maintaining.
29
30 BH01-LB/LS is powered by (% style="color:blue" %)**8500mA Li/SOCl2 battery or solar panel with Li-ion battery**(%%) for long term use.
31
32
33 == 1.2 ​Features ==
34
35
36 * LoRaWAN 1.0.3 Class A
37 * Ultra-low power consumption
38 * Data collcetion: Bluetooth tags monitor environmental parameters in real time and upload data to the Hub via BLE protocol
39 * Combines BLE’s short-range precision with LoRaWAN’s Long range transmission
40 * Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865
41 * Support Bluetooth v5.1 and LoRaWAN remote configure
42 * Support wireless OTA update firmware
43 * Uplink on periodically
44 * Downlink to change configure
45 * 8500mAh Li/SOCl2 Battery (BH01-LB)
46 * Solar panel + 3000mAh Li-ion battery (BH01-LS)
47
48 == 1.3 Bluetooth Sensor Tag Specifcation ==
49
50
51 (% style="color:blue" %)**DR-TAH02:**
52
53 [[image:image-20250409091021-2.jpeg||height="90" width="138"]](% style="display:none" %)
54
55 * Bluetooth version: Bluetooth LE 5.1 protocol
56 * Shell material: PET composite plastic bag (heat sealed)
57 * Temperature range: -40°C ~~ +85°C, ±0.3°C
58 * Waterproof level: IP67
59 * Battery capacity: 600mAh
60 * Working temperature: -40°C ~~ +60°C
61 * Battery specifcation: CR2450
62 * Data storage: 512 records
63 * Battery life: 3 years (varies with the transmission powerand broadcast
64 * frequency settings)
65 * Transmit power: -19.5dBm ~~ +2.5dBm (confgurable)
66 * Broadcast frequency: 500ms (confgurable)
67 * Sampling frequency: 5min/time (confgurable)
68 * Broadcast power consumption: 22uA (varies with the transmission
69 * power and broadcast frequency settings)
70 * Broadcast mode: Custom Sensor broadcast
71 * Broadcast distance Distance: 100m (varies with thetransmission
72 * power setting)
73 * Confguration APP: nRF connect (Android / IOS)(% style="display:none" %)
74
75 (% style="color:blue" %)**DR-ES01:**
76
77 [[image:image-20250409091103-3.jpeg||height="109" width="137"]](% style="display:none" %)
78
79 * Bluetooth version: Bluetooth LE 5.3 protocol
80 * Casing material: PC material
81 * Temperature range: 0°C ~~ +85°C, ±0.2°C
82 * Waterproof level: IP65
83 * Battery capacity: 1100mAh
84 * Working temperature: 0°C ~~ +85°C
85 * Battery specifcation: AAA LR03 x2
86 * Battery life: 3 years (varies with the transmission powerand broadcast
87 * frequency settings)
88 * Transmit power: -20dBm ~~ +4dBm (confgurable)
89 * Broadcast frequency: 1000ms (confgurable)
90 * Humidity range: 0~~100%RH, ±2%RH
91 * Broadcast power consumption: 34uA (varies with the transmission
92 * power and broadcast frequency settings)
93 * Supported system: Android 4.3 / IOS7.0 and above
94 * Broadcast mode: Custom Sensor broadcast
95 * Broadcast distance Distance: 100m (varies with thetransmission
96 * power setting)
97 * Confguration APP: nRF connect (Android / IOS)
98 * Supported system: Android 4.3 / IOS7.0 and above
99
100 == 1.4 Specification ==
101
102
103 Common DC Characteristics:
104
105 * Supply Voltage: Built-in Battery , 2.5v ~~ 3.6v
106 * Operating Temperature: -40 ~~ 85°C
107
108 LoRa Spec:
109
110 * Frequency Range,  Band 1 (HF): 862 ~~ 1020 Mhz
111 * Max +22 dBm constant RF output vs.
112 * RX sensitivity: down to -139 dBm.
113 * Excellent blocking immunity
114
115 Battery:
116
117 * Li/SOCI2 un-chargeable battery
118 * Capacity: 8500mAh
119 * Self-Discharge: <1% / Year @ 25°C
120 * Max continuously current: 130mA
121 * Max boost current: 2A, 1 second
122
123 Power Consumption
124
125 * Sleep Mode: 5uA @ 3.3v
126 * LoRa Transmit Mode: 125mA @ 20dBm, 82mA @ 14dBm
127
128 == 1.5 Sleep mode and working mode ==
129
130
131 Deep Sleep Mode: Sensor doesn't have any LoRaWAN activate. This mode is used for storage and shipping to save battery life.
132
133 Working Mode: In this mode, Sensor will work as LoRaWAN Sensor to Join LoRaWAN network and send out sensor data to server. Between each sampling/tx/rx periodically, sensor will be in IDLE mode), in IDLE mode, sensor has the same power consumption as Deep Sleep mode.
134
135
136 == 1.6 Button & LEDs ==
137
138
139 [[image:image-20250408160317-3.jpeg]]
140
141 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
142 |=(% style="width: 167px;background-color:#4F81BD;color:white" %)Behavior on ACT|=(% style="width: 117px;background-color:#4F81BD;color:white" %)Function|=(% style="width: 226px;background-color:#4F81BD;color:white" %)Action
143 |(% style="width:167px" %)Pressing ACT between 1s < time < 3s|(% style="width:117px" %)Send an uplink|(% style="width:225px" %)(((
144
145
146 If sensor is already Joined to LoRaWAN network, sensor will send an uplink packet, blue led will blink once.
147 Meanwhile, BLE module will be active and user can connect via BLE to configure device.
148 )))
149 |(% style="width:167px" %)Pressing ACT for more than 3s|(% style="width:117px" %)Active Device|(% style="width:225px" %)(((
150
151
152 Green led will fast blink 5 times, device will enter OTA mode for 3 seconds. And then start to JOIN LoRaWAN network.
153 Green led will solidly turn on for 5 seconds after joined in network.
154 Once sensor is active, BLE module will be active and user can connect via BLE to configure device, no matter if device join or not join LoRaWAN network.
155 )))
156 |(% style="width:167px" %)Fast press ACT 5 times.|(% style="width:117px" %)Deactivate Device|(% style="width:225px" %)Red led will solid on for 5 seconds. Means device is in Deep Sleep Mode.
157
158 == 1.7 BLE connection ==
159
160
161 BH01-LB/LS supports BLE remote configure.
162
163
164 BLE can be used to configure the parameter of sensor or see the console output from sensor. BLE will be only activate on below case:
165
166 * Press button to send an uplink
167 * Press button to active device.
168 * Device Power on or reset.
169
170 If there is no activity connection on BLE in 60 seconds, sensor will shut down BLE module to enter low power mode.
171
172
173 == 1.8 Pin Definitions ==
174
175
176 [[image:image-20250408165256-4.jpeg]]
177
178
179 == 1.9 Mechanical ==
180
181 === 1.9.1 for LB version ===
182
183 [[image:image-20250408165358-5.jpeg]]
184
185 === 1.9.2 for LS version ===
186
187 [[image:image-20250408165429-6.jpeg]]
188
189
190 = 2. Configure BH01-LB/LS to connect to LoRaWAN network =
191
192 == 2.1 How it works ==
193
194
195 BH01-LB/LS is configured as LoRaWAN OTAA Class A mode by default. It has OTAA keys to join LoRaWAN network. To connect a local LoRaWAN network, you need to input the OTAA keys in the LoRaWAN IoT server and press the button to activate the BH01-LB/LS.It will automatically join the network via OTAA and start scanning nearby Bluetooth devices, sending the scanned device information to the network.The default uplink interval is 20 minutes.
196
197
198 == 2.2 ​Quick guide to connect to LoRaWAN server (OTAA) ==
199
200
201 Following is an example for how to join the [[TTN v3 LoRaWAN Network>>url:https://console.cloud.thethings.network/]]. Below is the network structure; we use the [[LPS8v2>>url:https://www.dragino.com/products/lora-lorawan-gateway/item/228-lps8v2.html]] as a LoRaWAN gateway in this example.
202
203 The LPS8v2 is already set to connected to [[TTN network >>url:https://console.cloud.thethings.network/]], so what we need to now is configure the TTN server.
204
205
206 [[image:image-20250408174236-10.png]]
207
208
209 Step 1: Create a device in TTN with the OTAA keys from BH01-LB/LS.
210
211 Each BH01-LB/LS is shipped with a sticker with the default device EUI as below:
212
213 [[image:image-20250220090645-2.jpeg]]
214
215
216 You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
217
218
219 Register the device
220
221 [[image:image-20250220091317-4.jpeg]]
222
223
224 Add APP EUI and DEV EUI
225
226 [[image:image-20250220091349-5.jpeg]]
227
228
229 Add APP EUI in the application
230
231 [[image:image-20250220091430-6.jpeg]]
232
233
234 Add APP KEY
235
236 [[image:image-20250220091453-7.jpeg]]
237
238 Step 2: Activate BH01-LB/LS
239
240 Press the button for 5 seconds to activate the BH01-LB/LS.
241
242 Green led will fast blink 5 times, device will enter OTA mode for 3 seconds. And then start to JOIN LoRaWAN network. Green led will solidly turn on for 5 seconds after joined in network.
243
244 After join success, it will start to upload messages to TTN and you can see the messages in the panel.
245
246
247 == 2.3 ​Uplink Payload ==
248
249 === 2.3.1 Device Status, FPORT~=5 ===
250
251
252 Users can use the downlink command(0x26 01) to ask BH01-LB/LS to send device configure detail, include device configure status. BH01-LB/LS will uplink a payload via FPort=5 to server.
253
254 The Payload format is as below.
255
256 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
257 |(% colspan="6" style="background-color:#4f81bd; color:white" %)Device Status (FPORT=5)
258 |(% style="width:103px" %)Size (bytes)|(% style="width:72px" %)1|2|(% style="width:91px" %)1|(% style="width:86px" %)1|(% style="width:44px" %)2
259 |(% style="width:103px" %)Value|(% style="width:72px" %)Sensor Model|Firmware Version|(% style="width:91px" %)Frequency Band|(% style="width:86px" %)Sub-band|(% style="width:44px" %)BAT
260
261 Example parse in TTNv3
262
263
264 Sensor Model: For BH01-LB/LS, this value is 0x44
265
266 Firmware Version: 0x0100, Means: v1.0.0 version
267
268 Frequency Band:
269
270 0x01: EU868
271
272 0x02: US915
273
274 0x03: IN865
275
276 0x04: AU915
277
278 0x05: KZ865
279
280 0x06: RU864
281
282 0x07: AS923
283
284 0x08: AS923-1
285
286 0x09: AS923-2
287
288 0x0a: AS923-3
289
290 0x0b: CN470
291
292 0x0c: EU433
293
294 0x0d: KR920
295
296 0x0e: MA869
297
298
299 Sub-Band:
300
301 AU915 and US915:value 0x00 ~~ 0x08
302
303 CN470: value 0x0B ~~ 0x0C
304
305 Other Bands: Always 0x00
306
307
308 Battery Info:
309
310 Check the battery voltage.
311
312 Ex1: 0x0B45 = 2885mV
313
314 Ex2: 0x0B49 = 2889mV
315
316
317 === 2.3.2 Working Modes & Sensor Data. Uplink via FPORT~=2 ===
318
319
320 BH01-LB/LS has different working mode for the connections of different type of sensors. This section describes these modes. Use can use the AT Command:
321
322 AT+MODEL=abcdefgh to set BH01-LB/LS to different working modes.
323
324 For example:
325
326 AT+MODEL=030500190b0004ff4c000215011223344556 (turn on scanning Bluetooth ibeacon beacons)
327
328 Parameter a = 0x03: Set the scanning mode to Bluetooth ibeacon beacons.
329
330 Parameter b = 0x05: Set the intercepted data length to 5.
331
332 Parameter c = 0x00: Set the intercepted data position to the broadcast packet.
333
334 Parameter d = 0x19: Set the intercepted data starting position 25.
335
336 Parameter e = 0x0b: Set the filter data length to 11.
337
338 Parameter f = 0x00: Set the filter data position to the scan reply response packet.
339
340 Parameter g = 0x04: Set the filter data starting position 4.
341
342 Parameter h = 0xff4c000215011223344556: Set the filter data to 0xff4c000215011223344556 (0xff is AD Type).
343
344
345 ==== 2.3.2.1 Parameter Description ====
346
347 ===== 2.3.2.1.1 Parameter a: type mode =====
348
349
350 Modes 4 to 16 (a = 0x04 to 0x16) are user-defined scanning device modes based on the sensor used.
351
352 ====== (% style="color:blue" %)**Mode 1 (a ~= 0x01): Bluetooth Temperature Tag (TAH02) mode**(%%) ======
353
354 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
355 |(% style="background-color:#4f81bd; color:white; width:170px" %)Mac address (6 bytes)|(% style="background-color:#4f81bd; color:white; width:170px" %)0xEE 3B 14 28 32 D1|(% style="background-color:#4f81bd; color:white; width:170px" %)/
356 |(% style="width:207px" %)Sensor type (1 byte)|(% style="width:179px" %)0x03|(% style="width:250px" %)Temperature sensor
357 |(% style="width:207px" %)Sensor data length (1 byte)|(% style="width:179px" %)0x04|(% style="width:250px" %)Data length
358 |(% style="width:207px" %)Temperature (2 bytes)|(% style="width:179px" %)0x2701|(% style="width:250px" %)Temperature: 29.5℃
359 |(% style="width:207px" %)Battery (1 byte)|(% style="width:179px" %)0x64|(% style="width:250px" %)Battery: 100%
360 |(% style="width:207px" %)RSSI (1 byte)|(% style="width:179px" %)0xC3|(% style="width:250px" %)1 meter output power: -61db
361
362 AT+MODEL=0104: Start scanning Bluetooth temperature tag (TAH02)mode.
363
364 AT+MODEL=0100: Turn off scanning for Bluetooth temperature tags (TAH02)mode.
365
366
367 ====== (% style="color:blue" %)**Mode 2 (a ~= 0x02): Bluetooth temperature and humidity (ES01) mode**(%%) ======
368
369 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
370 |(% style="background-color:#4f81bd; color:white; width:170px" %)Mac address (6 bytes)|(% style="background-color:#4f81bd; color:white; width:170px" %)0xEE 3B 14 28 32 D1|(% style="background-color:#4f81bd; color:white; width:170px" %)/
371 |(% style="width:207px" %)Sensor type (1 byte)|(% style="width:179px" %)0x03|(% style="width:250px" %)Temperature and humidity sensor
372 |(% style="width:207px" %)Sensor data length (1 byte)|(% style="width:179px" %)0x05|(% style="width:250px" %)Data length
373 |(% style="width:207px" %)Humidity (1 byte)|(% style="width:179px" %)0x4C|(% style="width:250px" %)THumidity: 76%
374 |(% style="width:207px" %)Temperature (2 bytes)|(% style="width:179px" %)0x2701|(% style="width:250px" %)Temperature: 29.5℃
375 |(% style="width:207px" %)Battery (1 byte)|(% style="width:179px" %)0x64|(% style="width:250px" %)Battery: 100%
376 |(% style="width:207px" %)RSSI (1 byte)|(% style="width:179px" %)0xC3|(% style="width:250px" %)1 meter output power: -61db
377
378 AT+MODEL=0205: Enable Bluetooth temperature and humidity scanning (ES01)mode.
379
380 AT+MODEL=0200: Disable Bluetooth temperature and humidity scanning (ES01)mode.
381
382
383 ====== (% style="color:blue" %)**Mode 3 (a ~= 0x03): Bluetooth ibeacon mode**(%%) ======
384
385 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
386 |(% style="background-color:#4f81bd; color:white; width:170px" %)Mac address (6 bytes)|(% style="background-color:#4f81bd; color:white; width:170px" %)0xEE 3B 14 28 32 D1|(% style="background-color:#4f81bd; color:white; width:170px" %)/
387 |(% style="width:207px" %)Sensor type (1 byte)|(% style="width:179px" %)(((
388 0x01
389 )))|(% style="width:330px" %)ibeacon beacon
390 |(% style="width:207px" %)Sensor data length (1 byte)|(% style="width:179px" %)0x06|(% style="width:330px" %)Data length
391 |(% style="width:207px" %)Major (2byte)|(% style="width:179px" %)0x1122|(% style="width:330px" %)/
392 |(% style="width:207px" %)Minor (2byte)|(% style="width:179px" %)0x004c|(% style="width:330px" %)/
393 |(% style="width:207px" %)Measured Power(1byte)|(% style="width:179px" %)0x64|(% style="width:330px" %)Measured Bluetooth transmission power
394 |(% style="width:207px" %)RSSI (1 byte)|(% style="width:179px" %)0xC3|(% style="width:330px" %)1 meter output power: -61db
395
396 AT+MODEL=030500190b0004ff4c000215011223344556: Enable the Bluetooth ibeacon beacon scanning mode.
397
398 AT+MODEL=0300: Disable the Bluetooth ibeacon beacon scanning mode.
399
400
401 ====== (% style="color:blue" %)**Mode 4 to 16(a ~= 0x04 to 0x16): user-defined scanning device mode**(%%) ======
402
403 (% style="color:red" %)**Note: Different scanning modes can work at the same time.**
404
405 If the user needs to scan Bluetooth temperature and humidity (ES01) and Bluetooth Temperature Tag (TAH02) at the same time, then just input the following continuously:
406
407 AT+MODEL=0104
408
409 AT+MODEL=0205
410
411
412 ===== 2.3.2.1.2 Parameter b: The effective data length of the interception =====
413
414
415 b equals 0: indicates that the scanning of the corresponding modes 1 to 16 is canceled.
416
417 b is not equal to 0: set the b parameter according to the valid data intercepted by the sensor time.
418
419 For example,
420
421 in mode 1 (a = 0x01), the default parameter b is 4.
422
423 In mode 2 (a = 0x02), the default parameter b is 5.
424
425 When it is mode 1 and 2, scanning can be performed after setting the b parameter; the subsequent parameter cdefgh does not need to be set.Mode 1 (a = 0x01): Bluetooth Temperature Tag (TAH02)
426
427 In other modes,users need to set the following cdefgh parameters to enable this mode.
428
429
430 ===== 2.3.2.1.3 Parameter c: intercepted valid data position =====
431
432
433 c = 0x00: in the broadcast packet
434
435 c = 0x01: in the scan reply packet.
436
437 Note: Generally:
438
439 scan data includes two types: broadcast packets (31 bytes) and scan response packets (31 bytes). There is at least one type of broadcast packet. You can use a mobile phone to scan and obtain the complete scan data.
440
441 [[image:image-20250314140143-1.png||height="291" width="584"]]
442
443 Both the broadcast packet and the scan reply packet are composed of several unit data; the unit data format is length+AD Type+AD Data.
444
445
446 ===== 2.3.2.1.4 Parameter d: The starting position of the intercepted valid data =====
447
448
449 The starting position starts from 0.
450
451 The broadcast packet and the scan reply packet are two different packets, and the interception should start from 0.
452
453 The maximum is no more than 30.
454
455
456 ===== 2.3.2.1.5 Parameter e: scan and filter data length =====
457
458
459 The maximum value is 31.
460
461
462 ===== 2.3.2.1.6 Parameter f: Scan filtered data location =====
463
464
465 f = 0x00: The data location of the scan filter is in the broadcast packet
466
467 f = 0x01: The data location of the scan filter is in the scan reply packet
468
469
470 ===== 2.3.2.1.7 Parameter g: the starting position of the scanned filtered data =====
471
472
473 The starting position starts from 0.
474
475 The broadcast packet and the scan reply packet are two different packets, and the filtering data should start from 0.
476
477 The maximum is no more than 30.
478
479
480 ===== 2.3.2.1.8 Parameter h: scan filtered data =====
481
482
483 It is recommended to use data with UUID and Bluetooth names to filter out unnecessary scan data.
484
485 Generally, the more scan filter data there is, the less interference can be filtered.
486
487 The data from the starting position 0 to the data including the UUID or Bluetooth name part can be used as filter data.
488
489
490 If the user needs to customize, please refer to the following example:
491
492 Manufacturers are required to provide Raw data, scanned broadcast packet data, scanned response packet data, valid data, and filtered data.
493
494 For example:  AD Type Reference Table
495
496 [[image:image-20250314113453-3.png||height="601" width="484"]]
497
498 [[image:image-20250213114648-5.png||height="441" width="459"]]
499
500 [[image:image-20250314113308-2.png||height="598" width="588"]]
501
502 Assume that the valid data is AD E8 F3 D4 B8 84 94 A0 AA F5 E2 0F 23 15 5A 95
503
504 Assume the filtered data is 1A FF 4C 00 02 15 01 12 23 34 45 56 67 78 89 9A AB BC CD DE EF F0 27 17 70 73 C3
505
506
507 Raw data analysis:
508
509 0×02 01 06
510
511 Length = 0x02  AD Type = 0x01                  
512
513 AD Data = 0x06
514
515
516 1A FF 4C 00 02 15 01 12 23 34 45 56 67 78 89 9A AB BC CD DE EF F0 27 17 70 73 C3
517
518 Length = 0x1A(26)  AD Type = 0xFF(This is a custom data type for Bluetooth manufacturers)
519
520 Data =0x4C0002150112233445566778899AABBCCDDEEFF027177073C3
521
522
523 11 07 AD E8 F3 D4 B8 84 94 A0 AA F5 E2 0F 23 15 5A 95
524
525 Length = 0x11(17)  AD Type = 0x07 (UUID)
526
527 AD Data = 0xADE8F3D4B88494A0AAF5E20F23155A95
528
529
530 0C 08 45 57 38 30 45 43 43 43 43 46 00
531
532 Length = 0x0C(12)  AD Type = 0x08 (Bluetooth Name)
533
534 AD Data = 0x4557383045434343434600
535
536
537 Analyze valid data:
538
539 AD E8 F3 D4 B8 84 94 A0 AA F5 E2 0F 23 15 5A 95
540
541 Valid data length = 0x10 (16)  ➡  b = 0x16
542
543 Valid data location = 0x00 (Broadcast Packet)  ➡  c = 0x00
544
545 Valid data starting position = 0x20 (32)  ➡  d = 0x20
546
547
548 Analyze the filtered data:
549
550 1A FF 4C 00 02 15 01 12 23 34 45 56 67 78 89 9A AB BC CD DE EF F0 27 17 70 73 C3  ➡  h = 1aff4c0002130112233445566778899aabbccddeeff027177073c3
551
552 filtered data length = 0x1B (27)  ➡  e = 0x1b
553
554 filtered data location = 0x00 (Broadcast Packet)  ➡  f  = 0x00
555
556 filtered data starting position = 0x03  ➡  g = 0x03
557
558
559 So the user can set the AT command as:
560
561 AT+MODEL=041600201b00031aff4c0002130112233445566778899aabbccddeeff027177073c3
562
563
564 === 2.3.3  ​Decode payload ===
565
566
567 While using TTN V3 network, you can add the payload format to decode the payload.
568
569 [[image:image-20250409092813-4.jpeg]]
570
571 The payload decoder function for TTN V3 are here:
572
573 BH01-LB/LS TTN V3 Payload Decoder:  [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>url:https://github.com/dragino/dragino-end-node-decoder]]
574
575
576 ==== 2.3.3.1 Battery Info ====
577
578
579 Check the battery voltage for BH01-LB/LS.
580
581 Ex1: 0x0B45 = 2885mV
582
583 Ex2: 0x0B49 = 2889mVxe
584
585
586 == 2.4 Payload Decoder file ==
587
588
589 In TTN, use can add a custom payload so it shows friendly reading
590
591 In the page Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder to add the decoder from:
592
593 [[https:~~/~~/github.com/dragino/dragino-end-node-decoder/blob/main/BH01-LB/BH01-LB_Decode_V1.0.0.txt>>https://github.com/dragino/dragino-end-node-decoder/blob/main/BH01-LB/BH01-LB_Decode_V1.0.0.txt]]
594
595
596 == 2.5 Frequency Plans ==
597
598
599 The BH01-LB/LS uses OTAA mode and below frequency plans by default. Each frequency band use different firmware, user update the firmware to the corresponding band for their country.
600
601 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]]
602
603
604 = 3. Configure BH01-LB/LS =
605
606 == 3.1 Configure Methods ==
607
608
609 BH01-LB/LS supports below configure method:
610
611 * AT Command via Bluetooth Connection (Recommended): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
612 * AT Command via UART Connection : See [[UART Connection>>http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H2.3UARTConnectionforSN50v3basemotherboard]].
613 * LoRaWAN Downlink.  Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
614
615 == 3.2 General Commands ==
616
617
618 These commands are to configure:
619
620 * General system settings like: uplink interval.
621 * LoRaWAN protocol & radio related command.
622
623 They are same for all Dragino Devices which support DLWS-005 LoRaWAN Stack. These commands can be found on the wiki:
624
625 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/]]
626
627
628 == 3.3 Commands special design for BH01-LB/LS ==
629
630
631 These commands only valid for BH01-LB/LS, as below:
632
633
634 === 3.3.1 Set Transmit Interval Time ===
635
636
637 Feature: Change LoRaWAN End Node Transmit Interval.
638
639 AT Command: AT+TDC
640
641 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
642 |=(% style="width: 156px;background-color:#4F81BD;color:white" %)Command Example|=(% style="width: 137px;background-color:#4F81BD;color:white" %)Function|=(% style="background-color:#4F81BD;color:white" %)Response
643 |(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|(((
644 30000
645 OK
646 the interval is 30000ms = 30s
647 )))
648 |(% style="width:156px" %)AT+TDC=60000|(% style="width:137px" %)Set Transmit Interval|(((
649 OK
650 Set transmit interval to 60000ms = 60 seconds
651 )))
652
653 Downlink Command: 0x01
654
655 Format: Command Code (0x01) followed by 3 bytes time value.
656
657 If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01.
658
659 * Example 1: Downlink Payload: 0100001E  ~/~/  Set Transmit Interval (TDC) = 30 seconds
660 * Example 2: Downlink Payload: 0100003C  ~/~/  Set Transmit Interval (TDC) = 60 seconds
661
662 === 3.3.2 Get Device Status ===
663
664
665 Send a LoRaWAN downlink to ask the device to send its status.
666
667 Downlink Payload: 0x26 01
668
669 Sensor will upload Device Status via FPORT=5. See payload section for detail.
670
671
672 === 3.3.3 Set Workmode ===
673
674
675 Feature: Switch working mode.
676
677 AT Command: AT+MODEL=abcdefgh
678
679 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
680 |=(% style="width: 155px;background-color:#4F81BD;color:white" %)Command Example|=(% style="width: 197px;background-color:#4F81BD;color:white" %)Function|=(% style="width: 158px;background-color:#4F81BD;color:white" %)Response
681 |(% style="width:154px" %)AT+MODEL=?|(% style="width:196px" %)Get the scan filter model.|(% style="width:157px" %)(((
682 OK
683 )))
684 |(% style="width:154px" %)AT+MODEL=0104|(% style="width:196px" %)Set the working mode to TAH02.|(% style="width:157px" %)(((
685 OK
686 END_TRANSFER_CONDITION
687 )))
688
689 Downlink Command: 0x08
690
691 Format: Command Code
692
693 * Example 1: Downlink Payload:
694
695 08 01 05  ~-~-->  AT+MODEL=0105
696
697 * Example 2: Downlink Payload:
698
699 08 03 05 00 19 0b 00 04 ff 4c 00 02 15 01 12 23 34 45 56  ~-~-->  AT+MODEL=030500190b0004ff4c000215011223344556 0x08 03 05 00 19 0b 00 04 ff 4c 00 02 15 01 12 23 34 45 56
700
701 See payload section for detail.
702
703
704 === 3.3.4 Set up filtering of devices by signal strength ===
705
706
707 Feature: Filter Scan Devices
708
709 AT Command:AT+FILTERRSSI=XX
710
711 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
712 |=(% style="width: 155px;background-color:#4F81BD;color:white" %)Command Example|=(% style="width: 197px;background-color:#4F81BD;color:white" %)Function|=(% style="width: 158px;background-color:#4F81BD;color:white" %)Response
713 |(% style="width:154px" %)(((
714 AT+FILTERRSSI=?
715 )))|(% style="width:196px" %)Get the RSSI range of the scanned device|(% style="width:157px" %)(((
716 0
717 OK
718 )))
719 |(% style="width:154px" %)(((
720 AT+FILTERRSSI=-70
721 )))|(% style="width:196px" %)Set the RSSI range of the scanning device to -70~0|(% style="width:157px" %)(((
722 OK
723 )))
724
725 Downlink Command: 0x09
726
727 Format: Command Code
728
729 * Example: Downlink Payload:
730
731 09 BA ~-~-->  AT+FILTERRSSI=-70
732
733 -70 is converted from signed to unsigned to decimal 186, and 186 is converted from decimal to hexadecimal to BA.
734
735
736 = 4. Battery & Power Consumption =
737
738
739 BH01-LB use ER26500 + SPC1520 battery pack and BH01-LS use 3000mAh Recharable Battery with Solar Panel. See below link for detail information about the battery info and how to replace.
740
741 [[Battery Info & Power Consumption Analyze>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
742
743
744 = 5. OTA Firmware update =
745
746
747 User can change firmware BH01-LB/LS to:
748
749 * Change Frequency band/ region.
750 * Update with new features.
751 * Fix bugs.
752
753 Firmware and changelog can be downloaded from : [[Firmware download link>>https://www.dropbox.com/scl/fo/159vcesgbwe6cv0frovaf/AGpaICU74040qlFxAmUhs84?rlkey=svqdx3qxl334jrcx4ql5pk9kg&st=txsfwg0y&dl=0]]
754
755 Methods to Update Firmware:
756
757 * (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/]]
758 * 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]].
759
760 = 6. Order Info =
761
762
763 **Part Number: (% style="color:blue" %)BH01-LB-XX(%%)   or (% style="color:blue" %)BH01-LS-XX(%%)**
764
765 XX: The default frequency band
766
767 * AS923: LoRaWAN AS923 band
768 * AU915: LoRaWAN AU915 band
769 * EU433: LoRaWAN EU433 band
770 * EU868: LoRaWAN EU868 band
771 * KR920: LoRaWAN KR920 band
772 * US915: LoRaWAN US915 band
773 * IN865: LoRaWAN IN865 band
774 * CN470: LoRaWAN CN470 band
775
776 (% style="color:red" %)**Note: Model BH01-LB/LS doesn't include Bluetooth Tags. Bluetooth Tags are purchased seperately. **
777
778 **Bluetooth Tags Option: (% style="color:blue" %)DR-TAH02 , DR-ES01(%%)**
779
780
781 = 7. ​Packing Info =
782
783
784 Package Includes:
785
786 * BH01-LB/LS  Bluetooth to LoRaWAN Hub
787
788 Dimension and weight:
789
790 * Device Size: cm
791 * Device Weight: g
792 * Package Size / pcs : cm
793 * Weight / pcs : g
794
795 = 8. Support =
796
797
798 * 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.
799
800 * Provide as much information as possible regarding your enquiry (product models, accurately describe your problem and steps to replicate it etc) and send a mail to [[support@dragino.cc>>url:http://../../../../../../D:%5C%E5%B8%82%E5%9C%BA%E8%B5%84%E6%96%99%5C%E8%AF%B4%E6%98%8E%E4%B9%A6%5CLoRa%5CLT%E7%B3%BB%E5%88%97%5Csupport@dragino.cc]]