Changes for page NDDS75 -- NB-IoT Distance Detect Sensor User Manual
Last modified by Bei Jinggeng on 2024/05/31 09:53
From version 77.2
edited by Xiaoling
on 2022/07/09 09:05
on 2022/07/09 09:05
Change comment:
There is no comment for this version
To version 103.1
edited by David Huang
on 2022/09/08 18:02
on 2022/09/08 18:02
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 19 added, 0 removed)
- 1657328756309-230.png
- 1657328884227-504.png
- 1657329814315-101.png
- 1657330452568-615.png
- 1657330472797-498.png
- 1657330501006-241.png
- 1657330533775-472.png
- 1657330723006-866.png
- 1657331036973-987.png
- 1657332990863-496.png
- 1657333200519-600.png
- image-20220709092052-2.png
- image-20220709093918-1.png
- image-20220709093918-2.png
- image-20220709100028-1.png
- image-20220709101450-2.png
- image-20220709110451-3.png
- image-20220908175246-1.png
- image-20220908175333-2.png
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Xiaoling1 +XWiki.David - Content
-
... ... @@ -7,6 +7,7 @@ 7 7 8 8 **Table of Contents:** 9 9 10 +{{toc/}} 10 10 11 11 12 12 ... ... @@ -15,6 +15,7 @@ 15 15 16 16 = 1. Introduction = 17 17 19 + 18 18 == 1.1 What is NDDS75 Distance Detection Sensor == 19 19 20 20 ((( ... ... @@ -21,20 +21,34 @@ 21 21 22 22 23 23 ((( 26 +((( 24 24 The Dragino NDDS75 is a (% style="color:blue" %)**NB-IoT Distance Detection Sensor**(%%) for Internet of Things solution. It is designed to measure the distance between the sensor and a flat object. The distance detection sensor is a module that uses ultrasonic sensing technology for distance measurement, and temperature compensation is performed internally to improve the reliability of data. 25 -\\The NDDS75 can be applied to scenarios such as horizontal distance measurement, liquid level measurement, parking management system, object proximity and presence detection, intelligent trash can management system, robot obstacle avoidance, automatic control, sewer, bottom water level monitoring, etc. It detects the distance between the measured object and the sensor, and uploads the value via wireless to IoT Server via NB-IoT Network. 26 -\\NarrowBand-Internet of Things (NB-IoT) is a standards-based low power wide area (LPWA) technology developed to enable a wide range of new IoT devices and services. NB-IoT significantly improves the power consumption of user devices, system capacity and spectrum efficiency, especially in deep coverage. 27 -\\NDDS75 supports different uplink methods include (% style="color:blue" %)**TCP, MQTT, UDP and CoAP** (%%)for different application requirement. 28 -\\NDDS75 is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), It is designed for long term use up to 5 years. (Actually Battery life depends on the use environment, update period & uplink method) 29 -\\To use NDDS75, user needs to check if there is NB-IoT coverage in local area and with the bands NDDS75 supports. If the local operate support it, user needs to get a NB-IoT SIM card from local operator and install NDDS75 to get NB-IoT network connection. 30 30 ))) 31 31 32 - 30 +((( 31 +The NDDS75 can be applied to scenarios such as horizontal distance measurement, liquid level measurement, parking management system, object proximity and presence detection, intelligent trash can management system, robot obstacle avoidance, automatic control, sewer, bottom water level monitoring, etc. It detects the distance between the measured object and the sensor, and uploads the value via wireless to IoT Server via NB-IoT Network. 33 33 ))) 34 34 35 -[[image:1654503236291-817.png]] 34 +((( 35 +NarrowBand-Internet of Things (NB-IoT) is a standards-based low power wide area (LPWA) technology developed to enable a wide range of new IoT devices and services. NB-IoT significantly improves the power consumption of user devices, system capacity and spectrum efficiency, especially in deep coverage. 36 +))) 36 36 38 +((( 39 +NDDS75 supports different uplink methods include (% style="color:blue" %)**TCP, MQTT, UDP and CoAP** (%%)for different application requirement. 40 +))) 37 37 42 +((( 43 +NDDS75 is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), It is designed for long term use up to 5 years. (Actually Battery life depends on the use environment, update period & uplink method) 44 +))) 45 + 46 +((( 47 +To use NDDS75, user needs to check if there is NB-IoT coverage in local area and with the bands NDDS75 supports. If the local operate support it, user needs to get a NB-IoT SIM card from local operator and install NDDS75 to get NB-IoT network connection. 48 +))) 49 +))) 50 + 51 + 52 +))) 53 + 38 38 [[image:1657327959271-447.png]] 39 39 40 40 ... ... @@ -56,7 +56,6 @@ 56 56 * 8500mAh Battery for long term use 57 57 58 58 59 - 60 60 == 1.3 Specification == 61 61 62 62 ... ... @@ -74,7 +74,6 @@ 74 74 * - B20 @H-FDD: 800MHz 75 75 * - B28 @H-FDD: 700MHz 76 76 77 - 78 78 (% style="color:#037691" %)**Battery:** 79 79 80 80 * Li/SOCI2 un-chargeable battery ... ... @@ -83,7 +83,6 @@ 83 83 * Max continuously current: 130mA 84 84 * Max boost current: 2A, 1 second 85 85 86 - 87 87 (% style="color:#037691" %)**Power Consumption** 88 88 89 89 * STOP Mode: 10uA @ 3.3v ... ... @@ -90,10 +90,9 @@ 90 90 * Max transmit power: 350mA@3.3v 91 91 92 92 93 - 94 - 95 95 == 1.4 Applications == 96 96 108 + 97 97 * Smart Buildings & Home Automation 98 98 * Logistics and Supply Chain Management 99 99 * Smart Metering ... ... @@ -106,6 +106,7 @@ 106 106 107 107 108 108 121 + 109 109 == 1.5 Pin Definitions == 110 110 111 111 ... ... @@ -113,11 +113,12 @@ 113 113 114 114 115 115 129 += 2. Use NDDS75 to communicate with IoT Server = 116 116 117 -= 2. Use NSE01 to communicate with IoT Server = 118 118 119 119 == 2.1 How it works == 120 120 134 + 121 121 ((( 122 122 The NDDS75 is equipped with a NB-IoT module, the pre-loaded firmware in NDDS75 will get environment data from sensors and send the value to local NB-IoT network via the NB-IoT module. The NB-IoT network will forward this value to IoT server via the protocol defined by NDDS75. 123 123 ))) ... ... @@ -138,32 +138,32 @@ 138 138 ))) 139 139 140 140 155 +== 2.2 Configure the NDDS75 == 141 141 142 -== 2.2 Configure the NSE01 == 143 143 144 - 145 145 === 2.2.1 Test Requirement === 146 146 147 147 148 148 ((( 149 -To use NS E01in your city, make sure meet below requirements:162 +To use NDDS75 in your city, make sure meet below requirements: 150 150 ))) 151 151 152 152 * Your local operator has already distributed a NB-IoT Network there. 153 -* The local NB-IoT network used the band that NS E01supports.166 +* The local NB-IoT network used the band that NDDS75 supports. 154 154 * Your operator is able to distribute the data received in their NB-IoT network to your IoT server. 155 155 156 156 ((( 157 -Below figure shows our testing structure. Here we have NB-IoT network coverage by China Mobile, the band they use is B8. The E01will use CoAP((% style="color:red" %)120.24.4.116:5683)(%%) or raw UDP((% style="color:red" %)120.24.4.116:5601)(%%) or MQTT((% style="color:red" %)120.24.4.116:1883)(%%)or TCP((% style="color:red" %)120.24.4.116:5600)(%%)protocol to send data to the test server170 +Below figure shows our testing structure. Here we have NB-IoT network coverage by China Mobile, the band they use is B8. The NDDS75 will use CoAP((% style="color:red" %)120.24.4.116:5683)(%%) or raw UDP((% style="color:red" %)120.24.4.116:5601)(%%) or MQTT((% style="color:red" %)120.24.4.116:1883)(%%)or TCP((% style="color:red" %)120.24.4.116:5600)(%%)protocol to send data to the test server. 158 158 ))) 159 159 160 160 161 -[[image:16572 49419225-449.png]]174 +[[image:1657328756309-230.png]] 162 162 163 163 164 164 165 165 === 2.2.2 Insert SIM card === 166 166 180 + 167 167 ((( 168 168 Insert the NB-IoT Card get from your provider. 169 169 ))) ... ... @@ -173,19 +173,22 @@ 173 173 ))) 174 174 175 175 176 -[[image:16572 49468462-536.png]]190 +[[image:1657328884227-504.png]] 177 177 178 178 179 179 180 -=== 2.2.3 Connect USB – TTL to NS E01to configure it ===194 +=== 2.2.3 Connect USB – TTL to NDDS75 to configure it === 181 181 196 + 182 182 ((( 183 183 ((( 184 -User need to configure NS E01via serial port to set the (% style="color:blue" %)**Server Address** / **Uplink Topic** (%%)to define where and how-to uplink packets. NSE01support AT Commands, user can use a USB to TTL adapter to connect to NSE01and use AT Commands to configure it, as below.199 +User need to configure NDDS75 via serial port to set the (% style="color:blue" %)**Server Address** / **Uplink Topic** (%%)to define where and how-to uplink packets. NDDS75 support AT Commands, user can use a USB to TTL adapter to connect to NDDS75 and use AT Commands to configure it, as below. 185 185 ))) 186 186 ))) 187 187 203 +[[image:image-20220709092052-2.png]] 188 188 205 + 189 189 **Connection:** 190 190 191 191 (% style="background-color:yellow" %)USB TTL GND <~-~-~-~-> GND ... ... @@ -204,13 +204,14 @@ 204 204 * Flow Control: (% style="color:green" %)**None** 205 205 206 206 ((( 207 -Make sure the switch is in FLASH position, then power on device by connecting the jumper on NS E01. NSE01will output system info once power on as below, we can enter the (% style="color:green" %)**password: 12345678**(%%) to access AT Command input.224 +Make sure the switch is in FLASH position, then power on device by connecting the jumper on NDDS75. NDDS75 will output system info once power on as below, we can enter the (% style="color:green" %)**password: 12345678**(%%) to access AT Command input. 208 208 ))) 209 209 210 -[[image: image-20220708110657-3.png]]227 +[[image:1657329814315-101.png]] 211 211 229 + 212 212 ((( 213 -(% style="color:red" %)Note: the valid AT Commands can be found at: (%%)[[http:~~/~~/www.dr agino.com/downloads/index.php?dir=NB-IoT/NSE01/>>url:http://www.dragino.com/downloads/index.php?dir=NB-IoT/NBSN50/]]231 +(% style="color:red" %)**Note: the valid AT Commands can be found at: **(%%)**[[https:~~/~~/www.dropbox.com/sh/aaq2xcl0bzfu0yd/AAAEAHRa7Io_465ds4Y7-F3aa?dl=0>>https://www.dropbox.com/sh/aaq2xcl0bzfu0yd/AAAEAHRa7Io_465ds4Y7-F3aa?dl=0]]** 214 214 ))) 215 215 216 216 ... ... @@ -217,59 +217,72 @@ 217 217 218 218 === 2.2.4 Use CoAP protocol to uplink data === 219 219 220 -(% 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/]] 221 221 239 +(% 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/]]** 222 222 241 + 242 +((( 223 223 **Use below commands:** 244 +))) 224 224 225 -* (% style="color:blue" %)**AT+PRO=1** (%%) ~/~/ Set to use CoAP protocol to uplink 226 -* (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5683 ** (%%)~/~/ to set CoAP server address and port 227 -* (% style="color:blue" %)**AT+URI=5,11,"mqtt",11,"coap",12,"0",15,"c=text1",23,"0" ** (%%) ~/~/Set COAP resource path 246 +* ((( 247 +(% style="color:blue" %)**AT+PRO=1** (%%) ~/~/ Set to use CoAP protocol to uplink 248 +))) 249 +* ((( 250 +(% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5683 ** (%%)~/~/ to set CoAP server address and port 251 +))) 252 +* ((( 253 +(% style="color:blue" %)**AT+URI=5,11,"mqtt",11,"coap",12,"0",15,"c=text1",23,"0" ** (%%) ~/~/Set COAP resource path 228 228 255 + 256 + 257 +))) 258 + 259 +((( 229 229 For parameter description, please refer to AT command set 261 +))) 230 230 231 -[[image:1657 249793983-486.png]]263 +[[image:1657330452568-615.png]] 232 232 233 233 234 -After configure the server address and (% style="color:green" %)**reset the device**(%%) (via AT+ATZ ), NSE01 will start to uplink sensor values to CoAP server. 235 235 236 -[[image:1657249831934-534.png]] 267 +((( 268 +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. 269 +))) 237 237 271 +[[image:1657330472797-498.png]] 238 238 239 239 274 + 240 240 === 2.2.5 Use UDP protocol to uplink data(Default protocol) === 241 241 242 -This feature is supported since firmware version v1.0.1 243 243 244 - 245 -* (% style="color:blue" %)**AT+PRO=2 ** (%%) ~/~/ Set to use UDP protocol to uplink 278 +* (% style="color:blue" %)**AT+PRO=2 ** (%%) ~/~/ Set to use UDP protocol to uplink 246 246 * (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5601 ** (%%) ~/~/ to set UDP server address and port 247 -* (% style="color:blue" %)**AT+CFM=1 ** (%%) ~/~/If the server does not respond, this command is unnecessary 280 +* (% style="color:blue" %)**AT+CFM=1 ** (%%) ~/~/ If the server does not respond, this command is unnecessary 248 248 249 -[[image:1657 249864775-321.png]]282 +[[image:1657330501006-241.png]] 250 250 251 251 252 -[[image:1657 249930215-289.png]]285 +[[image:1657330533775-472.png]] 253 253 254 254 255 255 256 256 === 2.2.6 Use MQTT protocol to uplink data === 257 257 258 -This feature is supported since firmware version v110 259 259 292 +* (% style="color:blue" %)**AT+PRO=3 ** (%%) ~/~/Set to use MQTT protocol to uplink 293 +* (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,1883 ** (%%) ~/~/Set MQTT server address and port 294 +* (% style="color:blue" %)**AT+CLIENT=CLIENT ** (%%)~/~/Set up the CLIENT of MQTT 295 +* (% style="color:blue" %)**AT+UNAME=UNAME **(%%)~/~/Set the username of MQTT 296 +* (% style="color:blue" %)**AT+PWD=PWD **(%%)~/~/Set the password of MQTT 297 +* (% style="color:blue" %)**AT+PUBTOPIC=NDDS75_PUB **(%%)~/~/Set the sending topic of MQTT 298 +* (% style="color:blue" %)**AT+SUBTOPIC=NDDS75_SUB **(%%) ~/~/Set the subscription topic of MQTT 260 260 261 -* (% style="color:blue" %)**AT+PRO=3 ** (%%) ~/~/Set to use MQTT protocol to uplink 262 -* (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,1883 ** (%%) ~/~/Set MQTT server address and port 263 -* (% style="color:blue" %)**AT+CLIENT=CLIENT ** (%%)~/~/Set up the CLIENT of MQTT 264 -* (% style="color:blue" %)**AT+UNAME=UNAME **(%%)~/~/Set the username of MQTT 265 -* (% style="color:blue" %)**AT+PWD=PWD **(%%)~/~/Set the password of MQTT 266 -* (% style="color:blue" %)**AT+PUBTOPIC=NSE01_PUB **(%%)~/~/Set the sending topic of MQTT 267 -* (% style="color:blue" %)**AT+SUBTOPIC=NSE01_SUB **(%%) ~/~/Set the subscription topic of MQTT 268 - 269 269 [[image:1657249978444-674.png]] 270 270 271 271 272 -[[image:16572 49990869-686.png]]303 +[[image:1657330723006-866.png]] 273 273 274 274 275 275 ((( ... ... @@ -280,72 +280,119 @@ 280 280 281 281 === 2.2.7 Use TCP protocol to uplink data === 282 282 283 -This feature is supported since firmware version v110 284 284 285 - 286 286 * (% style="color:blue" %)**AT+PRO=4 ** (%%) ~/~/ Set to use TCP protocol to uplink 287 287 * (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5600 **(%%) ~/~/ to set TCP server address and port 288 288 289 -[[image: 1657250217799-140.png]]318 +[[image:image-20220709093918-1.png]] 290 290 291 291 292 -[[image: 1657250255956-604.png]]321 +[[image:image-20220709093918-2.png]] 293 293 294 294 295 295 296 296 === 2.2.8 Change Update Interval === 297 297 327 + 298 298 User can use below command to change the (% style="color:green" %)**uplink interval**. 299 299 300 300 * (% style="color:blue" %)**AT+TDC=600 ** (%%)~/~/ Set Update Interval to 600s 301 301 302 302 ((( 303 -(% style="color:red" %)**NOTE:** 304 -))) 333 +(% style="color:red" %)**NOTE: By default, the device will send an uplink message every 1 hour.** 305 305 306 -((( 307 -(% style="color:red" %)1. By default, the device will send an uplink message every 1 hour. 335 + 308 308 ))) 309 309 338 +**NOTE:When the firmware version is v1.3.2 and later firmware:** 310 310 340 +**By default, the device will send an uplink message every 2 hours. Each Uplink Include 8 set of records in this 2 hour (15 minute interval / record).** 311 311 342 + 312 312 == 2.3 Uplink Payload == 313 313 314 -In this mode, uplink payload includes in total 18 bytes 315 315 316 -(% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510px" %) 346 +In this mode, uplink payload includes in total 14 bytes 347 + 348 + 349 +(% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:440px" %) 317 317 |=(% style="width: 60px;" %)((( 318 318 **Size(bytes)** 319 -)))|=(% style="width: 50px;" %)**6**|=(% style="width:25px;" %)2|=(% style="width:25px;" %)**2**|=(% style="width:70px;" %)**1**|=(% style="width:60px;" %)**2**|=(% style="width: 80px;" %)**2**|=(% style="width:90px;" %)**2**|=(% style="width: 50px;" %)**1**320 -|(% 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:10 8px" %)[[Soil Moisture>>||anchor="H2.4.5A0SoilMoisture"]]|(%style="width:133px"%)[[Soil Temperature>>||anchor="H2.4.6A0SoilTemperature"]]|(%style="width:159px" %)[[Soil Conductivity(EC)>>||anchor="H2.4.7A0SoilConductivity28EC29"]]|(% style="width:80px" %)[[Interrupt>>||anchor="H2.4.8A0DigitalInterrupt"]]352 +)))|=(% style="width: 60px;" %)**6**|=(% style="width: 35px;" %)2|=(% style="width: 35px;" %)**2**|=(% style="width: 80px;" %)**1**|=(% style="width: 100px;" %)**2**|=(% style="width: 60px;" %)**1** 353 +|(% 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"]] 321 321 322 322 ((( 323 -If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the NS E01 uplink data.356 +If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the NDDS751 uplink data. 324 324 ))) 325 325 326 326 327 -[[image: image-20220708111918-4.png]]360 +[[image:1657331036973-987.png]] 328 328 329 329 363 +((( 330 330 The payload is ASCII string, representative same HEX: 365 +))) 331 331 332 -0x72403155615900640c7817075e0a8c02f900 where: 367 +((( 368 +0x72403155615900640c6c19029200 where: 369 +))) 333 333 334 -* Device ID: 0x 724031556159 = 724031556159 335 -* Version: 0x0064=100=1.0.0 371 +* ((( 372 +Device ID: 0x724031556159 = 724031556159 373 +))) 374 +* ((( 375 +Version: 0x0064=100=1.0.0 376 +))) 336 336 337 -* BAT: 0x0c78 = 3192 mV = 3.192V 338 -* Singal: 0x17 = 23 339 -* Soil Moisture: 0x075e= 1886 = 18.86 % 340 -* Soil Temperature:0x0a8c =2700=27 °C 341 -* Soil Conductivity(EC) = 0x02f9 =761 uS /cm 342 -* Interrupt: 0x00 = 0 378 +* ((( 379 +BAT: 0x0c6c = 3180 mV = 3.180V 380 +))) 381 +* ((( 382 +Signal: 0x19 = 25 383 +))) 384 +* ((( 385 +Distance: 0x0292= 658 mm 386 +))) 387 +* ((( 388 +Interrupt: 0x00 = 0 343 343 390 + 391 +))) 392 + 393 +**NOTE:When the firmware version is v1.3.2 and later firmware:** 394 + 395 +In this mode, uplink payload includes 69 bytes in total by default. 396 + 397 +Each time the device uploads a data package, 8 sets of recorded data will be attached. Up to 32 sets of recorded data can be uploaded. 398 + 399 +|**Size(bytes)**|**8**|2|2|1|1|1|2|4|2|4 400 +|**Value**|Device ID|Ver|BAT|Signal Strength|MOD|Interrupt|Distance|Timestamp|Distance|Timestamp....... 401 + 402 +If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the NDDS75 uplink data. 403 + 404 +[[image:image-20220908175246-1.png]] 405 + 406 +The payload is ASCII string, representative same HEX: 407 + 408 +0x(% style="color:red" %)f867787050213317(% style="color:blue" %)0084(% style="color:green" %)0cf4(% style="color:red" %)1e(% style="color:blue" %)01(% style="color:green" %)00(% style="color:red" %)**//00396319bb32//**00396319baf0//**00396319ba3c**//00396319b988//**00396319b8d4**//00396319b820//**00396319b76c**//00396319b6b8//**00396319b604**//(%%) where: 409 + 410 +* (% style="color:green" %)Device ID: f867787050213317 = f867787050213317 411 +* (% style="color:red" %)Version: 0x0084=132=1.3.2 412 +* (% style="color:green" %)BAT: 0x0cf4 = 3316 mV = 3.316V 413 +* (% style="color:blue" %)Singal: 0x1e = 30 414 +* (% style="color:red" %)Mod: 0x01 = 1 415 +* Interrupt: 0x00= 0 416 +* Distance: 0x0039= 57 = 57 417 +* Time stamp : 0x6315537b =1662342011 ([[Unix Epoch Time>>url:http://www.epochconverter.com/]]) 418 +* Distance,Time stamp : 00396319baf0 419 +* (% style="color:red" %) 8 sets of recorded data: Distance,Time stamp : //**00396319ba3c**//,....... 420 + 344 344 == 2.4 Payload Explanation and Sensor Interface == 345 345 346 346 347 347 === 2.4.1 Device ID === 348 348 426 + 349 349 ((( 350 350 By default, the Device ID equal to the last 6 bytes of IMEI. 351 351 ))) ... ... @@ -352,6 +352,8 @@ 352 352 353 353 ((( 354 354 User can use (% style="color:blue" %)**AT+DEUI**(%%) to set Device ID 433 + 434 + 355 355 ))) 356 356 357 357 ((( ... ... @@ -363,19 +363,29 @@ 363 363 ))) 364 364 365 365 ((( 366 -The Device ID is stored in a none-erase area, Upgrade the firmware or run AT+FDR won't erase Device ID. 446 +The Device ID is stored in a none-erase area, Upgrade the firmware or run **AT+FDR** won't erase Device ID. 367 367 ))) 368 368 369 369 450 +**NOTE:When the firmware version is v1.3.2 and later firmware:** 370 370 452 +By default, the Device ID equal to the last 15 bits of IMEI. 453 + 454 +User can use **AT+DEUI** to set Device ID 455 + 456 +**Example:** 457 + 458 +AT+DEUI=868411056754138 459 + 371 371 === 2.4.2 Version Info === 372 372 462 + 373 373 ((( 374 374 Specify the software version: 0x64=100, means firmware version 1.00. 375 375 ))) 376 376 377 377 ((( 378 -For example: 0x00 64 : this device is NS E01with firmware version 1.0.0.468 +For example: 0x00 64 : this device is NDDS75 with firmware version 1.0.0. 379 379 ))) 380 380 381 381 ... ... @@ -382,9 +382,6 @@ 382 382 383 383 === 2.4.3 Battery Info === 384 384 385 -((( 386 -Check the battery voltage for LSE01. 387 -))) 388 388 389 389 ((( 390 390 Ex1: 0x0B45 = 2885mV ... ... @@ -398,6 +398,7 @@ 398 398 399 399 === 2.4.4 Signal Strength === 400 400 488 + 401 401 ((( 402 402 NB-IoT Network signal Strength. 403 403 ))) ... ... @@ -428,65 +428,22 @@ 428 428 429 429 430 430 431 -=== 2.4.5 Soil Moisture ===519 +=== 2.4.5 Distance === 432 432 433 -((( 434 -((( 435 -Get the moisture content of the soil. The value range of the register is 0-10000(Decimal), divide this value by 100 to get the percentage of moisture in the soil. 436 -))) 437 -))) 438 438 439 -((( 440 -((( 441 -For example, if the data you get from the register is **__0x05 0xDC__**, the moisture content in the soil is 442 -))) 443 -))) 522 +Get the distance. Flat object range 280mm - 7500mm. 444 444 445 445 ((( 446 - 525 +For example, if the data you get from the register is **__0x0B 0x05__**, the distance between the sensor and the measured object is 447 447 ))) 448 448 449 449 ((( 450 -(% style="color:#4f81bd" %)**05DC(H) = 1500(D) /100 = 15%.** 451 -))) 452 - 453 - 454 - 455 -=== 2.4.6 Soil Temperature === 456 - 457 457 ((( 458 - Getthetemperatureinthesoil.Thevaluerangeoftheregisteris-4000-+800(Decimal),dividethisvalueby100togetthetemperatureinthesoil.Forexample,ifthedatayougetfromtheregisteris__**0x090xEC**__,thetemperaturecontentinthesoilis530 +(% style="color:blue" %)** 0B05(H) = 2821(D) = 2821mm.** 459 459 ))) 460 - 461 -((( 462 -**Example**: 463 463 ))) 464 464 465 465 ((( 466 -If payload is 0105H: ((0x0105 & 0x8000)>>15 === 0),temp = 0105(H)/100 = 2.61 °C 467 -))) 468 - 469 -((( 470 -If payload is FF7EH: ((FF7E & 0x8000)>>15 ===1),temp = (FF7E(H)-FFFF(H))/100 = -1.29 °C 471 -))) 472 - 473 - 474 - 475 -=== 2.4.7 Soil Conductivity (EC) === 476 - 477 -((( 478 -Obtain (% style="color:#4f81bd" %)**__soluble salt concentration__**(%%) in soil or (% style="color:#4f81bd" %)**__soluble ion concentration in liquid fertilizer__**(%%) or (% style="color:#4f81bd" %)**__planting medium__**(%%). The value range of the register is 0 - 20000(Decimal)( Can be greater than 20000). 479 -))) 480 - 481 -((( 482 -For example, if the data you get from the register is __**0x00 0xC8**__, the soil conductivity is 00C8(H) = 200(D) = 200 uS/cm. 483 -))) 484 - 485 -((( 486 -Generally, the EC value of irrigation water is less than 800uS / cm. 487 -))) 488 - 489 -((( 490 490 491 491 ))) 492 492 ... ... @@ -494,10 +494,11 @@ 494 494 495 495 ))) 496 496 497 -=== 2.4. 8Digital Interrupt ===542 +=== 2.4.6 Digital Interrupt === 498 498 544 + 499 499 ((( 500 -Digital Interrupt refers to pin (% style="color:blue" %)**GPIO_EXTI**(%%), and there are different trigger methods. When there is a trigger, the NS E01will send a packet to the server.546 +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. 501 501 ))) 502 502 503 503 ((( ... ... @@ -528,19 +528,24 @@ 528 528 529 529 530 530 531 -=== 2.4. 9+5V Output ===577 +=== 2.4.7 +5V Output === 532 532 579 + 533 533 ((( 534 -NS E01will enable +5V output before all sampling and disable the +5v after all sampling.581 +NDDS75 will enable +5V output before all sampling and disable the +5v after all sampling. 535 535 ))) 536 536 537 537 538 538 ((( 539 539 The 5V output time can be controlled by AT Command. 587 + 588 + 540 540 ))) 541 541 542 542 ((( 543 543 (% style="color:blue" %)**AT+5VT=1000** 593 + 594 + 544 544 ))) 545 545 546 546 ((( ... ... @@ -551,11 +551,12 @@ 551 551 552 552 == 2.5 Downlink Payload == 553 553 554 -By default, NSE01 prints the downlink payload to console port. 555 555 556 - [[image:image-20220708133731-5.png]]606 +By default, NDDS75 prints the downlink payload to console port. 557 557 608 +[[image:image-20220709100028-1.png]] 558 558 610 + 559 559 ((( 560 560 (% style="color:blue" %)**Examples:** 561 561 ))) ... ... @@ -589,7 +589,7 @@ 589 589 ))) 590 590 591 591 ((( 592 -If payload = 0x04FF, it will reset the NS E01644 +If payload = 0x04FF, it will reset the NDDS75 593 593 ))) 594 594 595 595 ... ... @@ -600,79 +600,89 @@ 600 600 ))) 601 601 602 602 655 +== 2.6 Distance alarm function == 603 603 604 - ==2.6LED Indicator ==657 +➢ AT Command: 605 605 606 -((( 607 -The NSE01 has an internal LED which is to show the status of different state. 659 +AT+ LDDSALARM=min,max 608 608 661 +² When min=0, and max≠0, Alarm higher than max 609 609 610 -* When power on, NSE01 will detect if sensor probe is connected, if probe detected, LED will blink four times. (no blinks in this step is no probe) 611 -* Then the LED will be on for 1 second means device is boot normally. 612 -* After NSE01 join NB-IoT network. The LED will be ON for 3 seconds. 613 -* For each uplink probe, LED will be on for 500ms. 614 -))) 663 +² When min≠0, and max=0, Alarm lower than min 615 615 665 +² When min≠0 and max≠0, Alarm higher than max or lower than min 616 616 667 +Example: 617 617 669 +AT+ LDDSALARM=260,2000 ~/~/ Alarm when distance lower than 260. 618 618 619 -== 2.7 Installation in Soil == 620 620 621 - __**Measurementthesoilsurface**__672 +== 2.7 Set the number of data to be uploaded and the recording time == 622 622 623 -((( 624 -Choose the proper measuring position. Avoid the probe to touch rocks or hard things. Split the surface soil according to the measured deep. Keep the measured as original density. Vertical insert the probe into the soil to be measured. Make sure not shake when inserting. [[https:~~/~~/img.alicdn.com/imgextra/i3/2005165265/O1CN010rj9Oh1olPsQxrdUK_!!2005165265.jpg>>url:https://img.alicdn.com/imgextra/i3/2005165265/O1CN010rj9Oh1olPsQxrdUK_!!2005165265.jpg]] 625 -))) 674 +➢ AT Command: 626 626 627 - [[image:1657259653666-883.png]]676 +AT+TR=900 ~/~/The unit is seconds, and the default is to record data once every 900 seconds.( The minimum can be set to 180 seconds) 628 628 678 +AT+NOUD=8 ~/~/The device uploads 8 sets of recorded data by default. Up to 32 sets of record data can be uploaded. 629 629 630 -((( 631 - 680 +== 2.8 Read or Clear cached data == 632 632 633 -((( 634 -Dig a hole with diameter > 20CM. 635 -))) 682 +➢ AT Command: 636 636 637 -((( 638 -Horizontal insert the probe to the soil and fill the hole for long term measurement. 639 -))) 640 -))) 684 +AT+CDP ~/~/ Read cached data 641 641 642 -[[image: 1654506665940-119.png]]686 +[[image:image-20220908175333-2.png]] 643 643 688 +AT+CDP=0 ~/~/ Clear cached data 689 + 690 +== 2.9 LED Indicator == 691 + 692 + 693 +The NDDS75 has an internal LED which is to show the status of different state. 694 + 695 + 696 +* 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) 697 +* Then the LED will be on for 1 second means device is boot normally. 698 +* After NDDS75 join NB-IoT network. The LED will be ON for 3 seconds. 699 +* For each uplink probe, LED will be on for 500ms. 700 + 644 644 ((( 645 645 646 646 ))) 647 647 648 648 649 -== 2.8 Firmware Change Log == 650 650 707 +== 2.10 Firmware Change Log == 651 651 652 -Download URL & Firmware Change log 653 653 654 -[[www.dragino.com/downloads/index.php?dir=NB-IoT/NSE01/Firmware/>>url:http://www.dragino.com/downloads/index.php?dir=NB-IoT/NBSN50/Firmware/]] 710 +((( 711 +Download URL & Firmware Change log: [[https:~~/~~/www.dropbox.com/sh/3hb94r49iszmstx/AADvSJcXxahEUfxqKWVnZx-La?dl=0>>https://www.dropbox.com/sh/3hb94r49iszmstx/AADvSJcXxahEUfxqKWVnZx-La?dl=0]] 712 +))) 655 655 714 +((( 715 + 716 +))) 656 656 657 -Upgrade Instruction: [[Upgrade_Firmware>>||anchor="H5.1200BHowtoUpgradeFirmware"]] 718 +((( 719 +Upgrade Instruction: [[Upgrade Firmware>>||anchor="H5.1200BHowtoUpgradeFirmware"]] 720 +))) 658 658 659 659 660 660 661 -== 2. 9Battery Analysis ==724 +== 2.11 Battery Analysis == 662 662 663 -=== 2.9.1 Battery Type === 664 664 727 +=== 2.11.1 Battery Type === 665 665 729 + 666 666 ((( 667 -The NS E01battery 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.731 +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. 668 668 ))) 669 669 670 - 671 671 ((( 672 672 The battery is designed to last for several years depends on the actually use environment and update interval. 673 673 ))) 674 674 675 - 676 676 ((( 677 677 The battery related documents as below: 678 678 ))) ... ... @@ -682,13 +682,14 @@ 682 682 * [[Lithium-ion Battery-Capacitor datasheet>>http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]] 683 683 684 684 ((( 685 -[[image:image-2022070 8140453-6.png]]747 +[[image:image-20220709101450-2.png]] 686 686 ))) 687 687 688 688 689 689 690 -=== 2. 9.2 Power consumption Analyze ===752 +=== 2.11.2 Power consumption Analyze === 691 691 754 + 692 692 ((( 693 693 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. 694 694 ))) ... ... @@ -721,12 +721,13 @@ 721 721 And the Life expectation in difference case will be shown on the right. 722 722 ))) 723 723 724 -[[image:image-2022070 8141352-7.jpeg]]787 +[[image:image-20220709110451-3.png]] 725 725 726 726 727 727 728 -=== 2. 9.3 Battery Note ===791 +=== 2.11.3 Battery Note === 729 729 793 + 730 730 ((( 731 731 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. 732 732 ))) ... ... @@ -733,10 +733,11 @@ 733 733 734 734 735 735 736 -=== 2. 9.4 Replace the battery ===800 +=== 2.11.4 Replace the battery === 737 737 802 + 738 738 ((( 739 -The default battery pack of NS E01includes 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).804 +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). 740 740 ))) 741 741 742 742 ... ... @@ -743,6 +743,7 @@ 743 743 744 744 = 3. Access NB-IoT Module = 745 745 811 + 746 746 ((( 747 747 Users can directly access the AT command set of the NB-IoT module. 748 748 ))) ... ... @@ -749,19 +749,23 @@ 749 749 750 750 ((( 751 751 The AT Command set can refer the BC35-G NB-IoT Module AT Command: [[https:~~/~~/www.dragino.com/downloads/index.php?dir=datasheet/other_vendors/BC35-G/>>url:https://www.dragino.com/downloads/index.php?dir=datasheet/other_vendors/BC35-G/]] 818 + 819 + 752 752 ))) 753 753 754 -[[image:16572 61278785-153.png]]822 +[[image:1657333200519-600.png]] 755 755 756 756 757 757 758 758 = 4. Using the AT Commands = 759 759 828 + 760 760 == 4.1 Access AT Commands == 761 761 762 -See this link for detail: [[http:~~/~~/www.dragino.com/downloads/index.php?dir=NB-IoT/NSE01/>>url:http://www.dragino.com/downloads/index.php?dir=NB-IoT/NBSN50/]] 763 763 832 +See this link for detail: [[https:~~/~~/www.dropbox.com/sh/aaq2xcl0bzfu0yd/AAAEAHRa7Io_465ds4Y7-F3aa?dl=0>>https://www.dropbox.com/sh/aaq2xcl0bzfu0yd/AAAEAHRa7Io_465ds4Y7-F3aa?dl=0]] 764 764 834 + 765 765 AT+<CMD>? : Help on <CMD> 766 766 767 767 AT+<CMD> : Run <CMD> ... ... @@ -801,7 +801,23 @@ 801 801 802 802 AT+SERVADDR : Server Address 803 803 874 +AT+TR : Get or Set record time" 804 804 876 +AT+APN : Get or set the APN 877 + 878 +AT+FBAND : Get or Set whether to automatically modify the frequency band 879 + 880 +AT+DNSCFG : Get or Set DNS Server 881 + 882 +AT+GETSENSORVALUE : Returns the current sensor measurement 883 + 884 +AT+NOUD : Get or Set the number of data to be uploaded 885 + 886 +AT+CDP : Read or Clear cached data 887 + 888 +AT+LDDSALARM : Get or Set alarm of distance 889 + 890 + 805 805 (% style="color:#037691" %)**COAP Management** 806 806 807 807 AT+URI : Resource parameters ... ... @@ -835,6 +835,7 @@ 835 835 836 836 = 5. FAQ = 837 837 924 + 838 838 == 5.1 How to Upgrade Firmware == 839 839 840 840 ... ... @@ -847,20 +847,14 @@ 847 847 ))) 848 848 849 849 ((( 850 -(% style="color:red" %)Notice, NS E01and LSE01share the same mother board. They use the same connection and method to update.937 +(% style="color:red" %)**Notice, NDDS75 and LDDS75 share the same mother board. They use the same connection and method to update.** 851 851 ))) 852 852 853 853 854 854 855 -== 5.2 Can I calibrate NSE01 to different soil types? == 856 - 857 -((( 858 -NSE01 is calibrated for saline-alkali soil and loamy soil. If users want to use it for other soil, they can calibrate the value in the IoT platform base on the value measured by saline-alkali soil and loamy soil. The formula can be found at [[this link>>https://www.dragino.com/downloads/downloads/LoRa_End_Node/LSE01/Calibrate_to_other_Soil_20220605.pdf]]. 859 -))) 860 - 861 - 862 862 = 6. Trouble Shooting = 863 863 944 + 864 864 == 6.1 Connection problem when uploading firmware == 865 865 866 866 ... ... @@ -876,6 +876,7 @@ 876 876 877 877 == 6.2 AT Command input doesn't work == 878 878 960 + 879 879 ((( 880 880 In the case if user can see the console output but can't type input to the device. Please check if you already include the (% style="color:green" %)**ENTER**(%%) while sending out the command. Some serial tool doesn't send (% style="color:green" %)**ENTER**(%%) while press the send key, user need to add ENTER in their string. 881 881 ... ... @@ -886,7 +886,7 @@ 886 886 = 7. Order Info = 887 887 888 888 889 -Part Number**:** (% style="color:#4f81bd" %)**NS E01**971 +Part Number**:** (% style="color:#4f81bd" %)**NSDDS75** 890 890 891 891 892 892 (% class="wikigeneratedid" %) ... ... @@ -901,7 +901,7 @@ 901 901 902 902 (% style="color:#037691" %)**Package Includes**: 903 903 904 -* NS E01NB-IoTSoil Moisture&ECSensor x 1986 +* NDDS75 NB-IoT Distance Detect Sensor Node x 1 905 905 * External antenna x 1 906 906 ))) 907 907 ... ... @@ -908,10 +908,13 @@ 908 908 ((( 909 909 910 910 993 + 911 911 (% style="color:#037691" %)**Dimension and weight**: 912 912 913 -* Size: 195 x 125 x 55 mm 914 -* Weight: 420g 996 +* Device Size: 13.0 x 5 x 4.5 cm 997 +* Device Weight: 150g 998 +* Package Size / pcs : 15 x 12x 5.5 cm 999 +* Weight / pcs : 220g 915 915 ))) 916 916 917 917 ((( ... ... @@ -923,5 +923,6 @@ 923 923 924 924 = 9. Support = 925 925 1011 + 926 926 * 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. 927 927 * Provide as much information as possible regarding your enquiry (product models, accurately describe your problem and steps to replicate it etc) and send a mail to [[support@dragino.com>>url: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.com]]
- 1657328756309-230.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +78.5 KB - Content
- 1657328884227-504.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +483.6 KB - Content
- 1657329814315-101.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +85.3 KB - Content
- 1657330452568-615.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +71.3 KB - Content
- 1657330472797-498.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +68.9 KB - Content
- 1657330501006-241.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +119.2 KB - Content
- 1657330533775-472.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +74.9 KB - Content
- 1657330723006-866.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +74.1 KB - Content
- 1657331036973-987.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +83.8 KB - Content
- 1657332990863-496.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +138.2 KB - Content
- 1657333200519-600.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +126.1 KB - Content
- image-20220709092052-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +247.3 KB - Content
- image-20220709093918-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +42.2 KB - Content
- image-20220709093918-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +61.9 KB - Content
- image-20220709100028-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +8.8 KB - Content
- image-20220709101450-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +138.5 KB - Content
- image-20220709110451-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +611.5 KB - Content
- image-20220908175246-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.David - Size
-
... ... @@ -1,0 +1,1 @@ 1 +55.7 KB - Content
- image-20220908175333-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.David - Size
-
... ... @@ -1,0 +1,1 @@ 1 +31.1 KB - Content