Last modified by Mengting Qiu on 2024/04/02 16:44

From version 85.1
edited by Xiaoling
on 2022/07/09 09:35
Change comment: Uploaded new attachment "1657330501006-241.png", version {1}
To version 115.4
edited by Xiaoling
on 2022/07/09 17:16
Change comment: There is no comment for this version

Summary

Details

Page properties
Title
... ... @@ -1,1 +1,1 @@
1 -NDDS75 NB-IoT Distance Detect Sensor User Manual
1 +N95S31B NB-IoT Temperature & Humidity Sensor User Manual
Content
... ... @@ -1,62 +1,60 @@
1 1  (% style="text-align:center" %)
2 -[[image:image-20220709085040-1.png||height="542" width="524"]]
2 +[[image:1657348034241-728.png||height="470" width="470"]]
3 3  
4 4  
5 5  
6 6  
7 7  
8 -**Table of Contents:**
9 9  
10 10  
10 +**Table of Contents:**
11 11  
12 12  
13 13  
14 14  
15 15  
16 +
16 16  = 1.  Introduction =
17 17  
18 -== 1.1 ​ What is NDDS75 Distance Detection Sensor ==
19 +== 1.1 ​ What is N95S31B NB-IoT Sensor Node ==
19 19  
20 20  (((
21 21  
22 22  
23 -(((
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 -)))
24 +The Dragino N95S31B is a (% style="color:blue" %)**NB-IoT Temperature and Humidity Sensor**(%%) for Internet of Things solution. It is used to measure the (% style="color:blue" %)**surrounding environment temperature and relative air humidity precisely**(%%), and then upload to IoT server via NB-IoT network*.
31 31  
32 -
33 -)))
26 +The temperature & humidity sensor used in N95S31B is SHT31, which is fully calibrated, linearized, and temperature compensated digital output from Sensirion, it provides a strong reliability and long-term stability. The SHT31 is fixed in a (% style="color:blue" %)**waterproof anti-condensation casing **(%%)for long term use.
34 34  
35 -[[image:1654503236291-817.png]]
28 +N95S31B supports different uplink methods include (% style="color:blue" %)**TCP, MQTT, UDP and CoAP**(%%) for different application requirement.
36 36  
30 +N95S31B is powered by(% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), It is designed for long term use up to several years. (Real-world battery life depends on the use environment, update period. Please check related Power Analyze report).
37 37  
38 -[[image:1657327959271-447.png]]
39 39  
33 +~* make sure you have NB-IoT coverage locally.
40 40  
35 +
36 +)))
41 41  
42 -== 1.2 ​ Features ==
38 +[[image:1657348284168-431.png]]
43 43  
44 44  
41 +
42 +== 1.2 ​ Features ==
43 +
45 45  * NB-IoT Bands: B1/B3/B8/B5/B20/B28 @H-FDD
46 -* Ultra low power consumption
47 -* Distance Detection by Ultrasonic technology
48 -* Flat object range 280mm - 7500mm
49 -* Accuracy: ±(1cm+S*0.3%) (S: Distance)
50 -* Cable Length: 25cm
45 +* Monitor Temperature & Humidity via SHT31
51 51  * AT Commands to change parameters
52 52  * Uplink on periodically
53 53  * Downlink to change configure
54 54  * IP66 Waterproof Enclosure
50 +* Ultra-Low Power consumption
51 +* AT Commands to change parameters
55 55  * Micro SIM card slot for NB-IoT SIM
56 56  * 8500mAh Battery for long term use
57 57  
58 58  
59 59  
57 +
60 60  == 1.3  Specification ==
61 61  
62 62  
... ... @@ -74,9 +74,9 @@
74 74  * - B20 @H-FDD: 800MHz
75 75  * - B28 @H-FDD: 700MHz
76 76  
77 -
78 78  (% style="color:#037691" %)**Battery:**
79 79  
77 +
80 80  * Li/SOCI2 un-chargeable battery
81 81  * Capacity: 8500mAh
82 82  * Self Discharge: <1% / Year @ 25°C
... ... @@ -84,14 +84,8 @@
84 84  * Max boost current: 2A, 1 second
85 85  
86 86  
87 -(% style="color:#037691" %)**Power Consumption**
88 88  
89 -* STOP Mode: 10uA @ 3.3v
90 -* Max transmit power: 350mA@3.3v
91 91  
92 -
93 -
94 -
95 95  == ​1.4  Applications ==
96 96  
97 97  * Smart Buildings & Home Automation
... ... @@ -105,26 +105,53 @@
105 105  ​
106 106  
107 107  
108 -
109 109  == 1.5  Pin Definitions ==
110 110  
102 +N95S31B use the mother board from NBSN95 which as below.
111 111  
112 -[[image:1657328609906-564.png]]
104 +[[image:image-20220709144723-1.png]]
113 113  
114 114  
107 +=== 1.5.1 Jumper JP2 ===
115 115  
109 +Power on Device when put this jumper.
116 116  
117 -= 2.  Use NDDS75 to communicate with IoT Server =
118 118  
112 +
113 +=== 1.5.2 BOOT MODE / SW1 ===
114 +
115 +1) ISP: upgrade mode, device won't have any signal in this mode. but ready for upgrade firmware. LED won't work. Firmware won't run.
116 +
117 +2) Flash: work mode, device starts to work and send out console output for further debug
118 +
119 +
120 +
121 +=== 1.5.3 Reset Button ===
122 +
123 +Press to reboot the device.
124 +
125 +
126 +
127 +=== 1.5.4 LED ===
128 +
129 +It will flash:
130 +
131 +1. When boot the device in flash mode
132 +1. Send an uplink packet
133 +
134 +
135 += 2.  Use N95S31B to communicate with IoT Server =
136 +
119 119  == 2.1  How it works ==
120 120  
139 +
121 121  (((
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.
141 +The N95S31B is equipped with a NB-IoT module, the pre-loaded firmware in N95S31B 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 N95S31B.
123 123  )))
124 124  
125 125  
126 126  (((
127 -The diagram below shows the working flow in default firmware of NDDS75:
146 +The diagram below shows the working flow in default firmware of N95S31B:
128 128  )))
129 129  
130 130  (((
... ... @@ -131,7 +131,7 @@
131 131  
132 132  )))
133 133  
134 -[[image:1657328659945-416.png]]
153 +[[image:1657350248151-650.png]]
135 135  
136 136  (((
137 137  
... ... @@ -138,30 +138,45 @@
138 138  )))
139 139  
140 140  
141 -== 2.2 ​ Configure the NDDS75 ==
160 +== 2.2 ​ Configure the N95S31B ==
142 142  
143 143  
163 +=== 2.2.1  Power On N95S31B ===
164 +
165 +
166 +[[image:image-20220709150546-2.png]]
167 +
168 +
144 144  === 2.2.1 Test Requirement ===
145 145  
146 -(((
147 -To use NDDS75 in your city, make sure meet below requirements:
148 -)))
149 149  
172 +To use N95S31B in your city, make sure meet below requirements:
173 +
150 150  * Your local operator has already distributed a NB-IoT Network there.
151 -* The local NB-IoT network used the band that NSE01 supports.
175 +* The local NB-IoT network used the band that N95S31B supports.
152 152  * Your operator is able to distribute the data received in their NB-IoT network to your IoT server.
153 153  
178 +Below figure shows our testing structure. Here we have NB-IoT network coverage by China Mobile, the band they use is B8.
179 +
180 +N95S31B supports different communication protocol such as :
181 +
154 154  (((
155 -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
156 -)))
183 +* CoAP  ((% style="color:red" %)120.24.4.116:5683(%%))
184 +* raw UDP  ((% style="color:red" %)120.24.4.116:5601(%%))
185 +* MQTT  ((% style="color:red" %)120.24.4.116:1883(%%))
186 +* TCP  ((% style="color:red" %)120.24.4.116:5600(%%))
157 157  
188 +We will show how to use with each protocol. The IP addresses above are our test server. User need to change to point their corresponding server.
158 158  
159 -[[image:1657328756309-230.png]]
190 +
191 +)))
160 160  
193 +[[image:1657350625843-586.png]]
161 161  
162 162  
163 -=== 2.2.2 Insert SIM card ===
164 164  
197 +=== 2.2.3  Insert SIM card ===
198 +
165 165  (((
166 166  Insert the NB-IoT Card get from your provider.
167 167  )))
... ... @@ -171,19 +171,19 @@
171 171  )))
172 172  
173 173  
174 -[[image:1657328884227-504.png]]
208 +[[image:1657351240556-536.png]]
175 175  
176 176  
177 177  
178 -=== 2.2.3 Connect USB – TTL to NDDS75 to configure it ===
212 +=== 2.2. Connect USB – TTL to N95S31B to configure it ===
179 179  
180 180  (((
181 181  (((
182 -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.
216 +User need to configure N95S31B via serial port to set the (% style="color:blue" %)**Server Address** / **Uplink Topic** (%%)to define where and how-to uplink packets. N95S31B support AT Commands, user can use a USB to TTL adapter to connect to N95S31B and use AT Commands to configure it, as below.
183 183  )))
184 184  )))
185 185  
186 -[[image:image-20220709092052-2.png]]
220 +[[image:1657351312545-300.png]]
187 187  
188 188  **Connection:**
189 189  
... ... @@ -203,96 +203,110 @@
203 203  * Flow Control: (% style="color:green" %)**None**
204 204  
205 205  (((
206 -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.
240 +Make sure the switch is in FLASH position, then power on device by connecting the jumper on N95S31B. N95S31B will output system info once power on as below, we can enter the (% style="color:green" %)**password: 12345678**(%%) to access AT Command input.
207 207  )))
208 208  
209 209  [[image:1657329814315-101.png]]
210 210  
211 211  (((
212 -(% style="color:red" %)Note: the valid AT Commands can be found at: (%%)[[https:~~/~~/www.dragino.com/downloads/index.php?dir=NB-IoT/NDDS75/>>url:https://www.dragino.com/downloads/index.php?dir=NB-IoT/NDDS75/]]
246 +(% style="color:red" %)Note: the valid AT Commands can be found at:  (%%)[[https:~~/~~/www.dragino.com/downloads/index.php?dir=NB-IoT/N95S31B/>>url:https://www.dragino.com/downloads/index.php?dir=NB-IoT/N95S31B/]]
213 213  )))
214 214  
215 215  
216 216  
217 -=== 2.2.4 Use CoAP protocol to uplink data ===
251 +=== 2.2. Use CoAP protocol to uplink data ===
218 218  
219 219  (% 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/]]
220 220  
221 221  
256 +(((
222 222  **Use below commands:**
258 +)))
223 223  
224 -* (% style="color:blue" %)**AT+PRO=1**  (%%) ~/~/ Set to use CoAP protocol to uplink
225 -* (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5683   ** (%%)~/~/ to set CoAP server address and port
226 -* (% style="color:blue" %)**AT+URI=5,11,"mqtt",11,"coap",12,"0",15,"c=text1",23,"0" ** (%%) ~/~/Set COAP resource path
260 +* (((
261 +(% style="color:blue" %)**AT+PRO=1**  (%%) ~/~/ Set to use CoAP protocol to uplink
262 +)))
263 +* (((
264 +(% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5683   ** (%%)~/~/ to set CoAP server address and port
265 +)))
266 +* (((
267 +(% style="color:blue" %)**AT+URI=5,11,"mqtt",11,"coap",12,"0",15,"c=text1",23,"0" ** (%%) ~/~/Set COAP resource path
268 +)))
227 227  
270 +(((
271 +
272 +
228 228  For parameter description, please refer to AT command set
274 +)))
229 229  
230 -[[image:1657249793983-486.png]]
276 +[[image:1657352146020-183.png]]
231 231  
232 232  
233 -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.
279 +(((
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 +)))
234 234  
235 -[[image:1657249831934-534.png]]
283 +[[image:1657352185396-303.png]]
236 236  
237 237  
238 238  
239 -=== 2.2.5 Use UDP protocol to uplink data(Default protocol) ===
287 +=== 2.2. Use UDP protocol to uplink data(Default protocol) ===
240 240  
241 -This feature is supported since firmware version v1.0.1
242 242  
243 -
244 -* (% style="color:blue" %)**AT+PRO=2   ** (%%) ~/~/ Set to use UDP protocol to uplink
290 +* (% style="color:blue" %)**AT+PRO=2   ** (%%) ~/~/ Set to use UDP protocol to uplink
245 245  * (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5601   ** (%%) ~/~/ to set UDP server address and port
246 -* (% style="color:blue" %)**AT+CFM=1       ** (%%) ~/~/If the server does not respond, this command is unnecessary
292 +* (% style="color:blue" %)**AT+CFM=1       ** (%%) ~/~/ If the server does not respond, this command is unnecessary
247 247  
248 -[[image:1657249864775-321.png]]
294 +[[image:1657352391268-297.png]]
249 249  
250 250  
251 -[[image:1657249930215-289.png]]
297 +[[image:1657352403317-397.png]]
252 252  
253 253  
254 254  
255 -=== 2.2.6 Use MQTT protocol to uplink data ===
301 +=== 2.2. Use MQTT protocol to uplink data ===
256 256  
257 -This feature is supported since firmware version v110
303 +N95S31B supports only plain MQTT now it doesn't support TLS and other related encryption.
258 258  
305 +* (% style="color:blue" %)**AT+PRO=3   ** (%%) ~/~/Set to use MQTT protocol to uplink
306 +* (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,1883   ** (%%) ~/~/Set MQTT server address and port
307 +* (% style="color:blue" %)**AT+CLIENT=CLIENT       ** (%%)~/~/Set up the CLIENT of MQTT
308 +* (% style="color:blue" %)**AT+UNAME=UNAME                                **(%%)~/~/Set the username of MQTT
309 +* (% style="color:blue" %)**AT+PWD=PWD                                         **(%%)~/~/Set the password 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
259 259  
260 -* (% style="color:blue" %)**AT+PRO=3   ** (%%) ~/~/Set to use MQTT protocol to uplink
261 -* (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,1883   ** (%%) ~/~/Set MQTT server address and port
262 -* (% style="color:blue" %)**AT+CLIENT=CLIENT       ** (%%)~/~/Set up the CLIENT of MQTT
263 -* (% style="color:blue" %)**AT+UNAME=UNAME                               **(%%)~/~/Set the username of MQTT
264 -* (% style="color:blue" %)**AT+PWD=PWD                                        **(%%)~/~/Set the password of MQTT
265 -* (% style="color:blue" %)**AT+PUBTOPIC=NSE01_PUB                    **(%%)~/~/Set the sending topic of MQTT
266 -* (% style="color:blue" %)**AT+SUBTOPIC=NSE01_SUB          **(%%) ~/~/Set the subscription topic of MQTT
313 +[[image:1657352634421-276.png]]
267 267  
268 -[[image:1657249978444-674.png]]
269 269  
316 +[[image:1657352645687-385.png]]
270 270  
271 -[[image:1657249990869-686.png]]
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 +)))
272 272  
273 273  
274 274  (((
275 -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.
276 276  )))
277 277  
278 278  
279 279  
280 -=== 2.2.7 Use TCP protocol to uplink data ===
329 +=== 2.2. Use TCP protocol to uplink data ===
281 281  
282 282  This feature is supported since firmware version v110
283 283  
284 -
285 285  * (% style="color:blue" %)**AT+PRO=4   ** (%%) ~/~/ Set to use TCP protocol to uplink
286 286  * (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5600   **(%%) ~/~/ to set TCP server address and port
287 287  
288 -[[image:1657250217799-140.png]]
336 +[[image:1657352898400-901.png]]
289 289  
290 290  
291 -[[image:1657250255956-604.png]]
339 +[[image:1657352914475-252.png]]
292 292  
293 293  
294 294  
295 -=== 2.2.8 Change Update Interval ===
343 +=== 2.2. Change Update Interval ===
296 296  
297 297  User can use below command to change the (% style="color:green" %)**uplink interval**.
298 298  
... ... @@ -299,260 +299,199 @@
299 299  * (% style="color:blue" %)**AT+TDC=600      ** (%%)~/~/ Set Update Interval to 600s
300 300  
301 301  (((
302 -(% style="color:red" %)**NOTE:**
350 +
303 303  )))
304 304  
305 -(((
306 -(% style="color:red" %)1. By default, the device will send an uplink message every 1 hour.
307 -)))
308 308  
309 309  
310 -
311 311  == 2.3  Uplink Payload ==
312 312  
313 -In this mode, uplink payload includes in total 18 bytes
314 314  
315 -(% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510px" %)
316 -|=(% style="width: 60px;" %)(((
317 -**Size(bytes)**
318 -)))|=(% 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**
319 -|(% 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:108px" %)[[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"]]
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.
320 320  
321 -(((
322 -If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the NSE01 uplink data.
323 -)))
324 324  
361 +For example:
325 325  
326 -[[image:image-20220708111918-4.png]]
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.
327 327  
328 328  
329 -The payload is ASCII string, representative same HEX:
366 +The uplink payloads are composed in  ASCII String. For example:
330 330  
331 -0x72403155615900640c7817075e0a8c02f900 where:
368 +0a cd 00 ed 0a cc 00 00 ef 02 d2 1d (total 24 ASCII Chars) . Representative the actually payload:
332 332  
333 -* Device ID: 0x 724031556159 = 724031556159
334 -* Version: 0x0064=100=1.0.0
370 +0x 0a cd 00 ed 0a cc 00 00 ef 02 d2 1d Total 12 bytes
335 335  
336 -* BAT: 0x0c78 = 3192 mV = 3.192V
337 -* Singal: 0x17 = 23
338 -* Soil Moisture: 0x075e= 1886 = 18.86  %
339 -* Soil Temperature:0x0a8c =2700=27 °C
340 -* Soil Conductivity(EC) = 0x02f9 =761 uS /cm
341 -* Interrupt: 0x00 = 0
342 342  
343 -== 2.4  Payload Explanation and Sensor Interface ==
373 +(% style="color:red" %)**NOTE:**
344 344  
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.
345 345  
346 -=== 2.4.1  Device ID ===
347 347  
348 -(((
349 -By default, the Device ID equal to the last 6 bytes of IMEI.
350 -)))
351 351  
352 -(((
353 -User can use (% style="color:blue" %)**AT+DEUI**(%%) to set Device ID
354 -)))
381 +=== 2.3.1  Payload Analyze ===
355 355  
356 -(((
357 -**Example:**
358 -)))
383 +N95S31B uplink payload includes in total 21 bytes
359 359  
360 -(((
361 -AT+DEUI=A84041F15612
362 -)))
363 363  
364 -(((
365 -The Device ID is stored in a none-erase area, Upgrade the firmware or run AT+FDR won't erase Device ID.
366 -)))
386 +(% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:440px" %)
387 +|=(% style="width: 60px;" %)(((
388 +**Size(bytes)**
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
367 367  
393 +No function here.
394 +)))|(% style="width:77px" %)(((
395 +[[Temperature >>||anchor="H2.4.5A0Distance"]]
368 368  
397 +By SHT31
398 +)))|(% style="width:80px" %)(((
399 +[[Humidity>>||anchor="H2.4.6A0DigitalInterrupt"]]
369 369  
370 -=== 2.4.2  Version Info ===
371 -
372 -(((
373 -Specify the software version: 0x64=100, means firmware version 1.00.
401 +By SHT31
374 374  )))
375 375  
376 376  (((
377 -For example: 0x00 64 : this device is NSE01 with firmware version 1.0.0.
378 -)))
379 -
380 -
381 -
382 -=== 2.4.3  Battery Info ===
383 -
384 384  (((
385 -Check the battery voltage for LSE01.
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.
386 386  )))
387 -
388 -(((
389 -Ex1: 0x0B45 = 2885mV
390 390  )))
391 391  
392 -(((
393 -Ex2: 0x0B49 = 2889mV
394 -)))
395 395  
411 +[[image:1657354294009-643.png]]
396 396  
397 397  
398 -=== 2.4.4  Signal Strength ===
414 +The payload is ASCII string, representative same HEX: 0x724031607457006e0ccd1b0100dc000ccc00e10186 where:
399 399  
400 -(((
401 -NB-IoT Network signal Strength.
402 -)))
416 +* Device ID: 0x724031607457 = 724031607457
417 +* Version: 0x006e=110=1.1.0
403 403  
404 -(((
405 -**Ex1: 0x1d = 29**
406 -)))
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
407 407  
408 408  (((
409 -(% style="color:blue" %)**0**(%%)  -113dBm or less
427 +
410 410  )))
411 411  
412 412  (((
413 -(% style="color:blue" %)**1**(%%)  -111dBm
431 +
414 414  )))
415 415  
416 -(((
417 -(% style="color:blue" %)**2...30**(%%) -109dBm... -53dBm
418 -)))
419 419  
420 -(((
421 -(% style="color:blue" %)**31**  (%%) -51dBm or greater
422 -)))
435 +=== 2.3.2  Device ID ===
423 423  
424 424  (((
425 -(% style="color:blue" %)**99**   (%%) Not known or not detectable
438 +By default, the Device ID equal to the last 6 bytes of IMEI.
426 426  )))
427 427  
428 -
429 -
430 -=== 2.4.5  Soil Moisture ===
431 -
432 432  (((
433 -(((
434 -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.
442 +User can use (% style="color:blue" %)**AT+DEUI**(%%) to set Device ID
435 435  )))
436 -)))
437 437  
438 438  (((
439 -(((
440 -For example, if the data you get from the register is **__0x05 0xDC__**, the moisture content in the soil is
446 +**Example:**
441 441  )))
442 -)))
443 443  
444 444  (((
445 -
450 +AT+DEUI=A84041F15612
446 446  )))
447 447  
448 448  (((
449 -(% style="color:#4f81bd" %)**05DC(H) = 1500(D) /100 = 15%.**
454 +The Device ID is stored in a none-erase area, Upgrade the firmware or run **AT+FDR** won't erase Device ID.
450 450  )))
451 451  
452 452  
453 453  
454 -=== 2.4.6  Soil Temperature ===
459 +=== 2.3.3  Version Info ===
455 455  
456 -(((
457 -Get the temperature in the soil. The value range of the register is -4000 - +800(Decimal), divide this value by 100 to get the temperature in the soil. For example, if the data you get from the register is __**0x09 0xEC**__, the temperature content in the soil is
458 -)))
459 459  
460 -(((
461 -**Example**:
462 -)))
462 +These bytes include the hardware and software version.
463 463  
464 -(((
465 -If payload is 0105H: ((0x0105 & 0x8000)>>15 === 0),temp = 0105(H)/100 = 2.61 °C
466 -)))
464 +Higher byte: Specify hardware version: always 0x00 for N95S31B
467 467  
468 -(((
469 -If payload is FF7EH: ((FF7E & 0x8000)>>15 ===1),temp = (FF7E(H)-FFFF(H))/100 = -1.29 °C
470 -)))
466 +Lower byte: Specify the software version: 0x6E=110, means firmware version 110
471 471  
472 472  
469 +For example: 0x00 6E: this device is N95S31B with firmware version 110.
473 473  
474 -=== 2.4.7  Soil Conductivity (EC) ===
475 -
476 476  (((
477 -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).
472 +
478 478  )))
479 479  
480 -(((
481 -For example, if the data you get from the register is __**0x00 0xC8**__, the soil conductivity is 00C8(H) = 200(D) = 200 uS/cm.
482 -)))
483 483  
484 -(((
485 -Generally, the EC value of irrigation water is less than 800uS / cm.
486 -)))
476 +=== 2.3.4  Battery Info ===
487 487  
488 488  (((
489 -
479 +Ex1: 0x0B45 = 2885mV
490 490  )))
491 491  
492 492  (((
493 -
483 +Ex2: 0x0B49 = 2889mV
494 494  )))
495 495  
496 -=== 2.4.8  Digital Interrupt ===
497 497  
487 +
488 +=== 2.3.5  Signal Strength ===
489 +
498 498  (((
499 -Digital Interrupt refers to pin (% style="color:blue" %)**GPIO_EXTI**(%%), and there are different trigger methods. When there is a trigger, the NSE01 will send a packet to the server.
491 +NB-IoT Network signal Strength.
500 500  )))
501 501  
502 502  (((
503 -The command is:
495 +**Ex1: 0x1d = 29**
504 504  )))
505 505  
506 506  (((
507 -(% 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]])**.**
499 +(% style="color:blue" %)**0**(%%)  -113dBm or less
508 508  )))
509 509  
510 -
511 511  (((
512 -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.
503 +(% style="color:blue" %)**1**(%%)  -111dBm
513 513  )))
514 514  
515 -
516 516  (((
517 -Example:
507 +(% style="color:blue" %)**2...30**(%%) -109dBm... -53dBm
518 518  )))
519 519  
520 520  (((
521 -0x(00): Normal uplink packet.
511 +(% style="color:blue" %)**31**  (%%) -51dBm or greater
522 522  )))
523 523  
524 524  (((
525 -0x(01): Interrupt Uplink Packet.
515 +(% style="color:blue" %)**99**   (%%) Not known or not detectable
526 526  )))
527 527  
528 528  
529 529  
530 -=== 2.4.9  ​+5V Output ===
520 +=== 2.3.6  Temperature & Humidity ===
531 531  
532 -(((
533 -NSE01 will enable +5V output before all sampling and disable the +5v after all sampling. 
534 -)))
522 +The device will be able to get the SHT31 temperature and humidity data now and upload to IoT Server.
535 535  
524 +[[image:image-20220709161741-3.png]]
536 536  
537 -(((
538 -The 5V output time can be controlled by AT Command.
539 -)))
540 540  
541 -(((
542 -(% style="color:blue" %)**AT+5VT=1000**
543 -)))
527 +Convert the read byte to decimal and divide it by ten.
544 544  
545 -(((
546 -Means set 5V valid time to have 1000ms. So the real 5V output will actually have 1000ms + sampling time for other sensors.
547 -)))
548 548  
530 +**Example:**
549 549  
532 +Temperature:  Read:00ec (H) = 236(D)  Value:  236 /10=23.6℃
550 550  
534 +Humidity:    Read:0295(H)=661(D)    Value:  661 / 10=66.1, So 66.1%
535 +
536 +
537 +
551 551  == 2.5  Downlink Payload ==
552 552  
553 -By default, NSE01 prints the downlink payload to console port.
540 +By default, NDDS75 prints the downlink payload to console port.
554 554  
555 -[[image:image-20220708133731-5.png]]
542 +[[image:image-20220709100028-1.png]]
556 556  
557 557  
558 558  (((
... ... @@ -588,7 +588,7 @@
588 588  )))
589 589  
590 590  (((
591 -If payload = 0x04FF, it will reset the NSE01
578 +If payload = 0x04FF, it will reset the NDDS75
592 592  )))
593 593  
594 594  
... ... @@ -600,78 +600,19 @@
600 600  
601 601  
602 602  
603 -== 2.6  ​LED Indicator ==
590 +== 2.8  ​Battery Analysis ==
604 604  
605 -(((
606 -The NSE01 has an internal LED which is to show the status of different state.
592 +=== 2.8.1  ​Battery Type ===
607 607  
608 608  
609 -* 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)
610 -* Then the LED will be on for 1 second means device is boot normally.
611 -* After NSE01 join NB-IoT network. The LED will be ON for 3 seconds.
612 -* For each uplink probe, LED will be on for 500ms.
613 -)))
614 -
615 -
616 -
617 -
618 -== 2.7  Installation in Soil ==
619 -
620 -__**Measurement the soil surface**__
621 -
622 622  (((
623 -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]]
596 +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.
624 624  )))
625 625  
626 -[[image:1657259653666-883.png]] ​
627 -
628 -
629 629  (((
630 -
631 -
632 -(((
633 -Dig a hole with diameter > 20CM.
634 -)))
635 -
636 -(((
637 -Horizontal insert the probe to the soil and fill the hole for long term measurement.
638 -)))
639 -)))
640 -
641 -[[image:1654506665940-119.png]]
642 -
643 -(((
644 -
645 -)))
646 -
647 -
648 -== 2.8  ​Firmware Change Log ==
649 -
650 -
651 -Download URL & Firmware Change log
652 -
653 -[[www.dragino.com/downloads/index.php?dir=NB-IoT/NSE01/Firmware/>>url:http://www.dragino.com/downloads/index.php?dir=NB-IoT/NBSN50/Firmware/]]
654 -
655 -
656 -Upgrade Instruction: [[Upgrade_Firmware>>||anchor="H5.1200BHowtoUpgradeFirmware"]]
657 -
658 -
659 -
660 -== 2.9  ​Battery Analysis ==
661 -
662 -=== 2.9.1  ​Battery Type ===
663 -
664 -
665 -(((
666 -The NSE01 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.
667 -)))
668 -
669 -
670 -(((
671 671  The battery is designed to last for several years depends on the actually use environment and update interval. 
672 672  )))
673 673  
674 -
675 675  (((
676 676  The battery related documents as below:
677 677  )))
... ... @@ -681,12 +681,12 @@
681 681  * [[Lithium-ion Battery-Capacitor datasheet>>http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]
682 682  
683 683  (((
684 -[[image:image-20220708140453-6.png]]
612 +[[image:image-20220709101450-2.png]]
685 685  )))
686 686  
687 687  
688 688  
689 -=== 2.9.2  Power consumption Analyze ===
617 +=== 2.8.2  Power consumption Analyze ===
690 690  
691 691  (((
692 692  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.
... ... @@ -720,11 +720,11 @@
720 720  And the Life expectation in difference case will be shown on the right.
721 721  )))
722 722  
723 -[[image:image-20220708141352-7.jpeg]]
651 +[[image:image-20220709110451-3.png]]
724 724  
725 725  
726 726  
727 -=== 2.9.3  ​Battery Note ===
655 +=== 2.8.3  ​Battery Note ===
728 728  
729 729  (((
730 730  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,10 +732,10 @@
732 732  
733 733  
734 734  
735 -=== 2.9.4  Replace the battery ===
663 +=== 2.8.4  Replace the battery ===
736 736  
737 737  (((
738 -The default battery pack of NSE01 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).
666 +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).
739 739  )))
740 740  
741 741  
... ... @@ -750,7 +750,7 @@
750 750  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/]] 
751 751  )))
752 752  
753 -[[image:1657261278785-153.png]]
681 +[[image:1657333200519-600.png]]
754 754  
755 755  
756 756  
... ... @@ -758,7 +758,7 @@
758 758  
759 759  == 4.1  Access AT Commands ==
760 760  
761 -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/]]
689 +See this link for detail: [[https:~~/~~/www.dragino.com/downloads/index.php?dir=NB-IoT/NDDS75/>>url:http://www.dragino.com/downloads/index.php?dir=NB-IoT/NBSN50/]]
762 762  
763 763  
764 764  AT+<CMD>?  : Help on <CMD>
... ... @@ -846,18 +846,11 @@
846 846  )))
847 847  
848 848  (((
849 -(% style="color:red" %)Notice, NSE01 and LSE01 share the same mother board. They use the same connection and method to update.
777 +(% style="color:red" %)Notice, NDDS75 and LDDS75 share the same mother board. They use the same connection and method to update.
850 850  )))
851 851  
852 852  
853 853  
854 -== 5.2  Can I calibrate NSE01 to different soil types? ==
855 -
856 -(((
857 -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]].
858 -)))
859 -
860 -
861 861  = 6.  Trouble Shooting =
862 862  
863 863  == 6.1  ​Connection problem when uploading firmware ==
... ... @@ -885,7 +885,7 @@
885 885  = 7. ​ Order Info =
886 886  
887 887  
888 -Part Number**:** (% style="color:#4f81bd" %)**NSE01**
809 +Part Number**:** (% style="color:#4f81bd" %)**NSDDS75**
889 889  
890 890  
891 891  (% class="wikigeneratedid" %)
... ... @@ -900,7 +900,7 @@
900 900  
901 901  (% style="color:#037691" %)**Package Includes**:
902 902  
903 -* NSE01 NB-IoT Soil Moisture & EC Sensor x 1
824 +* NSE01 NB-IoT Distance Detect Sensor Node x 1
904 904  * External antenna x 1
905 905  )))
906 906  
... ... @@ -909,8 +909,11 @@
909 909  
910 910  (% style="color:#037691" %)**Dimension and weight**:
911 911  
912 -* Size: 195 x 125 x 55 mm
913 -* Weight:   420g
833 +
834 +* Device Size: 13.0 x 5 x 4.5 cm
835 +* Device Weight: 150g
836 +* Package Size / pcs : 15 x 12x 5.5 cm
837 +* Weight / pcs : 220g
914 914  )))
915 915  
916 916  (((
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
1657348034241-728.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +127.8 KB
Content
1657348284168-431.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +93.5 KB
Content
1657350248151-650.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +126.1 KB
Content
1657350625843-586.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +93.3 KB
Content
1657351240556-536.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +483.6 KB
Content
1657351312545-300.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +675.8 KB
Content
1657352146020-183.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +264.0 KB
Content
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-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-20220709144723-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +413.1 KB
Content
image-20220709150546-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +333.5 KB
Content
image-20220709161741-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +111.2 KB
Content