Last modified by Xiaoling on 2025/07/10 16:21

From version 87.1
edited by Mengting Qiu
on 2024/05/13 10:01
Change comment: Uploaded new attachment "image-20240513100135-7.png", version {1}
To version 123.2
edited by Xiaoling
on 2025/04/01 16:43
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.ting
1 +XWiki.Xiaoling
Content
... ... @@ -41,7 +41,7 @@
41 41  )))
42 42  
43 43  (((
44 -PS-LB/LS is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery **(%%)or (% style="color:blue" %)**solar powered + li-on battery **(%%), it is designed for long term use up to 5 years.
44 +PS-LB/LS is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery **(%%)or (% style="color:blue" %)**solar powered + Li-ion battery **(%%), it is designed for long term use up to 5 years.
45 45  )))
46 46  
47 47  (((
... ... @@ -67,7 +67,7 @@
67 67  * Downlink to change configure
68 68  * Controllable 3.3v,5v and 12v output to power external sensor
69 69  * 8500mAh Li/SOCl2 Battery (PS-LB)
70 -* Solar panel + 3000mAh Li-on battery (PS-LS)
70 +* Solar panel + 3000mAh Li-ion battery (PS-LS)
71 71  
72 72  == 1.3 Specification ==
73 73  
... ... @@ -136,36 +136,34 @@
136 136  === 1.4.2 Immersion Type ===
137 137  
138 138  
139 -[[image:image-20240109160445-5.png||height="284" width="214"]]
139 +[[image:image-20240109160445-5.png||height="221" width="166"]]
140 140  
141 141  * Immersion Type, Probe IP Level: IP68
142 142  * Measuring Range: Measure range can be customized, up to 100m.
143 143  * Accuracy: 0.2% F.S
144 144  * Long-Term Stability: ±0.2% F.S / Year
145 -* Storage temperature: -30~~80
146 -* Operating temperature: 0~~50
145 +* Storage temperature: -30°C~~80°C
146 +* Operating temperature: 0°C~~50°C
147 147  * Material: 316 stainless steels
148 148  
149 -
150 150  === 1.4.3 Wireless Differential Air Pressure Sensor ===
151 151  
152 -[[image:image-20240511174954-1.png]]
151 +[[image:image-20240511174954-1.png||height="215" width="215"]]
153 153  
154 -* Measuring Range: -100KPa~~0~~100KPa,Intermediate range is optional.
153 +* Measuring Range: -100KPa~~0~~100KPa(Optional measuring range).
155 155  * Accuracy: 0.5% F.S, resolution is 0.05%.
156 156  * Overload: 300% F.S
157 157  * Zero temperature drift: ±0.03%F.S/°C
158 -* Operating temperature: -40℃~~85℃
157 +* Operating temperature: -20°C~~60°C
158 +* Storage temperature:  -20°C~~60°C
159 159  * Compensation temperature: 0~~50°C
160 160  
161 -
162 -
163 163  == 1.5 Application and Installation ==
164 164  
165 165  === 1.5.1 Thread Installation Type ===
166 166  
167 167  
168 -(% style="color:blue" %)**Application:**
166 +Application:
169 169  
170 170  * Hydraulic Pressure
171 171  * Petrochemical Industry
... ... @@ -183,7 +183,7 @@
183 183  === 1.5.2 Immersion Type ===
184 184  
185 185  
186 -(% style="color:blue" %)**Application:**
184 +Application:
187 187  
188 188  Liquid & Water Pressure / Level detect.
189 189  
... ... @@ -190,7 +190,7 @@
190 190  [[image:1675071725288-579.png]]
191 191  
192 192  
193 -The Immersion Type pressure sensor is shipped with the probe and device separately. When user got the device, below is the wiring to for connect the probe to the device.
191 +Below is the wiring to for connect the probe to the device.
194 194  
195 195  The Immersion Type Sensor has different variant which defined by Ixx. For example, this means two points:
196 196  
... ... @@ -202,32 +202,64 @@
202 202  
203 203  [[image:1675071776102-240.png]]
204 204  
203 +Size of immersion type water depth sensor:
205 205  
205 +[[image:image-20250401102131-1.png||height="268" width="707"]]
206 +
207 +
208 +=== 1.5.3 Wireless Differential Air Pressure Sensor ===
209 +
210 +
211 +Application:
212 +
213 +Indoor Air Control & Filter clogging Detect.
214 +
215 +[[image:image-20240513100129-6.png]]
216 +
217 +[[image:image-20240513100135-7.png]]
218 +
219 +
220 +Below is the wiring to for connect the probe to the device.
221 +
222 +[[image:image-20240513093957-1.png]]
223 +
224 +
225 +Size of wind pressure transmitter:
226 +
227 +[[image:image-20240513094047-2.png]]
228 +
229 +Note: The above dimensions are measured by hand, and the numerical error of the shell is within ±0.2mm.
230 +
231 +
206 206  == 1.6 Sleep mode and working mode ==
207 207  
208 208  
209 -(% style="color:blue" %)**Deep Sleep Mode: **(%%)Sensor doesn't have any LoRaWAN activate. This mode is used for storage and shipping to save battery life.
235 +Deep Sleep Mode: Sensor doesn't have any LoRaWAN activate. This mode is used for storage and shipping to save battery life.
210 210  
211 -(% style="color:blue" %)**Working Mode:** (%%)In this mode, Sensor will work as LoRaWAN Sensor to Join LoRaWAN network and send out sensor data to server. Between each sampling/tx/rx periodically, sensor will be in IDLE mode), in IDLE mode, sensor has the same power consumption as Deep Sleep mode.
237 +Working Mode: In this mode, Sensor will work as LoRaWAN Sensor to Join LoRaWAN network and send out sensor data to server. Between each sampling/tx/rx periodically, sensor will be in IDLE mode), in IDLE mode, sensor has the same power consumption as Deep Sleep mode.
212 212  
213 213  
214 214  == 1.7 Button & LEDs ==
215 215  
216 216  
217 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/RS485-LB_Waterproof_RS485UART_to_LoRaWAN_Converter/WebHome/image-20240103160425-4.png?rev=1.1||alt="image-20240103160425-4.png"]](% style="display:none" %)
243 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/RS485-LB_Waterproof_RS485UART_to_LoRaWAN_Converter/WebHome/image-20240103160425-4.png?rev=1.1||alt="image-20240103160425-4.png"]]
218 218  
219 219  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
220 -|=(% style="width: 167px;background-color:#4F81BD;color:white" %)**Behavior on ACT**|=(% style="width: 117px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 226px;background-color:#4F81BD;color:white" %)**Action**
246 +|=(% style="width: 167px;background-color:#4F81BD;color:white" %)Behavior on ACT|=(% style="width: 117px;background-color:#4F81BD;color:white" %)Function|=(% style="width: 226px;background-color:#4F81BD;color:white" %)Action
221 221  |(% style="background-color:#f2f2f2; width:167px" %)Pressing ACT between 1s < time < 3s|(% style="background-color:#f2f2f2; width:117px" %)Send an uplink|(% style="background-color:#f2f2f2; width:225px" %)(((
222 -If sensor is already Joined to LoRaWAN network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once.
248 +
249 +
250 +If sensor is already Joined to LoRaWAN network, sensor will send an uplink packet, blue led will blink once.
223 223  Meanwhile, BLE module will be active and user can connect via BLE to configure device.
224 224  )))
225 225  |(% style="background-color:#f2f2f2; width:167px" %)Pressing ACT for more than 3s|(% style="background-color:#f2f2f2; width:117px" %)Active Device|(% style="background-color:#f2f2f2; width:225px" %)(((
226 -(% style="background-color:#f2f2f2; color:green" %)**Green led**(%%) will fast blink 5 times, device will enter (% style="color:#037691" %)**OTA mode**(%%) for 3 seconds. And then start to JOIN LoRaWAN network.
227 -(% style="background-color:#f2f2f2; color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network.
254 +
255 +
256 +Green led will fast blink 5 times, device will enter OTA mode for 3 seconds. And then start to JOIN LoRaWAN network.
257 +Green led will solidly turn on for 5 seconds after joined in network.
228 228  Once sensor is active, BLE module will be active and user can connect via BLE to configure device, no matter if device join or not join LoRaWAN network.
229 229  )))
230 -|(% style="background-color:#f2f2f2; width:167px" %)Fast press ACT 5 times.|(% style="background-color:#f2f2f2; width:117px" %)Deactivate Device|(% style="background-color:#f2f2f2; width:225px" %)(% style="color:red" %)**Red led**(%%) will solid on for 5 seconds. Means PS-LB is in Deep Sleep Mode.
260 +|(% style="background-color:#f2f2f2; width:167px" %)Fast press ACT 5 times.|(% style="background-color:#f2f2f2; width:117px" %)Deactivate Device|(% style="background-color:#f2f2f2; width:225px" %)Red led will solid on for 5 seconds. Means PS-LB is in Deep Sleep Mode.
231 231  
232 232  == 1.8 Pin Mapping ==
233 233  
... ... @@ -252,16 +252,16 @@
252 252  
253 253  == 1.10 Mechanical ==
254 254  
255 -=== 1.10.1 for LB version(% style="display:none" %) (%%) ===
285 +=== 1.10.1 for LB version ===
256 256  
257 257  
258 -[[image:image-20240109160800-6.png]]
288 +[[image:image-20250401163530-1.jpeg]]
259 259  
260 260  
261 261  === 1.10.2 for LS version ===
262 262  
263 263  
264 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/SN50v3-LB/WebHome/image-20231231203439-3.png?width=886&height=385&rev=1.1||alt="image-20231231203439-3.png"]]
294 +[[image:image-20250401163539-2.jpeg]]
265 265  
266 266  
267 267  = 2. Configure PS-LB/LS to connect to LoRaWAN network =
... ... @@ -269,7 +269,7 @@
269 269  == 2.1 How it works ==
270 270  
271 271  
272 -The PS-LB/LS is configured as (% style="color:#037691" %)**LoRaWAN OTAA Class A**(%%) mode by default. It has OTAA keys to join LoRaWAN network. To connect a local LoRaWAN network, you need to input the OTAA keys in the LoRaWAN IoT server and activate the PS-LB/LS. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 20 minutes.
302 +The PS-LB/LS is configured as LoRaWAN OTAA Class A mode by default. It has OTAA keys to join LoRaWAN network. To connect a local LoRaWAN network, you need to input the OTAA keys in the LoRaWAN IoT server and activate the PS-LB/LS. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 20 minutes.
273 273  
274 274  
275 275  == 2.2 ​Quick guide to connect to LoRaWAN server (OTAA) ==
... ... @@ -277,7 +277,6 @@
277 277  
278 278  Following is an example for how to join the [[TTN v3 LoRaWAN Network>>url:https://console.cloud.thethings.network/]]. Below is the network structure; we use the [[LPS8v2>>url:https://www.dragino.com/products/lora-lorawan-gateway/item/228-lps8v2.html]] as a LoRaWAN gateway in this example.
279 279  
280 -
281 281  [[image:1675144005218-297.png]]
282 282  
283 283  
... ... @@ -284,7 +284,7 @@
284 284  The LPS8V2 is already set to connected to [[TTN network >>url:https://console.cloud.thethings.network/]], so what we need to now is configure the TTN server.
285 285  
286 286  
287 -(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from PS-LB/LS.
316 +Step 1: Create a device in TTN with the OTAA keys from PS-LB/LS.
288 288  
289 289  Each PS-LB/LS is shipped with a sticker with the default device EUI as below:
290 290  
... ... @@ -294,32 +294,32 @@
294 294  You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
295 295  
296 296  
297 -(% style="color:blue" %)**Register the device**
326 +Register the device
298 298  
299 299  [[image:1675144099263-405.png]]
300 300  
301 301  
302 -(% style="color:blue" %)**Add APP EUI and DEV EUI**
331 +Add APP EUI and DEV EUI
303 303  
304 304  [[image:1675144117571-832.png]]
305 305  
306 306  
307 -(% style="color:blue" %)**Add APP EUI in the application**
336 +Add APP EUI in the application
308 308  
309 309  
310 310  [[image:1675144143021-195.png]]
311 311  
312 312  
313 -(% style="color:blue" %)**Add APP KEY**
342 +Add APP KEY
314 314  
315 315  [[image:1675144157838-392.png]]
316 316  
317 -(% style="color:blue" %)**Step 2:**(%%) Activate on PS-LB/LS
346 +Step 2: Activate on PS-LB/LS
318 318  
319 319  
320 320  Press the button for 5 seconds to activate the PS-LB/LS.
321 321  
322 -(% style="color:green" %)**Green led**(%%) will fast blink 5 times, device will enter (% style="color:blue" %)**OTA mode**(%%) for 3 seconds. And then start to JOIN LoRaWAN network. (% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network.
351 +Green led will fast blink 5 times, device will enter OTA mode for 3 seconds. And then start to JOIN LoRaWAN network. Green led will solidly turn on for 5 seconds after joined in network.
323 323  
324 324  After join success, it will start to upload messages to TTN and you can see the messages in the panel.
325 325  
... ... @@ -333,11 +333,10 @@
333 333  
334 334  Users can also use the downlink command(0x26 01) to ask PS-LB/LS to resend this uplink.
335 335  
336 -
337 337  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
338 -|(% colspan="6" style="background-color:#4f81bd; color:white" %)**Device Status (FPORT=5)**
339 -|(% style="background-color:#f2f2f2; width:103px" %)**Size (bytes)**|(% style="background-color:#f2f2f2; width:72px" %)**1**|(% style="background-color:#f2f2f2" %)**2**|(% style="background-color:#f2f2f2; width:91px" %)**1**|(% style="background-color:#f2f2f2; width:86px" %)**1**|(% style="background-color:#f2f2f2; width:44px" %)**2**
340 -|(% style="background-color:#f2f2f2; width:103px" %)**Value**|(% style="background-color:#f2f2f2; width:72px" %)Sensor Model|(% style="background-color:#f2f2f2" %)Firmware Version|(% style="background-color:#f2f2f2; width:91px" %)Frequency Band|(% style="background-color:#f2f2f2; width:86px" %)Sub-band|(% style="background-color:#f2f2f2; width:44px" %)BAT
366 +|(% colspan="6" style="background-color:#4f81bd; color:white" %)Device Status (FPORT=5)
367 +|(% style="background-color:#f2f2f2; width:103px" %)Size (bytes)|(% style="background-color:#f2f2f2; width:72px" %)1|(% style="background-color:#f2f2f2" %)2|(% style="background-color:#f2f2f2; width:91px" %)1|(% style="background-color:#f2f2f2; width:86px" %)1|(% style="background-color:#f2f2f2; width:44px" %)2
368 +|(% style="background-color:#f2f2f2; width:103px" %)Value|(% style="background-color:#f2f2f2; width:72px" %)Sensor Model|(% style="background-color:#f2f2f2" %)Firmware Version|(% style="background-color:#f2f2f2; width:91px" %)Frequency Band|(% style="background-color:#f2f2f2; width:86px" %)Sub-band|(% style="background-color:#f2f2f2; width:44px" %)BAT
341 341  
342 342  Example parse in TTNv3
343 343  
... ... @@ -344,11 +344,11 @@
344 344  [[image:1675144504430-490.png]]
345 345  
346 346  
347 -(% style="color:#037691" %)**Sensor Model**(%%): For PS-LB/LS, this value is 0x16
375 +Sensor Model: For PS-LB/LS, this value is 0x16
348 348  
349 -(% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
377 +Firmware Version: 0x0100, Means: v1.0.0 version
350 350  
351 -(% style="color:#037691" %)**Frequency Band**:
379 +Frequency Band:
352 352  
353 353  *0x01: EU868
354 354  
... ... @@ -379,7 +379,7 @@
379 379  *0x0e: MA869
380 380  
381 381  
382 -(% style="color:#037691" %)**Sub-Band**:
410 +Sub-Band:
383 383  
384 384  AU915 and US915:value 0x00 ~~ 0x08
385 385  
... ... @@ -388,7 +388,7 @@
388 388  Other Bands: Always 0x00
389 389  
390 390  
391 -(% style="color:#037691" %)**Battery Info**:
419 +Battery Info:
392 392  
393 393  Check the battery voltage.
394 394  
... ... @@ -403,10 +403,12 @@
403 403  Uplink payload includes in total 9 bytes.
404 404  
405 405  
406 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
434 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
407 407  |(% style="background-color:#4f81bd; color:white; width:97px" %)(((
408 -**Size(bytes)**
409 -)))|(% style="background-color:#4f81bd; color:white; width:48px" %)**2**|(% style="background-color:#4f81bd; color:white; width:71px" %)**2**|(% style="background-color:#4f81bd; color:white; width:98px" %)**2**|(% style="background-color:#4f81bd; color:white; width:73px" %)**2**|(% style="background-color:#4f81bd; color:white; width:122px" %)**1**
436 +
437 +
438 +Size(bytes)
439 +)))|(% style="background-color:#4f81bd; color:white; width:50px" %)2|(% style="background-color:#4f81bd; color:white; width:71px" %)2|(% style="background-color:#4f81bd; color:white; width:98px" %)2|(% style="background-color:#4f81bd; color:white; width:73px" %)2|(% style="background-color:#4f81bd; color:white; width:122px" %)1
410 410  |(% style="width:97px" %)Value|(% style="width:48px" %)[[BAT>>||anchor="H2.3.3BatteryInfo"]]|(% style="width:71px" %)[[Probe Model>>||anchor="H2.3.4ProbeModel"]]|(% style="width:98px" %)[[0 ~~~~ 20mA value>>||anchor="H2.3.507E20mAvalue28IDC_IN29"]]|(% style="width:73px" %)[[0 ~~~~ 30v value>>||anchor="H2.3.607E30Vvalue28pinVDC_IN29"]]|(% style="width:122px" %)[[IN1 &IN2 Interrupt  flag>>||anchor="H2.3.7IN126IN226INTpin"]]
411 411  
412 412  [[image:1675144608950-310.png]]
... ... @@ -428,10 +428,10 @@
428 428  PS-LB/LS has different kind of probe, 4~~20mA represent the full scale of the measuring range. So a 12mA output means different meaning for different probe. 
429 429  
430 430  
431 -**For example.**
461 +For example.
432 432  
433 433  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
434 -|(% style="background-color:#4f81bd; color:white" %)**Part Number**|(% style="background-color:#4f81bd; color:white" %)**Probe Used**|(% style="background-color:#4f81bd; color:white" %)**4~~20mA scale**|(% style="background-color:#4f81bd; color:white" %)**Example: 12mA meaning**
464 +|(% style="background-color:#4f81bd; color:white" %)Part Number|(% style="background-color:#4f81bd; color:white" %)Probe Used|(% style="background-color:#4f81bd; color:white" %)4~~20mA scale|(% style="background-color:#4f81bd; color:white" %)Example: 12mA meaning
435 435  |(% style="background-color:#f2f2f2" %)PS-LB/LS-I3|(% style="background-color:#f2f2f2" %)immersion type with 3 meters cable|(% style="background-color:#f2f2f2" %)0~~3 meters|(% style="background-color:#f2f2f2" %)1.5 meters pure water
436 436  |(% style="background-color:#f2f2f2" %)PS-LB/LS-I5|(% style="background-color:#f2f2f2" %)immersion type with 5 meters cable|(% style="background-color:#f2f2f2" %)0~~5 meters|(% style="background-color:#f2f2f2" %)2.5 meters pure water
437 437  |(% style="background-color:#f2f2f2" %)PS-LB/LS-T20-B|(% style="background-color:#f2f2f2" %)T20 threaded probe|(% style="background-color:#f2f2f2" %)0~~1MPa|(% style="background-color:#f2f2f2" %)0.5MPa air / gas or water pressure
... ... @@ -442,9 +442,9 @@
442 442  === 2.3.5 0~~20mA value (IDC_IN) ===
443 443  
444 444  
445 -The output value from **Pressure Probe**, use together with Probe Model to get the pressure value or water level.
475 +The output value from Pressure Probe, use together with Probe Model to get the pressure value or water level.
446 446  
447 -(% style="color:#037691" %)**Example**:
477 +Example:
448 448  
449 449  27AE(H) = 10158 (D)/1000 = 10.158mA.
450 450  
... ... @@ -454,12 +454,12 @@
454 454  [[image:image-20230225154759-1.png||height="408" width="741"]]
455 455  
456 456  
457 -=== 2.3.6 0~~30V value ( pin VDC_IN) ===
487 +=== 2.3.6 0~~30V value (pin VDC_IN) ===
458 458  
459 459  
460 460  Measure the voltage value. The range is 0 to 30V.
461 461  
462 -(% style="color:#037691" %)**Example**:
492 +Example:
463 463  
464 464  138E(H) = 5006(D)/1000= 5.006V
465 465  
... ... @@ -469,7 +469,7 @@
469 469  
470 470  IN1 and IN2 are used as digital input pins.
471 471  
472 -(% style="color:#037691" %)**Example**:
502 +Example:
473 473  
474 474  09 (H): (0x09&0x08)>>3=1    IN1 pin is high level.
475 475  
... ... @@ -476,9 +476,9 @@
476 476  09 (H): (0x09&0x04)>>2=0    IN2 pin is low level.
477 477  
478 478  
479 -This data field shows if this packet is generated by (% style="color:blue" %)**Interrupt Pin** (%%)or not. [[Click here>>||anchor="H3.3.2SetInterruptMode"]] for the hardware and software set up. Note: The Internet Pin is a separate pin in the screw terminal.
509 +This data field shows if this packet is generated by Interrupt Pin or not. [[Click here>>||anchor="H3.3.2SetInterruptMode"]] for the hardware and software set up. Note: The Internet Pin is a separate pin in the screw terminal.
480 480  
481 -(% style="color:#037691" %)**Example:**
511 +Example:
482 482  
483 483  09 (H): (0x09&0x02)>>1=1    The level of the interrupt pin.
484 484  
... ... @@ -492,9 +492,13 @@
492 492  
493 493  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:500px" %)
494 494  |(% style="background-color:#4f81bd; color:white; width:65px" %)(((
495 -**Size(bytes)**
496 -)))|(% style="background-color:#4f81bd; color:white; width:35px" %)**2**|(% style="background-color:#4f81bd; color:white; width:400px" %)**n**
525 +
526 +
527 +Size(bytes)
528 +)))|(% style="background-color:#4f81bd; color:white; width:35px" %)2|(% style="background-color:#4f81bd; color:white; width:400px" %)n
497 497  |(% style="width:94px" %)Value|(% style="width:43px" %)[[BAT>>||anchor="H2.3.3BatteryInfo"]]|(% style="width:367px" %)(((
530 +
531 +
498 498  Voltage value, each 2 bytes is a set of voltage values.
499 499  )))
500 500  
... ... @@ -510,7 +510,6 @@
510 510  
511 511  While using TTN network, you can add the payload format to decode the payload.
512 512  
513 -
514 514  [[image:1675144839454-913.png]]
515 515  
516 516  
... ... @@ -528,12 +528,10 @@
528 528  
529 529  [[DATACAKE>>url:https://datacake.co/]] provides a human friendly interface to show the sensor data, once we have data in TTN, we can use [[DATACAKE>>url:https://datacake.co/]] to connect to TTN and see the data in DATACAKE. Below are the steps:
530 530  
564 +Step 1: Be sure that your device is programmed and properly connected to the network at this time.
531 531  
532 -(% style="color:blue" %)**Step 1: **(%%)Be sure that your device is programmed and properly connected to the network at this time.
566 +Step 2: To configure the Application to forward data to DATACAKE you will need to add integration. To add the DATACAKE integration, perform the following steps:
533 533  
534 -(% style="color:blue" %)**Step 2:**(%%) To configure the Application to forward data to DATACAKE you will need to add integration. To add the DATACAKE integration, perform the following steps:
535 -
536 -
537 537  [[image:1675144951092-237.png]]
538 538  
539 539  
... ... @@ -540,9 +540,9 @@
540 540  [[image:1675144960452-126.png]]
541 541  
542 542  
543 -(% style="color:blue" %)**Step 3:**(%%) Create an account or log in Datacake.
574 +Step 3: Create an account or log in Datacake.
544 544  
545 -(% style="color:blue" %)**Step 4:** (%%)Create PS-LB/LS product.
576 +Step 4: Create PS-LB/LS product.
546 546  
547 547  [[image:1675145004465-869.png]]
548 548  
... ... @@ -550,11 +550,10 @@
550 550  [[image:1675145018212-853.png]]
551 551  
552 552  
553 -
554 554  [[image:1675145029119-717.png]]
555 555  
556 556  
557 -(% style="color:blue" %)**Step 5: **(%%)add payload decode
587 +Step 5: add payload decode
558 558  
559 559  [[image:1675145051360-659.png]]
560 560  
... ... @@ -564,23 +564,450 @@
564 564  
565 565  After added, the sensor data arrive TTN, it will also arrive and show in Datacake.
566 566  
567 -
568 568  [[image:1675145081239-376.png]]
569 569  
570 570  
571 -== 2.6 Frequency Plans ==
600 +== 2.6 Datalog Feature (Since V1.1) ==
572 572  
573 573  
603 +When a user wants to retrieve sensor value, he can send a poll command from the IoT platform to ask the sensor to send value in the required time slot.
604 +
605 +
606 +=== 2.6.1 Unix TimeStamp ===
607 +
608 +
609 +PS-LB uses Unix TimeStamp format based on
610 +
611 +[[image:image-20250401163826-3.jpeg]]
612 +
613 +Users can get this time from the link:  [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] :
614 +
615 +Below is the converter example:
616 +
617 +[[image:image-20250401163906-4.jpeg]]
618 +
619 +
620 +=== 2.6.2 Set Device Time ===
621 +
622 +
623 +There are two ways to set the device's time:
624 +
625 +
626 +~1. Through LoRaWAN MAC Command (Default settings)
627 +
628 +Users need to set SYNCMOD=1 to enable sync time via the MAC command.
629 +
630 +Once CPL01 Joined the LoRaWAN network, it will send the MAC command (DeviceTimeReq) and the server will reply with (DeviceTimeAns) to send the current time to CPL01. If CPL01 fails to get the time from the server, CPL01 will use the internal time and wait for the next time request ~[[[via Device Status (FPORT=5)>>url:http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/CPL01%20LoRaWAN%20Outdoor%20PulseContact%20%20Sensor%20Manual/#H2.3.1DeviceStatus2CFPORT3D5]]].
631 +
632 +Note: LoRaWAN Server needs to support LoRaWAN v1.0.3(MAC v1.0.3) or higher to support this MAC command feature.
633 +
634 +
635 + 2. Manually Set Time
636 +
637 +Users need to set SYNCMOD=0 to manual time, otherwise, the user set time will be overwritten by the time set by the server.
638 +
639 +
640 +=== 2.6.3 Poll sensor value ===
641 +
642 +Users can poll sensor values based on timestamps. Below is the downlink command.
643 +
644 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:470px" %)
645 +|=(% colspan="4" style="width: 160px; background-color:#4F81BD;color:white" %)Downlink Command to poll Open/Close status (0x31)
646 +|(% style="background-color:#f2f2f2; width:67px" %)1byte|(% style="background-color:#f2f2f2; width:145px" %)4bytes|(% style="background-color:#f2f2f2; width:133px" %)4bytes|(% style="background-color:#f2f2f2; width:163px" %)1byte
647 +|(% style="background-color:#f2f2f2; width:67px" %)31|(% style="background-color:#f2f2f2; width:145px" %)Timestamp start|(% style="background-color:#f2f2f2; width:133px" %)(((
648 +
649 +
650 +Timestamp end
651 +)))|(% style="background-color:#f2f2f2; width:163px" %)Uplink Interval
652 +
653 +Timestamp start and Timestamp end-use Unix TimeStamp format as mentioned above. Devices will reply with all data logs during this period, using the uplink interval.
654 +
655 +For example, downlink command[[image:image-20250117104812-1.png]]
656 +
657 +Is to check 2024/12/20 09:34:59 to 2024/12/20 14:34:59's data
658 +
659 +Uplink Internal =5s,means PS-LB will send one packet every 5s. range 5~~255s.
660 +
661 +
662 +=== 2.6.4 Datalog Uplink payload (FPORT~=3) ===
663 +
664 +
665 +The Datalog uplinks will use below payload format.
666 +
667 +Retrieval data payload:
668 +
669 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
670 +|=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
671 +Size(bytes)
672 +)))|=(% style="width: 70px; background-color:#4F81BD;color:white" %)2|=(% style="width: 70px; background-color:#4F81BD;color:white" %)2|=(% style="width: 80px; background-color: rgb(79, 129, 189); color: white;" %)2|=(% style="width: 150px; background-color: rgb(79, 129, 189); color: white;" %)1|=(% style="width: 80px; background-color: rgb(79, 129, 189); color: white;" %)4
673 +|(% style="width:103px" %)Value|(% style="width:68px" %)(((
674 +
675 +
676 +Probe_mod
677 +)))|(% style="width:104px" %)(((
678 +
679 +
680 +VDC_intput_V
681 +)))|(% style="width:83px" %)(((
682 +
683 +
684 +IDC_intput_mA
685 +)))|(% style="width:201px" %)(((
686 +
687 +
688 +IN1_pin_level& IN2_pin_level& Exti_pin_level&Exti_status
689 +)))|(% style="width:86px" %)Unix Time Stamp
690 +
691 +IN1_pin_level & IN2_pin_level & Exti_pin_level & Exti_status:
692 +
693 +[[image:image-20250117104847-4.png]]
694 +
695 +
696 +No ACK Message:  1: This message means this payload is fromn Uplink Message which doesn't get ACK from the server before ( for PNACKMD=1 feature)
697 +
698 +Poll Message Flag: 1: This message is a poll message reply.
699 +
700 +* Poll Message Flag is set to 1.
701 +
702 +* Each data entry is 11 bytes, to save airtime and battery, devices will send max bytes according to the current DR and Frequency bands.
703 +
704 +For example, in US915 band, the max payload for different DR is:
705 +
706 +a) DR0: max is 11 bytes so one entry of data
707 +
708 +b) DR1: max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
709 +
710 +c) DR2: total payload includes 11 entries of data
711 +
712 +d) DR3: total payload includes 22 entries of data.
713 +
714 +If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0   
715 +
716 +Example:
717 +
718 +If PS-LB-NA has below data inside Flash:
719 +
720 +[[image:image-20250117104837-3.png]]
721 +
722 +
723 +If user sends below downlink command: 316788D9BF6788DB6305
724 +
725 +Where : Start time: 6788D9BF = time 25/1/16 10:04:47
726 +
727 + Stop time: 6788DB63 = time 25/1/16 10:11:47
728 +
729 +
730 +PA-LB-NA will uplink this payload.
731 +
732 +[[image:image-20250117104827-2.png]]
733 +
734 +
735 +00001B620000406788D9BF  00000D130000406788D9FB  00000D120000406788DA37  00000D110000406788DA73  00000D100000406788DAAF  00000D100000406788DAEB  00000D0F0000406788DB27  00000D100000406788DB63
736 +
737 +
738 +Where the first 11 bytes is for the first entry :
739 +
740 +
741 +0000  0D10  0000  40  6788DB63
742 +
743 +
744 +Probe_mod = 0x0000 = 0000
745 +
746 +
747 +VDC_intput_V = 0x0D10/1000=3.344V
748 +
749 +IDC_intput_mA = 0x0000/1000=0mA
750 +
751 +
752 +IN1_pin_level = (0x40& 0x08)? "High":"Low" = 0(Low)
753 +
754 +IN2_pin_level = (0x40& 0x04)? "High":"Low" = 0(Low)
755 +
756 +Exti_pin_level = (0x40& 0x02)? "High":"Low" = 0(Low)
757 +
758 +Exti_status = (0x40& 0x01)? "True":"False" = 0(False)
759 +
760 +
761 +Unix time is 0x6788DB63 = 1737022307s = 2025/1/16 10:11:47
762 +
763 +Its data format is:
764 +
765 +[Probe_mod, VDC_intput_V, IDC_intput_mA, IN1_pin_level, IN2_pin_level, Exti_pin_level, water_deep, Data_time],[Probe_mod, VDC_intput_V, IDC_intput_mA, IN1_pin_level, IN2_pin_level, Exti_pin_level, water_deep, Data_time],...
766 +
767 +Note: water_deep in the data needs to be converted using decoding to get it.
768 +
769 +
770 +=== 2.6.5 Decoder in TTN V3 ===
771 +
772 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/CPL01%20LoRaWAN%20Outdoor%20PulseContact%20%20Sensor%20Manual/WebHome/1652862574387-195.png?width=722&height=359&rev=1.1||alt="1652862574387-195.png" height="359" width="722"]]
773 +
774 +Please check the decoder from this link: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>url:https://github.com/dragino/dragino-end-node-decoder]]
775 +
776 +
777 +== 2.7 Frequency Plans ==
778 +
779 +
574 574  The PS-LB/LS uses OTAA mode and below frequency plans by default. Each frequency band use different firmware, user update the firmware to the corresponding band for their country.
575 575  
576 -[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]]
782 +[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/a>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]]
577 577  
578 578  
579 -== 2.7 ​Firmware Change Log ==
785 +== 2.8 Report on Change Feature (Since firmware V1.2) ==
580 580  
787 +=== 2.8.1 Uplink payload(Enable ROC) ===
581 581  
582 -**Firmware download link:**
583 583  
790 +Used to Monitor the IDC and VDC increments, and send ROC uplink when the IDC or VDC changes exceed.
791 +
792 +With ROC enabled, the payload is as follows:
793 +
794 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
795 +|(% style="background-color:#4f81bd; color:white; width:97px" %)(((
796 +
797 +
798 +Size(bytes)
799 +)))|(% style="background-color:#4f81bd; color:white; width:48px" %)2|(% style="background-color:#4f81bd; color:white; width:71px" %)2|(% style="background-color:#4f81bd; color:white; width:98px" %)2|(% style="background-color:#4f81bd; color:white; width:73px" %)2|(% style="background-color:#4f81bd; color:white; width:122px" %)1
800 +|(% style="width:97px" %)Value|(% style="width:48px" %)[[BAT>>||anchor="H2.3.3BatteryInfo"]]|(% style="width:71px" %)[[Probe Model>>||anchor="H2.3.4ProbeModel"]]|(% style="width:98px" %)[[0 ~~~~ 20mA value>>||anchor="H2.3.507E20mAvalue28IDC_IN29"]]|(% style="width:73px" %)[[0 ~~~~ 30v value>>||anchor="H2.3.607E30Vvalue28pinVDC_IN29"]]|(% style="width:122px" %)(((
801 +
802 +
803 +[[IN1 &IN2 Interrupt  flag>>||anchor="H2.3.7IN126IN226INTpin"]] & ROC_flag
804 +)))
805 +
806 +IN1 &IN2 , Interrupt  flag , ROC_flag:
807 +
808 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:515px" %)
809 +|(% style="background-color:#4f81bd; color:white; width:50px" %)Size(bit)|(% style="background-color:#4f81bd; color:white; width:60px" %)bit7|(% style="background-color:#4f81bd; color:white; width:62px" %)bit6|(% style="background-color:#4f81bd; color:white; width:62px" %)bit5|(% style="background-color:#4f81bd; color:white; width:65px" %)bit4|(% style="background-color:#4f81bd; color:white; width:56px" %)bit3|(% style="background-color:#4f81bd; color:white; width:55px" %)bit2|(% style="background-color:#4f81bd; color:white; width:55px" %)bit1|(% style="background-color:#4f81bd; color:white; width:50px" %)bit0
810 +|(% style="width:75px" %)Value|(% style="width:89px" %)IDC_Roc_flagL|(% style="width:46.5834px" %)IDC_Roc_flagH|(% style="width:1px" %)VDC_Roc_flagL|(% style="width:89px" %)VDC_Roc_flagH|(% style="width:89px" %)IN1_pin_level|(% style="width:103px" %)IN2_pin_level|(% style="width:103px" %)Exti_pin_level|(% style="width:103px" %)Exti_status
811 +
812 +* IDC_Roc_flagL
813 +
814 +80 (H): (0x80&0x80)=80(H)=1000 0000(B)  bit7=1, "TRUE", This uplink is triggered when the decrease in the IDC compared to the last ROC refresh exceeds the set threshold.
815 +
816 +60 (H): (0x60&0x80)=0  bit7=0, "FALSE", This uplink is not triggered when the decrease in the IDC compared to the last ROC refresh exceeds the set threshold.
817 +
818 +
819 +* IDC_Roc_flagH
820 +
821 +60 (H): (0x60&0x40)=60(H)=01000 0000(B)  bit6=1, "TRUE", This uplink is triggered when the increase in the value of the IDC compared to the last ROC refresh exceeds the set threshold.
822 +
823 +80 (H): (0x80&0x40)=0  bit6=0, "FALSE", This uplink is not triggered when the increase in the value of the IDC compared to the last ROC refresh exceeds the set threshold.
824 +
825 +
826 +* VDC_Roc_flagL
827 +
828 +20 (H): (0x20&0x20)=20(H)=0010 0000(B)  bit5=1, "TRUE", This uplink is triggered when the decrease in the VDC compared to the last ROC refresh exceeds the set threshold.
829 +
830 +90 (H): (0x90&0x20)=0  bit5=0, "FALSE", This uplink is not triggered when the decrease in the VDC compared to the last ROC refresh exceeds the set threshold.
831 +
832 +
833 +* VDC_Roc_flagH
834 +
835 +90 (H): (0x90&0x10)=10(H)=0001 0000(B)  bit4=1, "TRUE", This uplink is triggered when the increase in the value of the VDC compared to the last ROC refresh exceeds the set threshold.
836 +
837 +20 (H): (0x20&0x10)=0  bit4=0, "FALSE", This uplink is not triggered when the increase in the value of the VDC compared to the last ROC refresh exceeds the set threshold.
838 +
839 +
840 +* IN1_pin_level & IN2_pin_level
841 +
842 +IN1 and IN2 are used as digital input pins.
843 +
844 +80 (H): (0x80&0x08)=0  IN1 pin is low level.
845 +
846 +80 (H): (0x09&0x04)=0    IN2 pin is low level.
847 +
848 +
849 +* Exti_pin_level &Exti_status
850 +
851 +This data field shows whether the packet is generated by an interrupt pin.
852 +
853 +Note: The Internet pin of the old motherboard is a separate pin in the screw terminal, and the interrupt pin of the new motherboard(SIB V1.3) is the GPIO_EXTI pin.
854 +
855 +Exti_pin_level:  80 (H): (0x80&0x02)=0  "low", The level of the interrupt pin.
856 +
857 +Exti_status: 80 (H): (0x80&0x01)=0  "False", Normal uplink packet.
858 +
859 +
860 +=== 2.8.2 Set the Report on Change ===
861 +
862 +
863 +Feature: Get or Set the Report on Change.
864 +
865 +
866 +==== 2.8.2.1 Wave alarm mode ====
867 +
868 +Feature: By setting the detection period and a change value, the IDC/VDC variable is monitored whether it exceeds the set change value. If this change value is exceeded, the ROC uplink is sent and the comparison value is flushed.
869 +
870 +* Change value: The amount by which the next detection value increases/decreases relative to the previous detection value.
871 +* Comparison value: A parameter to compare with the latest ROC test.
872 +
873 +AT Command: AT+ROC
874 +
875 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
876 +|=(% style="width: 163px; background-color: rgb(79, 129, 189); color: white;" %)Command Example|=(% style="width: 154px; background-color: rgb(79, 129, 189); color: white;" %)Parameters|=(% style="width: 197px; background-color: rgb(79, 129, 189); color: white;" %)Response/Explanation
877 +|(% style="width:143px" %)AT+ROC=?|(% style="width:154px" %)Show current ROC setting|(% style="width:197px" %)(((
878 +
879 +
880 +0,0,0,0(default)
881 +OK
882 +)))
883 +|(% colspan="1" rowspan="4" style="width:143px" %)(((
884 +
885 +
886 +
887 +
888 +
889 +AT+ROC=a,b,c,d
890 +)))|(% style="width:154px" %)(((
891 +
892 +
893 +
894 +
895 +
896 +
897 +
898 +a: Enable or disable the ROC
899 +)))|(% style="width:197px" %)(((
900 +
901 +
902 +0: off
903 +1: Turn on the wave alarm mode, send the ROC uplink when the increment exceeds the set parameter and refresh the comparison value.
904 +
905 +2: Turn on the wave alarm mode, send the ROC uplink when the increment exceeds the set parameter and refresh the comparison value. In addition, the comparison value is refreshed when the device sends packets ([[TDC>>||anchor="H3.3.1SetTransmitIntervalTime"]] or [[ACT>>||anchor="H1.7Button26LEDs"]]).
906 +)))
907 +|(% style="width:154px" %)b: Set the detection interval|(% style="width:197px" %)(((
908 +
909 +
910 +Range:  0~~65535s
911 +)))
912 +|(% style="width:154px" %)c: Setting the IDC change value|(% style="width:197px" %)Unit: uA
913 +|(% style="width:154px" %)d: Setting the VDC change value|(% style="width:197px" %)Unit: mV
914 +
915 +Example:
916 +
917 +* AT+ROC=0,0,0,0  ~/~/The ROC function is not used.
918 +* AT+ROC=1,60,3000, 500  ~/~/ Check value every 60 seconds. lf there is change in IDC (>3mA) or VDC (>500mV), sends an ROC uplink, and the comparison value is refreshed.
919 +* AT+ROC=1,60,3000,0  ~/~/ Check value every 60 seconds. lf there is change in IDC (>3mA), send an ROC uplink and the comparison value of IDC is refreshed. dd=0 Means doesn't monitor Voltage.
920 +* AT+ROC=2,60,3000,0  ~/~/ Check value every 60 seconds. lf there is change in IDC (>3mA), send an ROC uplink and the comparison value of IDC is refreshed. dd=0 Means doesn't monitor Voltage. In addition, if the change in the IDC does not exceed 3mA, then the ROC uplink is not sent, and the comparison value is not refreshed by the ROC uplink packet. However, if the device TDC time arrives, or if the user manually sends packets, then the IDC comparison value is also refreshed.
921 +
922 +Downlink Command: 0x09 aa bb cc dd
923 +
924 +Format: Function code (0x09) followed by 4 bytes.
925 +
926 +aa: 1 byte; Set the wave alarm mode.
927 +
928 +bb: 2 bytes; Set the detection interval. (second)
929 +
930 +cc: 2 bytes; Setting the IDC change threshold. (uA)
931 +
932 +dd: 2 bytes; Setting the VDC change threshold. (mV)
933 +
934 +Example:
935 +
936 +* Downlink Payload: 09 01 00 3C 0B B8 01 F4  ~/~/Equal to AT+ROC=1,60,3000, 500
937 +* Downlink Payload: 09 01 00 3C 0B B8 00 00  ~/~/Equal to AT+ROC=1,60,3000,0
938 +* Downlink Payload: 09 02 00 3C 0B B8 00 00  ~/~/Equal to AT+ROC=2,60,3000,0
939 +
940 +Screenshot of parsing example in TTN:
941 +
942 +* AT+ROC=1,60,3000, 500.
943 +
944 +[[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/PS-LB-NA--LoRaWAN_Analog_Sensor_User_Manual/WebHome/image-20241019170902-1.png?width=1454&height=450&rev=1.1||alt="image-20241019170902-1.png"]]
945 +
946 +
947 +==== 2.8.2.2 Over-threshold alarm mode ====
948 +
949 +Feature: Monitors whether the IDC/VDC exceeds the threshold by setting the detection period and threshold. Alarm if the threshold is exceeded.
950 +
951 +AT Command: AT+ROC=3,a,b,c,d,e
952 +
953 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
954 +|=(% style="width: 163px; background-color: rgb(79, 129, 189); color: white;" %)Command Example|=(% style="width: 160px; background-color: rgb(79, 129, 189); color: white;" %)Parameters|=(% style="width: 185px; background-color: rgb(79, 129, 189); color: white;" %)Response/Explanation
955 +|(% style="width:143px" %)AT+ROC=?|(% style="width:160px" %)Show current ROC setting|(% style="width:185px" %)(((
956 +
957 +
958 +0,0,0,0(default)
959 +OK
960 +)))
961 +|(% colspan="1" rowspan="5" style="width:143px" %)(((
962 +
963 +
964 +
965 +
966 +
967 +AT+ROC=3,a,b,c,d,e
968 +)))|(% style="width:160px" %)(((
969 +
970 +
971 +a: Set the detection interval
972 +)))|(% style="width:185px" %)(((
973 +
974 +
975 +Range:  0~~65535s
976 +)))
977 +|(% style="width:160px" %)b: Set the IDC alarm trigger condition|(% style="width:185px" %)(((
978 +
979 +
980 +0: Less than the set IDC threshold, Alarm
981 +
982 +1: Greater than the set IDC threshold, Alarm
983 +)))
984 +|(% style="width:160px" %)(((
985 +
986 +
987 +c:  IDC alarm threshold
988 +)))|(% style="width:185px" %)(((
989 +
990 +
991 +Unit: uA
992 +)))
993 +|(% style="width:160px" %)d: Set the VDC alarm trigger condition|(% style="width:185px" %)(((
994 +
995 +
996 +0: Less than the set VDC threshold, Alarm
997 +
998 +1: Greater than the set VDC threshold, Alarm
999 +)))
1000 +|(% style="width:160px" %)e: VDC alarm threshold|(% style="width:185px" %)Unit: mV
1001 +
1002 +Example:
1003 +
1004 +* AT+ROC=3,60,0,3000,0,5000  ~/~/The data is checked every 60 seconds. If the IDC is less than 3mA or the VDC is less than 5000mV, an alarm is generated.
1005 +* AT+ROC=3,180,1,3000,1,5000  ~/~/The data is checked every 180 seconds. If the IDC is greater than 3mA or the VDC is greater than 5000mV, an alarm is generated.
1006 +* AT+ROC=3,300,0,3000,1,5000  ~/~/The data is checked every 300 seconds. If the IDC is less than 3mA or the VDC is greater than 5000mV, an alarm is generated.
1007 +
1008 +Downlink Command: 0x09 03 aa bb cc dd ee
1009 +
1010 +Format: Function code (0x09) followed by 03 and the remaining 5 bytes.
1011 +
1012 +aa: 2 bytes; Set the detection interval.(second)
1013 +
1014 +bb: 1 byte; Set the IDC alarm trigger condition.
1015 +
1016 +cc: 2 bytes; IDC alarm threshold.(uA)
1017 +
1018 +
1019 +dd: 1 byte; Set the VDC alarm trigger condition.
1020 +
1021 +ee: 2 bytes; VDC alarm threshold.(mV)
1022 +
1023 +Example:
1024 +
1025 +* Downlink Payload: 09 03 00 3C 00 0B B8 00 13 38 ~/~/Equal to AT+ROC=3,60,0,3000,0,5000
1026 +* Downlink Payload: 09 03 00 b4 01 0B B8 01 13 38  ~/~/Equal to AT+ROC=3,60,1,3000,1,5000
1027 +* Downlink Payload: 09 03 01 2C 00 0B B8 01 13 38  ~/~/Equal to AT+ROC=3,60,0,3000,1,5000
1028 +
1029 +Screenshot of parsing example in TTN:
1030 +
1031 +* AT+ROC=3,60,0,3000,0,5000
1032 +
1033 +[[image:image-20250116180030-2.png]]
1034 +
1035 +
1036 +== 2.9 ​Firmware Change Log ==
1037 +
1038 +
1039 +Firmware download link:
1040 +
584 584  [[https:~~/~~/www.dropbox.com/sh/gf1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0>>url:https://www.dropbox.com/sh/gf1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0]]
585 585  
586 586  
... ... @@ -591,7 +591,7 @@
591 591  
592 592  PS-LB/LS supports below configure method:
593 593  
594 -* AT Command via Bluetooth Connection (**Recommand Way**): [[BLE Configure Instruction>>url:http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
1051 +* AT Command via Bluetooth Connection (Recommand Way): [[BLE Configure Instruction>>url:http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
595 595  * AT Command via UART Connection : See [[FAQ>>||anchor="H6.FAQ"]].
596 596  * LoRaWAN Downlink.  Instruction for different platforms: See [[IoT LoRaWAN Server>>url:http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
597 597  
... ... @@ -619,21 +619,25 @@
619 619  
620 620  Feature: Change LoRaWAN End Node Transmit Interval.
621 621  
622 -(% style="color:blue" %)**AT Command: AT+TDC**
1079 +AT Command: AT+TDC
623 623  
624 624  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
625 -|=(% style="width: 160px; background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 160px; background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 190px;background-color:#4F81BD;color:white" %)**Response**
1082 +|=(% style="width: 160px; background-color:#4F81BD;color:white" %)Command Example|=(% style="width: 160px; background-color:#4F81BD;color:white" %)Function|=(% style="width: 190px;background-color:#4F81BD;color:white" %)Response
626 626  |(% style="background-color:#f2f2f2; width:157px" %)AT+TDC=?|(% style="background-color:#f2f2f2; width:166px" %)Show current transmit Interval|(% style="background-color:#f2f2f2" %)(((
1084 +
1085 +
627 627  30000
628 628  OK
629 629  the interval is 30000ms = 30s
630 630  )))
631 631  |(% style="background-color:#f2f2f2; width:157px" %)AT+TDC=60000|(% style="background-color:#f2f2f2; width:166px" %)Set Transmit Interval|(% style="background-color:#f2f2f2" %)(((
1091 +
1092 +
632 632  OK
633 633  Set transmit interval to 60000ms = 60 seconds
634 634  )))
635 635  
636 -(% style="color:blue" %)**Downlink Command: 0x01**
1097 +Downlink Command: 0x01
637 637  
638 638  Format: Command Code (0x01) followed by 3 bytes time value.
639 639  
... ... @@ -647,16 +647,20 @@
647 647  
648 648  Feature, Set Interrupt mode for GPIO_EXIT.
649 649  
650 -(% style="color:blue" %)**AT Command: AT+INTMOD**
1111 +AT Command: AT+INTMOD
651 651  
652 652  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
653 -|=(% style="width: 154px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 196px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 160px;background-color:#4F81BD;color:white" %)**Response**
1114 +|=(% style="width: 154px;background-color:#4F81BD;color:white" %)Command Example|=(% style="width: 196px;background-color:#4F81BD;color:white" %)Function|=(% style="width: 160px;background-color:#4F81BD;color:white" %)Response
654 654  |(% style="background-color:#f2f2f2; width:154px" %)AT+INTMOD=?|(% style="background-color:#f2f2f2; width:196px" %)Show current interrupt mode|(% style="background-color:#f2f2f2; width:157px" %)(((
1116 +
1117 +
655 655  0
656 656  OK
657 657  the mode is 0 =Disable Interrupt
658 658  )))
659 659  |(% style="background-color:#f2f2f2; width:154px" %)AT+INTMOD=2|(% style="background-color:#f2f2f2; width:196px" %)(((
1123 +
1124 +
660 660  Set Transmit Interval
661 661  0. (Disable Interrupt),
662 662  ~1. (Trigger by rising and falling edge)
... ... @@ -664,7 +664,7 @@
664 664  3. (Trigger by rising edge)
665 665  )))|(% style="background-color:#f2f2f2; width:157px" %)OK
666 666  
667 -(% style="color:blue" %)**Downlink Command: 0x06**
1132 +Downlink Command: 0x06
668 668  
669 669  Format: Command Code (0x06) followed by 3 bytes.
670 670  
... ... @@ -678,76 +678,106 @@
678 678  
679 679  Feature, Control the output 3V3 , 5V or 12V.
680 680  
681 -(% style="color:blue" %)**AT Command: AT+3V3T**
1146 +AT Command: AT+3V3T
682 682  
683 683  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:474px" %)
684 -|=(% style="width: 154px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 201px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 119px;background-color:#4F81BD;color:white" %)**Response**
1149 +|=(% style="width: 154px;background-color:#4F81BD;color:white" %)Command Example|=(% style="width: 201px;background-color:#4F81BD;color:white" %)Function|=(% style="width: 119px;background-color:#4F81BD;color:white" %)Response
685 685  |(% style="background-color:#f2f2f2; width:154px" %)AT+3V3T=?|(% style="background-color:#f2f2f2; width:201px" %)Show 3V3 open time.|(% style="background-color:#f2f2f2; width:116px" %)(((
1151 +
1152 +
686 686  0
687 687  OK
688 688  )))
689 689  |(% style="background-color:#f2f2f2; width:154px" %)AT+3V3T=0|(% style="background-color:#f2f2f2; width:201px" %)Normally open 3V3 power supply.|(% style="background-color:#f2f2f2; width:116px" %)(((
1157 +
1158 +
690 690  OK
691 691  default setting
692 692  )))
693 693  |(% style="background-color:#f2f2f2; width:154px" %)AT+3V3T=1000|(% style="background-color:#f2f2f2; width:201px" %)Close after a delay of 1000 milliseconds.|(% style="background-color:#f2f2f2; width:116px" %)(((
1163 +
1164 +
694 694  OK
695 695  )))
696 696  |(% style="background-color:#f2f2f2; width:154px" %)AT+3V3T=65535|(% style="background-color:#f2f2f2; width:201px" %)Normally closed 3V3 power supply.|(% style="background-color:#f2f2f2; width:116px" %)(((
1168 +
1169 +
697 697  OK
698 698  )))
699 699  
700 -(% style="color:blue" %)**AT Command: AT+5VT**
1173 +AT Command: AT+5VT
701 701  
702 702  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:470px" %)
703 -|=(% style="width: 155px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 196px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 119px;background-color:#4F81BD;color:white" %)**Response**
1176 +|=(% style="width: 155px;background-color:#4F81BD;color:white" %)Command Example|=(% style="width: 196px;background-color:#4F81BD;color:white" %)Function|=(% style="width: 119px;background-color:#4F81BD;color:white" %)Response
704 704  |(% style="background-color:#f2f2f2; width:155px" %)AT+5VT=?|(% style="background-color:#f2f2f2; width:196px" %)Show 5V open time.|(% style="background-color:#f2f2f2; width:114px" %)(((
1178 +
1179 +
705 705  0
706 706  OK
707 707  )))
708 708  |(% style="background-color:#f2f2f2; width:155px" %)AT+5VT=0|(% style="background-color:#f2f2f2; width:196px" %)Normally closed 5V power supply.|(% style="background-color:#f2f2f2; width:114px" %)(((
1184 +
1185 +
709 709  OK
710 710  default setting
711 711  )))
712 712  |(% style="background-color:#f2f2f2; width:155px" %)AT+5VT=1000|(% style="background-color:#f2f2f2; width:196px" %)Close after a delay of 1000 milliseconds.|(% style="background-color:#f2f2f2; width:114px" %)(((
1190 +
1191 +
713 713  OK
714 714  )))
715 715  |(% style="background-color:#f2f2f2; width:155px" %)AT+5VT=65535|(% style="background-color:#f2f2f2; width:196px" %)Normally open 5V power supply.|(% style="background-color:#f2f2f2; width:114px" %)(((
1195 +
1196 +
716 716  OK
717 717  )))
718 718  
719 -(% style="color:blue" %)**AT Command: AT+12VT**
1200 +AT Command: AT+12VT
720 720  
721 721  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:443px" %)
722 -|=(% style="width: 156px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 199px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 88px;background-color:#4F81BD;color:white" %)**Response**
1203 +|=(% style="width: 156px;background-color:#4F81BD;color:white" %)Command Example|=(% style="width: 199px;background-color:#4F81BD;color:white" %)Function|=(% style="width: 88px;background-color:#4F81BD;color:white" %)Response
723 723  |(% style="background-color:#f2f2f2; width:156px" %)AT+12VT=?|(% style="background-color:#f2f2f2; width:199px" %)Show 12V open time.|(% style="background-color:#f2f2f2; width:83px" %)(((
1205 +
1206 +
724 724  0
725 725  OK
726 726  )))
727 727  |(% style="background-color:#f2f2f2; width:156px" %)AT+12VT=0|(% style="background-color:#f2f2f2; width:199px" %)Normally closed 12V power supply.|(% style="background-color:#f2f2f2; width:83px" %)OK
728 728  |(% style="background-color:#f2f2f2; width:156px" %)AT+12VT=500|(% style="background-color:#f2f2f2; width:199px" %)Close after a delay of 500 milliseconds.|(% style="background-color:#f2f2f2; width:83px" %)(((
1212 +
1213 +
729 729  OK
730 730  )))
731 731  
732 -(% style="color:blue" %)**Downlink Command: 0x07**
1217 +Downlink Command: 0x07
733 733  
734 734  Format: Command Code (0x07) followed by 3 bytes.
735 735  
736 736  The first byte is which power, the second and third bytes are the time to turn on.
737 737  
738 -* Example 1: Downlink Payload: 070101F4  **~-~-->**  AT+3V3T=500
739 -* Example 2: Downlink Payload: 0701FFFF   **~-~-->**  AT+3V3T=65535
740 -* Example 3: Downlink Payload: 070203E8  **~-~-->**  AT+5VT=1000
741 -* Example 4: Downlink Payload: 07020000  **~-~-->**  AT+5VT=0
742 -* Example 5: Downlink Payload: 070301F4  **~-~-->**  AT+12VT=500
743 -* Example 6: Downlink Payload: 07030000  **~-~-->**  AT+12VT=0
1223 +* Example 1: Downlink Payload: 070101F4  ~-~-->  AT+3V3T=500
1224 +* Example 2: Downlink Payload: 0701FFFF   ~-~-->  AT+3V3T=65535
1225 +* Example 3: Downlink Payload: 070203E8  ~-~-->  AT+5VT=1000
1226 +* Example 4: Downlink Payload: 07020000  ~-~-->  AT+5VT=0
1227 +* Example 5: Downlink Payload: 070301F4  ~-~-->  AT+12VT=500
1228 +* Example 6: Downlink Payload: 07030000  ~-~-->  AT+12VT=0
744 744  
1230 +Note: Before v1.2, the maximum settable time of 3V3T, 5VT and 12VT is 65535 milliseconds. After v1.2, the maximum settable time of 3V3T, 5VT and 12VT is 180 seconds.
1231 +
1232 +Therefore, the corresponding downlink command is increased by one byte to five bytes.
1233 +
1234 +Example:
1235 +
1236 +* 120s=120000ms(D) =0x01D4C0(H), Downlink Payload: 07 01 01 D4 C0  ~-~-->  AT+3V3T=120000
1237 +* 100s=100000ms(D) =0x0186A0(H), Downlink Payload: 07 02 01 86 A0  ~-~-->  AT+5VT=100000
1238 +* 80s=80000ms(D) =0x013880(H), Downlink Payload: 07 03 01 38 80  ~-~-->  AT+12VT=80000
1239 +
745 745  === 3.3.4 Set the Probe Model ===
746 746  
747 747  
748 748  Users need to configure this parameter according to the type of external probe. In this way, the server can decode according to this value, and convert the current value output by the sensor into water depth or pressure value.
749 749  
750 -(% style="color:blue" %)**AT Command: AT** **+PROBE**
1245 +AT Command: AT +PROBE
751 751  
752 752  AT+PROBE=aabb
753 753  
... ... @@ -759,12 +759,20 @@
759 759  
760 760  (A->01,B->02,C->03,D->04,E->05,F->06,G->07,H->08,I->09,J->0A,K->0B,L->0C)
761 761  
1257 +When aa=02, it is the Differential Pressure Sensor , which converts the current into a pressure value;
1258 +
1259 +bb represents which type of pressure sensor it is.
1260 +
1261 +(0~~100Pa->01,0~~200Pa->02,0~~300Pa->03,0~~1KPa->04,0~~2KPa->05,0~~3KPa->06,0~~4KPa->07,0~~5KPa->08,0~~10KPa->09,-100~~ 100Pa->0A,-200~~ 200Pa->0B,-1~~ 1KPa->0C)
1262 +
762 762  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
763 -|(% style="background-color:#4f81bd; color:white; width:154px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:269px" %)**Function**|(% style="background-color:#4f81bd; color:white" %)**Response**
1264 +|(% style="background-color:#4f81bd; color:white; width:154px" %)Command Example|(% style="background-color:#4f81bd; color:white; width:269px" %)Function|(% style="background-color:#4f81bd; color:white" %)Response
764 764  |(% style="background-color:#f2f2f2; width:154px" %)AT+PROBE=?|(% style="background-color:#f2f2f2; width:269px" %)Get or Set the probe model.|(% style="background-color:#f2f2f2" %)0
765 765  OK
766 766  |(% style="background-color:#f2f2f2; width:154px" %)AT+PROBE=0003|(% style="background-color:#f2f2f2; width:269px" %)Set water depth sensor mode, 3m type.|(% style="background-color:#f2f2f2" %)OK
767 767  |(% style="background-color:#f2f2f2; width:154px" %)(((
1269 +
1270 +
768 768  AT+PROBE=000A
769 769  )))|(% style="background-color:#f2f2f2; width:269px" %)Set water depth sensor mode, 10m type.|(% style="background-color:#f2f2f2" %)OK
770 770  |(% style="background-color:#f2f2f2; width:154px" %)AT+PROBE=0064|(% style="background-color:#f2f2f2; width:269px" %)Set water depth sensor mode, 100m type.|(% style="background-color:#f2f2f2" %)OK
... ... @@ -771,52 +771,59 @@
771 771  |(% style="background-color:#f2f2f2; width:154px" %)AT+PROBE=0101|(% style="background-color:#f2f2f2; width:269px" %)Set pressure transmitters mode, first type(A).|(% style="background-color:#f2f2f2" %)OK
772 772  |(% style="background-color:#f2f2f2; width:154px" %)AT+PROBE=0000|(% style="background-color:#f2f2f2; width:269px" %)Initial state, no settings.|(% style="background-color:#f2f2f2" %)OK
773 773  
774 -(% style="color:blue" %)**Downlink Command: 0x08**
1277 +Downlink Command: 0x08
775 775  
776 776  Format: Command Code (0x08) followed by 2 bytes.
777 777  
778 -* Example 1: Downlink Payload: 080003  **~-~-->**  AT+PROBE=0003
779 -* Example 2: Downlink Payload: 080101  **~-~-->**  AT+PROBE=0101
1281 +* Example 1: Downlink Payload: 080003  ~-~-->  AT+PROBE=0003
1282 +* Example 2: Downlink Payload: 080101  ~-~-->  AT+PROBE=0101
780 780  
781 781  === 3.3.5 Multiple collections are one uplink (Since firmware V1.1) ===
782 782  
783 783  
784 -Added AT+STDC command to collect the voltage of VDC_INPUT multiple times and upload it at one time.
1287 +Added AT+STDC command to collect the voltage of VDC_INPUT/IDC_INPUT multiple times and upload it at one time.
785 785  
786 -(% style="color:blue" %)**AT Command: AT** **+STDC**
1289 +AT Command: AT +STDC
787 787  
788 788  AT+STDC=aa,bb,bb
789 789  
790 -(% style="color:#037691" %)**aa:**(%%)
791 -**0:** means disable this function and use TDC to send packets.
792 -**1:** means enable this function, use the method of multiple acquisitions to send packets.
793 -(% style="color:#037691" %)**bb:**(%%) Each collection interval (s), the value is 1~~65535
794 -(% style="color:#037691" %)**cc:**(%%)** **the number of collection times, the value is 1~~120
1293 +aa:
1294 +0: means disable this function and use TDC to send packets.
1295 +1: means that the function is enabled to send packets by collecting VDC data for multiple times.
1296 +2: means that the function is enabled to send packets by collecting IDC data for multiple times.
1297 +bb: Each collection interval (s), the value is 1~~65535
1298 +cc: the number of collection times, the value is 1~~120
795 795  
796 796  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
797 -|(% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:215px" %)**Function**|(% style="background-color:#4f81bd; color:white" %)**Response**
1301 +|(% style="background-color:#4f81bd; color:white; width:160px" %)Command Example|(% style="background-color:#4f81bd; color:white; width:215px" %)Function|(% style="background-color:#4f81bd; color:white" %)Response
798 798  |(% style="background-color:#f2f2f2; width:160px" %)AT+STDC=?|(% style="background-color:#f2f2f2; width:215px" %)Get the mode of multiple acquisitions and one uplink.|(% style="background-color:#f2f2f2" %)1,10,18
799 799  OK
800 800  |(% style="background-color:#f2f2f2; width:160px" %)AT+STDC=1,10,18|(% style="background-color:#f2f2f2; width:215px" %)Set the mode of multiple acquisitions and one uplink, collect once every 10 seconds, and report after 18 times.|(% style="background-color:#f2f2f2" %)(((
1305 +
1306 +
801 801  Attention:Take effect after ATZ
802 802  
803 803  OK
804 804  )))
805 805  |(% style="background-color:#f2f2f2; width:160px" %)AT+STDC=0, 0,0|(% style="background-color:#f2f2f2; width:215px" %)(((
1312 +
1313 +
806 806  Use the TDC interval to send packets.(default)
807 807  
808 808  
809 809  )))|(% style="background-color:#f2f2f2" %)(((
1318 +
1319 +
810 810  Attention:Take effect after ATZ
811 811  
812 812  OK
813 813  )))
814 814  
815 -(% style="color:blue" %)**Downlink Command: 0xAE**
1325 +Downlink Command: 0xAE
816 816  
817 -Format: Command Code (0x08) followed by 5 bytes.
1327 +Format: Command Code (0xAE) followed by 4 bytes.
818 818  
819 -* Example 1: Downlink Payload: AE 01 02 58 12** ~-~-->**  AT+STDC=1,600,18
1329 +* Example 1: Downlink Payload: AE 01 02 58 12 ~-~-->  AT+STDC=1,600,18
820 820  
821 821  = 4. Battery & Power Consumption =
822 822  
... ... @@ -823,7 +823,7 @@
823 823  
824 824  PS-LB use ER26500 + SPC1520 battery pack and PS-LS use 3000mAh Recharable Battery with Solar Panel. See below link for detail information about the battery info and how to replace.
825 825  
826 -[[**Battery Info & Power Consumption Analyze**>>url:http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
1336 +[[Battery Info & Power Consumption Analyze>>url:http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
827 827  
828 828  
829 829  = 5. OTA firmware update =
... ... @@ -859,22 +859,22 @@
859 859  Test the current values at the depth of different liquids and convert them to a linear scale.
860 860  Replace its ratio with the ratio of water to current in the decoder.
861 861  
862 -**Example:**
1372 +Example:
863 863  
864 864  Measure the corresponding current of the sensor when the liquid depth is 2.04m and 0.51m.
865 865  
866 -**Calculate scale factor:**
1376 +Calculate scale factor:
867 867  Use these two data to calculate the current and depth scaling factors:(7.888-5.035)/(2.04-0.51)=1.86470588235294
868 868  
869 -**Calculation formula:**
1379 +Calculation formula:
870 870  
871 871  Use the calibration formula:(Current current - Minimum calibration current)/Scale factor + Minimum actual calibration height
872 872  
873 -**Actual calculations:**
1383 +Actual calculations:
874 874  
875 875  Use this formula to calculate the value corresponding to the current at a depth of 1.5 meters: (6.918-5.035)/1.86470588235294+0.51=1.519810726
876 876  
877 -**Error:**
1387 +Error:
878 878  
879 879  0.009810726
880 880  
... ... @@ -898,17 +898,17 @@
898 898  = 8. Order Info =
899 899  
900 900  
901 -[[image:image-20240109172423-7.png]](% style="display:none" %)
902 902  
1412 +[[image:image-20241021093209-1.png]]
903 903  
904 904  = 9. ​Packing Info =
905 905  
906 906  
907 -(% style="color:#037691" %)**Package Includes**:
1417 +Package Includes:
908 908  
909 909  * PS-LB or PS-LS LoRaWAN Pressure Sensor
910 910  
911 -(% style="color:#037691" %)**Dimension and weight**:
1421 +Dimension and weight:
912 912  
913 913  * Device Size: cm
914 914  * Device Weight: g
... ... @@ -921,5 +921,3 @@
921 921  * 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.
922 922  
923 923  * 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.cc>>mailto:Support@dragino.cc]].
924 -
925 -
image-20240817150702-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Bei
Size
... ... @@ -1,0 +1,1 @@
1 +38.4 KB
Content
image-20241021093209-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +52.1 KB
Content
image-20250116175954-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +68.6 KB
Content
image-20250116180030-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +69.2 KB
Content
image-20250117104812-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +1.7 KB
Content
image-20250117104827-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +74.6 KB
Content
image-20250117104837-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +38.7 KB
Content
image-20250117104847-4.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +4.2 KB
Content
image-20250401102131-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +64.7 KB
Content
image-20250401163530-1.jpeg
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +44.9 KB
Content
image-20250401163539-2.jpeg
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +31.1 KB
Content
image-20250401163826-3.jpeg
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +18.9 KB
Content
image-20250401163906-4.jpeg
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +181.6 KB
Content