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

From version 89.1
edited by Mengting Qiu
on 2024/05/13 11:29
Change comment: There is no comment for this version
To version 123.3
edited by Xiaoling
on 2025/04/01 16:46
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,25 +136,26 @@
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 149  === 1.4.3 Wireless Differential Air Pressure Sensor ===
150 150  
151 -[[image:image-20240511174954-1.png]]
151 +[[image:image-20240511174954-1.png||height="215" width="215"]]
152 152  
153 -* Measuring Range: -100KPa~~0~~100KPa,Intermediate range is optional.
153 +* Measuring Range: -100KPa~~0~~100KPa(Optional measuring range).
154 154  * Accuracy: 0.5% F.S, resolution is 0.05%.
155 155  * Overload: 300% F.S
156 156  * Zero temperature drift: ±0.03%F.S/°C
157 -* Operating temperature: -40℃~~85℃
157 +* Operating temperature: -20°C~~60°C
158 +* Storage temperature:  -20°C~~60°C
158 158  * Compensation temperature: 0~~50°C
159 159  
160 160  == 1.5 Application and Installation ==
... ... @@ -162,7 +162,7 @@
162 162  === 1.5.1 Thread Installation Type ===
163 163  
164 164  
165 -(% style="color:blue" %)**Application:**
166 +Application:
166 166  
167 167  * Hydraulic Pressure
168 168  * Petrochemical Industry
... ... @@ -180,7 +180,7 @@
180 180  === 1.5.2 Immersion Type ===
181 181  
182 182  
183 -(% style="color:blue" %)**Application:**
184 +Application:
184 184  
185 185  Liquid & Water Pressure / Level detect.
186 186  
... ... @@ -199,12 +199,15 @@
199 199  
200 200  [[image:1675071776102-240.png]]
201 201  
203 +Size of immersion type water depth sensor:
202 202  
205 +[[image:image-20250401102131-1.png||height="268" width="707"]]
203 203  
207 +
204 204  === 1.5.3 Wireless Differential Air Pressure Sensor ===
205 205  
206 206  
207 -(% style="color:blue" %)**Application:**
211 +Application:
208 208  
209 209  Indoor Air Control & Filter clogging Detect.
210 210  
... ... @@ -225,34 +225,35 @@
225 225  Note: The above dimensions are measured by hand, and the numerical error of the shell is within ±0.2mm.
226 226  
227 227  
228 -
229 -
230 -
231 231  == 1.6 Sleep mode and working mode ==
232 232  
233 233  
234 -(% 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.
235 235  
236 -(% 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.
237 237  
238 238  
239 239  == 1.7 Button & LEDs ==
240 240  
241 241  
242 -[[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"]]
243 243  
244 244  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
245 -|=(% 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
246 246  |(% 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" %)(((
247 -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.
248 248  Meanwhile, BLE module will be active and user can connect via BLE to configure device.
249 249  )))
250 250  |(% 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" %)(((
251 -(% 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.
252 -(% 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.
253 253  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.
254 254  )))
255 -|(% 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.
256 256  
257 257  == 1.8 Pin Mapping ==
258 258  
... ... @@ -277,16 +277,16 @@
277 277  
278 278  == 1.10 Mechanical ==
279 279  
280 -=== 1.10.1 for LB version(% style="display:none" %) (%%) ===
285 +=== 1.10.1 for LB version ===
281 281  
282 282  
283 -[[image:image-20240109160800-6.png]]
288 +[[image:image-20250401163530-1.jpeg]]
284 284  
285 285  
286 286  === 1.10.2 for LS version ===
287 287  
288 288  
289 -[[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]]
290 290  
291 291  
292 292  = 2. Configure PS-LB/LS to connect to LoRaWAN network =
... ... @@ -294,7 +294,7 @@
294 294  == 2.1 How it works ==
295 295  
296 296  
297 -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.
298 298  
299 299  
300 300  == 2.2 ​Quick guide to connect to LoRaWAN server (OTAA) ==
... ... @@ -302,7 +302,6 @@
302 302  
303 303  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.
304 304  
305 -
306 306  [[image:1675144005218-297.png]]
307 307  
308 308  
... ... @@ -309,7 +309,7 @@
309 309  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.
310 310  
311 311  
312 -(% 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.
313 313  
314 314  Each PS-LB/LS is shipped with a sticker with the default device EUI as below:
315 315  
... ... @@ -319,32 +319,32 @@
319 319  You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
320 320  
321 321  
322 -(% style="color:blue" %)**Register the device**
326 +Register the device
323 323  
324 324  [[image:1675144099263-405.png]]
325 325  
326 326  
327 -(% style="color:blue" %)**Add APP EUI and DEV EUI**
331 +Add APP EUI and DEV EUI
328 328  
329 329  [[image:1675144117571-832.png]]
330 330  
331 331  
332 -(% style="color:blue" %)**Add APP EUI in the application**
336 +Add APP EUI in the application
333 333  
334 334  
335 335  [[image:1675144143021-195.png]]
336 336  
337 337  
338 -(% style="color:blue" %)**Add APP KEY**
342 +Add APP KEY
339 339  
340 340  [[image:1675144157838-392.png]]
341 341  
342 -(% style="color:blue" %)**Step 2:**(%%) Activate on PS-LB/LS
346 +Step 2: Activate on PS-LB/LS
343 343  
344 344  
345 345  Press the button for 5 seconds to activate the PS-LB/LS.
346 346  
347 -(% 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.
348 348  
349 349  After join success, it will start to upload messages to TTN and you can see the messages in the panel.
350 350  
... ... @@ -358,11 +358,10 @@
358 358  
359 359  Users can also use the downlink command(0x26 01) to ask PS-LB/LS to resend this uplink.
360 360  
361 -
362 362  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
363 -|(% colspan="6" style="background-color:#4f81bd; color:white" %)**Device Status (FPORT=5)**
364 -|(% 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**
365 -|(% 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
366 366  
367 367  Example parse in TTNv3
368 368  
... ... @@ -369,11 +369,11 @@
369 369  [[image:1675144504430-490.png]]
370 370  
371 371  
372 -(% style="color:#037691" %)**Sensor Model**(%%): For PS-LB/LS, this value is 0x16
375 +Sensor Model: For PS-LB/LS, this value is 0x16
373 373  
374 -(% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
377 +Firmware Version: 0x0100, Means: v1.0.0 version
375 375  
376 -(% style="color:#037691" %)**Frequency Band**:
379 +Frequency Band:
377 377  
378 378  *0x01: EU868
379 379  
... ... @@ -404,7 +404,7 @@
404 404  *0x0e: MA869
405 405  
406 406  
407 -(% style="color:#037691" %)**Sub-Band**:
410 +Sub-Band:
408 408  
409 409  AU915 and US915:value 0x00 ~~ 0x08
410 410  
... ... @@ -413,7 +413,7 @@
413 413  Other Bands: Always 0x00
414 414  
415 415  
416 -(% style="color:#037691" %)**Battery Info**:
419 +Battery Info:
417 417  
418 418  Check the battery voltage.
419 419  
... ... @@ -428,10 +428,12 @@
428 428  Uplink payload includes in total 9 bytes.
429 429  
430 430  
431 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
434 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
432 432  |(% style="background-color:#4f81bd; color:white; width:97px" %)(((
433 -**Size(bytes)**
434 -)))|(% 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
435 435  |(% 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"]]
436 436  
437 437  [[image:1675144608950-310.png]]
... ... @@ -453,10 +453,10 @@
453 453  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. 
454 454  
455 455  
456 -**For example.**
461 +For example.
457 457  
458 458  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
459 -|(% 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
460 460  |(% 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
461 461  |(% 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
462 462  |(% 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
... ... @@ -467,9 +467,9 @@
467 467  === 2.3.5 0~~20mA value (IDC_IN) ===
468 468  
469 469  
470 -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.
471 471  
472 -(% style="color:#037691" %)**Example**:
477 +Example:
473 473  
474 474  27AE(H) = 10158 (D)/1000 = 10.158mA.
475 475  
... ... @@ -479,12 +479,12 @@
479 479  [[image:image-20230225154759-1.png||height="408" width="741"]]
480 480  
481 481  
482 -=== 2.3.6 0~~30V value ( pin VDC_IN) ===
487 +=== 2.3.6 0~~30V value (pin VDC_IN) ===
483 483  
484 484  
485 485  Measure the voltage value. The range is 0 to 30V.
486 486  
487 -(% style="color:#037691" %)**Example**:
492 +Example:
488 488  
489 489  138E(H) = 5006(D)/1000= 5.006V
490 490  
... ... @@ -494,7 +494,7 @@
494 494  
495 495  IN1 and IN2 are used as digital input pins.
496 496  
497 -(% style="color:#037691" %)**Example**:
502 +Example:
498 498  
499 499  09 (H): (0x09&0x08)>>3=1    IN1 pin is high level.
500 500  
... ... @@ -501,9 +501,9 @@
501 501  09 (H): (0x09&0x04)>>2=0    IN2 pin is low level.
502 502  
503 503  
504 -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.
505 505  
506 -(% style="color:#037691" %)**Example:**
511 +Example:
507 507  
508 508  09 (H): (0x09&0x02)>>1=1    The level of the interrupt pin.
509 509  
... ... @@ -517,9 +517,13 @@
517 517  
518 518  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:500px" %)
519 519  |(% style="background-color:#4f81bd; color:white; width:65px" %)(((
520 -**Size(bytes)**
521 -)))|(% 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
522 522  |(% style="width:94px" %)Value|(% style="width:43px" %)[[BAT>>||anchor="H2.3.3BatteryInfo"]]|(% style="width:367px" %)(((
530 +
531 +
523 523  Voltage value, each 2 bytes is a set of voltage values.
524 524  )))
525 525  
... ... @@ -535,7 +535,6 @@
535 535  
536 536  While using TTN network, you can add the payload format to decode the payload.
537 537  
538 -
539 539  [[image:1675144839454-913.png]]
540 540  
541 541  
... ... @@ -553,12 +553,10 @@
553 553  
554 554  [[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:
555 555  
564 +Step 1: Be sure that your device is programmed and properly connected to the network at this time.
556 556  
557 -(% 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:
558 558  
559 -(% 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:
560 -
561 -
562 562  [[image:1675144951092-237.png]]
563 563  
564 564  
... ... @@ -565,9 +565,9 @@
565 565  [[image:1675144960452-126.png]]
566 566  
567 567  
568 -(% style="color:blue" %)**Step 3:**(%%) Create an account or log in Datacake.
574 +Step 3: Create an account or log in Datacake.
569 569  
570 -(% style="color:blue" %)**Step 4:** (%%)Create PS-LB/LS product.
576 +Step 4: Create PS-LB/LS product.
571 571  
572 572  [[image:1675145004465-869.png]]
573 573  
... ... @@ -575,11 +575,10 @@
575 575  [[image:1675145018212-853.png]]
576 576  
577 577  
578 -
579 579  [[image:1675145029119-717.png]]
580 580  
581 581  
582 -(% style="color:blue" %)**Step 5: **(%%)add payload decode
587 +Step 5: add payload decode
583 583  
584 584  [[image:1675145051360-659.png]]
585 585  
... ... @@ -589,23 +589,441 @@
589 589  
590 590  After added, the sensor data arrive TTN, it will also arrive and show in Datacake.
591 591  
592 -
593 593  [[image:1675145081239-376.png]]
594 594  
595 595  
596 -== 2.6 Frequency Plans ==
600 +== 2.6 Datalog Feature (Since V1.1) ==
597 597  
598 598  
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 +Probe_mod
675 +)))|(% style="width:104px" %)(((
676 +VDC_intput_V
677 +)))|(% style="width:83px" %)(((
678 +IDC_intput_mA
679 +)))|(% style="width:201px" %)(((
680 +IN1_pin_level& IN2_pin_level& Exti_pin_level&Exti_status
681 +)))|(% style="width:86px" %)Unix Time Stamp
682 +IN1_pin_level & IN2_pin_level & Exti_pin_level & Exti_status:
683 +
684 +[[image:image-20250117104847-4.png]]
685 +
686 +
687 +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)
688 +
689 +Poll Message Flag: 1: This message is a poll message reply.
690 +
691 +* Poll Message Flag is set to 1.
692 +
693 +* Each data entry is 11 bytes, to save airtime and battery, devices will send max bytes according to the current DR and Frequency bands.
694 +
695 +For example, in US915 band, the max payload for different DR is:
696 +
697 +a) DR0: max is 11 bytes so one entry of data
698 +
699 +b) DR1: max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
700 +
701 +c) DR2: total payload includes 11 entries of data
702 +
703 +d) DR3: total payload includes 22 entries of data.
704 +
705 +If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0   
706 +
707 +Example:
708 +
709 +If PS-LB-NA has below data inside Flash:
710 +
711 +[[image:image-20250117104837-3.png]]
712 +
713 +
714 +If user sends below downlink command: 316788D9BF6788DB6305
715 +
716 +Where : Start time: 6788D9BF = time 25/1/16 10:04:47
717 +
718 + Stop time: 6788DB63 = time 25/1/16 10:11:47
719 +
720 +
721 +PA-LB-NA will uplink this payload.
722 +
723 +[[image:image-20250117104827-2.png]]
724 +
725 +
726 +00001B620000406788D9BF  00000D130000406788D9FB  00000D120000406788DA37  00000D110000406788DA73  00000D100000406788DAAF  00000D100000406788DAEB  00000D0F0000406788DB27  00000D100000406788DB63
727 +
728 +
729 +Where the first 11 bytes is for the first entry :
730 +
731 +
732 +0000  0D10  0000  40  6788DB63
733 +
734 +
735 +Probe_mod = 0x0000 = 0000
736 +
737 +
738 +VDC_intput_V = 0x0D10/1000=3.344V
739 +
740 +IDC_intput_mA = 0x0000/1000=0mA
741 +
742 +
743 +IN1_pin_level = (0x40& 0x08)? "High":"Low" = 0(Low)
744 +
745 +IN2_pin_level = (0x40& 0x04)? "High":"Low" = 0(Low)
746 +
747 +Exti_pin_level = (0x40& 0x02)? "High":"Low" = 0(Low)
748 +
749 +Exti_status = (0x40& 0x01)? "True":"False" = 0(False)
750 +
751 +
752 +Unix time is 0x6788DB63 = 1737022307s = 2025/1/16 10:11:47
753 +
754 +Its data format is:
755 +
756 +[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],...
757 +
758 +Note: water_deep in the data needs to be converted using decoding to get it.
759 +
760 +
761 +=== 2.6.5 Decoder in TTN V3 ===
762 +
763 +[[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"]]
764 +
765 +Please check the decoder from this link: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>url:https://github.com/dragino/dragino-end-node-decoder]]
766 +
767 +
768 +== 2.7 Frequency Plans ==
769 +
770 +
599 599  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.
600 600  
601 -[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]]
773 +[[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/]]
602 602  
603 603  
604 -== 2.7 ​Firmware Change Log ==
776 +== 2.8 Report on Change Feature (Since firmware V1.2) ==
605 605  
778 +=== 2.8.1 Uplink payload(Enable ROC) ===
606 606  
607 -**Firmware download link:**
608 608  
781 +Used to Monitor the IDC and VDC increments, and send ROC uplink when the IDC or VDC changes exceed.
782 +
783 +With ROC enabled, the payload is as follows:
784 +
785 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
786 +|(% style="background-color:#4f81bd; color:white; width:97px" %)(((
787 +
788 +
789 +Size(bytes)
790 +)))|(% 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
791 +|(% 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" %)(((
792 +
793 +
794 +[[IN1 &IN2 Interrupt  flag>>||anchor="H2.3.7IN126IN226INTpin"]] & ROC_flag
795 +)))
796 +
797 +IN1 &IN2 , Interrupt  flag , ROC_flag:
798 +
799 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:515px" %)
800 +|(% 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
801 +|(% 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
802 +
803 +* IDC_Roc_flagL
804 +
805 +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.
806 +
807 +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.
808 +
809 +
810 +* IDC_Roc_flagH
811 +
812 +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.
813 +
814 +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.
815 +
816 +
817 +* VDC_Roc_flagL
818 +
819 +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.
820 +
821 +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.
822 +
823 +
824 +* VDC_Roc_flagH
825 +
826 +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.
827 +
828 +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.
829 +
830 +
831 +* IN1_pin_level & IN2_pin_level
832 +
833 +IN1 and IN2 are used as digital input pins.
834 +
835 +80 (H): (0x80&0x08)=0  IN1 pin is low level.
836 +
837 +80 (H): (0x09&0x04)=0    IN2 pin is low level.
838 +
839 +
840 +* Exti_pin_level &Exti_status
841 +
842 +This data field shows whether the packet is generated by an interrupt pin.
843 +
844 +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.
845 +
846 +Exti_pin_level:  80 (H): (0x80&0x02)=0  "low", The level of the interrupt pin.
847 +
848 +Exti_status: 80 (H): (0x80&0x01)=0  "False", Normal uplink packet.
849 +
850 +
851 +=== 2.8.2 Set the Report on Change ===
852 +
853 +
854 +Feature: Get or Set the Report on Change.
855 +
856 +
857 +==== 2.8.2.1 Wave alarm mode ====
858 +
859 +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.
860 +
861 +* Change value: The amount by which the next detection value increases/decreases relative to the previous detection value.
862 +* Comparison value: A parameter to compare with the latest ROC test.
863 +
864 +AT Command: AT+ROC
865 +
866 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
867 +|=(% 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
868 +|(% style="width:143px" %)AT+ROC=?|(% style="width:154px" %)Show current ROC setting|(% style="width:197px" %)(((
869 +
870 +
871 +0,0,0,0(default)
872 +OK
873 +)))
874 +|(% colspan="1" rowspan="4" style="width:143px" %)(((
875 +
876 +
877 +
878 +
879 +
880 +AT+ROC=a,b,c,d
881 +)))|(% style="width:154px" %)(((
882 +
883 +
884 +
885 +
886 +
887 +
888 +
889 +a: Enable or disable the ROC
890 +)))|(% style="width:197px" %)(((
891 +
892 +
893 +0: off
894 +1: Turn on the wave alarm mode, send the ROC uplink when the increment exceeds the set parameter and refresh the comparison value.
895 +
896 +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"]]).
897 +)))
898 +|(% style="width:154px" %)b: Set the detection interval|(% style="width:197px" %)(((
899 +
900 +
901 +Range:  0~~65535s
902 +)))
903 +|(% style="width:154px" %)c: Setting the IDC change value|(% style="width:197px" %)Unit: uA
904 +|(% style="width:154px" %)d: Setting the VDC change value|(% style="width:197px" %)Unit: mV
905 +
906 +Example:
907 +
908 +* AT+ROC=0,0,0,0  ~/~/The ROC function is not used.
909 +* 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.
910 +* 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.
911 +* 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.
912 +
913 +Downlink Command: 0x09 aa bb cc dd
914 +
915 +Format: Function code (0x09) followed by 4 bytes.
916 +
917 +aa: 1 byte; Set the wave alarm mode.
918 +
919 +bb: 2 bytes; Set the detection interval. (second)
920 +
921 +cc: 2 bytes; Setting the IDC change threshold. (uA)
922 +
923 +dd: 2 bytes; Setting the VDC change threshold. (mV)
924 +
925 +Example:
926 +
927 +* Downlink Payload: 09 01 00 3C 0B B8 01 F4  ~/~/Equal to AT+ROC=1,60,3000, 500
928 +* Downlink Payload: 09 01 00 3C 0B B8 00 00  ~/~/Equal to AT+ROC=1,60,3000,0
929 +* Downlink Payload: 09 02 00 3C 0B B8 00 00  ~/~/Equal to AT+ROC=2,60,3000,0
930 +
931 +Screenshot of parsing example in TTN:
932 +
933 +* AT+ROC=1,60,3000, 500.
934 +
935 +[[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"]]
936 +
937 +
938 +==== 2.8.2.2 Over-threshold alarm mode ====
939 +
940 +Feature: Monitors whether the IDC/VDC exceeds the threshold by setting the detection period and threshold. Alarm if the threshold is exceeded.
941 +
942 +AT Command: AT+ROC=3,a,b,c,d,e
943 +
944 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
945 +|=(% 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
946 +|(% style="width:143px" %)AT+ROC=?|(% style="width:160px" %)Show current ROC setting|(% style="width:185px" %)(((
947 +
948 +
949 +0,0,0,0(default)
950 +OK
951 +)))
952 +|(% colspan="1" rowspan="5" style="width:143px" %)(((
953 +
954 +
955 +
956 +
957 +
958 +AT+ROC=3,a,b,c,d,e
959 +)))|(% style="width:160px" %)(((
960 +
961 +
962 +a: Set the detection interval
963 +)))|(% style="width:185px" %)(((
964 +
965 +
966 +Range:  0~~65535s
967 +)))
968 +|(% style="width:160px" %)b: Set the IDC alarm trigger condition|(% style="width:185px" %)(((
969 +
970 +
971 +0: Less than the set IDC threshold, Alarm
972 +
973 +1: Greater than the set IDC threshold, Alarm
974 +)))
975 +|(% style="width:160px" %)(((
976 +
977 +
978 +c:  IDC alarm threshold
979 +)))|(% style="width:185px" %)(((
980 +
981 +
982 +Unit: uA
983 +)))
984 +|(% style="width:160px" %)d: Set the VDC alarm trigger condition|(% style="width:185px" %)(((
985 +
986 +
987 +0: Less than the set VDC threshold, Alarm
988 +
989 +1: Greater than the set VDC threshold, Alarm
990 +)))
991 +|(% style="width:160px" %)e: VDC alarm threshold|(% style="width:185px" %)Unit: mV
992 +
993 +Example:
994 +
995 +* 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.
996 +* 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.
997 +* 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.
998 +
999 +Downlink Command: 0x09 03 aa bb cc dd ee
1000 +
1001 +Format: Function code (0x09) followed by 03 and the remaining 5 bytes.
1002 +
1003 +aa: 2 bytes; Set the detection interval.(second)
1004 +
1005 +bb: 1 byte; Set the IDC alarm trigger condition.
1006 +
1007 +cc: 2 bytes; IDC alarm threshold.(uA)
1008 +
1009 +
1010 +dd: 1 byte; Set the VDC alarm trigger condition.
1011 +
1012 +ee: 2 bytes; VDC alarm threshold.(mV)
1013 +
1014 +Example:
1015 +
1016 +* Downlink Payload: 09 03 00 3C 00 0B B8 00 13 38 ~/~/Equal to AT+ROC=3,60,0,3000,0,5000
1017 +* Downlink Payload: 09 03 00 b4 01 0B B8 01 13 38  ~/~/Equal to AT+ROC=3,60,1,3000,1,5000
1018 +* Downlink Payload: 09 03 01 2C 00 0B B8 01 13 38  ~/~/Equal to AT+ROC=3,60,0,3000,1,5000
1019 +
1020 +Screenshot of parsing example in TTN:
1021 +
1022 +* AT+ROC=3,60,0,3000,0,5000
1023 +
1024 +[[image:image-20250116180030-2.png]]
1025 +
1026 +
1027 +== 2.9 ​Firmware Change Log ==
1028 +
1029 +
1030 +Firmware download link:
1031 +
609 609  [[https:~~/~~/www.dropbox.com/sh/gf1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0>>url:https://www.dropbox.com/sh/gf1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0]]
610 610  
611 611  
... ... @@ -616,7 +616,7 @@
616 616  
617 617  PS-LB/LS supports below configure method:
618 618  
619 -* AT Command via Bluetooth Connection (**Recommand Way**): [[BLE Configure Instruction>>url:http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
1042 +* AT Command via Bluetooth Connection (Recommand Way): [[BLE Configure Instruction>>url:http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
620 620  * AT Command via UART Connection : See [[FAQ>>||anchor="H6.FAQ"]].
621 621  * LoRaWAN Downlink.  Instruction for different platforms: See [[IoT LoRaWAN Server>>url:http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
622 622  
... ... @@ -644,21 +644,25 @@
644 644  
645 645  Feature: Change LoRaWAN End Node Transmit Interval.
646 646  
647 -(% style="color:blue" %)**AT Command: AT+TDC**
1070 +AT Command: AT+TDC
648 648  
649 649  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
650 -|=(% 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**
1073 +|=(% 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
651 651  |(% style="background-color:#f2f2f2; width:157px" %)AT+TDC=?|(% style="background-color:#f2f2f2; width:166px" %)Show current transmit Interval|(% style="background-color:#f2f2f2" %)(((
1075 +
1076 +
652 652  30000
653 653  OK
654 654  the interval is 30000ms = 30s
655 655  )))
656 656  |(% style="background-color:#f2f2f2; width:157px" %)AT+TDC=60000|(% style="background-color:#f2f2f2; width:166px" %)Set Transmit Interval|(% style="background-color:#f2f2f2" %)(((
1082 +
1083 +
657 657  OK
658 658  Set transmit interval to 60000ms = 60 seconds
659 659  )))
660 660  
661 -(% style="color:blue" %)**Downlink Command: 0x01**
1088 +Downlink Command: 0x01
662 662  
663 663  Format: Command Code (0x01) followed by 3 bytes time value.
664 664  
... ... @@ -672,16 +672,20 @@
672 672  
673 673  Feature, Set Interrupt mode for GPIO_EXIT.
674 674  
675 -(% style="color:blue" %)**AT Command: AT+INTMOD**
1102 +AT Command: AT+INTMOD
676 676  
677 677  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
678 -|=(% 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**
1105 +|=(% 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
679 679  |(% style="background-color:#f2f2f2; width:154px" %)AT+INTMOD=?|(% style="background-color:#f2f2f2; width:196px" %)Show current interrupt mode|(% style="background-color:#f2f2f2; width:157px" %)(((
1107 +
1108 +
680 680  0
681 681  OK
682 682  the mode is 0 =Disable Interrupt
683 683  )))
684 684  |(% style="background-color:#f2f2f2; width:154px" %)AT+INTMOD=2|(% style="background-color:#f2f2f2; width:196px" %)(((
1114 +
1115 +
685 685  Set Transmit Interval
686 686  0. (Disable Interrupt),
687 687  ~1. (Trigger by rising and falling edge)
... ... @@ -689,7 +689,7 @@
689 689  3. (Trigger by rising edge)
690 690  )))|(% style="background-color:#f2f2f2; width:157px" %)OK
691 691  
692 -(% style="color:blue" %)**Downlink Command: 0x06**
1123 +Downlink Command: 0x06
693 693  
694 694  Format: Command Code (0x06) followed by 3 bytes.
695 695  
... ... @@ -703,76 +703,106 @@
703 703  
704 704  Feature, Control the output 3V3 , 5V or 12V.
705 705  
706 -(% style="color:blue" %)**AT Command: AT+3V3T**
1137 +AT Command: AT+3V3T
707 707  
708 708  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:474px" %)
709 -|=(% 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**
1140 +|=(% 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
710 710  |(% style="background-color:#f2f2f2; width:154px" %)AT+3V3T=?|(% style="background-color:#f2f2f2; width:201px" %)Show 3V3 open time.|(% style="background-color:#f2f2f2; width:116px" %)(((
1142 +
1143 +
711 711  0
712 712  OK
713 713  )))
714 714  |(% 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" %)(((
1148 +
1149 +
715 715  OK
716 716  default setting
717 717  )))
718 718  |(% 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" %)(((
1154 +
1155 +
719 719  OK
720 720  )))
721 721  |(% 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" %)(((
1159 +
1160 +
722 722  OK
723 723  )))
724 724  
725 -(% style="color:blue" %)**AT Command: AT+5VT**
1164 +AT Command: AT+5VT
726 726  
727 727  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:470px" %)
728 -|=(% 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**
1167 +|=(% 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
729 729  |(% style="background-color:#f2f2f2; width:155px" %)AT+5VT=?|(% style="background-color:#f2f2f2; width:196px" %)Show 5V open time.|(% style="background-color:#f2f2f2; width:114px" %)(((
1169 +
1170 +
730 730  0
731 731  OK
732 732  )))
733 733  |(% 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" %)(((
1175 +
1176 +
734 734  OK
735 735  default setting
736 736  )))
737 737  |(% 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" %)(((
1181 +
1182 +
738 738  OK
739 739  )))
740 740  |(% 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" %)(((
1186 +
1187 +
741 741  OK
742 742  )))
743 743  
744 -(% style="color:blue" %)**AT Command: AT+12VT**
1191 +AT Command: AT+12VT
745 745  
746 746  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:443px" %)
747 -|=(% 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**
1194 +|=(% 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
748 748  |(% style="background-color:#f2f2f2; width:156px" %)AT+12VT=?|(% style="background-color:#f2f2f2; width:199px" %)Show 12V open time.|(% style="background-color:#f2f2f2; width:83px" %)(((
1196 +
1197 +
749 749  0
750 750  OK
751 751  )))
752 752  |(% 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
753 753  |(% 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" %)(((
1203 +
1204 +
754 754  OK
755 755  )))
756 756  
757 -(% style="color:blue" %)**Downlink Command: 0x07**
1208 +Downlink Command: 0x07
758 758  
759 759  Format: Command Code (0x07) followed by 3 bytes.
760 760  
761 761  The first byte is which power, the second and third bytes are the time to turn on.
762 762  
763 -* Example 1: Downlink Payload: 070101F4  **~-~-->**  AT+3V3T=500
764 -* Example 2: Downlink Payload: 0701FFFF   **~-~-->**  AT+3V3T=65535
765 -* Example 3: Downlink Payload: 070203E8  **~-~-->**  AT+5VT=1000
766 -* Example 4: Downlink Payload: 07020000  **~-~-->**  AT+5VT=0
767 -* Example 5: Downlink Payload: 070301F4  **~-~-->**  AT+12VT=500
768 -* Example 6: Downlink Payload: 07030000  **~-~-->**  AT+12VT=0
1214 +* Example 1: Downlink Payload: 070101F4  ~-~-->  AT+3V3T=500
1215 +* Example 2: Downlink Payload: 0701FFFF   ~-~-->  AT+3V3T=65535
1216 +* Example 3: Downlink Payload: 070203E8  ~-~-->  AT+5VT=1000
1217 +* Example 4: Downlink Payload: 07020000  ~-~-->  AT+5VT=0
1218 +* Example 5: Downlink Payload: 070301F4  ~-~-->  AT+12VT=500
1219 +* Example 6: Downlink Payload: 07030000  ~-~-->  AT+12VT=0
769 769  
1221 +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.
1222 +
1223 +Therefore, the corresponding downlink command is increased by one byte to five bytes.
1224 +
1225 +Example:
1226 +
1227 +* 120s=120000ms(D) =0x01D4C0(H), Downlink Payload: 07 01 01 D4 C0  ~-~-->  AT+3V3T=120000
1228 +* 100s=100000ms(D) =0x0186A0(H), Downlink Payload: 07 02 01 86 A0  ~-~-->  AT+5VT=100000
1229 +* 80s=80000ms(D) =0x013880(H), Downlink Payload: 07 03 01 38 80  ~-~-->  AT+12VT=80000
1230 +
770 770  === 3.3.4 Set the Probe Model ===
771 771  
772 772  
773 773  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.
774 774  
775 -(% style="color:blue" %)**AT Command: AT** **+PROBE**
1236 +AT Command: AT +PROBE
776 776  
777 777  AT+PROBE=aabb
778 778  
... ... @@ -784,12 +784,20 @@
784 784  
785 785  (A->01,B->02,C->03,D->04,E->05,F->06,G->07,H->08,I->09,J->0A,K->0B,L->0C)
786 786  
1248 +When aa=02, it is the Differential Pressure Sensor , which converts the current into a pressure value;
1249 +
1250 +bb represents which type of pressure sensor it is.
1251 +
1252 +(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)
1253 +
787 787  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
788 -|(% 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**
1255 +|(% 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
789 789  |(% 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
790 790  OK
791 791  |(% 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
792 792  |(% style="background-color:#f2f2f2; width:154px" %)(((
1260 +
1261 +
793 793  AT+PROBE=000A
794 794  )))|(% style="background-color:#f2f2f2; width:269px" %)Set water depth sensor mode, 10m type.|(% style="background-color:#f2f2f2" %)OK
795 795  |(% 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
... ... @@ -796,52 +796,59 @@
796 796  |(% 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
797 797  |(% style="background-color:#f2f2f2; width:154px" %)AT+PROBE=0000|(% style="background-color:#f2f2f2; width:269px" %)Initial state, no settings.|(% style="background-color:#f2f2f2" %)OK
798 798  
799 -(% style="color:blue" %)**Downlink Command: 0x08**
1268 +Downlink Command: 0x08
800 800  
801 801  Format: Command Code (0x08) followed by 2 bytes.
802 802  
803 -* Example 1: Downlink Payload: 080003  **~-~-->**  AT+PROBE=0003
804 -* Example 2: Downlink Payload: 080101  **~-~-->**  AT+PROBE=0101
1272 +* Example 1: Downlink Payload: 080003  ~-~-->  AT+PROBE=0003
1273 +* Example 2: Downlink Payload: 080101  ~-~-->  AT+PROBE=0101
805 805  
806 806  === 3.3.5 Multiple collections are one uplink (Since firmware V1.1) ===
807 807  
808 808  
809 -Added AT+STDC command to collect the voltage of VDC_INPUT multiple times and upload it at one time.
1278 +Added AT+STDC command to collect the voltage of VDC_INPUT/IDC_INPUT multiple times and upload it at one time.
810 810  
811 -(% style="color:blue" %)**AT Command: AT** **+STDC**
1280 +AT Command: AT +STDC
812 812  
813 813  AT+STDC=aa,bb,bb
814 814  
815 -(% style="color:#037691" %)**aa:**(%%)
816 -**0:** means disable this function and use TDC to send packets.
817 -**1:** means enable this function, use the method of multiple acquisitions to send packets.
818 -(% style="color:#037691" %)**bb:**(%%) Each collection interval (s), the value is 1~~65535
819 -(% style="color:#037691" %)**cc:**(%%)** **the number of collection times, the value is 1~~120
1284 +aa:
1285 +0: means disable this function and use TDC to send packets.
1286 +1: means that the function is enabled to send packets by collecting VDC data for multiple times.
1287 +2: means that the function is enabled to send packets by collecting IDC data for multiple times.
1288 +bb: Each collection interval (s), the value is 1~~65535
1289 +cc: the number of collection times, the value is 1~~120
820 820  
821 821  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
822 -|(% 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**
1292 +|(% 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
823 823  |(% 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
824 824  OK
825 825  |(% 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" %)(((
1296 +
1297 +
826 826  Attention:Take effect after ATZ
827 827  
828 828  OK
829 829  )))
830 830  |(% style="background-color:#f2f2f2; width:160px" %)AT+STDC=0, 0,0|(% style="background-color:#f2f2f2; width:215px" %)(((
1303 +
1304 +
831 831  Use the TDC interval to send packets.(default)
832 832  
833 833  
834 834  )))|(% style="background-color:#f2f2f2" %)(((
1309 +
1310 +
835 835  Attention:Take effect after ATZ
836 836  
837 837  OK
838 838  )))
839 839  
840 -(% style="color:blue" %)**Downlink Command: 0xAE**
1316 +Downlink Command: 0xAE
841 841  
842 -Format: Command Code (0x08) followed by 5 bytes.
1318 +Format: Command Code (0xAE) followed by 4 bytes.
843 843  
844 -* Example 1: Downlink Payload: AE 01 02 58 12** ~-~-->**  AT+STDC=1,600,18
1320 +* Example 1: Downlink Payload: AE 01 02 58 12 ~-~-->  AT+STDC=1,600,18
845 845  
846 846  = 4. Battery & Power Consumption =
847 847  
... ... @@ -848,7 +848,7 @@
848 848  
849 849  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.
850 850  
851 -[[**Battery Info & Power Consumption Analyze**>>url:http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
1327 +[[Battery Info & Power Consumption Analyze>>url:http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
852 852  
853 853  
854 854  = 5. OTA firmware update =
... ... @@ -884,22 +884,22 @@
884 884  Test the current values at the depth of different liquids and convert them to a linear scale.
885 885  Replace its ratio with the ratio of water to current in the decoder.
886 886  
887 -**Example:**
1363 +Example:
888 888  
889 889  Measure the corresponding current of the sensor when the liquid depth is 2.04m and 0.51m.
890 890  
891 -**Calculate scale factor:**
1367 +Calculate scale factor:
892 892  Use these two data to calculate the current and depth scaling factors:(7.888-5.035)/(2.04-0.51)=1.86470588235294
893 893  
894 -**Calculation formula:**
1370 +Calculation formula:
895 895  
896 896  Use the calibration formula:(Current current - Minimum calibration current)/Scale factor + Minimum actual calibration height
897 897  
898 -**Actual calculations:**
1374 +Actual calculations:
899 899  
900 900  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
901 901  
902 -**Error:**
1378 +Error:
903 903  
904 904  0.009810726
905 905  
... ... @@ -923,17 +923,17 @@
923 923  = 8. Order Info =
924 924  
925 925  
926 -[[image:image-20240109172423-7.png]](% style="display:none" %)
927 927  
1403 +[[image:image-20241021093209-1.png]]
928 928  
929 929  = 9. ​Packing Info =
930 930  
931 931  
932 -(% style="color:#037691" %)**Package Includes**:
1408 +Package Includes:
933 933  
934 934  * PS-LB or PS-LS LoRaWAN Pressure Sensor
935 935  
936 -(% style="color:#037691" %)**Dimension and weight**:
1412 +Dimension and weight:
937 937  
938 938  * Device Size: cm
939 939  * Device Weight: g
... ... @@ -946,5 +946,3 @@
946 946  * 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.
947 947  
948 948  * 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]].
949 -
950 -
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