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, 0 added, 11 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 (% 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*.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*. 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 (% style="color:blue" %)**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 **waterproof anti-condensation casing** for long term use. 23 23 24 -S31-NB supports different uplink methods include (% style="color:blue" %)**TCP, MQTT, UDP**24 +S31-NB supports different uplink methods include **TCP, MQTT, UDP** for different application requirement. and Support Uplinks to various IoT Servers. 25 25 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).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). 27 27 28 28 *make sure you have NB-IoT coverage locally. 29 29 ... ... @@ -46,6 +46,7 @@ 46 46 * 8500mAh Battery for long term use 47 47 * Nano SIM card slot for NB-IoT SIM 48 48 49 + 49 49 == 1.3 Specification == 50 50 51 51 ... ... @@ -105,50 +105,51 @@ 105 105 * STOP Mode: 10uA @ 3.3v 106 106 * Max transmit power: 350mA@3.3v 107 107 108 -== 1.4 Applications == 109 109 110 +== 1.4 Sleep mode and working mode == 110 110 111 -* Smart Buildings & Home Automation 112 -* Logistics and Supply Chain Management 113 -* Smart Metering 114 -* Smart Agriculture 115 -* Smart Cities 116 -* Smart Factory 117 117 118 -== 1.5 Sleep mode and working mode == 119 - 120 - 121 121 (% 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. 122 122 123 123 (% 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. 124 124 125 125 118 +== 1.5 Applications == 126 126 127 -== 1.6 Button & LEDs == 128 128 121 +* Smart Buildings & Home Automation 122 +* Logistics and Supply Chain Management 123 +* Smart Metering 124 +* Smart Agriculture 125 +* Smart Cities 126 +* Smart Factory 129 129 128 +== 1.5 Button & LEDs == 129 + 130 + 130 130 [[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675071855856-879.png]] 131 131 132 132 133 133 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 134 -|=(% style="width: 167px;background-color:# 4F81BD;color:white" %)**Behavior on ACT**|=(% style="width: 117px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width:225px;background-color:#4F81BD;color:white" %)**Action**135 +|=(% 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** 135 135 |(% style="width:167px" %)Pressing ACT between 1s < time < 3s|(% style="width:117px" %)Send an uplink|(% style="width:225px" %)((( 136 -If sensor has alreadyattached toNB-IoTnetwork, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once.137 +If sensor is already Joined to LoRaWAN network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once. 137 137 Meanwhile, BLE module will be active and user can connect via BLE to configure device. 138 138 ))) 139 139 |(% style="width:167px" %)Pressing ACT for more than 3s|(% style="width:117px" %)Active Device|(% style="width:225px" %)((( 140 -(% 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 a ttachNB-IoTnetwork.141 +(% 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 JOIN LoRaWAN network. 141 141 (% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network. 142 -Once sensor is active, BLE module will be active and user can connect via BLE to configure device, attachNB-IoTnetworkornot.143 +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. 143 143 ))) 144 144 |(% 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. 145 145 146 -== 1.7 BLE connection == 147 147 148 +== 1.6 BLE connection == 148 148 149 -S31x-NB support BLE remote configure and firmware update. 150 150 151 +S31x-LB support BLE remote configure. 151 151 153 + 152 152 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: 153 153 154 154 * Press button to send an uplink ... ... @@ -158,412 +158,666 @@ 158 158 If there is no activity connection on BLE in 60 seconds, sensor will shut down BLE module to enter low power mode. 159 159 160 160 161 -== 1. 8Pin Definitions& Switch==163 +== 1.7 Pin Definitions == 162 162 165 +[[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"]] 163 163 164 -S31x-NB use the mother board from S31-NB which as below. 165 165 166 - [[image:image-20230819104805-5.png]]168 +== 1.8 Hardware Variant == 167 167 168 168 171 +(% border="1" cellspacing="5" style="width:472px" %) 172 +|=(% 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 173 +|(% style="width:102px" %)((( 174 +S31-LB 175 +)))|(% style="width:190px" %)[[image:image-20230527093214-2.jpeg]]|(% style="width:187px" %)((( 176 +1 x SHT31 Probe 169 169 170 - ===1.8.1 JumperJP2===178 +Cable Length : 2 meters 171 171 180 + 181 +))) 182 +|(% style="width:102px" %)((( 183 +S31B-LB 184 +)))|(% style="width:190px" %)[[image:image-20230527093155-1.jpeg]]|(% style="width:187px" %)((( 185 +1 x SHT31 Probe 172 172 173 -Power on Device when put this jumper. 187 +Installed in device. 188 +))) 174 174 190 +(% style="display:none" %) 175 175 176 -=== 1.8.2 BOOT MODE / SW1 === 177 177 178 178 179 - 1) (% style="color:blue"%)**ISP**(%%):upgrademode, device won'thave any signalin this mode. but ready for upgrade firmware. LED won't work. Firmware won't run.194 +== 1.9 Mechanical == 180 180 181 -2) (% style="color:blue" %)**Flash**(%%): work mode, device starts to work and send out console output for further debug 182 182 197 +[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143884058-338.png]] 183 183 184 -=== 1.8.3 Reset Button === 185 185 200 +[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143899218-599.png]] 186 186 187 -Press to reboot the device. 188 188 203 +[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143909447-639.png]] 189 189 190 190 191 -= =1.9HardwareVariant ==206 += 2. Configure S31x-LB to connect to LoRaWAN network = 192 192 208 +== 2.1 How it works == 193 193 194 -(% border="1" cellspacing="5" style="width:410px" %) 195 -|=(% style="width: 102px;background-color:#4F81BD;color:white" %)Model|=(% style="width: 126px; background-color:#4F81BD;color:white" %)Photo|=(% style="width: 179px;background-color:#4F81BD;color:white" %)Probe Info 196 -|(% style="width:102px" %)((( 197 -S31-LB 198 -)))|(% style="width:126px" %)((( 199 -(% style="text-align:center" %) 200 -[[image:image-20230819110632-6.png||height="130" width="104"]] 201 -)))|(% style="width:179px" %)((( 202 -1 x SHT31 Probe 203 203 204 -Cable Len gth:3 meters211 +The S31x-LB 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 press the button to activate the S31x-LB. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 20 minutes. 205 205 206 - 207 -))) 208 -|(% style="width:102px" %)((( 209 -S31B-LB 210 -)))|(% style="width:126px" %)((( 211 -(% style="text-align:center" %) 212 -[[image:image-20230819110702-7.png||height="164" width="90"]] 213 -)))|(% style="width:179px" %)((( 214 -1 x SHT31 Probe 215 215 216 -Installed in device. 217 -))) 214 +== 2.2 Quick guide to connect to LoRaWAN server (OTAA) == 218 218 219 -(% style="display:none" %) 220 220 217 +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. 221 221 219 +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. 222 222 223 223 224 - =2. Use S31-NBtocommunicate withIoTServer=222 +(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from S31x-LB. 225 225 226 - ==2.1Senddata toIoTserverviaNB-IoTnetwork ==224 +Each S31x-LB is shipped with a sticker with the default device EUI as below: 227 227 226 +[[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]] 228 228 229 -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. 230 230 229 +You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot: 231 231 232 -Below shows the network structure: 233 233 234 - [[image:1692415924540-357.png]]232 +(% style="color:blue" %)**Register the device** 235 235 234 +[[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"]] 236 236 237 -There are two version: (% style="color:blue" %)**-GE**(%%) and (% style="color:blue" %)**-1D**(%%) version of S31-NB. 238 238 237 +(% style="color:blue" %)**Add APP EUI and DEV EUI** 239 239 240 - (% style="color:blue" %)**GE Version**(%%): This versionesn’t include SIMcardorpoint toany IoT server. UserneedstouseAT Commands to configureelow two steps to set S31-NB senddata to IoT server.239 +[[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"]] 241 241 242 -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]]. 243 243 244 - 1.Set upsensorto point to IoT Server. See instructionof [[ConfiguretoConnectDifferentServers>>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]].242 +(% style="color:blue" %)**Add APP EUI in the application** 245 245 246 -Below shows result of different server as a glance. 247 247 245 +[[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"]] 248 248 249 -(% border="1" cellspacing="4" style="width:515px" %) 250 -|(% style="background-color:#4f81bd; color:white; width:100px" %)**Servers**|(% style="background-color:#4f81bd; color:white; width:300px" %)**Dash Board**|(% style="background-color:#4f81bd; color:white; width:115px" %)**Comments** 251 -|(% style="width:127px" %)[[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]]|(% style="width:385px" %)[[image:image-20230819113244-8.png||height="183" width="367"]]|(% style="width:170px" %) 252 -|(% style="width:127px" %)[[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]]|(% style="width:385px" %)[[image:image-20230819113244-9.png||height="120" width="369"]]|(% style="width:170px" %) 253 -|(% style="width:127px" %)[[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]]|(% style="width:385px" %) |(% style="width:170px" %) 254 -|(% style="width:127px" %)[[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]]|(% style="width:385px" %)Raw Payload. Need Developer to design Dash Board|(% style="width:170px" %) 255 -|(% style="width:127px" %)[[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]]|(% style="width:385px" %)Raw Payload. Need Developer to design Dash Board|(% style="width:170px" %) 256 -|(% style="width:127px" %)[[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]]|(% style="width:385px" %)[[image:image-20230819113244-10.png||height="82" width="291"]]|(% style="width:170px" %) 257 -|(% style="width:127px" %)[[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]]|(% style="width:385px" %)[[image:image-20230819113244-11.png||height="113" width="293"]]|(% style="width:170px" %) 258 -|(% style="width:127px" %) |(% style="width:385px" %) |(% style="width:170px" %) 259 259 260 -(% style="color:blue" %)** 1D Version**(%%): This version has 1NCE SIM cardpre-installedand configure to send value to DataCake. User Just need to select the sensor type in DataCake andActivateS31-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]].248 +(% style="color:blue" %)**Add APP KEY** 261 261 250 +[[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 262 263 -== 2.2 Payload Types == 264 264 253 +(% style="color:blue" %)**Step 2:**(%%) Activate on S31x-LB 265 265 266 -To meet different server requirement, S31-NB supports different payload type. 267 267 268 - **Includes:**256 +Press the button for 5 seconds to activate the S31x-LB. 269 269 270 - *[[GeneralJSONformatpayload>>path:#General_Json]]. (Type=5)258 +(% 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. 271 271 272 - * [[HEXformatPayload>>path:#HEX_Payload]].(Type=0)260 +After join success, it will start to upload messages to TTN and you can see the messages in the panel. 273 273 274 -* [[ThingSpeak Format>>path:#ThingSpeak_Payload]]. (Type=1) 275 275 276 - *[[ThingsBoardFormat>>path:#ThingsBoard_Payload]].(Type=3)263 +== 2.3 Uplink Payload == 277 277 278 - Usercanspecify thepayloadtype when choosetheconnection protocol. Example:265 +=== 2.3.1 Device Status, FPORT~=5 === 279 279 280 -(% style="color:#037691" %)**AT+PRO=2,0** (%%) ~/~/ Use UDP Connection & hex Payload 281 281 282 - (%style="color:#037691"%)**AT+PRO=2,5** (%%)~/~/ UseUDPConnection&JsonPayload268 +Users can use the downlink command(**0x26 01**) to ask S31x-LB to send device configure detail, include device configure status. S31x-LB will uplink a payload via FPort=5 to server. 283 283 284 - (%style="color:#037691"%)**AT+PRO=3,5 ** (%%) ~/~/ Use MQTT Connection& JsonPayload270 +The Payload format is as below. 285 285 286 286 287 -=== 2.2.1 General Json Format (Type~=5) === 273 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 274 +|(% colspan="6" style="background-color:#d9e2f3; color:#0070c0" %)**Device Status (FPORT=5)** 275 +|(% style="width:103px" %)**Size (bytes)**|(% style="width:72px" %)**1**|**2**|(% style="width:91px" %)**1**|(% style="width:86px" %)**1**|(% style="width:44px" %)**2** 276 +|(% 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 288 288 278 +Example parse in TTNv3 289 289 290 - Thisis theGeneral Json Format.As below:280 +[[image:image-20230524144422-1.png||height="174" width="1080"]] 291 291 292 -(% style="color:#4472c4" %)**{"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}}** 293 293 283 +(% style="color:#037691" %)**Sensor Model**(%%): For S31x-LB, this value is 0x0A 294 294 295 -(% style="color: red" %)**Notice,fromabovepayload:**285 +(% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version 296 296 297 - *Temperature , Humidity, Battery& Signal arethe value at uplink time.287 +(% style="color:#037691" %)**Frequency Band**: 298 298 299 - * Json entry 1 ~~ 8 are the last 1 ~~ 8 sampling data as specify by (% style="color:#037691"%)**AT+NOUD=8** (%%)Command. Each entry includes (from left to right): Temperature, Humidity, Sampling time.289 +0x01: EU868 300 300 291 +0x02: US915 301 301 302 - === 2.2.2 HEX format Payload(Type~=0)===293 +0x03: IN865 303 303 295 +0x04: AU915 304 304 305 - This is the HEX Format. As below:297 +0x05: KZ865 306 306 307 - (% style="color:#4472c4" %)**f86620705346276200640cba16010000000011011801e864d49c2d011a01e364d49925011901eb64d49871011901e564d497bd011a01e664d49709011901e964d49655011a01e864d495a1011a01e864d494ed011801e864d49439**299 +0x06: RU864 308 308 309 - [[image:1692424009971-458.png]]301 +0x07: AS923 310 310 303 +0x08: AS923-1 311 311 312 - (% style="color:blue"%)**Version:**305 +0x09: AS923-2 313 313 314 - These bytes include the hardwareand software version.307 +0x0a: AS923-3 315 315 316 - (% style="color:#037691" %)**Higherbyte:**(%%)Specify Sensor Model: 0x00 for S31B-NB & S31-NB309 +0x0b: CN470 317 317 318 - (% style="color:#037691" %)**Lower byte:**(%%) Specify the software version:0x64=100, means firmware version 100311 +0x0c: EU433 319 319 313 +0x0d: KR920 320 320 321 - (% style="color:blue"%)**BAT (Battery Info):**315 +0x0e: MA869 322 322 323 -Ex1: 0x0CBA = 3258mV 324 324 318 +(% style="color:#037691" %)**Sub-Band**: 325 325 326 - (%style="color:blue"%)**SignalStrength:**320 +AU915 and US915:value 0x00 ~~ 0x08 327 327 328 -N B-IoTNetwork signalStrength.322 +CN470: value 0x0B ~~ 0x0C 329 329 330 - **Ex1: 0x16 = 22**324 +Other Bands: Always 0x00 331 331 332 -**0** -113dBm or less 333 333 334 - **1**-111dBm327 +(% style="color:#037691" %)**Battery Info**: 335 335 336 - **2...30**-109dBm...-53dBm329 +Check the battery voltage. 337 337 338 - **31**-51dBmor greater331 +Ex1: 0x0B45 = 2885mV 339 339 340 - **99**Not known or not detectable333 +Ex2: 0x0B49 = 2889mV 341 341 342 342 343 - (%style="color:blue"%)**Temperature:**336 +=== 2.3.2 Sensor Data. FPORT~=2 === 344 344 338 + 339 +Sensor Data is uplink via FPORT=2 340 + 341 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:500px" %) 342 +|=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)((( 343 +**Size(bytes)** 344 +)))|=(% 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 345 +|(% style="width:99px" %)Value|(% style="width:69px" %)((( 346 +Battery 347 +)))|(% style="width:130px" %)((( 348 +Unix TimeStamp 349 +)))|(% style="width:194px" %)((( 350 +Alarm Flag & MOD& Level of PA8 351 +)))|(% style="width:106px" %)((( 352 +Temperature 353 +)))|(% style="width:97px" %)((( 354 +Humidity 355 +))) 356 + 357 +[[image:image-20230524144456-2.png||height="180" width="1142"]] 358 + 359 + 360 +==== (% style="color:#4472c4" %)**Battery**(%%) ==== 361 + 362 +Sensor Battery Level. 363 + 364 +Ex1: 0x0B45 = 2885mV 365 + 366 +Ex2: 0x0B49 = 2889mV 367 + 368 + 369 +==== (% style="color:#4472c4" %)**Temperature**(%%) ==== 370 + 371 +**Example**: 372 + 345 345 If payload is: 0105H: (0105 & 8000 == 0), temp = 0105H /10 = 26.1 degree 346 346 347 347 If payload is: FF3FH : (FF3F & 8000 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees. 348 348 349 - (FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative)377 +(FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative) 350 350 351 351 352 -(% style="color: blue" %)**Humidity:**380 +==== (% style="color:#4472c4" %)**Humidity**(%%) ==== 353 353 354 -Read:0295(H)=661(D) Value: 661 / 10=66.1, So 66.1% 355 355 383 +Read:0x(0197)=412 Value: 412 / 10=41.2, So 41.2% 356 356 357 -(% style="color:blue" %)**TimeStamp: ** 358 358 359 - UnitTimeStampExample:64d49439(H)=1691653177(D)386 +==== (% style="color:#4472c4" %)**Alarm Flag & MOD & Level of PA8**(%%) ==== 360 360 361 -Put the decimal value into this link(https:~/~/www.epochconverter.com/) to get the time. 362 362 389 +**Example:** 363 363 364 -= ==2.2.3ThingsBoardPayload(Type~=3)===391 +If payload & 0x01 = 0x01 **~-~->** This is an Alarm Message.It means that the temperature and humidity exceed the alarm value or trigger an interrupt. 365 365 393 +If payload & 0x01 = 0x00 **~-~->** This is a normal uplink message, no alarm. 366 366 367 - Type3payloadspecialdesignforThingsBoard,itwillalsoconfigure other default server to ThingsBoard.395 +If payload & 0x80>>7 = 0x01 **~-~->** The PA8 is low level. 368 368 369 - (%style="color:#4472c4"%)**{"IMEI":866207053462762,"temperature":29.2,"humidity":54.2,"battery":3.27,"signal":24}**397 +If payload & 0x80>>7 =0x00 **~-~->** The PA8 is high level. 370 370 399 +If payload >> 2 = 0x00 **~-~->** means MOD=1, This is a sampling uplink message. 371 371 372 - ===2.2.4ThingSpeakPayload(Type~=1)===401 +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. 373 373 374 374 375 - Thispayloadmeets ThingSpeak platform requirement. It includes only four fields. Form 1~~4 are:404 +== 2.4 Payload Decoder file == 376 376 377 -Temperature, Humidity, Battery & Signal. This payload type only valid for ThingsSpeak Platform 378 378 379 - Asbelow:407 +In TTN, use can add a custom payload so it shows friendly reading 380 380 381 -(% style="color:# 4472c4" %)**field1=27.9&field2=49.9&field3=3.23&field4=28**409 +In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from: 382 382 411 +[[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]] 383 383 384 -== 2.3 Test Uplink and Change Update Interval == 385 385 414 +== 2.5 Datalog Feature == 386 386 387 -By default, Sensor will send uplinks (% style="color:blue" %)**every 2 hours**(%%) & AT+NOUD=8 388 388 389 - User canusebelowcommandstochange the(%style="color:blue"%)**uplinkinterval**.417 +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. 390 390 391 -(% style="color:#037691" %)**AT+TDC=600 ** (%%) ~/~/ Set Update Interval to 600s 392 392 393 - Usercanalsopushthe buttonfor morehan1 secondstoactivateanuplink.420 +=== 2.5.1 Ways to get datalog via LoRaWAN === 394 394 395 395 396 -== Multi-Samplings andOneuplink==423 +Set [[PNACKMD=1>>||anchor="H2.5.4DatalogUplinkpayload28FPORT3D329"]], S31x-LB will wait for ACK for every uplink, when there is no LoRaWAN network,S31x-LB will mark these records with non-ack messages and store the sensor data, and it will send all messages (10s interval) after the network recovery. 397 397 425 +* ((( 426 +a) S31x-LB will do an ACK check for data records sending to make sure every data arrive server. 427 +))) 428 +* ((( 429 +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. 430 +))) 398 398 399 - To savebatterylife, S31-NBwillsampletemperature& humiditydata every 15 minutesandsendone uplink every2hours. Soeachuplink itwill include 8 storeddata+ 1 real-timedata. Theyaredefinedby:432 +Below is the typical case for the auto-update datalog feature (Set PNACKMD=1) 400 400 401 - * (% style="color:#037691" %)**AT+TR=900** (%%) ~/~/The unitis seconds, andthe defaultisto record datance every 900 seconds(15inutes,thenimum cansetto180seconds)434 +[[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"]] 402 402 403 -* (% style="color:#037691" %)**AT+NOUD=8** (%%)~/~/ The device uploads 8 sets of recorded data by default. Up to 32 sets of record data can be uploaded. 404 404 405 - Thediagrambelow explains the relationshipbetween TR, NOUD,and TDCmoreclearly:437 +=== 2.5.2 Unix TimeStamp === 406 406 407 -[[image:1692424376354-959.png]] 408 408 440 +S31x-LB uses Unix TimeStamp format based on 409 409 410 - == 2.5 Humidityandlarmfunction ==442 +[[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"]] 411 411 444 +User can get this time from link: [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] : 412 412 413 - Oneach sampling define by AT+TR ( default 900sor15 minutes),whenthevalue exceed the range, it will triggeran Alarm and immediately sends a uplink.446 +Below is the converter example 414 414 448 +[[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"]] 415 415 416 -(% style="color:blue" %)**AT Commands:** 417 417 418 - (%style="color:#037691"%)**AT+HHUM=min,max**451 +So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25 419 419 420 -Example: AT+ SHHUM=50,80 ~/~/ Alarm when humidity lower than 50 or higher than 80. 421 421 454 +=== 2.5.3 Set Device Time === 422 422 423 -(% style="color:#037691" %)**AT+ SHTEMP=min,max** 424 424 425 - Example:AT+SHTEMP=20,30~/~/Alarm whentemperaturelowerthan20 or higherthan30457 +User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command. 426 426 459 +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 time and wait for next time request (AT+SYNCTDC to set the time request period, default is 10 days). 427 427 428 -(% style="color:red" %)**Notice :**461 +(% style="color:red" %)**Note: LoRaWAN Server need to support LoRaWAN v1.0.3(MAC v1.0.3) or higher to support this MAC command feature, Chirpstack,TTN V3 v3 and loriot support but TTN V3 v2 doesn't support. If server doesn't support this command, it will through away uplink packet with this command, so user will lose the packet with time request for TTN V3 v2 if SYNCMOD=1.** 429 429 430 -* To disable Alarm, user can set min and max to same value , such as (% style="color:#037691" %)**AT+SHTEMP=0,0.** 431 431 432 - *Ifuser only wanttosend only minor max, user can set the alarm tovalue thatdevicewon’t reach. For example:(% style="color:#037691" %)**AT+SHTEMP=-80,0.**464 +=== 2.5.4 Datalog Uplink payload (FPORT~=3) === 433 433 434 434 435 - == 2.6Trggieranuplinkbyexternalinterrupt==467 +The Datalog uplinks will use below payload format. 436 436 469 +**Retrieval data payload:** 437 437 438 -S31-NB has an external trigger interrupt function. Users can use the PB15 pin to trigger the upload of data packets. 471 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:500px" %) 472 +|=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)((( 473 +**Size(bytes)** 474 +)))|=(% 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** 475 +|(% style="width:103px" %)Value|(% style="width:68px" %)((( 476 +ignore 477 +)))|(% style="width:104px" %)((( 478 +((( 479 +Humidity 480 +))) 439 439 440 -(% style="color:blue" %)**AT command:** 482 +((( 483 + 484 +))) 485 +)))|(% style="width:87px" %)((( 486 +Temperature 487 +)))|(% style="width:178px" %)((( 488 +Poll message flag & Alarm Flag& Level of PA8 489 +)))|(% style="width:137px" %)Unix Time Stamp 441 441 442 -* (%style="color:#037691"%)**AT+INTMOD**(%%)~/~/ Set thetrigger interrupt mode491 +**Poll message flag & Alarm Flag & Level of PA8:** 443 443 444 - * (% style="color:#037691" %)**AT+INTMOD=0**(%%) ~/~/ Disable Interrupt493 +[[image:image-20230524114302-1.png||height="115" width="736"]] 445 445 446 -* (% style="color:#037691" %)**AT+INTMOD=1 **(%%) ~/~/ Trigger by rising and falling edge 447 447 448 -* (%style="color:#037691"%)**AT+INTMOD=2**(%%)~/~/Trigger byfallingedge496 +**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) 449 449 450 -* (% style="color:#037691"%)**AT+INTMOD=3**(%%)~/~/Triggerby risingedge498 +**Poll Message Flag**: 1: This message is a poll message reply. 451 451 452 - =3. ConfigureS31x-NB=500 +* Poll Message Flag is set to 1. 453 453 502 +* Each data entry is 11 bytes, to save airtime and battery, devices will send max bytes according to the current DR and Frequency bands. 503 + 504 +For example, in US915 band, the max payload for different DR is: 505 + 506 +**a) DR0:** max is 11 bytes so one entry of data 507 + 508 +**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes) 509 + 510 +**c) DR2:** total payload includes 11 entries of data 511 + 512 +**d) DR3: **total payload includes 22 entries of data. 513 + 514 +If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0 515 + 516 +**Example:** 517 + 518 +If S31x-LB has below data inside Flash: 519 + 520 +[[image:image-20230524114654-2.png]] 521 + 522 + 523 +If user sends below downlink command: 31646D84E1646D856C05 524 + 525 +Where : Start time: 646D84E1 = time 23/5/24 03:30:41 526 + 527 + Stop time: 646D856C= time 23/5/24 03:33:00 528 + 529 + 530 +**S31x-LB will uplink this payload.** 531 + 532 +[[image:image-20230524114826-3.png||height="448" width="1244"]] 533 + 534 +((( 535 +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 536 +))) 537 + 538 +((( 539 +Where the first 11 bytes is for the first entry: 540 +))) 541 + 542 +((( 543 +00 00 02 36 01 10 40 64 6D 84 E1 544 +))) 545 + 546 +((( 547 +**Hum**=0x0236/10=56.6 548 +))) 549 + 550 +((( 551 +**Temp**=0x0110/10=27.2 552 +))) 553 + 554 +((( 555 +**poll message flag & Alarm Flag & Level of PA8**=0x40,means reply data,sampling uplink message,the PA8 is low level. 556 +))) 557 + 558 +((( 559 +**Unix time** is 0x646D84E1=1684899041s=23/5/24 03:30:41 560 +))) 561 + 562 + 563 +(% 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="单击并拖动以调整大小" %)的 564 + 565 +== 2.6 Temperature Alarm Feature == 566 + 567 + 568 +S31x-LB work flow with Alarm feature. 569 + 570 + 571 +[[image:image-20230524110125-3.png||height="768" width="1115"]] 572 + 573 + 574 + 575 +== 2.7 Frequency Plans == 576 + 577 + 578 +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. 579 + 580 +[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]] 581 + 582 + 583 +== 2.8 Firmware Change Log == 584 + 585 + 586 +**Firmware download link: **[[https:~~/~~/www.dropbox.com/sh/fis3g6nmhv0eokg/AAC6BcCZaX4BdqZkduUvZ3jIa?dl=0>>https://www.dropbox.com/sh/fis3g6nmhv0eokg/AAC6BcCZaX4BdqZkduUvZ3jIa?dl=0]] 587 + 588 + 589 += 3. Configure S31x-LB = 590 + 454 454 == 3.1 Configure Methods == 455 455 456 456 457 -S31x- NB supports below configure method:594 +S31x-LB supports below configure method: 458 458 459 459 * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]]. 460 - 461 461 * 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]]. 598 +* LoRaWAN Downlink. Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section. 462 462 463 -== 3.2 AT Commands Set == 464 464 601 +== 3.2 General Commands == 465 465 466 -AT+<CMD>? : Help on <CMD> 467 467 468 - AT+<CMD>: Run<CMD>604 +These commands are to configure: 469 469 470 -AT+<CMD>=<value> : Set the value 606 +* General system settings like: uplink interval. 607 +* LoRaWAN protocol & radio related command. 471 471 472 - AT+<CMD>=?:Get thevalue609 +They are same for all Dragino Devices which support DLWS-005 LoRaWAN Stack. These commands can be found on the wiki: 473 473 611 +[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/]] 474 474 475 -(% style="color:blue" %)**General Commands** 476 476 477 - AT:Attention614 +== 3.3 Commands special design for S31x-LB == 478 478 479 -AT? : Short Help 480 480 481 - ATZ: MCU Reset617 +These commands only valid for S31x-LB, as below: 482 482 483 -AT+TDC : Application Data Transmission Interval 484 484 485 - AT+CFG: Print allconfigurations620 +=== 3.3.1 Set Transmit Interval Time === 486 486 487 -AT+CFGMOD : Working mode selection 488 488 489 - AT+DEUI: Getoret theDevice ID623 +Feature: Change LoRaWAN End Node Transmit Interval. 490 490 491 - AT+INTMOD: Setthetriggerinterruptmode625 +(% style="color:blue" %)**AT Command: AT+TDC** 492 492 493 -AT+5VT : Set extend the time of 5V power 627 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 628 +|=(% style="width: 156px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 137px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="background-color:#D9E2F3;color:#0070C0" %)**Response** 629 +|(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|((( 630 +30000 631 +OK 632 +the interval is 30000ms = 30s 633 +))) 634 +|(% style="width:156px" %)AT+TDC=60000|(% style="width:137px" %)Set Transmit Interval|((( 635 +OK 636 +Set transmit interval to 60000ms = 60 seconds 637 +))) 494 494 495 - AT+PRO: Chooseagreement639 +(% style="color:blue" %)**Downlink Command: 0x01** 496 496 497 - AT+RXDL:Extendthesendingandreceivingtime641 +Format: Command Code (0x01) followed by 3 bytes time value. 498 498 499 - AT+DNSCFG:Get orSetDNSServer643 +If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01. 500 500 501 -AT+GETSENSORVALUE : Returns the current sensor measurement 645 +* Example 1: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds 646 +* Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 502 502 503 -AT+NOUD : Get or Set the number of data to be uploaded 504 504 505 - AT+CDP:Reador Clearcacheddata649 +=== 3.3.2 Get Device Status === 506 506 507 -AT+SHTEMP: Get or Set alarm of temp 508 508 509 - AT+SHHUM:GetorSet alarmof moisture652 +Send a LoRaWAN downlink to ask device send Alarm settings. 510 510 511 - AT+SERVADDR: ServerAddress654 +(% style="color:blue" %)**Downlink Payload: **(%%)0x26 01 512 512 656 +Sensor will upload Device Status via FPORT=5. See payload section for detail. 513 513 514 -(% style="color:blue" %)**UDP Management** 515 515 516 - AT+CFM:Upload confirmationmode(only validfor UDP)659 +=== 3.3.3 Set Temperature Alarm Threshold === 517 517 518 518 519 -(% style="color:blue" %)** MQTTManagement**662 +* (% style="color:blue" %)**AT Command:** 520 520 521 - AT+CLIENT: Getet MQTT client664 +(% style="color:#037691" %)**AT+SHTEMP=min,max** 522 522 523 -AT+UNAME : Get or Set MQTT Username 666 +* When min=0, and max≠0, Alarm higher than max 667 +* When min≠0, and max=0, Alarm lower than min 668 +* When min≠0 and max≠0, Alarm higher than max or lower than min 524 524 525 - AT+PWD : Get or Set MQTT password670 +Example: 526 526 527 -AT+ PUBTOPIC: GetorSetMQTT publish topic672 + AT+SHTEMP=0,30 ~/~/ Alarm when temperature higher than 30. 528 528 529 - AT+SUBTOPIC: GetSetMQTT subscriptiontopic674 +* (% style="color:blue" %)**Downlink Payload:** 530 530 676 +(% style="color:#037691" %)**0x(0C 01 00 1E)** (%%) ~/~/ Set AT+SHTEMP=0,30 531 531 532 -(% style="color: blue" %)**Information**678 +(% style="color:red" %)**(note: 3^^rd^^ byte= 0x00 for low limit(not set), 4^^th^^ byte = 0x1E for high limit: 30)** 533 533 534 -AT+FDR : Factory Data Reset 535 535 536 - AT+PWORD:SerialAccess Password681 +=== 3.3.4 Set Humidity Alarm Threshold === 537 537 538 -AT+LDATA : Get the last upload data 539 539 540 - AT+CDP: ReadorClearcacheddata684 +* (% style="color:blue" %)**AT Command:** 541 541 686 +(% style="color:#037691" %)**AT+SHHUM=min,max** 542 542 688 +* When min=0, and max≠0, Alarm higher than max 689 +* When min≠0, and max=0, Alarm lower than min 690 +* When min≠0 and max≠0, Alarm higher than max or lower than min 691 + 692 +Example: 693 + 694 + AT+SHHUM=70,0 ~/~/ Alarm when humidity lower than 70%. 695 + 696 +* (% style="color:blue" %)**Downlink Payload:** 697 + 698 +(% style="color:#037691" %)**0x(0C 02 46 00)**(%%) ~/~/ Set AT+SHTHUM=70,0 699 + 700 +(% style="color:red" %)**(note: 3^^rd^^ byte= 0x46 for low limit (70%), 4^^th^^ byte = 0x00 for high limit (not set))** 701 + 702 + 703 +=== 3.3.5 Set Alarm Interval === 704 + 705 + 706 +The shortest time of two Alarm packet. (unit: min) 707 + 708 +* (% style="color:blue" %)**AT Command:** 709 + 710 +(% style="color:#037691" %)**AT+ATDC=30** (%%) ~/~/ The shortest interval of two Alarm packets is 30 minutes, Means is there is an alarm packet uplink, there won't be another one in the next 30 minutes. 711 + 712 +* (% style="color:blue" %)**Downlink Payload:** 713 + 714 +(% style="color:#037691" %)**0x(0D 00 1E)**(%%) **~-~--> ** Set AT+ATDC=0x 00 1E = 30 minutes 715 + 716 + 717 +=== 3.3.6 Get Alarm settings === 718 + 719 + 720 +Send a LoRaWAN downlink to ask device send Alarm settings. 721 + 722 +* (% style="color:#037691" %)**Downlink Payload: **(%%)0x0E 01 723 + 724 +**Example:** 725 + 726 +[[image:image-20230524110211-4.png]] 727 + 728 +**Explain:** 729 + 730 +* Alarm & MOD bit is 0x7C, 0x7C >> 2 = 0x31: Means this message is the Alarm settings message. 731 + 732 + 733 +=== 3.3.7 Set Interrupt Mode === 734 + 735 + 736 +Feature, Set Interrupt mode for PA8 of pin. 737 + 738 +When AT+INTMOD=0 is set, PA8 is used as a digital input port. 739 + 740 +(% style="color:blue" %)**AT Command: AT+INTMOD** 741 + 742 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 743 +|=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 197px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 158px;background-color:#D9E2F3;color:#0070C0" %)**Response** 744 +|(% style="width:154px" %)AT+INTMOD=?|(% style="width:196px" %)Show current interrupt mode|(% style="width:157px" %)((( 745 +0 746 +OK 747 +the mode is 0 =Disable Interrupt 748 +))) 749 +|(% style="width:154px" %)AT+INTMOD=2|(% style="width:196px" %)((( 750 +Set Transmit Interval 751 +0. (Disable Interrupt), 752 +~1. (Trigger by rising and falling edge) 753 +2. (Trigger by falling edge) 754 +3. (Trigger by rising edge) 755 +)))|(% style="width:157px" %)OK 756 + 757 +(% style="color:blue" %)**Downlink Command: 0x06** 758 + 759 +Format: Command Code (0x06) followed by 3 bytes. 760 + 761 +This means that the interrupt mode of the end node is set to 0x000003=3 (rising edge trigger), and the type code is 06. 762 + 763 +* Example 1: Downlink Payload: 06000000 ~/~/ Turn off interrupt mode 764 +* Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger 765 + 766 + 767 +=== 3.3.8 Set Power Output Duration === 768 + 769 + 770 +Control the output duration 5V . Before each sampling, device will 771 + 772 +~1. first enable the power output to external sensor, 773 + 774 +2. keep it on as per duration, read sensor value and construct uplink payload 775 + 776 +3. final, close the power output. 777 + 778 +(% style="color:blue" %)**AT Command: AT+5VT** 779 + 780 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 781 +|=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 197px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 158px;background-color:#D9E2F3;color:#0070C0" %)**Response** 782 +|(% style="width:154px" %)AT+5VT=?|(% style="width:196px" %)Show 5V open time.|(% style="width:157px" %)0 (default) 783 +OK 784 +|(% style="width:154px" %)AT+5VT=1000|(% style="width:196px" %)Close after a delay of 1000 milliseconds.|(% style="width:157px" %)OK 785 + 786 +(% style="color:blue" %)**Downlink Command: 0x07** 787 + 788 +Format: Command Code (0x07) followed by 2 bytes. 789 + 790 +The first and second bytes are the time to turn on. 791 + 792 +* Example 1: Downlink Payload: 070000 **~-~-->** AT+5VT=0 793 +* Example 2: Downlink Payload: 0701F4 **~-~-->** AT+5VT=500 794 + 795 + 543 543 = 4. Battery & Power Consumption = 544 544 545 545 546 -S31x- NB use ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.799 +S31x-LB use ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace. 547 547 548 548 [[**Battery Info & Power Consumption Analyze**>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] . 549 549 550 550 551 -= 5. Firmware update = 804 += 5. OTA Firmware update = 552 552 553 553 554 -User can change device firmware to:: 807 +(% class="wikigeneratedid" %) 808 +User can change firmware S31x-LB to: 555 555 810 +* Change Frequency band/ region. 556 556 * Update with new features. 557 - 558 558 * Fix bugs. 559 559 560 -Firmware and changelog can be downloaded from : **[[Firmware download link>>https://www.dropbox.com/sh/f hb3uyl4gt6clru/AAAiZVTFcxrfE1JOOyfcgO9ha?dl=0]]**814 +Firmware and changelog can be downloaded from : **[[Firmware download link>>https://www.dropbox.com/sh/fis3g6nmhv0eokg/AAC6BcCZaX4BdqZkduUvZ3jIa?dl=0]]** 561 561 816 + 562 562 Methods to Update Firmware: 563 563 564 -* (Recomm ended way) OTA firmware update viaBLE:[[**Instruction**>>url:http://wiki.dragino.com/xwiki/bin/view/Main/BLE_Firmware_Update_NB_Sensors_BC660K-GL/]].819 +* (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/]]** 565 565 * 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]]**. 566 566 822 + 567 567 = 6. FAQ = 568 568 569 569 ... ... @@ -591,6 +591,7 @@ 591 591 592 592 * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band 593 593 850 + 594 594 = 8. Packing Info = 595 595 596 596 ... ... @@ -608,6 +608,7 @@ 608 608 609 609 * Weight / pcs : g 610 610 868 + 611 611 = 9. Support = 612 612 613 613 ... ... @@ -614,5 +614,3 @@ 614 614 * 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. 615 615 616 616 * 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]]. 617 - 618 -(% style="display:none" %) (%%)
- 1692415924540-357.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -94.4 KB - Content
- 1692424009971-458.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -147.4 KB - Content
- 1692424376354-959.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -146.1 KB - Content
- image-20230819104725-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -583.4 KB - Content
- image-20230819104805-5.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -582.8 KB - Content
- image-20230819110632-6.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -224.4 KB - Content
- image-20230819110702-7.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -53.2 KB - Content
- image-20230819113244-10.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -12.0 KB - Content
- image-20230819113244-11.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -57.5 KB - Content
- image-20230819113244-8.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -13.0 KB - Content
- image-20230819113244-9.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -35.5 KB - Content