<
From version < 56.10 >
edited by Xiaoling
on 2023/04/04 08:54
To version < 47.1 >
edited by Edwin Chen
on 2022/09/08 00:11
>
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.Xiaoling
1 +XWiki.Edwin
Content
... ... @@ -1,5 +1,5 @@
1 1  (% style="text-align:center" %)
2 -[[image:)YK]Y_LZJIO]J2~~VA}OQJM2.png||height="442" width="410"]]
2 +[[image:)YK]Y_LZJIO]J2~~VA}OQJM2.png]]
3 3  
4 4  **Table of Contents:**
5 5  
... ... @@ -7,45 +7,27 @@
7 7  
8 8  
9 9  
10 -= 1.  Introduction =
10 += 1. Introduction =
11 11  
12 -== 1.1 ​ What is NSPH01 Soil pH Sensor ==
12 +== 1.1 ​What is NSPH01 Soil pH Sensor ==
13 13  
14 +The Dragino NSPH01 is a **NB-IoT soil pH sensor** for IoT of Agriculture. It is designed to measure the soil pH and soil temperature, so to send to the platform to analyze the soil acid or alkali level. The probe is IP68 waterproof.
14 14  
15 -(((
16 -The Dragino NSPH01 is a (% style="color:blue" %)**NB-IoT soil pH sensor**(%%) for IoT of Agriculture. It is designed to measure the soil pH and soil temperature, so to send to the platform to analyze the soil acid or alkali level. The probe is IP68 waterproof.
17 -)))
16 +NSPH01 probe is made by Solid AgCl reference electrode and Pure metal pH sensitive electrode. It can detect soil's** pH **with high accuracy and stable value. The NSPH01 probe can be buried into soil for long time use.
18 18  
19 -(((
20 -NSPH01 probe is made by Solid AgCl reference electrode and Pure metal pH sensitive electrode. It can detect soil's** (% style="color:blue" %)pH (%%)**with high accuracy and stable value. The NSPH01 probe can be buried into soil for long time use.
21 -)))
22 -
23 -(((
24 24  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.
25 -)))
19 +\\NSPH01 supports different uplink methods include **TCP,MQTT,UDP and CoAP  **for different application requirement.
20 +\\NSPH01 is powered by **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)
21 +\\To use NSPH01, user needs to check if there is NB-IoT coverage in the installation area and with the bands NSPH01 supports. If the local operator supports it, user needs to get a **NB-IoT SIM card** from local operator and install NSPH01 to get NB-IoT network connection.
26 26  
27 -(((
28 -NSPH01 supports different uplink methods include (% style="color:blue" %)**TCP,MQTT,UDP and CoAP  **(%%)for different application requirement.
29 -)))
30 -
31 -(((
32 -NSPH01 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)
33 -)))
34 -
35 -(((
36 -To use NSPH01, user needs to check if there is NB-IoT coverage in the installation area and with the bands NSPH01 supports. If the local operator supports it, user needs to get a (% style="color:blue" %)**NB-IoT SIM card** (%%)from local operator and install NSPH01 to get NB-IoT network connection.
37 -)))
38 -
39 -
23 +(% style="text-align:center" %)
40 40  [[image:image-20220907153151-1.png]]
41 41  
42 -
26 +(% style="text-align:center" %)
43 43  [[image:M_K`YF9`CAYAE\@}3T]FHT$9.png]]
44 44  
29 +== 1.2 Features ==
45 45  
46 -== 1.2  Features ==
47 -
48 -
49 49  * NB-IoT Bands: B1/B3/B8/B5/B20/B28 @H-FDD
50 50  * Monitor soil pH with temperature compensation.
51 51  * Monitor soil temperature
... ... @@ -61,32 +61,26 @@
61 61  * Micro SIM card slot
62 62  * 8500mAh Battery for long term use
63 63  
64 -
65 -
66 66  == 1.3  Specification ==
67 67  
48 +**Common DC Characteristics:**
68 68  
69 -(% style="color:#037691" %)**Common DC Characteristics:**
70 -
71 71  * Supply Voltage: 2.1v ~~ 3.6v
72 72  * Operating Temperature: -40 ~~ 85°C
73 73  
74 -(% style="color:#037691" %)**NB-IoT Spec:**
53 +**NB-IoT Spec:**
75 75  
76 -* B1 @H-FDD: 2100MHz
77 -* B3 @H-FDD: 1800MHz
78 -* B8 @H-FDD: 900MHz
79 -* B5 @H-FDD: 850MHz
80 -* B20 @H-FDD: 800MHz
81 -* B28 @H-FDD: 700MHz
55 +* - B1 @H-FDD: 2100MHz
56 +* - B3 @H-FDD: 1800MHz
57 +* - B8 @H-FDD: 900MHz
58 +* - B5 @H-FDD: 850MHz
59 +* - B20 @H-FDD: 800MHz
60 +* - B28 @H-FDD: 700MHz
82 82  
62 +== 1.4 Probe Specification ==
83 83  
64 +**Soil pH:**
84 84  
85 -== 1.4  Probe Specification ==
86 -
87 -
88 -(% style="color:#037691" %)**Soil pH:**
89 -
90 90  * Range: 3 ~~ 10 pH
91 91  * Resolution: 0.01 pH
92 92  * Accuracy: ±2% under (0~~50 ℃, Accuracy will poor under 0 due to frozen)
... ... @@ -94,7 +94,7 @@
94 94  * IP68 Protection
95 95  * Length: 3.5 meters
96 96  
97 -(% style="color:#037691" %)**Soil Temperature:**
73 +**Soil Temperature:**
98 98  
99 99  * Range -40℃~85℃
100 100  * Resolution: 0.1℃
... ... @@ -102,18 +102,13 @@
102 102  * IP68 Protection
103 103  * Length: 3.5 meters
104 104  
81 +== 1.5 ​Applications ==
105 105  
106 -
107 -== 1.5  ​Applications ==
108 -
109 -
110 110  * Smart Agriculture
111 111  
85 +== 1.6 Pin mapping and power on ==
112 112  
113 -
114 -== 1.6  Pin mapping and power on ==
115 -
116 -
87 +(% style="text-align:center" %)
117 117  [[image:image-20220907153300-2.png]]
118 118  
119 119  
... ... @@ -121,20 +121,17 @@
121 121  
122 122  == 2.1  How it works ==
123 123  
124 -
125 125  The NSPH01 is equipped with a NB-IoT module, the pre-loaded firmware in NSPH01 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 NSPH01.
126 126  
127 127  The diagram below shows the working flow in default firmware of NSPH01:
128 128  
129 -
99 +(% style="text-align:center" %)
130 130  [[image:image-20220907153416-3.png]]
131 131  
132 -
133 133  == 2.2 ​ Configure the NSPH01 ==
134 134  
135 135  === 2.2.1 Test Requirement ===
136 136  
137 -
138 138  To use NSPH01 in the field, make sure meet below requirements:
139 139  
140 140  * Your local operator has already distributed a NB-IoT Network there.
... ... @@ -141,206 +141,165 @@
141 141  * The local NB-IoT network used the band that NSPH01 supports.
142 142  * Your operator is able to distribute the data received in their NB-IoT network to your IoT server.
143 143  
144 -Below figure shows our testing structure. Here we have NB-IoT network coverage by China Mobile, the band they use is B8.  The NSPH01 will use** CoAP(120.24.4.116:5683) **or raw **UDP(120.24.4.116:5601)** or **MQTT(120.24.4.116:1883)**or **TCP(120.24.4.116:5600)**protocol to send data to the test server.
112 +Below figure shows our testing structure. Here we have NB-IoT network coverage by China Mobile, the band they use is B8.  The NSPH01 will use CoAP(120.24.4.116:5683) or raw UDP(120.24.4.116:5601) or MQTT(120.24.4.116:1883)or TCP(120.24.4.116:5600)protocol to send data to the test server.
145 145  
146 -
114 +(% style="text-align:center" %)
147 147  [[image:image-20220907153445-4.png]]
148 148  
149 149  
150 150  === 2.2.2 Insert SIM card ===
151 151  
152 -
153 153  User need to take out the NB-IoT module and insert the SIM card like below. ((% style="color:red" %) Pay attention to the direction(%%))
154 154  
155 -
122 +(% style="text-align:center" %)
156 156  [[image:image-20220907153505-5.png]]
157 157  
158 -
159 159  === 2.2.3 Connect USB – TTL to NSPH01 to configure it ===
160 160  
127 +User need to configure NSPH01 via serial port to set the **Server Address** / **Uplink Topic** to define where and how-to uplink packets. NSPH01 support AT Commands, user can use a USB to TTL adapter to connect to NSPH01 and use AT Commands to configure it, as below.
161 161  
162 -User need to configure NSPH01 via serial port to set the (% style="color:blue" %)**Server Address** / **Uplink Topic**(%%) to define where and how-to uplink packets. NSPH01 support AT Commands, user can use a USB to TTL adapter to connect to NSPH01 and use AT Commands to configure it, as below.
129 +**Connection:**
163 163  
131 + USB TTL GND <~-~-~-~-> GND
164 164  
165 -(% style="color:blue" %)**Connection:**
133 + USB TTL TXD <~-~-~-~-> UART_RXD
166 166  
167 -**~ (% style="background-color:yellow" %) USB TTL GND <~-~-~-~->  GND(%%)**
135 + USB TTL RXD <~-~-~-~-> UART_TXD
168 168  
169 -**~ (% style="background-color:yellow" %) USB TTL TXD  <~-~-~-~->  UART_RXD(%%)**
170 -
171 -**~ (% style="background-color:yellow" %) USB TTL RXD  <~-~-~-~->  UART_TXD(%%)**
172 -
173 -
174 174  In the PC, use below serial tool settings:
175 175  
176 -* Baud:  (% style="color:green" %)**9600**
177 -* Data bits:**  (% style="color:green" %)8(%%)**
178 -* Stop bits:  (% style="color:green" %)**1**
179 -* Parity:  (% style="color:green" %)**None**
180 -* Flow Control: (% style="color:green" %)**None**
139 +* Baud:  **9600**
140 +* Data bits:** 8**
141 +* Stop bits: **1**
142 +* Parity:  **None**
143 +* Flow Control: **None**
181 181  
182 -Make sure the switch is in FLASH position, then power on device by connecting the jumper on NSPH01. NSPH01 will output system info once power on as below, we can enter the (% style="color:green" %)**password: 12345678**(%%) to access AT Command input.
145 +Make sure the switch is in FLASH position, then power on device by connecting the jumper on NSPH01. NSPH01 will output system info once power on as below, we can enter the **password: 12345678** to access AT Command input.
183 183  
147 +(% style="text-align:center" %)
148 +[[image:image-20220907153529-6.png]]
184 184  
185 -[[image:image-20220912144017-1.png]]
150 +**Note: the valid AT Commands can be found at:  **[[**https:~~/~~/www.dropbox.com/sh/351dwor6joz8nwh/AADn1BQaAAxLF_QMyU8NkW47a?dl=0**>>url:https://www.dropbox.com/sh/351dwor6joz8nwh/AADn1BQaAAxLF_QMyU8NkW47a?dl=0]]
186 186  
187 -
188 -(% style="color:red" %)**Note: the valid AT Commands can be found at:**(%%)**  **[[**https:~~/~~/www.dropbox.com/sh/351dwor6joz8nwh/AADn1BQaAAxLF_QMyU8NkW47a?dl=0**>>url:https://www.dropbox.com/sh/351dwor6joz8nwh/AADn1BQaAAxLF_QMyU8NkW47a?dl=0]]
189 -
190 -
191 191  === 2.2.4 Use CoAP protocol to uplink data ===
192 192  
154 +**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/**>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Set%20up%20CoAP%20Server/]]
193 193  
194 -(% 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/**>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Set%20up%20CoAP%20Server/]]
156 +**Use below commands:**
195 195  
158 +* **AT+PRO=1**   ~/~/ Set to use CoAP protocol to uplink
159 +* **AT+SERVADDR=120.24.4.116,5683   ** ~/~/ to set CoAP server address and port
160 +* **AT+URI=5,11,"mqtt",11,"coap",12,"0",15,"c=text1",23,"0" ** ~/~/Set COAP resource path
196 196  
197 -(% style="color:blue" %)**Use below commands:**
198 -
199 -* (% style="color:#037691" %)**AT+PRO=1**                         (%%) ~/~/  Set to use CoAP protocol to uplink
200 -* (% style="color:#037691" %)**AT+SERVADDR=120.24.4.116,5683   ** (%%) ~/~/  to set CoAP server address and port
201 -* (% style="color:#037691" %)**AT+URI=5,11,"mqtt",11,"coap",12,"0",15,"c=text1",23,"0" ** (%%) ~/~/  Set COAP resource path
202 -
203 203  For parameter description, please refer to AT command set
204 204  
205 -
164 +(% style="text-align:center" %)
206 206  [[image:image-20220907153551-7.png||height="502" width="740"]]
207 207  
167 +After configure the server address and **reset the device** (via AT+ATZ ), NSPH01 will start to uplink sensor values to CoAP server.
208 208  
209 -After configure the server address and (% style="color:green" %)**reset the device (via AT+ATZ )**(%%), NSPH01 will start to uplink sensor values to CoAP server.
210 -
211 -
169 +(% style="text-align:center" %)
212 212  [[image:image-20220907153612-8.png||height="529" width="729"]]
213 213  
214 214  
215 215  === 2.2.5 Use UDP protocol to uplink data(Default protocol) ===
216 216  
217 -
218 218  This feature is supported since firmware version v1.0.1
219 219  
220 -* (% style="color:blue" %)**AT+PRO=2   ** (%%) ~/~/  Set to use UDP protocol to uplink
221 -* (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5601   ** (%%) ~/~/  to set UDP server address and port
222 -* (% style="color:blue" %)**AT+CFM=1       ** (%%) ~/~/  If the server does not respond, this command is unnecessar
177 +* **AT+PRO=2   ** ~/~/ Set to use UDP protocol to uplink
178 +* **AT+SERVADDR=120.24.4.116,5601   ** ~/~/ to set UDP server address and port
179 +* **AT+CFM=1       ** ~/~/If the server does not respond, this command is unnecessar
223 223  
181 +(% style="text-align:center" %)
224 224  [[image:image-20220907153643-9.png||height="401" width="734"]]
225 225  
226 -
184 +(% style="text-align:center" %)
227 227  [[image:image-20220907153703-10.png||height="309" width="738"]]
228 228  
229 229  
230 230  === 2.2.6 Use MQTT protocol to uplink data ===
231 231  
232 -
233 233  This feature is supported since firmware version v110
234 234  
235 -* (% style="color:blue" %)**AT+PRO=3   ** (%%) ~/~/ Set to use MQTT protocol to uplink
236 -* (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,1883   ** (%%) ~/~/ Set MQTT server address and port
237 -* (% style="color:blue" %)**AT+CLIENT=CLIENT       ** (%%) ~/~/ Set up the CLIENT of MQTT
238 -* (% style="color:blue" %)**AT+UNAME=UNAME                               **(%%)~/~/ Set the username of MQTT
239 -* (% style="color:blue" %)**AT+PWD=PWD                                        **(%%)~/~/ Set the password of MQTT
240 -* (% style="color:blue" %)**AT+PUBTOPIC=NSE01_PUB                    **(%%)~/~/ Set the sending topic of MQTT
241 -* (% style="color:blue" %)**AT+SUBTOPIC=NSE01_SUB          ** (%%) ~/~/ Set the subscription topic of MQTT
192 +* **AT+PRO=3   ** ~/~/Set to use MQTT protocol to uplink
193 +* **AT+SERVADDR=120.24.4.116,1883   ** ~/~/Set MQTT server address and port
194 +* **AT+CLIENT=CLIENT       ** ~/~/Set up the CLIENT of MQTT
195 +* **AT+UNAME=UNAME                               **~/~/Set the username of MQTT
196 +* **AT+PWD=PWD                                        **~/~/Set the password of MQTT
197 +* **AT+PUBTOPIC=NSE01_PUB                    **~/~/Set the sending topic of MQTT
198 +* **AT+SUBTOPIC=NSE01_SUB          ** ~/~/Set the subscription topic of MQTT
242 242  
200 +(% style="text-align:center" %)
243 243  [[image:image-20220907153739-11.png||height="491" width="764"]]
244 244  
245 -
203 +(% style="text-align:center" %)
246 246  [[image:image-20220907153751-12.png||height="555" width="769"]]
247 247  
248 -
249 249  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.
250 250  
251 -
252 252  === 2.2.7 Use TCP protocol to uplink data ===
253 253  
254 -
255 255  This feature is supported since firmware version v110
256 256  
257 -* (% style="color:blue" %)**AT+PRO=4   ** (%%) ~/~/ Set to use TCP protocol to uplink
258 -* (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5600   ** (%%) ~/~/ to set TCP server address and port
212 +* **AT+PRO=4   ** ~/~/ Set to use TCP protocol to uplink
213 +* **AT+SERVADDR=120.24.4.116,5600   ** ~/~/ to set TCP server address and port
259 259  
215 +(% style="text-align:center" %)
260 260  [[image:image-20220907153818-13.png||height="486" width="668"]]
261 261  
262 -
218 +(% style="text-align:center" %)
263 263  [[image:image-20220907153827-14.png||height="236" width="684"]]
264 264  
265 -
266 266  === 2.2.8 Change Update Interval ===
267 267  
268 -
269 269  Users can use the below command to change the **uplink interval**.
270 270  
271 -* (% style="color:blue" %)**AT+TDC=7200      ** (%%) ~/~/ Set Update Interval to 7200s (2 hour)
225 +* **AT+TDC=7200      ** ~/~/ Set Update Interval to 7200s (2 hour)
272 272  
273 -(% style="color:red" %)**NOTE: 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).**
274 274  
228 +**NOTE: 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).**
275 275  
230 +
276 276  == 2.3  Uplink Payload ==
277 277  
278 -
279 279  In this mode, uplink payload includes 87 bytes in total by default.
280 280  
281 281  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.
282 282  
283 -(% border="1.5" style="background-color:#ffffcc; color:green; width:520px" %)
284 -|=(% scope="row" style="width: 50px;" %)**Size(bytes)**|(% style="width:40px" %)**8**|(% style="width:20px" %)**2**|(% style="width:25px" %)**2**|(% style="width:60px" %)**1**|(% style="width:20px" %)**1**|(% style="width:40px" %)**1**|(% style="width:40px" %)**2**|(% style="width:50px" %)**2**|(% style="width:50px" %)**4**|(% style="width:50px" %)**2**|(% style="width:35px" %)**2**|(% style="width:40px" %)**4**
285 -|=(% style="width: 96px;" %)**Value**|(% style="width:83px" %)Device ID|(% style="width:44px" %)Ver|(% style="width:42px" %)BAT|(% style="width:124px" %)Signal Strength|(% style="width:57px" %)MOD|(% style="width:80px" %)Interrupt|(% style="width:69px" %)Soil PH|(% style="width:134px" %)Soil Temperature|(% style="width:98px" %)Time stamp|(% style="width:134px" %)Soil Temperature|(% style="width:68px" %)Soil PH|(% style="width:125px" %)Time stamp  .....
237 +|**Size(bytes)**|**8**|**2**|**2**|1|1|1|2|2|4|2|2|4
238 +|**Value**|Device ID|Ver|BAT|Signal Strength|MOD|Interrupt|Soil PH|Soil Temperature|Time stamp|Soil Temperature|Soil PH|Time stamp  .....
286 286  
287 287  If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the NSPH01 uplink data.
288 288  
242 +(% style="text-align:center" %)
289 289  [[image:image-20220907153902-15.png||height="581" width="804"]]
290 290  
291 291  
292 -(((
293 293  The payload is ASCII string, representative same HEX:
294 -)))
295 295  
296 -(((
297 -
298 -)))
248 +0xf86841105675413800640c781701000225010b6315537b010b0226631550fb010e022663154d7701110225631549f1011502246315466b01190223631542e5011d022163153f62011e022163153bde011e022163153859 where:
299 299  
300 -(((
301 -**0x (% style="color:red" %)__f868411056754138__  (% style="color:blue" %)__0064 __ (% style="color:green" %)__0c78__  (% style="color:#00b0f0" %)__17__  (% style="color:#7030a0" %)__01__  (% style="color:#d60093" %)__00__  (% style="color:#a14d07" %)__0225 __ (% style="color:#0020b0" %) __010b__  (% style="color:#420042" %)__6315537b__  (% style="color:#663300" %)//__010b0226631550fb__  __010e022663154d77  01110225631549f1  011502246315466b  01190223631542e5  011d022163153f62  011e022163153bde 011e022163153859__//(%%)**
302 -)))
250 +* Device ID: 0xf868411056754138 = f868411056754138
251 +* Version: 0x0064=100=1.0.0
303 303  
304 -(((
305 -
253 +* BAT: 0x0c78 = 3192 mV = 3.192V
254 +* Singal: 0x17 = 23
255 +* Mod: 0x01 = 1
256 +* Interrupt: 0x00= 0
257 +* Soil PH: 0x0225= 549 = 5.49
258 +* Soil Temperature:0x010B =267=26.7 °C
259 +* Time stamp : 0x6315537b =1662342011
260 +* Soil Temperature,Soil PH,Time stamp : 010b0226631550fb
261 +* 8 sets of recorded data: Temperature,Soil PH,Time stamp : 010e022663154d77,.......
306 306  
307 -**where:**
308 -)))
309 -
310 -* (% style="color:#037691" %)**Device ID:**(%%)** **0xf868411056754138 = f868411056754138
311 -
312 -* (% style="color:#037691" %)**Version:**  (%%) 0x0064=100=1.0.0
313 -
314 -* (% style="color:#037691" %)**BAT:**   (%%) 0x0c78 = 3192 mV = 3.192V
315 -
316 -* (% style="color:#037691" %)**Singal:** (%%)0x17 = 23
317 -
318 -* (% style="color:#037691" %)**Mod:** (%%) 0x01 = 1
319 -
320 -* (% style="color:#037691" %)**Interrupt:**(%%) 0x00= 0
321 -
322 -* (% style="color:#037691" %)**Soil PH:** (%%) 0x0225= 549 = 5.49
323 -
324 -* (% style="color:#037691" %)**Soil Temperature:**(%%) 0x010b =267=26.7 °C
325 -
326 -* (% style="color:#037691" %)**Time stamp :**   (%%) 0x6315537b =1662342011  ([[Unix Epoch Time>>url:http://www.epochconverter.com/]])
327 -
328 -* (% style="color:#037691" %)**Soil Temperature,Soil PH,Time stamp : **(%%) 010b0226631550fb
329 -
330 -* (% style="color:#037691" %)**8 sets of recorded data:**(%%) Temperature,Soil PH,Time stamp :  010e022663154d77,.......
331 -
332 -
333 -
334 334  == 2.4  Payload Explanation and Sensor Interface ==
335 335  
336 336  === 2.4.1  Device ID ===
337 337  
338 -
339 339  By default, the Device ID equal to the last 15 bits of IMEI.
340 340  
341 -User can use (% style="color:blue" %)**AT+DEUI** (%%)to set Device ID
269 +User can use **AT+DEUI** to set Device ID
342 342  
343 -
344 344  **Example:**
345 345  
346 346  AT+DEUI=868411056754138
... ... @@ -347,18 +347,14 @@
347 347  
348 348  The Device ID is stored in a none-erase area, Upgrade the firmware or run AT+FDR won't erase Device ID.
349 349  
350 -
351 351  === 2.4.2  Version Info ===
352 352  
353 -
354 354  Specify the software version: 0x64=100, means firmware version 1.00.
355 355  
356 356  For example: 0x00 64 : this device is NSPH01 with firmware version 1.0.0.
357 357  
358 -
359 359  === 2.4.3  Battery Info ===
360 360  
361 -
362 362  Check the battery voltage for NSPH01.
363 363  
364 364  Ex1: 0x0B45 = 2885mV
... ... @@ -365,10 +365,8 @@
365 365  
366 366  Ex2: 0x0B49 = 2889mV
367 367  
368 -
369 369  === 2.4.4  Signal Strength ===
370 370  
371 -
372 372  NB-IoT Network signal Strength.
373 373  
374 374  **Ex1: 0x1d = 29**
... ... @@ -383,23 +383,18 @@
383 383  
384 384  **99**    Not known or not detectable
385 385  
386 -
387 387  === 2.4.5  Soil PH ===
388 388  
389 -
390 390  Get the PH content of the soil. The value range of the register is 300-1000(Decimal), divide this value by 100 to get the percentage of PH in the soil.
391 391  
392 -For example, if the data you get from the register is (% style="color:blue" %)**__0x05 0xDC__**(%%), the PH content in the soil is
311 +For example, if the data you get from the register is **__0x05 0xDC__**, the PH content in the soil is
393 393  
394 -(% style="color:blue" %)**0229(H) = 549(D) /100 = 5.49.**
313 +**0229(H) = 549(D) /100 = 5.49.**
395 395  
396 -
397 397  === 2.4.6  Soil Temperature ===
398 398  
317 +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
399 399  
400 -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 (% style="color:blue" %)**__0x09 0xEC__**(%%), the temperature content in the soil is
401 -
402 -
403 403  **Example**:
404 404  
405 405  If payload is 0105H: ((0x0105 & 0x8000)>>15 === 0),temp = 0105(H)/10 = 26.1 °C
... ... @@ -406,42 +406,35 @@
406 406  
407 407  If payload is FF7EH: ((FF7E & 0x8000)>>15 ===1),temp = (FF7E(H)-FFFF(H))/10 = -12.9 °C
408 408  
409 -
410 410  === 2.4.7  Timestamp ===
411 411  
412 -
413 413  Time stamp : 0x6315537b =1662342011
414 414  
415 415  Convert Unix timestamp to time 2022-9-5 9:40:11.
416 416  
417 -
418 418  === 2.4.8  Digital Interrupt ===
419 419  
333 +Digital Interrupt refers to pin **GPIO_EXTI**, and there are different trigger methods. When there is a trigger, the NSPH01 will send a packet to the server.
420 420  
421 -Digital Interrupt refers to pin (% style="color:blue" %)**GPIO_EXTI**(%%), and there are different trigger methods. When there is a trigger, the NSPH01 will send a packet to the server.
422 -
423 423  The command is:
424 424  
425 -(% 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]])**.**
337 +**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]])**.**
426 426  
427 427  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.
428 428  
341 +Example:
429 429  
430 -**Example:**
431 -
432 432  0x(00): Normal uplink packet.
433 433  
434 434  0x(01): Interrupt Uplink Packet.
435 435  
436 -
437 437  === 2.4.9  ​+5V Output ===
438 438  
439 -
440 440  NSPH01 will enable +5V output before all sampling and disable the +5v after all sampling. 
441 441  
442 442  The 5V output time can be controlled by AT Command.
443 443  
444 -(% style="color:blue" %)**AT+5VT=1000**
353 +**AT+5VT=1000**
445 445  
446 446  Means set 5V valid time to have 1000ms. So the real 5V output will actually have 1000ms + sampling time for other sensors.** **
447 447  
... ... @@ -448,16 +448,21 @@
448 448  
449 449  == 2.5  Downlink Payload ==
450 450  
451 -
452 452  By default, NSPH01 prints the downlink payload to console port.
453 453  
362 +(% style="text-align:center" %)
454 454  [[image:image-20220907154636-17.png]]
455 455  
456 456  
457 -(% style="color:blue" %)**Examples:**
458 458  
459 -* (% style="color:#037691" %)** Set TDC**
460 460  
368 +
369 +
370 +
371 +**Examples:**
372 +
373 +* **Set TDC**
374 +
461 461  If the payload=0100003C, it means set the END Node's TDC to 0x00003C=60(S), while type code is 01.
462 462  
463 463  Payload:    01 00 00 1E    TDC=30S
... ... @@ -464,18 +464,16 @@
464 464  
465 465  Payload:    01 00 00 3C    TDC=60S
466 466  
467 -* (% style="color:#037691" %)** Reset**
381 +* **Reset**
468 468  
469 469  If payload = 0x04FF, it will reset the NSPH01
470 470  
471 -* (% style="color:#037691" %)** INTMOD**
385 +* **INTMOD**
472 472  
473 473  Downlink Payload: 06000003, Set AT+INTMOD=3
474 474  
475 -
476 476  == 2.6  ​LED Indicator ==
477 477  
478 -
479 479  The NSPH01 has an internal LED which is to show the status of different state.
480 480  
481 481  * When power on, NSPH01 will detect if sensor probe is connected, if probe detected, LED will blink four times. (no blinks in this step is no probe)
... ... @@ -483,22 +483,16 @@
483 483  * After NSPH01 join NB-IoT network. The LED will be ON for 3 seconds.
484 484  * For each uplink probe, LED will be on for 500ms.
485 485  
398 +== 2.7 Installation and Maintain ==
486 486  
400 +=== 2.7.1 Before measurement ===
487 487  
488 -== 2.7  Installation and Maintain ==
489 -
490 -=== 2.7.1  Before measurement ===
491 -
492 -
493 493  If the NSPH01 has more than 7 days not use or just clean the pH probe. User should put the probe inside pure water for more than 24 hours for activation. If no put in water, user need to put inside soil for more than 24 hours to ensure the measurement accuracy. 
494 494  
404 +=== 2.7.2 Measurement ===
495 495  
496 -=== 2.7.2  Measurement ===
406 +**Measurement the soil surface:**
497 497  
498 -
499 -(% style="color:#037691" %)**Measurement the soil surface:**
500 -
501 -
502 502  [[image:image-20220907154700-18.png]] ​
503 503  
504 504  Choose the proper measuring position. Split the surface soil according to the measured deep.
... ... @@ -509,17 +509,14 @@
509 509  
510 510  Put soil over the probe after insert. And start to measure.
511 511  
418 +**Measurement inside soil:**
512 512  
513 -(% style="color:#037691" %)**Measurement inside soil:**
514 -
515 515  Dig a hole with diameter > 20CM.
516 516  
517 517  Insert the probe inside, method like measure the surface.
518 518  
424 +=== 2.7.3 Maintain Probe ===
519 519  
520 -=== 2.7.3  Maintain Probe ===
521 -
522 -
523 523  1. pH probe electrode is fragile and no strong. User must avoid strong force or hitting it.
524 524  1. After long time use (3~~ 6  months). The probe electrode needs to be clean; user can use high grade sandpaper to polish it or put in 5% hydrochloric acid for several minutes. After the metal probe looks like new, user can use pure water to wash it.
525 525  1. Probe reference electrode is also no strong, need to avoid strong force or hitting.
... ... @@ -527,15 +527,12 @@
527 527  1. Avoid the probes to touch oily matter. Which will cause issue in accuracy.
528 528  1. The probe is IP68 can be put in water.
529 529  
433 +== 2.8 PH and Temperature alarm function ==
530 530  
435 +➢ AT Command:
531 531  
532 -== 2.8  PH and Temperature alarm function ==
437 +AT+ PHALARM=min,max
533 533  
534 -
535 -(% style="color:#037691" %)**➢ AT Command:**
536 -
537 -(% style="color:blue" %)**AT+ PHALARM=min,max**
538 -
539 539  ² When min=3, and max≠0, Alarm higher than max
540 540  
541 541  ² When min≠0, and max=0, Alarm lower than min
... ... @@ -542,11 +542,10 @@
542 542  
543 543  ² When min≠0 and max≠0, Alarm higher than max or lower than min
544 544  
445 +Example:
545 545  
546 -(% style="color:blue" %)**Example:**
447 +AT+ PHALARM =5,8 ~/~/ Alarm when PH lower than 5.
547 547  
548 -AT+ PHALARM =5,8  ~/~/ Alarm when PH lower than 5.
549 -
550 550  AT+ TEMPALARM=min,max
551 551  
552 552  ² When min=0, and max≠0, Alarm higher than max
... ... @@ -555,71 +555,98 @@
555 555  
556 556  ² When min≠0 and max≠0, Alarm higher than max or lower than min
557 557  
457 +Example:
558 558  
559 -(% style="color:blue" %)**Example:**
459 +AT+ TEMPALARM=20,30 ~/~/ Alarm when temperature lower than 20.
560 560  
561 -AT+ TEMPALARM=20,30  ~/~/ Alarm when temperature lower than 20.
562 562  
462 +== 2.9 Set the number of data to be uploaded and the recording time ==
563 563  
564 -== 2.9  Set the number of data to be uploaded and the recording time ==
464 + AT Command:
565 565  
466 +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)
566 566  
567 -(% style="color:#037691" %)**➢ AT Command:**
468 +AT+NOUD=8  ~/~/The device uploads 8 sets of recorded data by default. Up to 32 sets of record data can be uploaded.
568 568  
569 -* (% style="color:blue" %)**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)
570 -* (% style="color:blue" %)**AT+NOUD=8**     (%%) ~/~/  The device uploads 8 sets of recorded data by default. Up to 32 sets of record data can be uploaded.
571 571  
572 - The diagram below explains the relationship between TR, NOUD, and TDC more clearly**:**
471 +== 2.10 Read or Clear cached data ==
573 573  
574 -[[image:image-20221009000933-1.png||height="750" width="1043"]]
473 +➢ AT Command:
575 575  
475 +AT+CDP ~/~/ Read cached data
576 576  
577 -== 2.10  Read or Clear cached data ==
477 +[[image:image-20220907154700-19.png]]
578 578  
579 579  
580 -(% style="color:#037691" %)**➢ AT Command:**
480 +AT+CDP=0 ~/~/ Clear cached data
581 581  
582 -* (% style="color:blue" %)**AT+CDP**        (%%) ~/~/  Read cached data
583 -* (% style="color:blue" %)**AT+CDP=0**    (%%) ~/~/  Clear cached data
584 584  
585 -[[image:image-20220907154700-19.png]]
483 +== 2.11 Calibration ==
586 586  
485 +User can do calibration for the probe. It is limited to use below pH buffer solution to calibrate: 4.00, 6.86, 9.18. When calibration, user need to clean the electrode and put the probe in the pH buffer solution to wait the value stable ( a new clean electrode might need max 24 hours to be stable).
587 587  
588 -== 2.11  Calibration ==
487 +After stable, user can use below command to calibrate.
589 589  
489 +[[image:image-20220907154700-20.png]] ​
590 590  
591 -User can do calibration for the probe. It is limited to use below pH buffer solution to calibrate: 4.00, 6.86, 9.18. When calibration, user need to clean the electrode and put the probe in the pH buffer solution to wait the value stable ( a new clean electrode might need max 24 hours to be stable).
491 +== 2.12  ​Firmware Change Log ==
592 592  
593 -After stable, user can use below command to calibrate.
493 +Download URL & Firmware Change log: [[https:~~/~~/www.dropbox.com/sh/1zmcakvbkf24f8x/AACmq2dZ3iRB9F1nVWeEB9Moa?dl=0>>url:https://www.dropbox.com/sh/1zmcakvbkf24f8x/AACmq2dZ3iRB9F1nVWeEB9Moa?dl=0]]
594 594  
495 +Upgrade Instruction: [[Upgrade Firmware>>path:#H5.1200BHowtoUpgradeFirmware]]
595 595  
596 -[[image:image-20220907154700-20.png]]
497 +== 2.13 Battery Analysis ==
597 597  
499 +=== 2.13.1  ​Battery Type ===
598 598  
599 -== 2.1 ​Firmware Change Log ==
501 +The NSPH01 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.
600 600  
503 +The battery is designed to last for several years depends on the actually use environment and update interval. 
601 601  
602 -Download URL & Firmware Change log: [[https:~~/~~/www.dropbox.com/sh/1tv07fro2pvjqj8/AAD-2wbfGfluTZfh38fQqdA_a?dl=0>>https://www.dropbox.com/sh/1tv07fro2pvjqj8/AAD-2wbfGfluTZfh38fQqdA_a?dl=0]]
505 +The battery-related documents as below:
603 603  
604 -Upgrade Instruction: [[Upgrade Firmware>>||anchor="H5.1200BHowtoUpgradeFirmware"]]
507 +* [[Battery Dimension>>url:http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]
508 +* [[Lithium-Thionyl Chloride Battery datasheet>>url:http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]
509 +* [[Lithium-ion Battery-Capacitor datasheet>>url:http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]
605 605  
511 +[[image:image-20220907154700-21.png]] ​
606 606  
607 -== 2.13 Battery & Power Consumption ==
513 +=== 2.13.2  Power consumption Analyze ===
608 608  
515 +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.
609 609  
610 -NSPH01 uses ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
517 +Instruction to use as below:
611 611  
612 -[[**Battery Info & Power Consumption Analyze**>>url:http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
519 +**Step 1:  **Downlink the up-to-date DRAGINO_Battery_Life_Prediction_Table.xlsx from: [[https:~~/~~/www.dragino.com/downloads/index.php?dir=LoRa_End_Node/Battery_Analyze/>>url:https://www.dragino.com/downloads/index.php?dir=LoRa_End_Node/Battery_Analyze/]]
613 613  
521 +**Step 2: ** Open it and choose
614 614  
615 -= 3. ​ Access NB-IoT Module =
523 +* Product Model
524 +* Uplink Interval
525 +* Working Mode
616 616  
527 +And the Life expectation in difference case will be shown on the right.
617 617  
529 +(% style="text-align:center" %)
530 +[[image:image-20220907154700-22.jpeg]]
531 +
532 +​
533 +
534 +=== 2.13.3  ​Battery Note ===
535 +
536 +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.
537 +
538 +=== 2.13.4  Replace the battery ===
539 +
540 +The default battery pack of NSPH01 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).
541 +
542 += 3. ​ Access NB-IoT Module =
543 +
618 618  Users can directly access the AT command set of the NB-IoT module.
619 619  
620 620  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/]] 
621 621  
622 -
548 +(% style="text-align:center" %)
623 623  [[image:image-20220907154700-23.png]]
624 624  
625 625  ​
... ... @@ -628,7 +628,6 @@
628 628  
629 629  == 4.1  Access AT Commands ==
630 630  
631 -
632 632  See this link for detail:  [[https:~~/~~/www.dropbox.com/sh/351dwor6joz8nwh/AADn1BQaAAxLF_QMyU8NkW47a?dl=0>>url:https://www.dropbox.com/sh/351dwor6joz8nwh/AADn1BQaAAxLF_QMyU8NkW47a?dl=0]]
633 633  
634 634  AT+<CMD>?  : Help on <CMD>
... ... @@ -639,9 +639,8 @@
639 639  
640 640  AT+<CMD>=?  : Get the value
641 641  
567 +**General Commands**      
642 642  
643 -(% style="color:#037691" %)**General Commands**      
644 -
645 645  AT  : Attention       
646 646  
647 647  AT?  : Short Help     
... ... @@ -666,18 +666,13 @@
666 666  
667 667  AT+TR      : Get or Set record time"
668 668  
669 -AT+APN     : Get or set the APN
670 670  
671 -AT+FBAND   : Get or Set whether to automatically modify the frequency band
672 -
673 -AT+DNSCFG  : Get or Set DNS Server
674 -
675 -AT+GETSENSORVALUE   : Returns the current sensor measurement
676 -
677 677  AT+NOUD      : Get or Set the number of data to be uploaded
678 678  
596 +
679 679  AT+CDP     : Read or Clear cached data
680 680  
599 +
681 681  AT+TEMPALARM      : Get or Set alarm of temp
682 682  
683 683  AT+PHALARM     : Get or Set alarm of PH
... ... @@ -685,18 +685,16 @@
685 685  AT+ PHCAL  : calibrate PH value
686 686  
687 687  
688 -(% style="color:#037691" %)**COAP Management**      
607 +**COAP Management**      
689 689  
690 690  AT+URI            : Resource parameters
691 691  
611 +**UDP Management**
692 692  
693 -(% style="color:#037691" %)**UDP Management**
694 -
695 695  AT+CFM          : Upload confirmation mode (only valid for UDP)
696 696  
615 +**MQTT Management**
697 697  
698 -(% style="color:#037691" %)**MQTT Management**
699 -
700 700  AT+CLIENT               : Get or Set MQTT client
701 701  
702 702  AT+UNAME  : Get or Set MQTT Username
... ... @@ -707,55 +707,42 @@
707 707  
708 708  AT+SUBTOPIC  : Get or Set MQTT subscription topic
709 709  
627 +**Information**          
710 710  
711 -(% style="color:#037691" %)**Information**          
712 -
713 713  AT+FDR  : Factory Data Reset
714 714  
715 715  AT+PWORD  : Serial Access Password
716 716  
717 -
718 718  = ​5.  FAQ =
719 719  
720 720  == 5.1 ​ How to Upgrade Firmware ==
721 721  
722 -
723 723  User can upgrade the firmware for 1) bug fix, 2) new feature release.
724 724  
725 725  Please see this link for how to upgrade:  [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Firmware%20Upgrade%20Instruction%20for%20STM32%20base%20products/#H2.HardwareUpgradeMethodSupportList>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20Upgrade%20Instruction%20for%20STM32%20base%20products/#H2.HardwareUpgradeMethodSupportList]]
726 726  
727 -(% style="color:red" %)**Notice, NSPH01 and LSPH01 share the same mother board. They use the same connection and method to update.**
641 +**Notice, **NSPH01 **and **NSPH01 **share the same mother board. They use the same connection and method to update.**
728 728  
729 -
730 730  == 5.2  Can I calibrate NSPH01 to different soil types? ==
731 731  
732 -
733 733  NSPH01 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>>url:https://www.dragino.com/downloads/downloads/LoRa_End_Node/LSE01/Calibrate_to_other_Soil_20220605.pdf]].
734 734  
735 -
736 736  = 6.  Trouble Shooting =
737 737  
738 738  == 6.1  ​Connection problem when uploading firmware ==
739 739  
740 -
741 741  **Please see: **[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Firmware%20Upgrade%20Instruction%20for%20STM32%20base%20products/#H3.3Troubleshooting>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20Upgrade%20Instruction%20for%20STM32%20base%20products/#H3.3Troubleshooting]]
742 742  
743 -
744 744  == 6.2  AT Command input doesn't work ==
745 745  
655 +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 **ENTER** while sending out the command. Some serial tool doesn't send **ENTER** while press the send key, user need to add ENTER in their string.
746 746  
747 -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.
748 -
749 -
750 750  = 7. ​ Order Info =
751 751  
752 -
753 753  Part Number**:** NSPH01
754 754  
755 -
756 756  = 8.  Packing Info =
757 757  
758 -
759 759  **Package Includes**:
760 760  
761 761  * NSPH01 NB-IoT pH Sensor x 1
... ... @@ -763,16 +763,11 @@
763 763  
764 764  **Dimension and weight**:
765 765  
766 -* Device Size: cm
767 -* Device Weight: g
768 -* Package Size / pcs : cm
769 -* Weight / pcs : g
670 +* Size: 195 x 125 x 55 mm
671 +* Weight:   420g
770 770  
771 -
772 -
773 773  = 9.  Support =
774 774  
775 -
776 776  * 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.
777 777  * 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]]
778 778  
image-20220912144017-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -149.6 KB
Content
image-20220923101327-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -12.1 KB
Content
image-20221009000933-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Edwin
Size
... ... @@ -1,1 +1,0 @@
1 -282.9 KB
Content
Copyright ©2010-2024 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0