Changes for page wiki_test
Last modified by Mengting Qiu on 2024/09/05 17:35
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 10 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -17,13 +17,13 @@ 17 17 == 1.1 What is S31x-NB NB-IoT Temperature & Humidity Sensor == 18 18 19 19 20 -The Dragino S31-NB and S31B-NB are **NB-IoT Temperature and Humidity Sensor** for Internet of Things solution. It is used to measure the surrounding **environment temperature and relative air humidity precisely**, and then upload to IoT server via NB-IoT network*. 20 +The Dragino S31-NB and S31B-NB are (% style="color:blue" %)**NB-IoT Temperature and Humidity Sensor**(%%) for Internet of Things solution. It is used to measure the surrounding (% style="color:blue" %)**environment temperature and relative air humidity precisely**(%%), and then upload to IoT server via NB-IoT network*. 21 21 22 -The temperature & humidity sensor used in S31-NB is SHT31, which is fully calibrated, linearized, and temperature compensated digital output from Sensirion, it provides a strong reliability and long-term stability. The SHT31 is fixed in a **waterproof anti-condensation casing** for long term use. 22 +The temperature & humidity sensor used in S31-NB is SHT31, which is fully calibrated, linearized, and temperature compensated digital output from Sensirion, it provides a strong reliability and long-term stability. The SHT31 is fixed in a (% style="color:blue" %)**waterproof anti-condensation casing**(%%) for long term use. 23 23 24 -S31-NB supports different uplink methods include **TCP, MQTT, UDP** 24 +S31-NB supports different uplink methods include (% style="color:blue" %)**TCP, MQTT, UDP** for different application requirement. and Support Uplinks to various IoT Servers. 25 25 26 -S31-NB is powered by **8500mAh Li-SOCI2 battery**, It is designed for long term use up to several years. (Real-world battery life depends on the use environment, update period and uplink method. Please check related Power Analyze report). 26 +S31-NB is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), It is designed for long term use up to several years. (Real-world battery life depends on the use environment, update period and uplink method. Please check related Power Analyze report). 27 27 28 28 *make sure you have NB-IoT coverage locally. 29 29 ... ... @@ -46,7 +46,6 @@ 46 46 * 8500mAh Battery for long term use 47 47 * Nano SIM card slot for NB-IoT SIM 48 48 49 - 50 50 == 1.3 Specification == 51 51 52 52 ... ... @@ -97,7 +97,7 @@ 97 97 98 98 * Li/SOCI2 un-chargeable battery 99 99 * Capacity: 8500mAh 100 -* Self -Discharge: <1% / Year @ 25°C99 +* Self Discharge: <1% / Year @ 25°C 101 101 * Max continuously current: 130mA 102 102 * Max boost current: 2A, 1 second 103 103 ... ... @@ -106,18 +106,30 @@ 106 106 * STOP Mode: 10uA @ 3.3v 107 107 * Max transmit power: 350mA@3.3v 108 108 108 +== 1.4 Applications == 109 109 110 -== 1.4 Sleep mode and working mode == 111 111 111 +* Smart Buildings & Home Automation 112 +* Logistics and Supply Chain Management 113 +* Smart Metering 114 +* Smart Agriculture 115 +* Smart Cities 116 +* Smart Factory 112 112 118 + 119 + 120 +== 1.5 Sleep mode and working mode == 121 + 122 + 113 113 (% 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. 114 114 115 115 (% 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. 116 116 117 117 118 -== 1.5 Button & LEDs == 119 119 129 +== 1.6 Button & LEDs == 120 120 131 + 121 121 [[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675071855856-879.png]] 122 122 123 123 ... ... @@ -124,23 +124,22 @@ 124 124 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 125 125 |=(% style="width: 167px;background-color:#D9E2F3;color:#0070C0" %)**Behavior on ACT**|=(% style="width: 117px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 225px;background-color:#D9E2F3;color:#0070C0" %)**Action** 126 126 |(% style="width:167px" %)Pressing ACT between 1s < time < 3s|(% style="width:117px" %)Send an uplink|(% style="width:225px" %)((( 127 -If sensor is alreadyJoined toLoRaWAN network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once.138 +If sensor has already attached to NB-IoT network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once. 128 128 Meanwhile, BLE module will be active and user can connect via BLE to configure device. 129 129 ))) 130 130 |(% style="width:167px" %)Pressing ACT for more than 3s|(% style="width:117px" %)Active Device|(% style="width:225px" %)((( 131 -(% style="color:green" %)**Green led**(%%) will fast blink 5 times, device will enter (% style="color:#037691" %)**OTA mode**(%%) for 3 seconds. And then start to JOINLoRaWAN network.142 +(% style="color:green" %)**Green led**(%%) will fast blink 5 times, device will enter (% style="color:#037691" %)**OTA mode**(%%) for 3 seconds. And then start to attach NB-IoT network. 132 132 (% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network. 133 -Once sensor is active, BLE module will be active and user can connect via BLE to configure device, join or notjoinLoRaWANnetwork.144 +Once sensor is active, BLE module will be active and user can connect via BLE to configure device, no matter if device attach NB-IoT network or not. 134 134 ))) 135 135 |(% style="width:167px" %)Fast press ACT 5 times.|(% style="width:117px" %)Deactivate Device|(% style="width:225px" %)(% style="color:red" %)**Red led**(%%) will solid on for 5 seconds. Means device is in Deep Sleep Mode. 136 136 148 +== 1.7 BLE connection == 137 137 138 -== 1.6 BLE connection == 139 139 151 +S31x-NB support BLE remote configure and firmware update. 140 140 141 -S31x-LB support BLE remote configure. 142 142 143 - 144 144 BLE can be used to configure the parameter of sensor or see the console output from sensor. BLE will be only activate on below case: 145 145 146 146 * Press button to send an uplink ... ... @@ -150,432 +150,307 @@ 150 150 If there is no activity connection on BLE in 60 seconds, sensor will shut down BLE module to enter low power mode. 151 151 152 152 153 -== 1. 7Pin Definitions ==163 +== 1.8 Pin Definitions & Switch == 154 154 155 -[[image:http://8.211.40.43/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/SN50v3-LB/WebHome/image-20230610163213-1.png?width=699&height=404&rev=1.1||alt="image-20230610163213-1.png"]] 156 156 166 +S31x-NB use the mother board from S31-NB which as below. 157 157 158 - == 1.8 HardwareVariant ==168 +[[image:image-20230819104805-5.png]] 159 159 160 160 161 -(% border="1" cellspacing="5" style="width:472px" %) 162 -|=(% style="width: 102px;background-color:#D9E2F3;color:#0070C0" %)Model|=(% style="width: 190px;background-color:#D9E2F3;color:#0070C0" %)Photo|=(% style="width: 187px; background-color:#D9E2F3;color:#0070C0" %)Probe Info 163 -|(% style="width:102px" %)((( 164 -S31-LB 165 -)))|(% style="width:190px" %)[[image:image-20230527093214-2.jpeg]]|(% style="width:187px" %)((( 166 -1 x SHT31 Probe 167 167 168 - CableLength: 2meters172 +=== 1.8.1 Jumper JP2 === 169 169 170 - 171 -))) 172 -|(% style="width:102px" %)((( 173 -S31B-LB 174 -)))|(% style="width:190px" %)[[image:image-20230527093155-1.jpeg]]|(% style="width:187px" %)((( 175 -1 x SHT31 Probe 176 176 177 -Installed in device. 178 -))) 175 +Power on Device when put this jumper. 179 179 180 -(% style="display:none" %) 181 181 178 +=== 1.8.2 BOOT MODE / SW1 === 182 182 183 183 184 -= =1.9Mechanical==181 +1) (% style="color:blue" %)**ISP**(%%): upgrade mode, device won't have any signal in this mode. but ready for upgrade firmware. LED won't work. Firmware won't run. 185 185 183 +2) (% style="color:blue" %)**Flash**(%%): work mode, device starts to work and send out console output for further debug 186 186 187 -[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143884058-338.png]] 188 188 186 +=== 1.8.3 Reset Button === 189 189 190 -[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143899218-599.png]] 191 191 189 +Press to reboot the device. 192 192 193 -[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143909447-639.png]] 194 194 195 195 196 -= 2.ConfigureS31x-LB to connect to LoRaWANnetwork=193 +== 1.9 Hardware Variant == 197 197 198 -== 2.1 How it works == 199 199 196 +(% border="1" cellspacing="5" style="width:410px" %) 197 +|=(% style="width: 102px;background-color:#D9E2F3;color:#0070C0" %)Model|=(% style="width: 126px; background-color: rgb(217, 226, 243); color: rgb(0, 112, 192);" %)Photo|=(% style="width: 179px; background-color: rgb(217, 226, 243); color: rgb(0, 112, 192);" %)Probe Info 198 +|(% style="width:102px" %)((( 199 +S31-LB 200 +)))|(% style="width:126px" %)((( 201 +(% style="text-align:center" %) 202 +[[image:image-20230819110632-6.png||height="130" width="104"]] 203 +)))|(% style="width:179px" %)((( 204 +1 x SHT31 Probe 200 200 201 - The S31x-LB is configured as (% style="color:#037691" %)**LoRaWAN OTAAClass A**(%%) modeby default. It has OTAA keysto joinLoRaWAN network. To connecta local LoRaWAN network, you need to input theOTAAkeys in the LoRaWAN IoT server and press the button to activate the S31x-LB.It will automatically join thenetwork via OTAA and start to send the sensorvalue. The default uplink interval is20 minutes.206 +Cable Length : 3 meters 202 202 208 + 209 +))) 210 +|(% style="width:102px" %)((( 211 +S31B-LB 212 +)))|(% style="width:126px" %)((( 213 +(% style="text-align:center" %) 214 +[[image:image-20230819110702-7.png||height="164" width="90"]] 215 +)))|(% style="width:179px" %)((( 216 +1 x SHT31 Probe 203 203 204 -== 2.2 Quick guide to connect to LoRaWAN server (OTAA) == 218 +Installed in device. 219 +))) 205 205 221 +(% style="display:none" %) 206 206 207 -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. 208 208 209 -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. 210 210 211 211 212 - (%style="color:blue"%)**Step1:**(%%)Createa devicein TTNwiththe OTAAkeys fromS31x-LB.226 += 2. Use S31-NB to communicate with IoT Server = 213 213 214 - EachS31x-LBis shippedwithastickerwiththedefaultdeviceEUIas below:228 +== 2.1 Send data to IoT server via NB-IoT network == 215 215 216 -[[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]] 217 217 231 +The S31-NB is equipped with a NB-IoT module, the pre-loaded firmware in S31-NB will get environment data from sensors and send the value to local NB-IoT network via the NB-IoT module. The NB-IoT network will forward this value to IoT server via the protocol defined by S31-NB. 218 218 219 -You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot: 220 220 234 +Below shows the network structure: 221 221 222 - (% style="color:blue" %)**Register the device**236 +[[image:1692415924540-357.png]] 223 223 224 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/1654935135620-998.png?rev=1.1||alt="1654935135620-998.png"]] 225 225 239 +There are two version: **-GE** and **-1D** version of S31-NB. 226 226 227 -(% style="color:blue" %)**Add APP EUI and DEV EUI** 228 228 229 - [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-4.png?width=753&height=551&rev=1.1||alt="图片-20220611161308-4.png"]]242 +**GE Version**: This version doesn’t include SIM card or point to any IoT server. User needs to use AT Commands to configure below two steps to set S31-NB send data to IoT server. 230 230 244 +1. Install NB-IoT SIM card and configure APN. See instruction of [[Attach Network>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H2.AttachNetwork]]. 245 +1. Set up sensor to point to IoT Server. See instruction of [[Configure to Connect Different Servers>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.Configuretoconnecttodifferentservers]]. 231 231 232 - (% style="color:blue"%)**AddAPP EUIinhe application**247 +Below shows result of different server as a glance. 233 233 234 234 235 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-5.png?width=742&height=601&rev=1.1||alt="图片-20220611161308-5.png"]] 250 +|**Servers**|**Dash Board**|**Comments** 251 +|[[Node-Red>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.5A0Node-RedA028viaA0MQTT29]]|[[image:image-20230819113244-8.png]]| 252 +|[[DataCake>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.4Datacake]]|[[image:image-20230819113244-9.png]]| 253 +|[[Tago.IO>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.7A0Tago.ioA028viaA0MQTT29]]| | 254 +|[[General UDP>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.1GeneralA0UDPA0Connection]]|Raw Payload. Need Developer to design Dash Board| 255 +|[[General MQTT>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.2GeneralA0MQTTA0Connection]]|Raw Payload. Need Developer to design Dash Board| 256 +|[[ThingSpeak>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.3A0ThingSpeakA028viaA0MQTT29]]|[[image:image-20230819113244-10.png]]| 257 +|[[ThingsBoard>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.6A0ThingsBoard.CloudA028viaA0MQTT29]]|[[image:image-20230819113244-11.png]]| 258 +| | | 236 236 237 237 238 -(% style="color:blue" %)**Add APP KEY** 239 239 240 - [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-6.png?width=744&height=485&rev=1.1||alt="图片-20220611161308-6.png"]]262 +**1D Version**: This version has 1NCE SIM card pre-installed and configure to send value to DataCake. User Just need to select the sensor type in DataCake and Activate S31-NB and user will be able to see data in DataCake. See here for [[DataCake Config Instruction>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.4Datacake]]. 241 241 242 242 243 - (%style="color:blue"%)**Step2:**(%%) Activateon S31x-LB265 +== 2.2 Payload Types == 244 244 245 245 246 - Pressthebuttonfor5 secondstoactivatethe S31x-LB.268 +To meet different server requirement, S31-NB supports different payload type. 247 247 248 - (% style="color:green" %)**Green led**(%%) will fast blink 5 times, device will enter (% style="color:blue" %)**OTA mode**(%%) for 3seconds. And then start to JOIN LoRaWAN network. (% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network.270 +Includes: 249 249 250 -After join success, it will start to upload messages to TTN and you can see the messages in the panel. 272 +* [[General JSON format payload>>path:#General_Json]]. (Type=5) 273 +* [[HEX format Payload>>path:#HEX_Payload]]. (Type=0) 274 +* [[ThingSpeak Format>>path:#ThingSpeak_Payload]]. (Type=1) 275 +* [[ThingsBoard Format>>path:#ThingsBoard_Payload]]. (Type=3) 251 251 252 252 253 - ==2.3UplinkPayload==278 +User can specify the payload type when choose the connection protocol. Example: 254 254 255 -= ==2.3.1Device Status,FPORT~=5===280 +**AT+PRO=2,0** ~/~/Use UDP Connection & hex Payload 256 256 282 +**AT+PRO=2,5** ~/~/ Use UDP Connection & Json Payload 257 257 258 - Users can use the downlink command(**0x2601**)to ask S31x-LB to senddeviceconfiguredetail, includedeviceconfigurestatus. S31x-LB will uplink a payloadvia FPort=5 to server.284 +**AT+PRO=3,5 **~/~/ Use MQTT Connection & Json Payload 259 259 260 -The Payload format is as below. 261 261 287 +1. 288 +11. 289 +111. General Json Format (Type=5) 262 262 263 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 264 -|(% colspan="6" style="background-color:#d9e2f3; color:#0070c0" %)**Device Status (FPORT=5)** 265 -|(% style="width:103px" %)**Size (bytes)**|(% style="width:72px" %)**1**|**2**|(% style="width:91px" %)**1**|(% style="width:86px" %)**1**|(% style="width:44px" %)**2** 266 -|(% style="width:103px" %)**Value**|(% style="width:72px" %)Sensor Model|Firmware Version|(% style="width:91px" %)Frequency Band|(% style="width:86px" %)Sub-band|(% style="width:44px" %)BAT 291 +This is the General Json Format. As below: 267 267 268 -Example parse in TTNv3 269 269 270 - [[image:image-20230524144422-1.png||height="174"width="1080"]]294 +**{"IMEI":866207053462762,"temperature":29.2,"humidity":54.2,"battery":3.27,"signal":24,"Model":S31x-NB, "1":{28.2,48.3,2023/08/10 08:00:37},"2":{28.1,49.1,2023/08/10 07:57:37},"3":{28.1,48.5,2023/08/10 07:54:37},"4":{28.2,48.6,2023/08/10 07:51:37},"5":{28.1,48.9,2023/08/10 07:48:37},"6":{28.2,48.8,2023/08/10 07:45:37},"7":{28.2,48.8,2023/08/10 07:42:37},"8":{28.0,48.8,2023/08/10 07:39:37}}** 271 271 272 272 273 -(% style="color:#037691" %)**Sensor Model**(%%): For S31x-LB, this value is 0x0A 274 274 275 - (% style="color:#037691" %)**FirmwareVersion**(%%):0x0100, Means:v1.0.0 version298 +Notice, from above payload: 276 276 277 -(% style="color:#037691" %)**Frequency Band**: 300 +* Temperature , Humidity , Battery & Signal are the value at uplink time. 301 +* Json entry 1 ~~ 8 are the last 1 ~~ 8 sampling data as specify by **AT+NOUD=8 **Command**.** Each entry includes (from left to right): Temperature, Humidity, Sampling time. 278 278 279 -0x01: EU868 280 280 281 -0x02: US915 282 282 283 -0x03: IN865 284 284 285 -0x04: AU915 306 +1. 307 +11. 308 +111. HEX format Payload(Type=0) 286 286 287 -0x05: KZ865 288 288 289 - 0x06:RU864311 +This is the HEX Format. As below: 290 290 291 -0 x07: AS923313 +**f86620705346276200640cba16010000000011011801e864d49c2d011a01e364d49925011901eb64d49871011901e564d497bd011a01e664d49709011901e964d49655011a01e864d495a1011a01e864d494ed011801e864d49439** 292 292 293 -0x08: AS923-1 294 294 295 - 0x09:AS923-2316 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png]] 296 296 297 -0x0a: AS923-3 298 298 299 - 0x0b:CN470319 +**Version:** 300 300 301 - 0x0c:EU433321 +These bytes include the hardware and software version. 302 302 303 - 0x0d:KR920323 +**Higher byte:** Specify Sensor Model: 0x00 for S31B-NB & S31-NB 304 304 305 -0x0e :MA869325 +**Lower byte:** Specify the software version: 0x64=100, means firmware version 100 306 306 307 307 308 - (%style="color:#037691"%)**Sub-Band**:328 +**BAT (Battery Info)** 309 309 310 - AU915 and US915:value0x00~~0x08330 +Ex1: 0x0CBA = 3258mV 311 311 312 -CN470: value 0x0B ~~ 0x0C 313 313 314 - Other Bands: Always0x00333 +**Signal Strength** 315 315 335 +NB-IoT Network signal Strength. 316 316 317 - (% style="color:#037691"%)**BatteryInfo**:337 +**Ex1: 0x16 = 22** 318 318 319 - Checkthebatteryvoltage.339 +**0** -113dBm or less 320 320 321 - Ex1:0x0B45=2885mV341 +**1** -111dBm 322 322 323 - Ex2:0x0B49= 2889mV343 +**2...30** -109dBm... -53dBm 324 324 345 +**31** -51dBm or greater 325 325 326 - === 2.3.2SensorData.FPORT~=2 ===347 +**99** Not known or not detectable 327 327 328 328 329 - SensorData isuplinkvia FPORT=2350 +**Temperature: ** 330 330 331 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:500px" %) 332 -|=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)((( 333 -**Size(bytes)** 334 -)))|=(% style="width: 40px;background-color:#D9E2F3;color:#0070C0" %)2|=(% style="width: 90px;background-color:#D9E2F3;color:#0070C0" %)4|=(% style="width: 150px; background-color: #D9E2F3;color:#0070C0" %)1|=(% style="width: 80px; background-color: #D9E2F3;color:#0070C0" %)**2**|=(% style="width: 80px; background-color: #D9E2F3;color:#0070C0" %)2 335 -|(% style="width:99px" %)Value|(% style="width:69px" %)((( 336 -Battery 337 -)))|(% style="width:130px" %)((( 338 -Unix TimeStamp 339 -)))|(% style="width:194px" %)((( 340 -Alarm Flag & MOD& Level of PA8 341 -)))|(% style="width:106px" %)((( 342 -Temperature 343 -)))|(% style="width:97px" %)((( 344 -Humidity 345 -))) 346 - 347 -[[image:image-20230524144456-2.png||height="180" width="1142"]] 348 - 349 - 350 -==== (% style="color:#4472c4" %)**Battery**(%%) ==== 351 - 352 -Sensor Battery Level. 353 - 354 -Ex1: 0x0B45 = 2885mV 355 - 356 -Ex2: 0x0B49 = 2889mV 357 - 358 - 359 -==== (% style="color:#4472c4" %)**Temperature**(%%) ==== 360 - 361 -**Example**: 362 - 363 363 If payload is: 0105H: (0105 & 8000 == 0), temp = 0105H /10 = 26.1 degree 364 364 365 365 If payload is: FF3FH : (FF3F & 8000 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees. 366 366 367 - (FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative)356 +(FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative) 368 368 369 369 370 -==== (% style="color:#4472c4" %)**Humidity**(%%) ==== 371 371 360 +**Humidity: ** 372 372 373 -Read:0 x(0197)=412Value:412/ 10=41.2, So41.2%362 +Read:0295(H)=661(D) Value: 661 / 10=66.1, So 66.1% 374 374 375 375 376 - ==== (% style="color:#4472c4" %)**AlarmFlag & MOD & Level of PA8**(%%) ====365 +**TimeStamp: ** 377 377 367 +Unit TimeStamp Example: 64d49439(H) = 1691653177(D) 378 378 379 - **Example:**369 +Put the decimal value into this link(https:~/~/www.epochconverter.com/) to get the time. 380 380 381 -If payload & 0x01 = 0x01 **~-~->** This is an Alarm Message.It means that the temperature and humidity exceed the alarm value or trigger an interrupt. 382 382 383 -If payload & 0x01 = 0x00 **~-~->** This is a normal uplink message, no alarm. 372 +1. 373 +11. 374 +111. ThingsBoard Payload(Type=3) 384 384 385 - Ifpayload&0x80>>7=0x01 **~-~->**ThePA8islowlevel.376 +Type3 payload special design for ThingsBoard, it will also configure other default server to ThingsBoard. 386 386 387 -If payload & 0x80>>7 =0x00 **~-~->** The PA8 is high level. 388 388 389 -I f payload >>2=0x00 **~-~->**means MOD=1,Thisisaamplinguplink message.379 +**{"IMEI":866207053462762,"temperature":29.2,"humidity":54.2,"battery":3.27,"signal":24}** 390 390 391 -If payload >> 2 = 0x31 **~-~->** means MOD=31, this message is a reply message for polling, this message contains the alarm settings. see [[this link>>path:#HPolltheAlarmsettings:]] for detail. 392 392 382 +1. 383 +11. 384 +111. ThingSpeak Payload(Type=1) 393 393 394 - ==2.4 PayloadDecoder file==386 +This payload meets ThingSpeak platform requirement. It includes only four fields. Form 1~~4 are: 395 395 388 +Temperature, Humidity, Battery & Signal. This payload type only valid for ThingsSpeak Platform 396 396 397 -In TTN, use can add a custom payload so it shows friendly reading 398 398 399 - In the page (% style="color:#037691" %)**Applications~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from:391 +As below: 400 400 401 - [[https:~~/~~/github.com/dragino/dragino-end-node-decoder/tree/main/S31-LB%26S31B-LB>>https://github.com/dragino/dragino-end-node-decoder/tree/main/S31-LB%26S31B-LB]]393 +**field1=27.9&field2=49.9&field3=3.23&field4=28** 402 402 403 403 404 -== 2.5 Datalog Feature == 396 +1. 397 +11. Test Uplink and Change Update Interval 405 405 399 +By default, Sensor will send uplinks **every 2 hours** & AT+NOUD=8 406 406 407 -Datalog Feature is to ensure IoT Server can get all sampling data from Sensor even if the LoRaWAN network is down. For each sampling, S31x-LB will store the reading for future retrieving purposes. 408 408 402 +User can use below commands to change the **uplink interval**. 409 409 410 - ===2.5.1Waystoget datalogviaLoRaWAN===404 +**~ AT+TDC=600 **~/~/ Set Update Interval to 600s 411 411 412 412 413 - Set[[PNACKMD=1>>||anchor="H2.5.4DatalogUplinkpayload28FPORT3D329"]],S31x-LBwillwait forACK forveryuplink, whenthere is no LoRaWANnetwork,S31x-LBwill mark theserecords withnon-ack messages andtorethe sensordata, anditwill sendallmessages (10sinterval) after the networkrecovery.407 +User can also push the button for more than 1 seconds to activate an uplink. 414 414 415 -* ((( 416 -a) S31x-LB will do an ACK check for data records sending to make sure every data arrive server. 417 -))) 418 -* ((( 419 -b) S31x-LB will send data in **CONFIRMED Mode** when PNACKMD=1, but S31x-LB won't re-transmit the packet if it doesn't get ACK, it will just mark it as a NONE-ACK message. In a future uplink if S31x-LB gets a ACK, S31x-LB will consider there is a network connection and resend all NONE-ACK messages. 420 -))) 421 421 422 -Below is the typical case for the auto-update datalog feature (Set PNACKMD=1) 423 423 424 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20220703111700-2.png?width=1119&height=381&rev=1.1||alt="图片-20220703111700-2.png" height="381" width="1119"]] 425 425 412 +1. 413 +11. Multi-Samplings and One uplink 426 426 427 - ===2.5.2UnixTimeStamp===415 +To save battery life, S31-NB will sample temperature & humidity data every 15 minutes and send one uplink every 2 hours. So each uplink it will include 8 stored data + 1 real-time data. They are defined by: 428 428 417 +* **AT+TR=900** ~/~/ The unit is seconds, and the default is to record data once every 900 seconds (15 minutes, the minimum can be set to 180 seconds) 418 +* **AT+NOUD=8** ~/~/ The device uploads 8 sets of recorded data by default. Up to 32 sets of record data can be uploaded. 429 429 430 -S31x-LB uses Unix TimeStamp format based on 431 431 432 - [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20220523001219-11.png?width=627&height=97&rev=1.1||alt="图片-20220523001219-11.png"height="97" width="627"]]421 +The diagram below explains the relationship between TR, NOUD, and TDC more clearly: 433 433 434 - User canget thistimefrom link: [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]]:423 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png||alt="IMG_256"]] 435 435 436 -Below is the converter example 437 437 438 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20220523001219-12.png?width=720&height=298&rev=1.1||alt="图片-20220523001219-12.png" height="298" width="720"]] 426 +1. 427 +11. Humidity and Temperature alarm function 439 439 429 +On each sampling define by AT+TR ( default 900s or 15 minutes), when the value exceed the range, it will trigger an Alarm and immediately sends a uplink. 440 440 441 -So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25 442 442 432 +AT Commands: 443 443 444 - ===2.5.3Set Device Time ===434 +**AT+ SHHUM=min,max** 445 445 436 +Example: AT+ SHHUM=50,80 ~/~/ Alarm when humidity lower than 50 or higher than 80. 446 446 447 -User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command. 448 448 449 - Once S31x-LB Joined LoRaWAN network, it will send the MAC command (DeviceTimeReq)and the server will reply with (DeviceTimeAns) to send the current time to S31x-LB. If S31x-LB fails to get the time from the server, S31x-LB will use the internal timeand wait for next time request (AT+SYNCTDC to set the time request period, default is 10 days).439 +**AT+ SHTEMP=min,max** 450 450 451 - (% style="color:red"%)**Note: LoRaWANServer need to support LoRaWAN v1.0.3(MAC v1.0.3)orhigher to support this MAC command feature,Chirpstack,TTN V3 v3 andloriotsupportbut TTN V3 v2 doesn't support. If serverdoesn't supportthis command,itwillthroughaway uplink packetwiththis command,so user will lose the packet with time request for TTN V3v2 if SYNCMOD=1.**441 +Example: AT+ SHTEMP=20,30 ~/~/ Alarm when temperature lower than 20 or higher than 30 452 452 453 453 454 - === 2.5.4 Datalog Uplink payload (FPORT~=3) ===444 +Notice: 455 455 446 +* To disable Alarm, user can set min and max to same value , such as **AT+SHTEMP=0,0.** 447 +* If user only want to send only min or max, user can set the alarm to a value that device won’t reach. For example: **AT+SHTEMP=-80,0.** 456 456 457 -The Datalog uplinks will use below payload format. 458 458 459 -**Retrieval data payload:** 450 +1. 451 +11. Trggier an uplink by external interrupt 460 460 461 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:500px" %) 462 -|=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)((( 463 -**Size(bytes)** 464 -)))|=(% style="width: 40px; background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 55px; background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 65px; background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 180px; background-color:#D9E2F3;color:#0070C0" %)**1**|=(% style="width: 100px; background-color:#D9E2F3;color:#0070C0" %)**4** 465 -|(% style="width:103px" %)Value|(% style="width:68px" %)((( 466 -ignore 467 -)))|(% style="width:104px" %)((( 468 -((( 469 -Humidity 470 -))) 453 +S31-NB has an external trigger interrupt function. Users can use the PB15 pin to trigger the upload of data packets. 471 471 472 -((( 473 - 474 -))) 475 -)))|(% style="width:87px" %)((( 476 -Temperature 477 -)))|(% style="width:178px" %)((( 478 -Poll message flag & Alarm Flag& Level of PA8 479 -)))|(% style="width:137px" %)Unix Time Stamp 455 +AT command: 480 480 481 -**Poll message flag & Alarm Flag & Level of PA8:** 457 +* AT+INTMOD ~/~/ Set the trigger interrupt mode 458 +* AT+INTMOD=0 ~/~/Disable Interrupt 459 +* AT+INTMOD=1 ~/~/Trigger by rising and falling edge 460 +* AT+INTMOD=2 ~/~/Trigger by falling edge 461 +* AT+INTMOD=3 ~/~/Trigger by rising edge 482 482 483 -[[image:image-20230524114302-1.png||height="115" width="736"]] 484 484 485 - 486 -**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) 487 - 488 -**Poll Message Flag**: 1: This message is a poll message reply. 489 - 490 -* Poll Message Flag is set to 1. 491 - 492 -* Each data entry is 11 bytes, to save airtime and battery, devices will send max bytes according to the current DR and Frequency bands. 493 - 494 -For example, in US915 band, the max payload for different DR is: 495 - 496 -**a) DR0:** max is 11 bytes so one entry of data 497 - 498 -**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes) 499 - 500 -**c) DR2:** total payload includes 11 entries of data 501 - 502 -**d) DR3: **total payload includes 22 entries of data. 503 - 504 -If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0 505 - 506 -**Example:** 507 - 508 -If S31x-LB has below data inside Flash: 509 - 510 -[[image:image-20230524114654-2.png]] 511 - 512 - 513 -If user sends below downlink command: 31646D84E1646D856C05 514 - 515 -Where : Start time: 646D84E1 = time 23/5/24 03:30:41 516 - 517 - Stop time: 646D856C= time 23/5/24 03:33:00 518 - 519 - 520 -**S31x-LB will uplink this payload.** 521 - 522 -[[image:image-20230524114826-3.png||height="448" width="1244"]] 523 - 524 -((( 525 -00 00 02 36 01 10 40 64 6D 84 E1 00 00 02 37 01 10 40 64 6D 84 F8 00 00 02 37 01 0F 40 64 6D 85 04 00 00 02 3A 01 0F 40 64 6D 85 18 00 00 02 3C 01 0F 40 64 6D 85 36 00 00 02 3D 01 0E 40 64 6D 85 3F 00 00 02 3F 01 0E 40 64 6D 85 60 00 00 02 40 01 0E 40 64 6D 85 6A 526 -))) 527 - 528 -((( 529 -Where the first 11 bytes is for the first entry: 530 -))) 531 - 532 -((( 533 -00 00 02 36 01 10 40 64 6D 84 E1 534 -))) 535 - 536 -((( 537 -**Hum**=0x0236/10=56.6 538 -))) 539 - 540 -((( 541 -**Temp**=0x0110/10=27.2 542 -))) 543 - 544 -((( 545 -**poll message flag & Alarm Flag & Level of PA8**=0x40,means reply data,sampling uplink message,the PA8 is low level. 546 -))) 547 - 548 -((( 549 -**Unix time** is 0x646D84E1=1684899041s=23/5/24 03:30:41 550 -))) 551 - 552 - 553 -(% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||alt="数据 URI 图片" data-widget="image" draggable="true" height="15" role="presentation" title="单击并拖动以移动" width="15"]](% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220, 220, 220, 0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||alt="数据 URI 图片" draggable="true" height="15" role="presentation" title="单击并拖动以移动" width="15"]](% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" title="单击并拖动以调整大小" %)的(% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||alt="数据 URI 图片" data-widget="image" draggable="true" height="15" role="presentation" title="单击并拖动以移动" width="15"]](% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220, 220, 220, 0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||alt="数据 URI 图片" draggable="true" height="15" role="presentation" title="单击并拖动以移动" width="15"]](% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" title="单击并拖动以调整大小" %)的 554 - 555 -== 2.6 Temperature Alarm Feature == 556 - 557 - 558 -S31x-LB work flow with Alarm feature. 559 - 560 - 561 -[[image:image-20230524110125-3.png||height="768" width="1115"]] 562 - 563 - 564 - 565 -== 2.7 Frequency Plans == 566 - 567 - 568 -The S31x-LB uses OTAA mode and below frequency plans by default. If user want to use it with different frequency plan, please refer the AT command sets. 569 - 570 -[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]] 571 - 572 - 573 -== 2.8 Firmware Change Log == 574 - 575 - 576 -**Firmware download link: **[[https:~~/~~/www.dropbox.com/sh/fis3g6nmhv0eokg/AAC6BcCZaX4BdqZkduUvZ3jIa?dl=0>>https://www.dropbox.com/sh/fis3g6nmhv0eokg/AAC6BcCZaX4BdqZkduUvZ3jIa?dl=0]] 577 - 578 - 579 579 = 3. Configure S31x-LB = 580 580 581 581 == 3.1 Configure Methods == ... ... @@ -587,7 +587,6 @@ 587 587 * AT Command via UART Connection : See [[UART Connection>>http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H2.3UARTConnectionforSN50v3basemotherboard]]. 588 588 * LoRaWAN Downlink. Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section. 589 589 590 - 591 591 == 3.2 General Commands == 592 592 593 593 ... ... @@ -635,7 +635,6 @@ 635 635 * Example 1: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds 636 636 * Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 637 637 638 - 639 639 === 3.3.2 Get Device Status === 640 640 641 641 ... ... @@ -719,7 +719,6 @@ 719 719 720 720 * Alarm & MOD bit is 0x7C, 0x7C >> 2 = 0x31: Means this message is the Alarm settings message. 721 721 722 - 723 723 === 3.3.7 Set Interrupt Mode === 724 724 725 725 ... ... @@ -753,7 +753,6 @@ 753 753 * Example 1: Downlink Payload: 06000000 ~/~/ Turn off interrupt mode 754 754 * Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger 755 755 756 - 757 757 === 3.3.8 Set Power Output Duration === 758 758 759 759 ... ... @@ -782,7 +782,6 @@ 782 782 * Example 1: Downlink Payload: 070000 **~-~-->** AT+5VT=0 783 783 * Example 2: Downlink Payload: 0701F4 **~-~-->** AT+5VT=500 784 784 785 - 786 786 = 4. Battery & Power Consumption = 787 787 788 788 ... ... @@ -809,7 +809,6 @@ 809 809 * (Recommanded way) OTA firmware update via wireless : **[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/]]** 810 810 * Update through UART TTL interface : **[[Instruction>>url:http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H1.LoRaSTv4baseHardware]]**. 811 811 812 - 813 813 = 6. FAQ = 814 814 815 815 ... ... @@ -837,7 +837,6 @@ 837 837 838 838 * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band 839 839 840 - 841 841 = 8. Packing Info = 842 842 843 843 ... ... @@ -855,7 +855,6 @@ 855 855 856 856 * Weight / pcs : g 857 857 858 - 859 859 = 9. Support = 860 860 861 861 ... ... @@ -862,3 +862,5 @@ 862 862 * 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. 863 863 864 864 * 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]]. 742 + 743 +(% style="display:none" %) (%%)
- 1692413185538-164.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +777.4 KB - Content
- 1692415924540-357.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +94.4 KB - Content
- image-20230819104725-4.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +583.4 KB - Content
- image-20230819104805-5.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +582.8 KB - Content
- image-20230819110632-6.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +224.4 KB - Content
- image-20230819110702-7.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +53.2 KB - Content
- image-20230819113244-10.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +12.0 KB - Content
- image-20230819113244-11.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +57.5 KB - Content
- image-20230819113244-8.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +13.0 KB - Content
- image-20230819113244-9.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +35.5 KB - Content