Changes for page General Manual for -CB , -CS models
Last modified by Mengting Qiu on 2025/03/08 11:35
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Xiaoling1 +XWiki.ting - Content
-
... ... @@ -187,20 +187,16 @@ 187 187 188 188 The NB-IoT Sensor can send packet to server use UDP protocol. 189 189 190 - 191 191 === 3.1.1 Simulate UDP Connection by PC tool === 192 192 193 - 194 194 We can use PC tool to simulate UDP connection to make sure server works ok. 195 195 196 -[[image: http://wiki.dragino.com/xwiki/bin/download/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/WebHome/image-20230802112413-1.png?width=1024&height=468&rev=1.1||alt="image-20230802112413-1.png"]]194 +[[image:image-20230802112413-1.png||height="468" width="1024"]] 197 197 198 - 199 199 === 3.1.2 Configure NB-IoT Sensor === 200 200 201 201 ==== 3.1.2.1 AT Commands ==== 202 202 203 - 204 204 (% style="color:blue" %)**AT Commands:** 205 205 206 206 * (% style="color:#037691" %)**AT+PRO=2,0** (%%) ~/~/ Set to use UDP protocol to uplink ,Payload Type select Hex payload ... ... @@ -209,16 +209,12 @@ 209 209 210 210 [[image:image-20240819102802-1.png]] 211 211 212 - 213 213 ==== 3.1.2.2 Uplink Example ==== 214 214 210 +[[image:image-20240819105418-8.png||height="671" width="1414"]] 215 215 216 -[[image:image-20240819105418-8.png||height="611" width="1287"]] 217 - 218 - 219 219 == 3.2 General COAP Connection == 220 220 221 - 222 222 The NB-IoT Sensor can send packet to server use COAP protocol. 223 223 224 224 Below are the commands. ... ... @@ -234,16 +234,13 @@ 234 234 235 235 [[image:image-20240819103212-2.png]] 236 236 237 - 238 238 === 3.2.1 Uplink Example === 239 239 240 - 241 241 [[image:image-20240819103909-4.png||height="453" width="955"]] 242 242 243 243 244 244 == 3.2 General MQTT Connection == 245 245 246 - 247 247 The NB-IoT Sensor can send packet to server use MQTT protocol. 248 248 249 249 Below are the commands. ... ... @@ -271,12 +271,10 @@ 271 271 272 272 (% style="color:red" %)**Notice: MQTT protocol has a much higher power consumption compare with UDP/CoAP protocol. Please check the power analyze document and adjust the uplink period to a suitable interval.** 273 273 274 - 275 275 == 3.3 [[ThingSpeak>>url:https://thingspeak.com/]] (via MQTT) == 276 276 277 277 === 3.3.1 Get MQTT Credentials === 278 278 279 - 280 280 [[ThingSpeak>>url:https://thingspeak.com/]] connection uses MQTT Connection. So we need to get MQTT Credentials first. You need to point MQTT Devices to ThingSpeak Channel as well. 281 281 282 282 [[image:image-20240819173602-1.png||height="401" width="743"]] ... ... @@ -283,12 +283,10 @@ 283 283 284 284 [[image:image-20240819173706-3.png||height="595" width="597"]] 285 285 286 - 287 287 === 3.3.2 Simulate with MQTT.fx === 288 288 289 289 ==== 3.3.2.1 Establish MQTT Connection ==== 290 290 291 - 292 292 After we got MQTT Credentials, we can first simulate with PC tool MQTT.fx tool to see if the Credentials and settings are fine. 293 293 294 294 [[image:image-20240819173826-4.png||height="534" width="734"]] ... ... @@ -303,11 +303,8 @@ 303 303 304 304 * (% style="color:#037691" %)**Password:**(%%) <Your ThingSpeak MQTT Password> 305 305 306 - 307 - 308 308 ==== 3.3.2.2 Publish Data to ThingSpeak Channel ==== 309 309 310 - 311 311 [[image:image-20240819174033-5.png]] 312 312 313 313 [[image:image-20240819174209-6.png]] ... ... @@ -324,12 +324,10 @@ 324 324 325 325 [[image:image-20240819174314-7.png||height="469" width="785"]] 326 326 327 - 328 328 === 3.3.3 Configure NB-IoT Sensor for connection === 329 329 330 330 ==== 3.3.3.1 AT Commands: ==== 331 331 332 - 333 333 In the NB-IoT, we can run below commands so to publish the channels like MQTT.fx 334 334 335 335 * (% style="color:blue" %)**AT+PRO=3,1** (%%) ~/~/ Set to use ThingSpeak Server and Related Payload ... ... @@ -344,11 +344,8 @@ 344 344 345 345 * (% style="color:blue" %)**AT+SUBTOPIC=<YOUR_CHANNEL_ID>** 346 346 347 - 348 - 349 349 ==== 3.3.3.2 Uplink Examples ==== 350 350 351 - 352 352 [[image:image-20240819174540-8.png]] 353 353 354 354 For SE01-NB ... ... @@ -373,10 +373,8 @@ 373 373 374 374 For SN50V3-NB 375 375 376 - 377 377 ==== 3.3.3.3 Map fields to sensor value ==== 378 378 379 - 380 380 When NB-IoT sensor upload to ThingSpeak. The payload already specify which fileds related to which sensor value. Use need to create fileds in Channels Settings. with name so to see the value correctly. 381 381 382 382 [[image:image-20240819174610-9.png]] ... ... @@ -385,25 +385,25 @@ 385 385 386 386 Below is the NB-IoT Product Table show the mapping. 387 387 388 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:1 353.82px" %)389 -|(% style="background-color:#4f81bd; width:143px" %) |(% style="background-color:#4f81bd; color:white; width:103px" %)Field1|(% style="background-color:#4f81bd; color:white; width:102px" %)Field2|(% style="background-color:#4f81bd; color:white; width:157px" %)Field3|(% style="background-color:#4f81bd; color:white; width:1 39px" %)Field4|(% style="background-color:#4f81bd; color:white; width:141px" %)Field5|(% style="background-color:#4f81bd; color:white; width:142px" %)Field6|(% style="background-color:#4f81bd; color:white; width:151px" %)Field7|(% style="background-color:#4f81bd; color:white; width:137px" %)Field8|(% style="background-color:#4f81bd; color:white; width:69px" %)Field9|(% style="background-color:#4f81bd; color:white; width:65px" %)Field10390 -|(% style="background-color:#4f81bd; color:white; width:143px" %)S31x-NB|(% style="width:103px" %)Temperature |(% style="width:102px" %)Humidity|(% style="width:157px" %)Battery|(% style="width:1 39px" %)RSSI|(% style="width:141px" %) |(% style="width:142px" %) |(% style="width:151px" %) |(% style="width:137px" %) |(% style="width:69px" %) |(% style="width:65px" %)391 -|(% style="background-color:#4f81bd; color:white; width:143px" %)SE01-NB|(% style="width:103px" %)Temperature |(% style="width:102px" %)Humidity|(% style="width:157px" %)conduct|(% style="width:1 39px" %)dielectric_constant|(% style="width:141px" %)Battery|(% style="width:142px" %)RSSI|(% style="width:151px" %) |(% style="width:137px" %) |(% style="width:69px" %) |(% style="width:65px" %)392 -|(% style="background-color:#4f81bd; color:white; width:143px" %)DDS20-NB|(% style="width:103px" %)distance|(% style="width:102px" %)Battery|(% style="width:157px" %)RSSI|(% style="width:1 39px" %) |(% style="width:141px" %) |(% style="width:142px" %) |(% style="width:151px" %) |(% style="width:137px" %) |(% style="width:69px" %) |(% style="width:65px" %)393 -|(% style="background-color:#4f81bd; color:white; width:143px" %)DDS45-NB|(% style="width:103px" %)distance|(% style="width:102px" %)Battery|(% style="width:157px" %)RSSI|(% style="width:1 39px" %) |(% style="width:141px" %) |(% style="width:142px" %) |(% style="width:151px" %) |(% style="width:137px" %) |(% style="width:69px" %) |(% style="width:65px" %)394 -|(% style="background-color:#4f81bd; color:white; width:143px" %)DDS75-NB|(% style="width:103px" %)distance|(% style="width:102px" %)Battery|(% style="width:157px" %)RSSI|(% style="width:1 39px" %) |(% style="width:141px" %) |(% style="width:142px" %) |(% style="width:151px" %) |(% style="width:137px" %) |(% style="width:69px" %) |(% style="width:65px" %)395 -|(% style="background-color:#4f81bd; color:white; width:143px" %)NMDS120-NB|(% style="width:103px" %)distance|(% style="width:102px" %)Battery|(% style="width:157px" %)RSSI|(% style="width:1 39px" %) |(% style="width:141px" %) |(% style="width:142px" %) |(% style="width:151px" %) |(% style="width:137px" %) |(% style="width:69px" %) |(% style="width:65px" %)396 -|(% rowspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SPH01-NB|(% style="width:103px" %)ph|(% style="width:102px" %)Temperature|(% style="width:157px" %)Battery|(% style="width:1 39px" %)RSSI|(% style="width:141px" %) |(% style="width:142px" %) |(% style="width:151px" %) |(% style="width:137px" %) |(% style="width:69px" %) |(% colspan="1" rowspan="1" style="width:65px" %)397 -|(% style="background-color:#4f81bd; color:white; width:143px" %)NLM01-NB|(% style="width:103px" %)Humidity|(% style="width:102px" %)Temperature|(% style="width:157px" %)Battery|(% style="width:1 39px" %)RSSI|(% style="width:141px" %) |(% style="width:142px" %) |(% style="width:151px" %) |(% style="width:137px" %) |(% style="width:69px" %) |(% style="width:65px" %)398 -|(% style="background-color:#4f81bd; color:white; width:143px" %)NMDS200-NB|(% style="width:103px" %)distance1|(% style="width:102px" %)distance2|(% style="width:157px" %)Battery|(% style="width:1 39px" %)RSSI|(% style="width:141px" %) |(% style="width:142px" %) |(% style="width:151px" %) |(% style="width:137px" %) |(% style="width:69px" %) |(% style="width:65px" %)399 -|(% style="background-color:#4f81bd; color:white; width:143px" %)CPN01-NB|(% style="width:103px" %)alarm|(% style="width:102px" %)count|(% style="width:157px" %)door open duration|(% style="width:1 39px" %)calc flag|(% style="width:141px" %)Battery|(% style="width:142px" %)RSSI|(% style="width:151px" %) |(% style="width:137px" %) |(% style="width:69px" %) |(% style="width:65px" %)400 -|(% colspan="1" rowspan="1" style="background-color:#4f81bd; color:white; width:143px" %)DS03A-NB|(% colspan="1" rowspan="1" style="width:103px" %)level|(% colspan="1" rowspan="1" style="width:102px" %)alarm|(% colspan="1" rowspan="1" style="width:157px" %)pb14door open num|(% colspan="1" rowspan="1" style="width:1 39px" %)pb14 last open time|(% colspan="1" rowspan="1" style="width:141px" %)pb15 level status|(% colspan="1" rowspan="1" style="width:142px" %)pb15 alarm status|(% colspan="1" rowspan="1" style="width:151px" %)pb15 door open num|(% colspan="1" rowspan="1" style="width:137px" %)pb15 last open time|(% colspan="1" rowspan="1" style="width:69px" %)Battery|(% colspan="1" rowspan="1" style="width:65px" %)RSSI401 -|(% colspan="1" rowspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SN50V3-NB mod1|(% colspan="1" rowspan="1" style="width:103px" %)mod|(% colspan="1" rowspan="1" style="width:102px" %)Battery|(% colspan="1" rowspan="1" style="width:157px" %)RSSI|(% colspan="1" rowspan="1" style="width:1 39px" %)DS18B20 Temp|(% colspan="1" rowspan="1" style="width:141px" %)exit_state/input PA4|(% colspan="1" rowspan="1" style="width:142px" %)adc0|(% colspan="1" rowspan="1" style="width:151px" %)Temperature |(% colspan="1" rowspan="1" style="width:137px" %)Humidity|(% colspan="1" rowspan="1" style="width:69px" %) |(% colspan="1" rowspan="1" style="width:65px" %)402 -|(% colspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SN50V3-NB mod2|(% colspan="1" style="width:103px" %)mod|(% colspan="1" style="width:102px" %)Battery|(% colspan="1" style="width:157px" %)RSSI|(% colspan="1" style="width:1 39px" %)DS18B20 Temp|(% colspan="1" style="width:141px" %)exit_state/input PA4|(% colspan="1" style="width:142px" %)adc0|(% colspan="1" style="width:151px" %)distance|(% colspan="1" style="width:137px" %) |(% colspan="1" style="width:69px" %) |(% colspan="1" style="width:65px" %)403 -|(% colspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SN50V3-NB mod3|(% colspan="1" style="width:103px" %)mod|(% colspan="1" style="width:102px" %)Battery|(% colspan="1" style="width:157px" %)RSSI|(% colspan="1" style="width:1 39px" %)adc0|(% colspan="1" style="width:141px" %)exit_state/input PA4|(% colspan="1" style="width:142px" %)adc1|(% colspan="1" style="width:151px" %)Temperature|(% colspan="1" style="width:137px" %)Humidity|(% colspan="1" style="width:69px" %)adc4|(% colspan="1" style="width:65px" %)404 -|(% colspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SN50V3-NB mod4|(% colspan="1" style="width:103px" %)mod|(% colspan="1" style="width:102px" %)Battery|(% colspan="1" style="width:157px" %)RSSI|(% colspan="1" style="width:1 39px" %)DS18B20 Temp|(% colspan="1" style="width:141px" %)adc0|(% colspan="1" style="width:142px" %)exit_state/input PA4|(% colspan="1" style="width:151px" %)DS18B20 Temp2|(% colspan="1" style="width:137px" %)DS18B20 Temp3|(% colspan="1" style="width:69px" %) |(% colspan="1" style="width:65px" %)405 -|(% colspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SN50V3-NB mod5|(% colspan="1" style="width:103px" %)mod|(% colspan="1" style="width:102px" %)Battery|(% colspan="1" style="width:157px" %)RSSI|(% colspan="1" style="width:1 39px" %)DS18B20 Temp|(% colspan="1" style="width:141px" %)adc0|(% colspan="1" style="width:142px" %)exit_state/input PA4|(% colspan="1" style="width:151px" %)Weight|(% colspan="1" style="width:137px" %) |(% colspan="1" style="width:69px" %) |(% colspan="1" style="width:65px" %)406 -|(% colspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SN50V3-NB mod6|(% colspan="1" style="width:103px" %)mod|(% colspan="1" style="width:102px" %)Battery|(% colspan="1" style="width:157px" %)RSSI|(% colspan="1" style="width:1 39px" %)count|(% colspan="1" style="width:141px" %) |(% colspan="1" style="width:142px" %) |(% colspan="1" style="width:151px" %) |(% colspan="1" style="width:137px" %) |(% colspan="1" style="width:69px" %) |(% colspan="1" style="width:65px" %)363 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:1424px" %) 364 +|(% style="background-color:#4f81bd; width:143px" %) |(% style="background-color:#4f81bd; color:white; width:103px" %)Field1|(% style="background-color:#4f81bd; color:white; width:102px" %)Field2|(% style="background-color:#4f81bd; color:white; width:157px" %)Field3|(% style="background-color:#4f81bd; color:white; width:154px" %)Field4|(% style="background-color:#4f81bd; color:white; width:153px" %)Field5|(% style="background-color:#4f81bd; color:white; width:151px" %)Field6|(% style="background-color:#4f81bd; color:white; width:160px" %)Field7|(% style="background-color:#4f81bd; color:white; width:152px" %)Field8|(% style="background-color:#4f81bd; color:white; width:67px" %)Field9|(% style="background-color:#4f81bd; color:white; width:69px" %)Field10 365 +|(% style="background-color:#4f81bd; color:white; width:143px" %)S31x-NB|(% style="width:103px" %)Temperature |(% style="width:102px" %)Humidity|(% style="width:157px" %)Battery|(% style="width:154px" %)RSSI|(% style="width:153px" %) |(% style="width:151px" %) |(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% style="width:69px" %) 366 +|(% style="background-color:#4f81bd; color:white; width:143px" %)SE01-NB|(% style="width:103px" %)Temperature |(% style="width:102px" %)Humidity|(% style="width:157px" %)conduct|(% style="width:154px" %)dielectric_constant|(% style="width:153px" %)Battery|(% style="width:151px" %)RSSI|(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% style="width:69px" %) 367 +|(% style="background-color:#4f81bd; color:white; width:143px" %)DDS20-NB|(% style="width:103px" %)distance|(% style="width:102px" %)Battery|(% style="width:157px" %)RSSI|(% style="width:154px" %) |(% style="width:153px" %) |(% style="width:151px" %) |(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% style="width:69px" %) 368 +|(% style="background-color:#4f81bd; color:white; width:143px" %)DDS45-NB|(% style="width:103px" %)distance|(% style="width:102px" %)Battery|(% style="width:157px" %)RSSI|(% style="width:154px" %) |(% style="width:153px" %) |(% style="width:151px" %) |(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% style="width:69px" %) 369 +|(% style="background-color:#4f81bd; color:white; width:143px" %)DDS75-NB|(% style="width:103px" %)distance|(% style="width:102px" %)Battery|(% style="width:157px" %)RSSI|(% style="width:154px" %) |(% style="width:153px" %) |(% style="width:151px" %) |(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% style="width:69px" %) 370 +|(% style="background-color:#4f81bd; color:white; width:143px" %)NMDS120-NB|(% style="width:103px" %)distance|(% style="width:102px" %)Battery|(% style="width:157px" %)RSSI|(% style="width:154px" %) |(% style="width:153px" %) |(% style="width:151px" %) |(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% style="width:69px" %) 371 +|(% rowspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SPH01-NB|(% style="width:103px" %)ph|(% style="width:102px" %)Temperature|(% style="width:157px" %)Battery|(% style="width:154px" %)RSSI|(% style="width:153px" %) |(% style="width:151px" %) |(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% colspan="1" rowspan="1" style="width:69px" %) 372 +|(% style="background-color:#4f81bd; color:white; width:143px" %)NLM01-NB|(% style="width:103px" %)Humidity|(% style="width:102px" %)Temperature|(% style="width:157px" %)Battery|(% style="width:154px" %)RSSI|(% style="width:153px" %) |(% style="width:151px" %) |(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% style="width:69px" %) 373 +|(% style="background-color:#4f81bd; color:white; width:143px" %)NMDS200-NB|(% style="width:103px" %)distance1|(% style="width:102px" %)distance2|(% style="width:157px" %)Battery|(% style="width:154px" %)RSSI|(% style="width:153px" %) |(% style="width:151px" %) |(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% style="width:69px" %) 374 +|(% style="background-color:#4f81bd; color:white; width:143px" %)CPN01-NB|(% style="width:103px" %)alarm|(% style="width:102px" %)count|(% style="width:157px" %)door open duration|(% style="width:154px" %)calc flag|(% style="width:153px" %)Battery|(% style="width:151px" %)RSSI|(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% style="width:69px" %) 375 +|(% colspan="1" rowspan="1" style="background-color:#4f81bd; color:white; width:143px" %)DS03A-NB|(% colspan="1" rowspan="1" style="width:103px" %)level|(% colspan="1" rowspan="1" style="width:102px" %)alarm|(% colspan="1" rowspan="1" style="width:157px" %)pb14door open num|(% colspan="1" rowspan="1" style="width:154px" %)pb14 last open time|(% colspan="1" rowspan="1" style="width:153px" %)pb15 level status|(% colspan="1" rowspan="1" style="width:151px" %)pb15 alarm status|(% colspan="1" rowspan="1" style="width:160px" %)pb15 door open num|(% colspan="1" rowspan="1" style="width:152px" %)pb15 last open time|(% colspan="1" rowspan="1" style="width:67px" %)Battery|(% colspan="1" rowspan="1" style="width:69px" %)RSSI 376 +|(% colspan="1" rowspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SN50V3-NB mod1|(% colspan="1" rowspan="1" style="width:103px" %)mod|(% colspan="1" rowspan="1" style="width:102px" %)Battery|(% colspan="1" rowspan="1" style="width:157px" %)RSSI|(% colspan="1" rowspan="1" style="width:154px" %)DS18B20 Temp|(% colspan="1" rowspan="1" style="width:153px" %)exit_state/input PA4|(% colspan="1" rowspan="1" style="width:151px" %)adc0|(% colspan="1" rowspan="1" style="width:160px" %)Temperature |(% colspan="1" rowspan="1" style="width:152px" %)Humidity|(% colspan="1" rowspan="1" style="width:67px" %) |(% colspan="1" rowspan="1" style="width:69px" %) 377 +|(% colspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SN50V3-NB mod2|(% colspan="1" style="width:103px" %)mod|(% colspan="1" style="width:102px" %)Battery|(% colspan="1" style="width:157px" %)RSSI|(% colspan="1" style="width:154px" %)DS18B20 Temp|(% colspan="1" style="width:153px" %)exit_state/input PA4|(% colspan="1" style="width:151px" %)adc0|(% colspan="1" style="width:160px" %)distance|(% colspan="1" style="width:152px" %) |(% colspan="1" style="width:67px" %) |(% colspan="1" style="width:69px" %) 378 +|(% colspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SN50V3-NB mod3|(% colspan="1" style="width:103px" %)mod|(% colspan="1" style="width:102px" %)Battery|(% colspan="1" style="width:157px" %)RSSI|(% colspan="1" style="width:154px" %)adc0|(% colspan="1" style="width:153px" %)exit_state/input PA4|(% colspan="1" style="width:151px" %)adc1|(% colspan="1" style="width:160px" %)Temperature|(% colspan="1" style="width:152px" %)Humidity|(% colspan="1" style="width:67px" %)adc4|(% colspan="1" style="width:69px" %) 379 +|(% colspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SN50V3-NB mod4|(% colspan="1" style="width:103px" %)mod|(% colspan="1" style="width:102px" %)Battery|(% colspan="1" style="width:157px" %)RSSI|(% colspan="1" style="width:154px" %)DS18B20 Temp|(% colspan="1" style="width:153px" %)adc0|(% colspan="1" style="width:151px" %)exit_state/input PA4|(% colspan="1" style="width:160px" %)DS18B20 Temp2|(% colspan="1" style="width:152px" %)DS18B20 Temp3|(% colspan="1" style="width:67px" %) |(% colspan="1" style="width:69px" %) 380 +|(% colspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SN50V3-NB mod5|(% colspan="1" style="width:103px" %)mod|(% colspan="1" style="width:102px" %)Battery|(% colspan="1" style="width:157px" %)RSSI|(% colspan="1" style="width:154px" %)DS18B20 Temp|(% colspan="1" style="width:153px" %)adc0|(% colspan="1" style="width:151px" %)exit_state/input PA4|(% colspan="1" style="width:160px" %)Weight|(% colspan="1" style="width:152px" %) |(% colspan="1" style="width:67px" %) |(% colspan="1" style="width:69px" %) 381 +|(% colspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SN50V3-NB mod6|(% colspan="1" style="width:103px" %)mod|(% colspan="1" style="width:102px" %)Battery|(% colspan="1" style="width:157px" %)RSSI|(% colspan="1" style="width:154px" %)count|(% colspan="1" style="width:153px" %) |(% colspan="1" style="width:151px" %) |(% colspan="1" style="width:160px" %) |(% colspan="1" style="width:152px" %) |(% colspan="1" style="width:67px" %) |(% colspan="1" style="width:69px" %) 407 407 408 408 == 3.4 [[Datacake>>https://datacake.co/]] == 409 409 ... ... @@ -417,13 +417,10 @@ 417 417 418 418 * (% style="color:blue" %)**S31B-CB-GE**(%%): This verson doesn't have pre-configure Datacake connection. User need to enter the AT Commands to connect to Datacake. See below for instruction. 419 419 420 - 421 - 422 422 === 3.4.1 For device Already has template === 423 423 424 424 ==== 3.4.1.1 Create Device ==== 425 425 426 - 427 427 (% style="color:blue" %)**Add Device**(%%) in DataCake. 428 428 429 429 [[image:image-20240820110003-1.png]] ... ... @@ -442,12 +442,10 @@ 442 442 443 443 [[image:image-20240820110114-6.png]] 444 444 445 - 446 446 === 3.4.2 For Device already registered in DataCake before shipped === 447 447 448 448 ==== 3.4.2.1 Scan QR Code to get the device info ==== 449 449 450 - 451 451 Users can use their phones or computers to scan QR codes to obtain device data information. 452 452 453 453 [[image:image-20240820110129-7.png]] ... ... @@ -454,40 +454,32 @@ 454 454 455 455 [[image:image-20240820110218-9.png]] 456 456 457 - 458 458 ==== 3.4.2.2 Claim Device to User Account ==== 459 459 460 460 By Default, the device is registered in Dragino's DataCake Account. User can Claim it to his account. 461 461 462 - 463 463 === 3.4.3 Manual Add Decoder in DataCake ( don't use the template in DataCake) === 464 464 465 - 466 466 **Step1: Add a device** 467 467 468 468 [[image:image-20240820110235-10.png]][[image:image-20240129170024-1.png||height="330" width="900"]] 469 469 470 - 471 471 **Step2: Choose your device type,please select dragino NB-IOT device** 472 472 473 473 [[image:image-20240820110247-11.png]] 474 474 475 - 476 476 **Step3: Choose to create a new device** 477 477 478 478 [[image:image-20240820111016-12.png]] 479 479 480 - 481 481 **Step4: Fill in the device ID of your NB device** 482 482 483 483 [[image:image-20240820111101-13.png]] 484 484 485 - 486 486 **Step5: Please select your device plan according to your needs and complete the creation of the device** 487 487 488 488 [[image:image-20240820111113-14.png]] 489 489 490 - 491 491 **Step6: Please add the decoder at the payload decoder of the device configuration.** 492 492 493 493 **Decoder location:**[[dragino-end-node-decoder/Datacake-Dragino_NB at main · dragino/dragino-end-node-decoder (github.com)>>url:https://github.com/dragino/dragino-end-node-decoder/tree/main/Datacake-Dragino_NB]] ... ... @@ -496,12 +496,10 @@ 496 496 497 497 [[image:image-20240820111248-16.png]] 498 498 499 - 500 500 **Step7: Add the output of the decoder as a field** 501 501 502 502 [[image:image-20240820111259-17.png]] 503 503 504 - 505 505 **Step8: Customize the dashboard and use fields as parameters of the dashboard** 506 506 507 507 [[image:image-20240820111312-18.png]] ... ... @@ -510,10 +510,8 @@ 510 510 511 511 [[image:image-20240820111333-20.png]] 512 512 513 - 514 514 === 3.4.4 For device have not configured to connect to DataCake === 515 515 516 - 517 517 (% class="lead" %) 518 518 Use AT command for connecting to DataCake 519 519 ... ... @@ -521,12 +521,10 @@ 521 521 522 522 (% style="color:blue" %)**AT+SERVADDR=67.207.76.90,4445** 523 523 524 - 525 525 == 3.5 Node-Red (via MQTT) == 526 526 527 527 === 3.5.1 Configure [[Node-Red>>http://wiki.dragino.com/xwiki/bin/view/Main/Node-RED/]] === 528 528 529 - 530 530 Take S31-NB UDP protocol as an example. 531 531 532 532 Dragino provides input flow examples for the sensors. ... ... @@ -557,10 +557,8 @@ 557 557 558 558 [[image:image-20240820111448-26.png]] 559 559 560 - 561 561 === 3.5.2 Simulate Connection === 562 562 563 - 564 564 We have completed the configuration of UDP. We can try sending packets to node red. 565 565 566 566 [[image:image-20240820111504-27.png]] ... ... @@ -567,10 +567,8 @@ 567 567 568 568 [[image:image-20240820111515-28.png]] 569 569 570 - 571 571 === 3.5.3 Configure NB-IoT Sensors === 572 572 573 - 574 574 * (% style="color:#037691" %)**AT+PRO=3,0 or 3,5 ** (%%) **~/~/ hex format or json format** 575 575 * (% style="color:#037691" %)**AT+SUBTOPIC=<device name>or User Defined** 576 576 * (% style="color:#037691" %)**AT+PUBTOPIC=<device name>or User Defined** ... ... @@ -578,8 +578,6 @@ 578 578 * (% style="color:#037691" %)**AT+UNAME=<device name> or User Defined** 579 579 * (% style="color:#037691" %)**AT+PWD=“Your device token”** 580 580 581 - 582 - 583 583 == 3.6 ThingsBoard.Cloud (via MQTT) == 584 584 585 585 === 3.6.1 Configure ThingsBoard === ... ... @@ -586,15 +586,12 @@ 586 586 587 587 ==== 3.6.1.1 Create Device ==== 588 588 589 - 590 590 Create a New Device in [[ThingsBoard>>url:https://thingsboard.cloud/]]. Record Device Name which is used for MQTT connection. 591 591 592 592 [[image:image-20240820112210-29.png]] 593 593 594 - 595 595 ==== 3.6.1.2 Create Uplink & Downlink Converter ==== 596 596 597 - 598 598 (% style="color:blue" %)**Uplink Converter** 599 599 600 600 The purpose of the decoder function is to parse the incoming data and metadata to a format that ThingsBoard can consume. deviceName and deviceType are required, while attributes and telemetry are optional. Attributes and telemetry are flat key-value objects. Nested objects are not supported. ... ... @@ -611,10 +611,8 @@ 611 611 612 612 (% style="color:red" %)**Note: Our device payload is already human readable data. Therefore, users do not need to write decoders. Simply create by default.** 613 613 614 - 615 615 ==== 3.6.1.3 MQTT Integration Setup ==== 616 616 617 - 618 618 Go to the (% style="color:blue" %)**Integrations center**(%%) **->** (% style="color:blue" %)**Integrations page**(%%) and click **“(% style="color:blue" %)plus(%%)”** icon to add a new integration. Name it (% style="color:blue" %)**“MQTT Integration”**(%%), select type (% style="color:blue" %)**MQTT**; 619 619 620 620 [[image:image-20240820112247-32.png]] ... ... @@ -633,7 +633,6 @@ 633 633 634 634 [[image:image-20240820112330-35.png]] 635 635 636 - 637 637 === 3.6.2 Simulate with MQTT.fx === 638 638 639 639 [[image:image-20240820112340-36.png]] ... ... @@ -640,10 +640,8 @@ 640 640 641 641 [[image:image-20240820112351-37.png]] 642 642 643 - 644 644 === 3.6.3 Configure NB-IoT Sensor === 645 645 646 - 647 647 (% style="color:blue" %)**AT Commands** 648 648 649 649 * (% style="color:#037691" %)**AT+PRO=3,3 **(%%)** **~/~/ Use MQTT to connect to ThingsBoard. Payload Type set to 3. ... ... @@ -666,12 +666,10 @@ 666 666 667 667 [[image:image-20240820112426-40.png]] 668 668 669 - 670 670 == 3.7 [[Tago.io>>url:https://admin.tago.io/]] (via MQTT) == 671 671 672 672 === 3.7.1 Create device & Get Credentials === 673 673 674 - 675 675 We use MQTT Connection to send data to [[Tago.io>>url:https://admin.tago.io/]]. We need to Create Device and Get MQTT Credentials first. 676 676 677 677 [[image:image-20240820112516-41.png]] ... ... @@ -718,11 +718,8 @@ 718 718 719 719 * (% style="color:#037691" %)**AT+PWD=“Your device token”** 720 720 721 - 722 - 723 723 === 3.7.2 Simulate with MQTT.fx === 724 724 725 - 726 726 [[image:image-20240820112552-44.png]] 727 727 728 728 [[image:image-20240820112604-45.png]] ... ... @@ -733,18 +733,14 @@ 733 733 734 734 [[image:image-20240820112626-47.png]] 735 735 736 - 737 737 === 3.7.3 tago data === 738 738 739 - 740 740 [[image:image-20240820112637-48.png]] 741 741 742 742 [[image:image-20240820112647-49.png]] 743 743 744 - 745 745 == 3.8 TCP Connection == 746 746 747 - 748 748 (% style="color:blue" %)**AT command:** 749 749 750 750 * (% style="color:#037691" %)**AT+PRO=4,0 ** (%%) ~/~/ Set to use TCP protocol to uplink(HEX format) ... ... @@ -761,18 +761,16 @@ 761 761 762 762 [[image:image-20240820112716-51.png]] 763 763 764 - 765 765 == 3.9 AWS Connection == 766 766 767 - 768 768 Users can refer to [[Dragino NB device connection to AWS platform instructions>>http://wiki.dragino.com/xwiki/bin/view/Dragino%20NB%20device%20connection%20to%20AWS%20platform%20instructions/#H1.LogintotheplatformandfindIoTcore]] 769 769 701 += = 770 770 771 771 = 4. COAP/UDP/MQTT/TCP downlink = 772 772 773 773 == 4.1 MQTT (via MQTT.fx) == 774 774 775 - 776 776 Configure MQTT connections properly and send downlink commands to configure nodes through the Publish function of MQTT.fx//.// 777 777 778 778 **1.** Configure node MQTT connection (via MQTT.fx): ... ... @@ -795,12 +795,10 @@ 795 795 796 796 [[image:image-20240820112732-52.png]][[image:image-20240820112758-53.png]] 797 797 798 - 799 799 **2. **When the node uplink packets, we can observe the data in MQTT.fx. 800 800 801 801 [[image:image-20240820112813-54.png]] 802 802 803 - 804 804 **3. **The downlink command can be successfully sent only when the downlink port is open. 805 805 806 806 The downlink port is opened for about 3 seconds after uplink packets are sent. ... ... @@ -816,7 +816,6 @@ 816 816 817 817 == 4.2 UDP (via Thingseye) == 818 818 819 - 820 820 (% style="color:red" %)**Note:**(%%) The UDP service on the ThingsEye platform needs to be built by the user. (Description Link:[[UDP service building instructions>>http://www.ithingsboard.com/docs/user-guide/integrations/udp/]]) 821 821 822 822 After the node is successfully connected to the platform, you need to select the corresponding node (you can refer to the node's IMEI to find it) ... ... @@ -866,7 +866,6 @@ 866 866 867 867 == 5.1 What is the usage of Multi Sampling and One Uplink? == 868 868 869 - 870 870 The NB series has the feature for Multi Sampling and one uplink. See one of them 871 871 872 872 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/SN50v3-NB_BN-IoT_Sensor_Node_User_Manual/#H2.5Multi-SamplingsandOneuplink>>http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/SN50v3-NB_BN-IoT_Sensor_Node_User_Manual/#H2.5Multi-SamplingsandOneuplink]] ... ... @@ -881,11 +881,8 @@ 881 881 1*. **AT+TDC=7200** ~/~/ Uplink every 2 hours. 882 882 1*. this will mean each uplink will actually include the 6 uplink data (24 set data which cover 12 hours). So if device doesn't lost 6 continue data. There will not data lost. 883 883 884 - 885 - 886 886 == 5.2 Why the uplink JSON format is not standard? == 887 887 888 - 889 889 The json format in uplink packet is not standard Json format. Below is the example. This is to make the payload as short as possible, due to NB-IoT transmit limition, a standard Json is not able to include 32 sets of sensors data with timestamp. 890 890 891 891 The firmware version released after 2024, Mar will use change back to use Json format. Detail please check changelog. ... ... @@ -892,12 +892,10 @@ 892 892 893 893 [[image:image-20240820112848-57.png]] 894 894 895 - 896 896 = 6. Trouble Shooting: = 897 897 898 898 == 6.1 Checklist for debuging Network Connection issue. Signal Strenght:99 issue. == 899 899 900 - 901 901 There are many different providers provide NB-IoT service in the world. They might use different band, different APN & different operator configuration. Which makes connection to NB-IoT network is complicate. 902 902 903 903 If end device successfully attached NB-IoT Network, User can normally see the signal strengh as below (between 0~~31) ... ... @@ -922,12 +922,10 @@ 922 922 923 923 == (% data-sider-select-id="765eceff-93b1-40ee-800b-b7b7d022ef8a" %)6.2 Why sometime the AT Command is slow in reponse?(%%) == 924 924 925 - 926 926 When the MCU is communicating with the NB-IoT module, the MCU response of AT Command will become slower, it might takes several seconds to response. 927 927 928 928 [[image:image-20240820113015-60.png]] 929 929 930 - 931 931 == (% data-sider-select-id="765eceff-93b1-40ee-800b-b7b7d022ef8a" %)6.3 What is the Downlink Command by the -CB device?(%%) == 932 932 933 933 (% data-sider-select-id="bb6e9353-0c3f-473c-938d-4b416c9a03e6" %) ... ... @@ -939,7 +939,6 @@ 939 939 940 940 {AT+TDC=300} 941 941 942 - 943 943 (% data-sider-select-id="90b80f1a-e924-4c8a-afc5-4429e019a657" %) 944 944 === MQTT: === 945 945 ... ... @@ -995,9 +995,9 @@ 995 995 996 996 (% style="color:blue" %)**AT Command: AT+GDNS** 997 997 998 -**AT+GDNS=0** ~/~/ 917 +**AT+GDNS=0** ~/~/Default. Automatically resolves the domain name and uses the resolved IP to communicate. 999 999 1000 -**AT+GDNS=1 **~/~/ 919 +**AT+GDNS=1 **~/~/Disabling Domain name resolution. Use the domain name directly to communicate. 1001 1001 1002 1002 (% style="color:red" %)**Note: For -CB products, with the exception of AT+PRO=2,5, all protocols and payload formats support direct domain communication.** 1003 1003 ... ... @@ -1066,7 +1066,7 @@ 1066 1066 1067 1067 Example: 24 hours: 24(D)=0x18(H) 1068 1068 1069 -Downlink Payload: **12 00 00 18 **~/~/ AT+GTDC=24 988 + Downlink Payload: **12 00 00 18 **~/~/ AT+GTDC=24 1070 1070 1071 1071 1072 1072 === 6.5.2 GPS workflow === ... ... @@ -1090,7 +1090,7 @@ 1090 1090 === 6.5.3 GPS debugging methods === 1091 1091 1092 1092 1093 -In summary, we can deduce the method sof debugging GPS:1012 +In summary, we can deduce the method of debugging GPS: 1094 1094 1095 1095 * **Check whether the GPS function is enabled.** 1096 1096