Changes for page SPH01-LB -- LoRaWAN Soil pH Sensor User Manual
Last modified by Xiaoling on 2024/01/15 09:36
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -17,26 +17,22 @@ 17 17 18 18 = 1. Introduction = 19 19 20 -== 1.1 What is CPL03-LB LoRaWANPulse/ContactSensor ==20 +== 1.1 What is LoRaWAN Soil pH Sensor == 21 21 22 22 23 -The Dragino CPL03-LB is a (% style="color:blue" %)**LoRaWANContactSensor**(%%) for InternetofThings solution. It detectsdrycontactstatus,opentime, opencounts,and thenuploadtoIoTserverviaLoRaWANwirelessprotocol.23 +The Dragino SPH01-LB is a (% style="color:blue" %)**LoRaWAN Soil pH Sensor**(%%) for IoT of Agriculture. It is designed to measure the soil PH and soil temperature, so to send to the platform to analyze the soil acid or alkali level. The probe is IP68 waterproof. 24 24 25 - The CPL03-LBwill sendperiodically dataeveryday as wellasfor eachdrycontactaction. It alsocountsthentactopentimesandcalculatelast openuration.User can alsodisabletheuplinkforeachopen/closeevent,instead,device cancounteachopeneventand uplinkperiodically.25 +SPH01-LB probe is made by Solid AgCl reference electrode and Pure metal pH sensitive electrode. It can detect(% style="color:blue" %) **soil's pH **(%%)with high accuracy and stable value. The SPH01-LB probe can be buried into soil for long time use. 26 26 27 -The LoRa wireless technology used in CPL03-LB allows device to send data and reach extremely long ranges at low data-rates. It provides ultra-long range spread spectrum communication and high interference immunity whilst minimizing current consumption.27 +The LoRa wireless technology used in SPH01-LB allows device to send data and reach extremely long ranges at low data-rates. It provides ultra-long range spread spectrum communication and high interference immunity whilst minimizing current consumption. 28 28 29 - CPL03-LBopenalarmfeature**(%%),user cansetopen alarm for instant notice. CPL03-LB(% style="color:blue" %)**supportsDatalogfeature**(%%),itcan save thedata whenthereisno LoRaWAN networkanduplink when network recover.29 +SPH01-LB (% style="color:blue" %)**supports BLE configure**(%%) and (% style="color:blue" %)**wireless OTA update**(%%) which make user easy to use. 30 30 31 - CPL03-LB isdesignedforoutdoorse.Ithasaweatherproofenclosureandustriallevelbatterytoworkin lowtohightemperatures.31 +SPH01-LB is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), it is designed for long term use up to 5 years. 32 32 33 - CPL03-LB(%style="color:blue"%)**supportsBLE configure**(%%)and (%style="color:blue"%)**wirelessOTA update**(%%) whichmakeusereasy touse.33 +Each SPH01-LB is pre-load with a set of unique keys for LoRaWAN registrations, register these keys to local LoRaWAN server and it will auto connect after power on. 34 34 35 -CPL03-LB is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), it is designed for long term use up to 5 years. 36 36 37 -Each CPL03-LB is pre-load with a set of unique keys for LoRaWAN registrations, register these keys to local LoRaWAN server and it will auto connect after power on. 38 - 39 - 40 40 [[image:image-20230530180339-1.png||height="408" width="806"]] 41 41 42 42 ... ... @@ -46,34 +46,51 @@ 46 46 * LoRaWAN 1.0.3 Class A 47 47 * Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865 48 48 * Ultra-low power consumption 49 -* Open/Close detect 50 -* Open/Close statistics 51 -* Temperature & Humidity alarm 52 -* supports open alarm feature 53 -* supports Datalog feature 45 +* Monitor soil pH with temperature compensation. 46 +* Monitor soil temperature 47 +* Monitor Battery Level 48 +* Support pH calibration by end user 54 54 * Support Bluetooth v5.1 and LoRaWAN remote configure 55 55 * Support wireless OTA update firmware 56 -* Uplink on periodically and open/close event 51 +* IP66 Waterproof Enclosure 52 +* IP68 rate for the Sensor Probe 53 +* AT Commands to change parameters 57 57 * Downlink to change configure 58 58 * 8500mAh Battery for long term use 59 59 60 - 61 61 == 1.3 Specification == 62 62 63 63 64 -(% style="color: #037691" %)**Common DC Characteristics:**60 +(% style="color:blue" %)**Common DC Characteristics:** 65 65 66 66 * Supply Voltage: built in 8500mAh Li-SOCI2 battery , 2.5v ~~ 3.6v 67 67 * Operating Temperature: -40 ~~ 85°C 68 68 69 -(% style="color: #037691" %)**LoRaSpec:**65 +(% style="color:blue" %)**Soil pH:** 70 70 67 +* Range: 3 ~~ 10 pH 68 +* Resolution: 0.01 pH 69 +* Accuracy: ±2% under (0~~50 ℃, Accuracy will poor under 0 due to frozen) 70 +* Temperature Compensation Range: 0 ~~ 50℃ 71 +* IP68 Protection 72 +* Length: 3.5 meters 73 + 74 +(% style="color:blue" %)**Soil Temperature:** 75 + 76 +* Range -40℃~85℃ 77 +* Resolution: 0.1℃ 78 +* Accuracy: <±0.5℃(-10℃~40℃),<±0.8℃ (others) 79 +* IP68 Protection 80 +* Length: 3.5 meters 81 + 82 +(% style="color:blue" %)**LoRa Spec:** 83 + 71 71 * Frequency Range, Band 1 (HF): 862 ~~ 1020 Mhz 72 72 * Max +22 dBm constant RF output vs. 73 73 * RX sensitivity: down to -139 dBm. 74 74 * Excellent blocking immunity 75 75 76 -(% style="color: #037691" %)**Battery:**89 +(% style="color:blue" %)**Battery:** 77 77 78 78 * Li/SOCI2 un-chargeable battery 79 79 * Capacity: 8500mAh ... ... @@ -81,20 +81,16 @@ 81 81 * Max continuously current: 130mA 82 82 * Max boost current: 2A, 1 second 83 83 84 -(% style="color: #037691" %)**Power Consumption**97 +(% style="color:blue" %)**Power Consumption** 85 85 86 86 * Sleep Mode: 5uA @ 3.3v 87 87 * LoRa Transmit Mode: 125mA @ 20dBm, 82mA @ 14dBm 88 88 89 - 90 90 == 1.4 Applications == 91 91 92 92 93 -* Open/Close Detection 94 -* Pulse meter application 95 -* Dry Contact Detection 105 +* Smart Agriculture 96 96 97 - 98 98 == 1.5 Sleep mode and working mode == 99 99 100 100 ... ... @@ -122,11 +122,10 @@ 122 122 ))) 123 123 |(% 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. 124 124 125 - 126 126 == 1.7 BLE connection == 127 127 128 128 129 - CPL03-LB support BLE remote configure.137 +SPH01-LB support BLE remote configure. 130 130 131 131 132 132 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: ... ... @@ -217,452 +217,127 @@ 217 217 218 218 == 2.3 Uplink Payload == 219 219 220 -=== 2.3.1 Device Status, FPORT~=5 === 221 221 222 - 223 -Users can use the downlink command(**0x26 01**) to ask CPL03-LB to send device configure detail, include device configure status. CPL03-LB will uplink a payload via FPort=5 to server. 224 - 225 -The Payload format is as below. 226 - 227 - 228 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 229 -|(% colspan="6" style="background-color:#d9e2f3; color:#0070c0" %)**Device Status (FPORT=5)** 230 -|(% style="width:103px" %)**Size (bytes)**|(% style="width:72px" %)**1**|**2**|(% style="width:91px" %)**1**|(% style="width:86px" %)**1**|(% style="width:44px" %)**2** 231 -|(% 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 232 - 233 -Example parse in TTNv3 234 - 235 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/CPL01%20LoRaWAN%20Outdoor%20PulseContact%20%20Sensor%20Manual/WebHome/1652859749264-179.png?width=723&height=275&rev=1.1||alt="1652859749264-179.png"]] 236 - 237 - 238 -(% style="color:#037691" %)**Sensor Model**(%%): For CPL03-LB, this value is 0x0A 239 - 240 -(% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version 241 - 242 -(% style="color:#037691" %)**Frequency Band**: 243 - 244 -*0x01: EU868 245 - 246 -*0x02: US915 247 - 248 -*0x03: IN865 249 - 250 -*0x04: AU915 251 - 252 -*0x05: KZ865 253 - 254 -*0x06: RU864 255 - 256 -*0x07: AS923 257 - 258 -*0x08: AS923-1 259 - 260 -*0x09: AS923-2 261 - 262 -*0x0a: AS923-3 263 - 264 -*0x0b: CN470 265 - 266 -*0x0c: EU433 267 - 268 -*0x0d: KR920 269 - 270 -*0x0e: MA869 271 - 272 - 273 -(% style="color:#037691" %)**Sub-Band**: 274 - 275 -AU915 and US915:value 0x00 ~~ 0x08 276 - 277 -CN470: value 0x0B ~~ 0x0C 278 - 279 -Other Bands: Always 0x00 280 - 281 - 282 -(% style="color:#037691" %)**Battery Info**: 283 - 284 -Check the battery voltage. 285 - 286 -Ex1: 0x0B45 = 2885mV 287 - 288 -Ex2: 0x0B49 = 2889mV 289 - 290 - 291 -=== 2.3.2 Sensor Configuration, FPORT~=4 === 292 - 293 - 294 -CPL03-LB will only send this command after getting the downlink command (0x26 02) from the server. 295 - 296 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 297 -|(% colspan="6" style="background-color:#d9e2f3; color:#0070c0; width:504px" %)**Sensor Configuration FPORT=4** 298 -|**Size(bytes)**|(% style="width:75px" %)**3**|(% style="width:77px" %)**1**|(% style="width:96px" %)**1**|(% style="width:158px" %)**2**|(% style="width:158px" %)**1** 299 -|**Value**|(% style="width:75px" %)TDC (unit:sec)|(% style="width:77px" %)Disalarm|(% style="width:96px" %)Keep status|(% style="width:158px" %)Keep time (unit: sec)|(% style="width:158px" %)Trigger mode 300 - 301 -* ((( 302 -(% style="color:#037691" %)** TDC: (default: 0x001C20)** 303 -))) 304 - 305 305 ((( 306 -Uplink interval for the total pulse count, default value is 0x001C20 which is 7200 seconds = 2 hours. 307 - 308 - 230 +LSPH01 will uplink payload via LoRaWAN with below payload format: 309 309 ))) 310 310 311 -* ((( 312 -(% style="color:#037691" %)** Disalarm: (default: 0)** 313 -))) 314 - 315 315 ((( 316 - (% style="color:blue" %)** If Disalarm = 1**(%%), CPL03-LB will only send uplink at everyTDC periodically.This isnormallyusefor pulsemeter application,inthis application,thereare many disconnect/connect event, and platformonlycare aboutthetotal number of pulse.234 +Uplink payload includes in total 11 bytes. 317 317 ))) 318 318 319 319 ((( 320 -(% style="color:blue" %)** If Disalarm = 0**(%%), CPL03-LB will send uplink at every TDC periodically. 321 - 322 - 238 +Normal uplink payload: 323 323 ))) 324 324 325 -* ((( 326 -(% style="color:#037691" %)** Keep Status & Keep Time** 241 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:470px" %) 242 +|=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)((( 243 +**Size(bytes)** 244 +)))|=(% style="width: 30px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 70px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 50px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 70px;background-color:#D9E2F3;color:#0070C0" %)**1**|=(% style="width: 50px;background-color:#D9E2F3;color:#0070C0" %)**1**|=(% style="width: 80px;background-color:#D9E2F3;color:#0070C0" %)**1** 245 +|(% style="width:62.5px" %)**Value**|(% style="width:62.5px" %)[[BAT>>||anchor="H2.3.1BatteryInfo"]]|(% style="width:62.5px" %)((( 246 +[[Temperature (Optional)>>||anchor="H2.3.2DS18B20Temperaturesensor"]] 247 +)))|[[Soil pH>>||anchor="H2.3.3SoilpH"]]|[[Soil Temperature>>||anchor="H2.3.4SoilTemperature"]]|((( 248 +[[Digital Interrupt (Optional)>>||anchor="H2.3.5InterruptPin"]] 249 +)))|Reserve|((( 250 +[[Message Type>>||anchor="H2.3.6MessageType"]] 327 327 ))) 328 328 329 -((( 330 -Shows the configure value of [[Alarm Base on Timeout Feature>>||anchor="H3.3.5AlarmBaseonTimeout"]] 253 +[[image:1654592721645-318.png]] 331 331 332 - 333 -))) 334 334 335 -* ((( 336 -(% style="color:#037691" %)** Trigger mode (default: 0)** 337 -))) 256 +=== 2.3.1 Battery Info === 338 338 339 -((( 340 -(% style="color:blue" %)** If Trigger mode = 0**(%%), count close to open event. 341 -))) 342 342 343 -((( 344 -(% style="color:blue" %)** If Trigger mode = 1**(%%), count open to close event. 345 -))) 259 +Check the battery voltage for LSPH01. 346 346 347 - [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/CPL01%20LoRaWAN%20Outdoor%20PulseContact%20%20Sensor%20Manual/WebHome/1652860064987-743.png?width=730&height=152&rev=1.1||alt="1652860064987-743.png"]]261 +Ex1: 0x0B45 = 2885mV 348 348 263 +Ex2: 0x0B49 = 2889mV 349 349 350 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/CPL01%20LoRaWAN%20Outdoor%20PulseContact%20%20Sensor%20Manual/WebHome/1652860079526-831.png?width=729&height=209&rev=1.1||alt="1652860079526-831.png"]] 351 351 266 +=== 2.3.2 DS18B20 Temperature sensor === 352 352 353 -=== 2.3.3 Real-Time Open/Close Status, Uplink FPORT~=2 === 354 354 269 +This is optional, user can connect external DS18B20 sensor to the +3.3v, 1-wire and GND pin . and this field will report temperature. 355 355 356 -((( 357 -((( 358 -CPL03-LB will send this uplink **after** Device Status once join the LoRaWAN network successfully. And CPL03-LB will: 359 -))) 360 -))) 361 361 362 -((( 363 -((( 364 -periodically send this uplink every 2 hours, this interval [[can be changed>>||anchor="H3.3.1SetTransmitIntervalTime"]]. 365 -))) 366 -))) 272 +**Example**: 367 367 368 -((( 369 -((( 370 -Uplink Payload totals 11 bytes. 371 -))) 372 -))) 274 +If payload is: 0105H: (0105 & FC00 == 0), temp = 0105H /10 = 26.1 degree 373 373 374 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %) 375 -|=(% colspan="5" style="background-color:#D9E2F3;color:#0070C0; width: 520px;" %)**Real-Time Open/Close Status, FPORT=2** 376 -|(% style="width:60px" %)**Size(bytes)**|(% style="width:65px" %)**1**|(% style="width:65px" %)**3**|(% style="width:240px" %)**3**|(% style="width:90px" %)**4** 377 -|(% style="width:101px" %)**Value**|(% style="width:133px" %)Status & [[Alarm>>||anchor="H3.3.5AlarmBaseonTimeout"]]|(% style="width:92px" %)Total pulse|(% style="width:247px" %)The last open duration (unit: min)|(% style="width:149px" %)[[Unix TimeStamp>>||anchor="H2.5.2UnixTimeStamp"]] 276 +If payload is: FF3FH : (FF3F & FC00 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees. 378 378 379 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:504px" %) 380 -|=(% colspan="4" style="background-color:#D9E2F3;color:#0070C0; width: 502px;" %)**Status & Alarm field** 381 -|(% style="width:60px" %)**Size(bit)**|(% style="width:70px" %)**6**|(% style="width:228px" %)**1**|(% style="width:146px" %)**1** 382 -|(% style="width:76px" %)Value|(% style="width:80px" %)Calculate Flag|(% style="width:208px" %)Alarm: 0: No Alarm; 1: Alarm|(% style="width:136px" %)Contact Status: 0: Open, 1: Close 383 383 384 -* ((( 385 -(% style="color:#037691" %)** Calculate Flag** 386 -))) 279 +=== 2.3.3 Soil pH === 387 387 388 -((( 389 -The calculate flag is a user define field, IoT server can use this filed to handle different meter with different pulse factor. For example, if there are 100 water meters, meter 1 ~~50 are 1 liter/pulse and meter 51 ~~ 100 has 1.5 liter/pulse. 390 -))) 391 391 392 -((( 393 -User can set calculate flag to 1 for meter 1~~50 and 2 for meter 51 ~~ 100, So IoT Server can use this field for calculation. 394 -))) 282 +Range: 0 ~~ 14 pH 395 395 396 -((( 397 -Default value: 0. 398 -))) 284 +**Example:** 399 399 400 -((( 401 -Range (6 bits): (b)000000 ~~ (b) 111111 402 -))) 286 +(% style="color:#037691" %)** 0x02B7(H) = 695(D) = 6.95pH** 403 403 404 -((( 405 -Refer: [[Set Calculate Flag>>||anchor="H3.3.8Setthecalculateflag"]] 406 406 407 - 408 -))) 289 +=== 2.3.4 Soil Temperature === 409 409 410 -* ((( 411 -(% style="color:#037691" %)** Alarm** 412 -))) 413 413 414 -((( 415 -See [[Alarm Base on Timeout>>||anchor="H3.3.5AlarmBaseonTimeout"]] 292 +Get Soil Temperature 416 416 417 - 418 -))) 419 419 420 -* ((( 421 -(% style="color:#037691" %)** Contact Status** 422 -))) 295 +**Example**: 423 423 424 -((( 425 -0: Open 426 -))) 297 +If payload is: **0105H**: (0105 & FC00 == 0), temp = 0105H /10 = 26.1 degree 427 427 428 -((( 429 -1: Close 299 +If payload is: **FF3FH** : (FF3F & FC00 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees. 430 430 431 - 432 -))) 433 433 434 -* ((( 435 -(% style="color:#037691" %)** Total pulse** 436 -))) 302 +=== 2.3.5 Interrupt Pin === 437 437 438 -((( 439 -Total pulse/counting base on dry [[contact trigger event>>||anchor="H2.3.2SensorConfiguration2CFPORT3D4"]] 440 -))) 441 441 442 -((( 443 -Range (3 Bytes) : 0x000000 ~~ 0xFFFFFF . Max: 16777215 305 +This data field shows if this packet is generated by interrupt or not. [[Click here>>||anchor="H3.2SetInterruptMode"]] for the hardware and software set up. 444 444 445 - 446 -))) 447 447 448 -* ((( 449 -(% style="color:#037691" %)** The last open duration** 450 -))) 308 +**Example:** 451 451 452 -((( 453 -Dry Contact last open duration. 454 -))) 310 +0x00: Normal uplink packet. 455 455 456 -((( 457 -Unit: min. 458 -))) 312 +0x01: Interrupt Uplink Packet. 459 459 460 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/CPL01%20LoRaWAN%20Outdoor%20PulseContact%20%20Sensor%20Manual/WebHome/1652860403792-491.png?width=735&height=153&rev=1.1||alt="1652860403792-491.png"]] 461 461 315 +=== 2.3.6 Message Type === 462 462 463 -=== 2.3.4 Real-Time Open/Close Status, 3 pulse mode, Uplink FPORT~=6 === 464 464 465 - 466 -(% style="color:red" %)**Note:** 467 - 468 -* Firmware support for this mode is not released. If users want to test, please contact Dragino support. 469 -* Users need to run (% style="color:blue" %)**AT+MOD=3**(%%) to support this model after updating the firmware. 470 -* This mode doesn't support Historical Events and Datalog features. 471 - 472 - 473 -(% style="color:blue" %)**CPL03-LB 3 Pulse Wiring:** 474 - 475 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/CPL01%20LoRaWAN%20Outdoor%20PulseContact%20%20Sensor%20Manual/WebHome/image-20221013153352-1.png?width=720&height=628&rev=1.1||alt="image-20221013153352-1.png"]] 476 - 477 - 478 -(% style="color:blue" %)**Payload:** 479 - 480 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/CPL01%20LoRaWAN%20Outdoor%20PulseContact%20%20Sensor%20Manual/WebHome/image-20221013153352-2.png?width=1215&height=167&rev=1.1||alt="image-20221013153352-2.png"]] 481 - 482 - 483 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:447px" %) 484 -|(% style="background-color:#d9e2f3; color:#0070c0; width:95px" %)**Size(bytes)**|(% style="background-color:#d9e2f3; color:#0070c0; width:61px" %)**1**|(% style="background-color:#d9e2f3; color:#0070c0; width:98px" %)**3**|(% style="background-color:#d9e2f3; color:#0070c0; width:98px" %)**3**|(% style="background-color:#d9e2f3; color:#0070c0; width:95px" %)**3** 485 -|(% style="width:93px" %)Value|(% style="width:59px" %)Status|(% style="width:98px" %)((( 486 -Port1 Total Pulse(PB14) 487 -)))|(% style="width:96px" %)((( 488 -Port2 Total Pulse(PB15) 489 -)))|(% style="width:94px" %)((( 490 -Port3 Total Pulse(PA4) 491 -))) 492 - 493 -(% style="color:blue" %)**Status:** 494 - 495 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:257px" %) 496 -|(% style="background-color:#d9e2f3; color:#0070c0; width:75px" %)**Size(bit)**|(% style="background-color:#d9e2f3; color:#0070c0; width:112px" %)**6**|(% style="background-color:#d9e2f3; color:#0070c0; width:70px" %)**2** 497 -|(% style="width:75px" %)Value|(% style="width:111px" %)Calculate Flag|(% style="width:68px" %)Reserve 498 - 499 -(% style="color:red" %)**Max COUNT for each port is 16777215. Exceed this number will reset to 1.** 500 - 501 - 502 -(% style="color:blue" %)**Related AT Command:** 503 - 504 -(% style="color:#037691" %)**AT+TTRMOD1: Port1 count mode; 0: Signal falling edge(Default), 1: Signal raising edge** 505 - 506 - AT+TTRMOD1=0 Downlink Command: 0xA4 01 00 507 - 508 - AT+TTRMOD1=1 Downlink Command: 0xA4 01 01 509 - 510 - 511 -(% style="color:#037691" %)**AT+TTRMOD2: Port2 count mode; 0: Signal falling edge(Default), 1: Signal raising edge** 512 - 513 - AT+TTRMOD1=0 Downlink Command: 0xA4 02 00 514 - 515 - AT+TTRMOD1=1 Downlink Command: 0xA4 02 01 516 - 517 - 518 -(% style="color:#037691" %)**AT+TTRMOD3: Port3 count mode; 0: Signal falling edge(Default), 1: Signal raising edge** 519 - 520 - AT+TTRMOD1=0 Downlink Command: 0xA4 03 00 521 - 522 - AT+TTRMOD1=1 Downlink Command: 0xA4 03 01 523 - 524 - 525 -(% style="color:#037691" %)**AT+CALCFLAG: Calculate Flag ( Default : 0 )** 526 - 527 - AT+CALCFLAG=aa 528 - 529 - 530 -(% style="color:blue" %)**Downlink Command: 0xA5 aa** 531 - 532 -(% style="color:#037691" %)**AT+COUNTMOD: Accumulative Mode; 0: Accumulative (Default),1: Reset after uplink.** 533 - 534 - AT+COUNTMOD=0 Downlink Command: 0x0B 00 535 - 536 - AT+COUNTMOD=1 Downlink Command: 0x0B 01 537 - 538 - 539 -(% style="color:#037691" %)**AT+SETCNT: Set count value** 540 - 541 - AT+SETCNT=1,aa Downlink Command: 0xA6 01 aa aa aa 542 - 543 - AT+SETCNT=2,aa Downlink Command: 0xA6 02 aa aa aa 544 - 545 - AT+SETCNT=3,aa Downlink Command: 0xA6 03 aa aa aa 546 - 547 - 548 -(% style="color:blue" %)**Decode: **(%%)[[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]] 549 - 550 - 551 -=== 2.3.5 Historical Door Open/Close Event, FPORT~=3 === 552 - 553 - 554 554 ((( 555 - CPL03-LB storessensorvaluesandusers can retrievethese history valuesviathe[[downlinkcommand>>||anchor="H2.5DatalogFeature"]].319 +For a normal uplink payload, the message type is always 0x01. 556 556 ))) 557 557 558 558 ((( 559 - The historicalpayloadincludesoneor multipliesentriesndeveryentryhas the samepayload as Real-Time open/close status.323 +Valid Message Type: 560 560 ))) 561 561 562 -* ((( 563 -Each data entry is 11 bytes and has the same structure as [[Real-Time open/close status>>||anchor="H2.3.3Real-TimeOpen2FCloseStatus2CUplinkFPORT3D2"]], to save airtime and battery, CPL03-LB will send max bytes according to the current DR and Frequency bands. 564 -))) 565 565 566 -((( 567 -For example, in the US915 band, the max payload for different DR is: 568 -))) 327 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:496px" %) 328 +|=(% style="width: 160px;background-color:#D9E2F3;color:#0070C0" %)**Message Type Code**|=(% style="width: 163px;background-color:#D9E2F3;color:#0070C0" %)**Description**|=(% style="width: 173px;background-color:#D9E2F3;color:#0070C0" %)**Payload** 329 +|(% style="width:160px" %)0x01|(% style="width:163px" %)Normal Uplink|(% style="width:173px" %)[[Normal Uplink Payload>>||anchor="H2.3200BUplinkPayload"]] 330 +|(% style="width:160px" %)0x02|(% style="width:163px" %)Reply configures info|(% style="width:173px" %)[[Configure Info Payload>>||anchor="H3.4GetFirmwareVersionInfo"]] 331 +|(% style="width:160px" %)0x03|(% style="width:163px" %)Reply Calibration Info|(% style="width:173px" %)[[Calibration Payload>>||anchor="H2.7Calibration"]] 569 569 570 -((( 571 -a) (% style="color:blue" %)**DR0**(%%): max is 11 bytes so one entry of data 572 -))) 333 +=== 2.3.7 Decode payload in The Things Network === 573 573 574 -((( 575 -b) (% style="color:blue" %)**DR1**(%%): max is 53 bytes so devices will upload 4 entries of data (total 44 bytes) 576 -))) 577 577 578 -((( 579 -c) (% style="color:blue" %)**DR2**(%%): total payload includes 11 entries of data 580 -))) 336 +While using TTN network, you can add the payload format to decode the payload. 581 581 582 -((( 583 -d) (% style="color:blue" %)**DR3**(%%): total payload includes 22 entries of data. 584 -))) 585 585 586 -((( 587 -If CPL03-LB doesn't have any data in the polling time. It will uplink 11 bytes of 0 339 +[[image:1654592762713-715.png]] 588 588 589 - 590 -))) 591 - 592 -(% style="color:blue" %)** Downlink:** 593 - 594 -(% class="box" %) 595 595 ((( 596 - **0x3161E93AD461E93D E0 05**342 +The payload decoder function for TTN is here: 597 597 ))) 598 598 599 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/CPL01%20LoRaWAN%20Outdoor%20PulseContact%20%20Sensor%20Manual/WebHome/1652861353248-624.png?width=720&height=189&rev=1.1||alt="1652861353248-624.png"]] 600 - 601 - 602 -(% style="color:blue" %)** Uplink:** 603 - 604 -(% class="box" %) 605 605 ((( 606 - **0E 00 23 E6 00 00 00 61E93B04 0E 00 23 E6 00 00 00 61 E9 3B 25 0D00 00 00 00 00 00 61 E9 3B C8 0E 00 00 02 00 00 00 61 E9 3B D4 0E 00 00 06 00 00 00 61 E9 3B DB 01 00 00 00 00 00 00 61 E9 3C 91 01 00 00 00 00 00 00 61 E9 3C A1 0D 00 00 00 00 00 00 61 E9 3C BC 0E 00 00 07 00 00 00 61 E9 3C D6 00 00 00 00 00 00 00 61 E9 3D A6**346 +LSPH01 TTN Payload Decoder: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]] 607 607 ))) 608 608 609 -(% style="color:#037691" %)** ** 610 - 611 -(% style="color:#037691" %)**Parsed Value:** 612 - 613 -((( 614 -[ALARM, PIN_STATUS, TOTAL_PULSE, CALCULATE_FLAG, LAST_OPEN_DURATION, TIME] 615 -))) 616 - 617 -((( 618 - 619 -))) 620 - 621 -((( 622 -[TRUE, CLOSE, 9190, 3, 0, 2022-01-20 10:35:48], 623 -))) 624 - 625 -((( 626 -[TRUE, CLOSE, 9190, 3, 0, 2022-01-20 10:36:21], 627 -))) 628 - 629 -((( 630 -[FALSE, OPEN, 0, 3, 0, 2022-01-20 10:39:04], 631 -))) 632 - 633 -((( 634 -[TRUE, CLOSE, 2, 3, 0, 2022-01-20 10:39:16], 635 -))) 636 - 637 -((( 638 -[TRUE, CLOSE, 6, 3, 0, 2022-01-20 10:39:23], 639 -))) 640 - 641 -((( 642 -[FALSE, OPEN, 0, 0, 0, 2022-01-20 10:42:25], 643 -))) 644 - 645 -((( 646 -[FALSE, OPEN, 0, 0, 0, 2022-01-20 10:42:41], 647 -))) 648 - 649 -((( 650 -[FALSE, OPEN, 0, 3, 0, 2022-01-20 10:43:08], 651 -))) 652 - 653 -((( 654 -[TRUE, CLOSE, 7, 3, 0, 2022-01-20 10:43:34], 655 -))) 656 - 657 -((( 658 -[FALSE, CLOSE, 0, 0, 0, 2022-01-20 10:47:02], 659 - 660 - 661 -))) 662 - 663 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/CPL01%20LoRaWAN%20Outdoor%20PulseContact%20%20Sensor%20Manual/WebHome/1652861480446-216.png?rev=1.1||alt="1652861480446-216.png"]] 664 - 665 - 666 666 == 2.4 Payload Decoder file == 667 667 668 668 ... ... @@ -769,7 +769,6 @@ 769 769 770 770 * LoRaWAN Downlink. Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section. 771 771 772 - 773 773 == 3.2 General Commands == 774 774 775 775 ... ... @@ -1013,7 +1013,6 @@ 1013 1013 1014 1014 * **Example**: 0xA401 ~/~/ Same as AT+ TTRMOD =1 1015 1015 1016 - 1017 1017 === 3.3.8 Set the calculate flag === 1018 1018 1019 1019 ... ... @@ -1030,7 +1030,6 @@ 1030 1030 1031 1031 * **Example**: 0XA501 ~/~/ Same as AT+CALCFLAG =1 1032 1032 1033 - 1034 1034 === 3.3.9 Set count number === 1035 1035 1036 1036 ... ... @@ -1049,7 +1049,6 @@ 1049 1049 1050 1050 * **Example**: 0xA6000064 ~/~/ Same as AT+ SETCNT =100 1051 1051 1052 - 1053 1053 === 3.3.10 Set Interrupt Mode === 1054 1054 1055 1055 ... ... @@ -1084,7 +1084,6 @@ 1084 1084 1085 1085 * Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger 1086 1086 1087 - 1088 1088 === 3.3.11 Set Power Output Duration === 1089 1089 1090 1090 ... ... @@ -1114,7 +1114,6 @@ 1114 1114 1115 1115 * Example 2: Downlink Payload: 0701F4 **~-~-->** AT+5VT=500 1116 1116 1117 - 1118 1118 = 4. Battery & Power Consumption = 1119 1119 1120 1120 ... ... @@ -1143,7 +1143,6 @@ 1143 1143 1144 1144 * 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]]**. 1145 1145 1146 - 1147 1147 = 6. FAQ = 1148 1148 1149 1149 == 6.1 AT Commands input doesn't work == ... ... @@ -1175,7 +1175,6 @@ 1175 1175 1176 1176 * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band 1177 1177 1178 - 1179 1179 = 8. Packing Info = 1180 1180 1181 1181 ... ... @@ -1193,7 +1193,6 @@ 1193 1193 1194 1194 * Weight / pcs : g 1195 1195 1196 - 1197 1197 = 9. Support = 1198 1198 1199 1199