<
From version < 106.1 >
edited by Xiaoling
on 2022/07/09 15:35
To version < 115.7 >
edited by Xiaoling
on 2022/07/09 17:33
>
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -41,7 +41,6 @@
41 41  
42 42  == 1.2 ​ Features ==
43 43  
44 -
45 45  * NB-IoT Bands: B1/B3/B8/B5/B20/B28 @H-FDD
46 46  * Monitor Temperature & Humidity via SHT31
47 47  * AT Commands to change parameters
... ... @@ -55,6 +55,7 @@
55 55  
56 56  
57 57  
57 +
58 58  == 1.3  Specification ==
59 59  
60 60  
... ... @@ -83,6 +83,7 @@
83 83  
84 84  
85 85  
86 +
86 86  == ​1.4  Applications ==
87 87  
88 88  * Smart Buildings & Home Automation
... ... @@ -131,8 +131,6 @@
131 131  1. Send an uplink packet
132 132  
133 133  
134 -
135 -
136 136  = 2.  Use N95S31B to communicate with IoT Server =
137 137  
138 138  == 2.1  How it works ==
... ... @@ -176,7 +176,6 @@
176 176  * The local NB-IoT network used the band that N95S31B supports.
177 177  * Your operator is able to distribute the data received in their NB-IoT network to your IoT server.
178 178  
179 -
180 180  Below figure shows our testing structure. Here we have NB-IoT network coverage by China Mobile, the band they use is B8.
181 181  
182 182  N95S31B supports different communication protocol such as :
... ... @@ -211,7 +211,7 @@
211 211  
212 212  
213 213  
214 -=== 2.2.3 Connect USB – TTL to N95S31B to configure it ===
212 +=== 2.2. Connect USB – TTL to N95S31B to configure it ===
215 215  
216 216  (((
217 217  (((
... ... @@ -250,7 +250,7 @@
250 250  
251 251  
252 252  
253 -=== 2.2.4 Use CoAP protocol to uplink data ===
251 +=== 2.2. Use CoAP protocol to uplink data ===
254 254  
255 255  (% style="color:red" %)Note: if you don't have CoAP server, you can refer this link to set up one: (%%)[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Set%20up%20CoAP%20Server/>>http://wiki.dragino.com/xwiki/bin/view/Main/Set%20up%20CoAP%20Server/]]
256 256  
... ... @@ -270,10 +270,12 @@
270 270  )))
271 271  
272 272  (((
271 +
272 +
273 273  For parameter description, please refer to AT command set
274 274  )))
275 275  
276 -[[image:1657330452568-615.png]]
276 +[[image:1657352146020-183.png]]
277 277  
278 278  
279 279  (((
... ... @@ -280,11 +280,11 @@
280 280  After configure the server address and (% style="color:green" %)**reset the device**(%%) (via AT+ATZ ), NDDS75 will start to uplink sensor values to CoAP server.
281 281  )))
282 282  
283 -[[image:1657330472797-498.png]]
283 +[[image:1657352185396-303.png]]
284 284  
285 285  
286 286  
287 -=== 2.2.5 Use UDP protocol to uplink data(Default protocol) ===
287 +=== 2.2. Use UDP protocol to uplink data(Default protocol) ===
288 288  
289 289  
290 290  * (% style="color:blue" %)**AT+PRO=2   ** (%%) ~/~/ Set to use UDP protocol to uplink
... ... @@ -291,15 +291,16 @@
291 291  * (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5601   ** (%%) ~/~/ to set UDP server address and port
292 292  * (% style="color:blue" %)**AT+CFM=1       ** (%%) ~/~/ If the server does not respond, this command is unnecessary
293 293  
294 -[[image:1657330501006-241.png]]
294 +[[image:1657352391268-297.png]]
295 295  
296 296  
297 -[[image:1657330533775-472.png]]
297 +[[image:1657352403317-397.png]]
298 298  
299 299  
300 300  
301 -=== 2.2.6 Use MQTT protocol to uplink data ===
301 +=== 2.2. Use MQTT protocol to uplink data ===
302 302  
303 +N95S31B supports only plain MQTT now it doesn't support TLS and other related encryption.
303 303  
304 304  * (% style="color:blue" %)**AT+PRO=3   ** (%%) ~/~/Set to use MQTT protocol to uplink
305 305  * (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,1883   ** (%%) ~/~/Set MQTT server address and port
... ... @@ -306,35 +306,40 @@
306 306  * (% style="color:blue" %)**AT+CLIENT=CLIENT       ** (%%)~/~/Set up the CLIENT of MQTT
307 307  * (% style="color:blue" %)**AT+UNAME=UNAME                                **(%%)~/~/Set the username of MQTT
308 308  * (% style="color:blue" %)**AT+PWD=PWD                                         **(%%)~/~/Set the password of MQTT
309 -* (% style="color:blue" %)**AT+PUBTOPIC=NDDS75_PUB                 **(%%)~/~/Set the sending topic of MQTT
310 -* (% style="color:blue" %)**AT+SUBTOPIC=NDDS75_SUB          **(%%) ~/~/Set the subscription topic of MQTT
310 +* (% style="color:blue" %)**AT+PUBTOPIC=f9527                               **(%%)~/~/Set the sending topic of MQTT
311 +* (% style="color:blue" %)**AT+SUBTOPIC=Ns9527          **(%%) ~/~/Set the subscription topic of MQTT
311 311  
312 -[[image:1657249978444-674.png]]
313 +[[image:1657352634421-276.png]]
313 313  
314 314  
315 -[[image:1657330723006-866.png]]
316 +[[image:1657352645687-385.png]]
316 316  
318 +(((
319 +To save battery life, N95S31B will establish a subscription before each uplink and close the subscription 3 seconds after uplink successful. Any downlink commands from server will only arrive during the subscription period.
320 +)))
317 317  
322 +
318 318  (((
319 -MQTT protocol has a much higher power consumption compare vs UDP / CoAP protocol. Please check the power analyze document and adjust the uplink period to a suitable interval.
324 +MQTT protocol has a much high-power consumption compare vs UDP / CoAP protocol. Please check the power analyze document and adjust the uplink period to a suitable interval.
320 320  )))
321 321  
322 322  
323 323  
324 -=== 2.2.7 Use TCP protocol to uplink data ===
329 +=== 2.2. Use TCP protocol to uplink data ===
325 325  
331 +This feature is supported since firmware version v110
326 326  
327 327  * (% style="color:blue" %)**AT+PRO=4   ** (%%) ~/~/ Set to use TCP protocol to uplink
328 328  * (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5600   **(%%) ~/~/ to set TCP server address and port
329 329  
330 -[[image:image-20220709093918-1.png]]
336 +[[image:1657352898400-901.png]]
331 331  
332 332  
333 -[[image:image-20220709093918-2.png]]
339 +[[image:1657352914475-252.png]]
334 334  
335 335  
336 336  
337 -=== 2.2.8 Change Update Interval ===
343 +=== 2.2. Change Update Interval ===
338 338  
339 339  User can use below command to change the (% style="color:green" %)**uplink interval**.
340 340  
... ... @@ -341,69 +341,92 @@
341 341  * (% style="color:blue" %)**AT+TDC=600      ** (%%)~/~/ Set Update Interval to 600s
342 342  
343 343  (((
344 -(% style="color:red" %)**NOTE:**
350 +
345 345  )))
346 346  
347 -(((
348 -(% style="color:red" %)1. By default, the device will send an uplink message every 1 hour.
349 -)))
350 350  
351 351  
352 -
353 353  == 2.3  Uplink Payload ==
354 354  
355 -In this mode, uplink payload includes in total 14 bytes
356 356  
358 +NBSN95 has different working mode for the connections of different type of sensors. This section describes these modes. User can use the AT Command (% style="color:blue" %)**AT+MOD**(%%) to set NBSN95 to different working modes.
357 357  
360 +
361 +For example:
362 +
363 + (% style="color:blue" %)**AT+CFGMOD=2 ** (%%)~/~/will set the NBSN95 to work in MOD=2 distance mode which target to measure distance via Ultrasonic Sensor.
364 +
365 +
366 +The uplink payloads are composed in  ASCII String. For example:
367 +
368 +0a cd 00 ed 0a cc 00 00 ef 02 d2 1d (total 24 ASCII Chars) . Representative the actually payload:
369 +
370 +0x 0a cd 00 ed 0a cc 00 00 ef 02 d2 1d Total 12 bytes
371 +
372 +
373 +(% style="color:red" %)**NOTE:**
374 +
375 +(% style="color:red" %)
376 +1. All modes share the same Payload Explanation from [[HERE>>path:#Payload_Explain]].
377 +1. By default, the device will send an uplink message every 1 hour.
378 +
379 +
380 +
381 +=== 2.3.1  Payload Analyze ===
382 +
383 +N95S31B uplink payload includes in total 21 bytes
384 +
385 +
358 358  (% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:440px" %)
359 359  |=(% style="width: 60px;" %)(((
360 360  **Size(bytes)**
361 -)))|=(% style="width: 60px;" %)**6**|=(% style="width: 35px;" %)2|=(% style="width: 35px;" %)**2**|=(% style="width: 80px;" %)**1**|=(% style="width: 100px;" %)**2**|=(% style="width: 60px;" %)**1**
362 -|(% style="width:97px" %)**Value**|(% style="width:83px" %)[[Device ID>>||anchor="H2.4.1A0A0DeviceID"]]|(% style="width:41px" %)[[Ver>>||anchor="H2.4.2A0VersionInfo"]]|(% style="width:46px" %)[[BAT>>||anchor="H2.4.3A0BatteryInfo"]]|(% style="width:123px" %)[[Signal Strength>>||anchor="H2.4.4A0SignalStrength"]]|(% style="width:120px" %)[[Distance (unit: mm)>>||anchor="H2.4.5A0Distance"]]|(% style="width:80px" %)[[Interrupt>>||anchor="H2.4.6A0DigitalInterrupt"]]
389 +)))|=(% style="width: 60px;" %)**6**|=(% style="width: 35px;" %)2|=(% style="width: 35px;" %)**2**|=(% style="width: 80px;" %)**1**|=(% style="width: 80px;" %) |=(% style="width: 99px;" %) |=(% style="width: 77px;" %)**2**|=(% style="width: 60px;" %)**1**
390 +|(% style="width:97px" %)**Value**|(% style="width:83px" %)[[Device ID>>||anchor="H2.4.1A0A0DeviceID"]]|(% style="width:41px" %)[[Ver>>||anchor="H2.4.2A0VersionInfo"]]|(% style="width:46px" %)[[BAT>>||anchor="H2.4.3A0BatteryInfo"]]|(% style="width:123px" %)[[Signal Strength>>||anchor="H2.4.4A0SignalStrength"]]|(% style="width:123px" %)MOD 0X01|(% style="width:99px" %)(((
391 +Reserve/ Same as NBSN95 CFGMOD=1
363 363  
364 -(((
365 -If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the NDDS751 uplink data.
366 -)))
393 +No function here.
394 +)))|(% style="width:77px" %)(((
395 +[[Temperature >>||anchor="H2.4.5A0Distance"]]
367 367  
397 +By SHT31
398 +)))|(% style="width:80px" %)(((
399 +[[Humidity>>||anchor="H2.4.6A0DigitalInterrupt"]]
368 368  
369 -[[image:1657331036973-987.png]]
370 -
371 -(((
372 -The payload is ASCII string, representative same HEX:
401 +By SHT31
373 373  )))
374 374  
375 375  (((
376 -0x72403155615900640c6c19029200 where:
405 +(((
406 +If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the NB sensor uplink data.
377 377  )))
378 -
379 -* (((
380 -Device ID: 0x724031556159 = 724031556159
381 381  )))
382 -* (((
383 -Version: 0x0064=100=1.0.0
384 -)))
385 385  
386 -* (((
387 -BAT: 0x0c6c = 3180 mV = 3.180V
388 -)))
389 -* (((
390 -Signal: 0x19 = 25
391 -)))
392 -* (((
393 -Distance: 0x0292= 658 mm
394 -)))
395 -* (((
396 -Interrupt: 0x00 = 0
397 397  
411 +[[image:1657354294009-643.png]]
398 398  
399 399  
414 +The payload is ASCII string, representative same HEX: 0x724031607457006e0ccd1b0100dc000ccc00e10186 where:
415 +
416 +* Device ID: 0x724031607457 = 724031607457
417 +* Version: 0x006e=110=1.1.0
418 +
419 +* BAT: 0x0ccd = 3277 mV = 3.277V
420 +* Signal: 0x1b = 27
421 +* Model: 0x01 = 1
422 +* 0x00dc000ccc= reserve, ignore in N95S31B
423 +* Temperature by SHT31: 0x00e1 = 225 = 22.5 °C
424 +* Humidity by SHT31: 0x0186 = 390 = 39.0 %rh
425 +
426 +(((
400 400  
401 401  )))
402 402  
403 -== 2.4  Payload Explanation and Sensor Interface ==
430 +(((
431 +
432 +)))
404 404  
405 405  
406 -=== 2.4.1  Device ID ===
435 +=== 2.3.2  Device ID ===
407 407  
408 408  (((
409 409  By default, the Device ID equal to the last 6 bytes of IMEI.
... ... @@ -427,20 +427,25 @@
427 427  
428 428  
429 429  
430 -=== 2.4.2  Version Info ===
459 +=== 2.3.3  Version Info ===
431 431  
432 -(((
433 -Specify the software version: 0x64=100, means firmware version 1.00.
434 -)))
435 435  
462 +These bytes include the hardware and software version.
463 +
464 +Higher byte: Specify hardware version: always 0x00 for N95S31B
465 +
466 +Lower byte: Specify the software version: 0x6E=110, means firmware version 110
467 +
468 +
469 +For example: 0x00 6E: this device is N95S31B with firmware version 110.
470 +
436 436  (((
437 -For example: 0x00 64 : this device is NDDS75 with firmware version 1.0.0.
472 +
438 438  )))
439 439  
440 440  
476 +=== 2.3.4  Battery Info ===
441 441  
442 -=== 2.4.3  Battery Info ===
443 -
444 444  (((
445 445  Ex1: 0x0B45 = 2885mV
446 446  )))
... ... @@ -451,7 +451,7 @@
451 451  
452 452  
453 453  
454 -=== 2.4.4  Signal Strength ===
488 +=== 2.3.5  Signal Strength ===
455 455  
456 456  (((
457 457  NB-IoT Network signal Strength.
... ... @@ -483,83 +483,24 @@
483 483  
484 484  
485 485  
486 -=== 2.4.5  Distance ===
520 +=== 2.3.6  Temperature & Humidity ===
487 487  
488 -Get the distance. Flat object range 280mm - 7500mm.
522 +The device will be able to get the SHT31 temperature and humidity data now and upload to IoT Server.
489 489  
490 -(((
491 -For example, if the data you get from the register is **__0x0B 0x05__**, the distance between the sensor and the measured object is
492 -)))
524 +[[image:image-20220709161741-3.png]]
493 493  
494 -(((
495 -(((
496 -(% style="color:blue" %)** 0B05(H) = 2821(D) = 2821mm.**
497 -)))
498 -)))
499 499  
500 -(((
501 -
502 -)))
527 +Convert the read byte to decimal and divide it by ten.
503 503  
504 -(((
505 -
506 -)))
507 507  
508 -=== 2.4.6  Digital Interrupt ===
530 +**Example:**
509 509  
510 -(((
511 -Digital Interrupt refers to pin (% style="color:blue" %)**GPIO_EXTI**(%%), and there are different trigger methods. When there is a trigger, the NDDS75 will send a packet to the server.
512 -)))
532 +Temperature:  Read:00ec (H) = 236(D)  Value:  236 /10=23.6℃
513 513  
514 -(((
515 -The command is:
516 -)))
534 +Humidity:    Read:0295(H)=661(D)    Value:  661 / 10=66.1, So 66.1%
517 517  
518 -(((
519 -(% style="color:blue" %)**AT+INTMOD=3 **(%%) ~/~/(more info about INMOD please refer [[**AT Command Manual**>>url:https://www.dragino.com/downloads/downloads/NB-IoT/NBSN95/DRAGINO_NBSN95-NB_AT%20Commands_v1.1.0.pdf]])**.**
520 -)))
521 521  
522 522  
523 -(((
524 -The lower four bits of this data field shows if this packet is generated by interrupt or not. Click here for the hardware and software set up.
525 -)))
526 -
527 -
528 -(((
529 -Example:
530 -)))
531 -
532 -(((
533 -0x(00): Normal uplink packet.
534 -)))
535 -
536 -(((
537 -0x(01): Interrupt Uplink Packet.
538 -)))
539 -
540 -
541 -
542 -=== 2.4.7  ​+5V Output ===
543 -
544 -(((
545 -NDDS75 will enable +5V output before all sampling and disable the +5v after all sampling. 
546 -)))
547 -
548 -
549 -(((
550 -The 5V output time can be controlled by AT Command.
551 -)))
552 -
553 -(((
554 -(% style="color:blue" %)**AT+5VT=1000**
555 -)))
556 -
557 -(((
558 -Means set 5V valid time to have 1000ms. So the real 5V output will actually have 1000ms + sampling time for other sensors.
559 -)))
560 -
561 -
562 -
563 563  == 2.5  Downlink Payload ==
564 564  
565 565  By default, NDDS75 prints the downlink payload to console port.
... ... @@ -612,51 +612,16 @@
612 612  
613 613  
614 614  
615 -== 2.6  ​LED Indicator ==
590 +== 2.5  ​Battery Analysis ==
616 616  
592 +=== 2.5.1  ​Battery Type ===
617 617  
618 -The NDDS75 has an internal LED which is to show the status of different state.
619 619  
620 -
621 -* When power on, NDDS75 will detect if sensor probe is connected, if probe detected, LED will blink four times. (no blinks in this step is no probe)
622 -* Then the LED will be on for 1 second means device is boot normally.
623 -* After NDDS75 join NB-IoT network. The LED will be ON for 3 seconds.
624 -* For each uplink probe, LED will be on for 500ms.
625 -
626 626  (((
627 -
596 +The N95S31B battery is a combination of an 8500mAh Li/SOCI2 Battery and a Super Capacitor. The battery is none-rechargeable battery type with a low discharge rate (<2% per year). This type of battery is commonly used in IoT devices such as water meter.
628 628  )))
629 629  
630 -
631 -
632 -== 2.7  ​Firmware Change Log ==
633 -
634 -
635 635  (((
636 -Download URL & Firmware Change log
637 -)))
638 -
639 -(((
640 -[[https:~~/~~/www.dragino.com/downloads/index.php?dir=NB-IoT/NDDS75/Firmware/>>url:https://www.dragino.com/downloads/index.php?dir=NB-IoT/NDDS75/Firmware/]]
641 -)))
642 -
643 -
644 -(((
645 -Upgrade Instruction: [[Upgrade_Firmware>>||anchor="H5.1200BHowtoUpgradeFirmware"]]
646 -)))
647 -
648 -
649 -
650 -== 2.8  ​Battery Analysis ==
651 -
652 -=== 2.8.1  ​Battery Type ===
653 -
654 -
655 -(((
656 -The NDDS75 battery is a combination of an 8500mAh Li/SOCI2 Battery and a Super Capacitor. The battery is none-rechargeable battery type with a low discharge rate (<2% per year). This type of battery is commonly used in IoT devices such as water meter.
657 -)))
658 -
659 -(((
660 660  The battery is designed to last for several years depends on the actually use environment and update interval. 
661 661  )))
662 662  
... ... @@ -674,55 +674,28 @@
674 674  
675 675  
676 676  
677 -=== 2.8.2  Power consumption Analyze ===
617 +=== 2.5.2  Power consumption Analyze ===
678 678  
679 679  (((
680 -Dragino battery powered product are all runs in Low Power mode. We have an update battery calculator which base on the measurement of the real device. User can use this calculator to check the battery life and calculate the battery life if want to use different transmit interval.
620 +The file **DRAGINO_N95S31B-Power-Analyzer.pdf** from [[https:~~/~~/www.dragino.com/downloads/index.php?dir=NB-IoT/N95S31B/>>url:https://www.dragino.com/downloads/index.php?dir=NB-IoT/N95S31B/]] describes a detail measurement to analyze the power consumption in different case. User can use it for design guideline for their project.
681 681  )))
682 682  
683 -
684 684  (((
685 -Instruction to use as below:
624 +
686 686  )))
687 687  
688 -(((
689 -(% style="color:blue" %)**Step 1:  **(%%)Downlink the up-to-date DRAGINO_Battery_Life_Prediction_Table.xlsx from: [[https:~~/~~/www.dragino.com/downloads/index.php?dir=LoRa_End_Node/Battery_Analyze/>>url:https://www.dragino.com/downloads/index.php?dir=LoRa_End_Node/Battery_Analyze/]]
690 -)))
691 691  
628 +=== 2.5.3  ​Battery Note ===
692 692  
693 693  (((
694 -(% style="color:blue" %)**Step 2: **(%%) Open it and choose
631 +The Li-SICO battery is designed for small current / long period application. It is not good to use a high current, short period transmit method. The recommended minimum period for use of this battery is 5 minutes. If you use a shorter period time to uplink data, then the battery life may be decreased.
695 695  )))
696 696  
697 -* (((
698 -Product Model
699 -)))
700 -* (((
701 -Uplink Interval
702 -)))
703 -* (((
704 -Working Mode
705 -)))
706 706  
707 -(((
708 -And the Life expectation in difference case will be shown on the right.
709 -)))
710 710  
711 -[[image:image-20220709110451-3.png]]
636 +=== 2.5.4  Replace the battery ===
712 712  
713 -
714 -
715 -=== 2.8.3  ​Battery Note ===
716 -
717 717  (((
718 -The Li-SICO battery is designed for small current / long period application. It is not good to use a high current, short period transmit method. The recommended minimum period for use of this battery is 5 minutes. If you use a shorter period time to transmit LoRa, then the battery life may be decreased.
719 -)))
720 -
721 -
722 -
723 -=== 2.8.4  Replace the battery ===
724 -
725 -(((
726 726  The default battery pack of NDDS75 includes a ER26500 plus super capacitor. If user can't find this pack locally, they can find ER26500 or equivalence without the SPC1520 capacitor, which will also work in most case. The SPC can enlarge the battery life for high frequency use (update period below 5 minutes).
727 727  )))
728 728  
1657352185396-303.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +98.3 KB
Content
1657352391268-297.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +238.0 KB
Content
1657352403317-397.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +547.7 KB
Content
1657352634421-276.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +163.6 KB
Content
1657352645687-385.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +214.7 KB
Content
1657352898400-901.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +144.8 KB
Content
1657352914475-252.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +157.0 KB
Content
1657354294009-643.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +214.7 KB
Content
image-20220709161741-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +111.2 KB
Content
Copyright ©2010-2022 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0