Changes for page wiki_test

Last modified by Mengting Qiu on 2024/09/05 17:35

From version 101.10
edited by Xiaoling
on 2023/10/10 13:55
Change comment: There is no comment for this version
To version 101.11
edited by Xiaoling
on 2023/10/10 14:02
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -394,77 +394,331 @@
394 394  
395 395  == 2.3  ​Uplink Payload ==
396 396  
397 +=== 2.3.1 Sensor Configuration, FPORT~=4 ===
397 397  
399 +
400 +SW3L-LB will only send this command after getting the downlink command **(0x26 02)** from the server.
401 +
402 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
403 +|(% style="background-color:#d9e2f3; color:#0070c0; width:70px" %) **Size(bytes)**|(% style="background-color:#d9e2f3; color:#0070c0; width:105px" %)**3**|(% style="background-color:#d9e2f3; color:#0070c0; width:60px" %)**1**|(% style="background-color:#d9e2f3; color:#0070c0; width:96px" %)**1**|(% style="background-color:#d9e2f3; color:#0070c0; width:105px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:74px" %)**1**
404 +|**Value**|(% style="width:104px" %)TDC(unit:sec)|(% style="width:43px" %)N/A|(% style="width:91px" %)Stop Timer|(% style="width:100px" %)Alarm Timer|(% style="width:69px" %)Reserve
405 +
406 +Example parse in TTNv3
407 +
408 +[[image:image-20230614172555-4.png||height="151" width="853"]]
409 +
410 +
411 +* (% style="color:blue" %)**TDC: (default: 0x0004B0)**
412 +
413 +Uplink interval for the total pulse count, default value is 0x0004B0 which is 1200 seconds = 20 minutes.
414 +
415 +
416 +* (% style="color:blue" %)**STOP Duration & Alarm Timer**
417 +
418 +Shows the configure value of [[Alarm for continuously water flow>>||anchor="H3.3.4Alarmforcontinuouslywaterflow"]]
419 +
420 +
421 +=== 2.3.2 Water Flow Value, Uplink FPORT~=2 ===
422 +
423 +
398 398  (((
399 -SW3L-NB will uplink payload via LoRaWAN with below payload format: 
425 +SW3L-LB will send this uplink **after** Device Status once join the LoRaWAN network successfully. And SW3L-LB will:
400 400  )))
401 401  
402 402  (((
403 -Uplink payload includes in total 21 bytes.
429 +periodically send this uplink every 20 minutes, this interval [[can be changed>>||anchor="H3.3.1SetTransmitIntervalTime"]].
404 404  )))
405 405  
406 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %)
407 -|=(% style="width: 95px; background-color:#4F81BD;color:white" %)Size(bytes)|=(% style="width: 61px; background-color:#4F81BD;color:white" %)8|=(% style="width: 61px; background-color:#4F81BD;color:white" %)2|=(% style="background-color:#4F81BD;color:white" %)2|=(% style="background-color:#4F81BD;color:white" %)1|=(% style="background-color: rgb(79, 129, 189); color: white; width: 49px;" %)1|=(% style="background-color: rgb(79, 129, 189); color: white; width: 79px;" %)1|=(% style="background-color:#4F81BD;color:white" %)2|=(% style="background-color:#4F81BD;color:white" %)4
408 -|(% style="width:95px" %)Value|(% style="width:61px" %)f+IMEI|(% style="width:61px" %)Ver|(% style="width:61px" %)[[BAT>>||anchor="H2.3.1A0BatteryInfo"]]|(% style="width:61px" %)(((
409 -Singal
432 +(((
433 +Uplink Payload totals 11 bytes.
434 +)))
410 410  
411 -Strength
412 -)))|(% style="width:49px" %)Mod|(% style="width:79px" %)[[Digital Interrupt >>||anchor="H2.3.2A0Interrupt"]]|(% style="width:61px" %)[[Distance>>||anchor="H2.3.3A0Distance"]](unit: mm)|(% style="width:61px" %)(((
413 -Timestamp
436 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
437 +|=(% colspan="6" style="width: 515px; background-color:#D9E2F3;color:#0070C0" %)**Water Flow Value,  FPORT=2**
438 +|(% style="width:50px" %)**Size(bytes)**|(% style="width:110px" %)**1**|(% style="width:120px" %)**4**|(% style="width:110px" %)**1**|(% style="width:55px" %)**1**|(% style="width:70px" %)**4**
439 +|(% style="width:110px" %)**Value**|(% style="width:81px" %)Calculate Flag & [[Alarm>>||anchor="H3.3.4Alarmforcontinuouslywaterflow"]]|(% style="width:95px" %)(((
440 +Total pulse Or Last Pulse
441 +)))|(% style="width:78px" %)(((
442 +MOD & PA4_status & PB15_status
443 +)))|(% style="width:92px" %)Reserve(0x01)|(% style="width:134px" %)[[Unix TimeStamp>>||anchor="H2.5.2UnixTimeStamp"]]
414 414  
445 +**Calculate Flag & Alarm:**
446 +
447 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:500px" %)
448 +|(% style="background-color:#d9e2f3; color:#0070c0; width:70px" %)**Size(bit)**|(% style="background-color:#d9e2f3; color:#0070c0; width:70px" %)**[bit7:bit6]**|(% style="background-color:#d9e2f3; color:#0070c0; width:90px" %)**[bit5:bit2]**|(% style="background-color:#d9e2f3; color:#0070c0; width:140px" %)**bit1**|(% style="background-color:#d9e2f3; color:#0070c0; width:130px" %)**bit0**
449 +|(% style="width:88px" %)**Value**|(% style="width:117px" %)Reserve|(% style="width:117px" %)Calculate Flag|(% style="width:169px" %)Alarm: 0: No Alarm; 1: Alarm|(% style="width:150px" %)TDC flag 0:No;1:Yes
450 +
451 +**MOD & PA4_status & PB15_status:**
452 +
453 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:230px" %)
454 +|(% style="background-color:#d9e2f3; color:#0070c0; width:50px" %)**Size(bit)**|(% style="background-color:#d9e2f3; color:#0070c0; width:60px" %)**bit7**|(% style="background-color:#d9e2f3; color:#0070c0; width:60px" %)**bit6**|(% style="background-color:#d9e2f3; color:#0070c0; width:60px" %)**[bit5:bit0]**
455 +|(% style="width:88px" %)**Value**|(% style="width:117px" %)PA4_status|(% style="width:117px" %)PB15_status|(% style="width:118px" %)MOD
456 +
457 +(% style="color:#037691" %)** **[[image:image-20230626093242-1.png||height="276" width="892"]]
458 +
459 +
460 +* (((
461 +(% style="color:blue" %)**Calculate Flag**
462 +)))
463 +
464 +(((
465 +The calculate flag is a user defined field, IoT server can use this flag to handle different meters with different pulse factors. For example, if there are 100 Flow Sensors, meters 1 ~~50 are 1 liter/pulse and meters 51 ~~ 100 has 1.5 liter/pulse.
466 +
415 415  
416 416  )))
417 417  
418 -If the cache upload mechanism is turned on, you will receive the payload shown in the figure below.
470 +(((
471 +**Example: in the default payload:**
472 +)))
419 419  
420 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:512px" %)
421 -|(% style="width:115px" %)**Frame header**|(% style="width:118px" %)**Frame data(1)**|(% style="width:116px" %)**Frame data(2)**|(% style="width:39px" %)**F…**|(% style="width:117px" %)**Frame data(X)**
474 +* (((
475 +calculate flag=0: for SW3L-004 Flow Sensor: 450 pulse = 1 L
476 +)))
477 +* (((
478 +calculate flag=1: for SW3L-006 Flow Sensor: 390 pulse = 1 L
479 +)))
480 +* (((
481 +calculate flag=2: for SW3L-010 Flow Sensor: 64 pulse = 1 L
482 +)))
422 422  
484 +(((
485 +Default value: 0. 
486 +)))
423 423  
488 +(((
489 +Range (4 bits): (b)0000 ~~ (b) 1111
424 424  
425 -=== 2.3.1  Battery Info ===
491 +If user use with a meter for example is 0.02L/pulse. To proper decode the correct value in server,
426 426  
493 +1) User can set the Calculate Flag of this sensor to 3.
427 427  
428 -Check the battery voltage for SW3L-NB.
495 +2) In server side, when a sensor data arrive, the decoder will check the value of Calculate Flag, It the value is 3, the total volume = 0.02 x Pulse Count.
496 +)))
429 429  
430 -Ex1: 0x0B45 = 2885mV
498 +(((
499 +(% style="color:red" %)**NOTE: User need to set Calculate Flag to proper value before use Flow Sensor. Downlink or AT Command see: **(%%)Refer: [[Set Calculate Flag>>||anchor="H3.3.5Setthecalculateflag"]]
431 431  
432 -Ex2: 0x0B49 = 2889mV
501 +(((
502 +
503 +)))
504 +)))
433 433  
434 434  
435 -=== 2.3.2  Interrupt ===
507 +* (((
508 +(% style="color:blue" %)**Alarm**
509 +)))
436 436  
511 +(((
512 +See [[Alarm for continuously water flow>>||anchor="H3.3.4Alarmforcontinuouslywaterflow"]]
513 +)))
437 437  
438 -This data field shows if this packet is generated by interrupt or not.
515 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/SW3L%20LoRaWAN%20Outdoor%20Flow%20Sensor/WebHome/image-20220519095946-4.png?width=724&height=65&rev=1.1||alt="image-20220519095946-4.png"]]
439 439  
440 -**Example:**
441 441  
442 -0x00: Normal uplink packet.
518 +(((
519 +* (% style="color:blue" %)**TDC flag**
443 443  
444 -0x01: Interrupt Uplink Packet.
521 +When the flag is 1, it means sending packets at normal time intervals.
445 445  
523 +Otherwise, it is a packet sent at non-TDC time.
524 +)))
446 446  
447 -=== 2.3.3  Distance ===
526 +* (((
527 +(% style="color:blue" %)**Total pulse**
528 +)))
448 448  
530 +(((
531 +Total pulse/counting since factory
532 +)))
449 449  
450 450  (((
451 -Get the distance. Flat object range 30mm - 4500mm.
535 +Range (4 Bytes) : 0x00000000~~ 0xFFFFFFFF .
536 +
537 +
452 452  )))
453 453  
540 +* (((
541 +(% style="color:blue" %)**Last Pulse**
542 +)))
543 +
454 454  (((
455 -For example, if the data you get from the register is **0x0B 0x05**, the distance between the sensor and the measured object is(% style="color:#4472c4" %)** **
545 +Total pulse since last FPORT=2 uplink. (Default 20 minutes)
546 +)))
456 456  
457 -(% style="color:blue" %)**0B05(H) = 2821 (D) = 2821 mm.**
548 +(((
549 +Range (4 Bytes) : 0x00000000~~ 0xFFFFFFFF .
550 +
551 +
552 +* (((
553 +(% style="color:blue" %)**PA4_status: Support digital level input below 3.3V**
458 458  )))
459 459  
460 -* If the sensor value is 0x0000, it means system doesn't detect ultrasonic sensor.
556 +(((
557 +0 ~-~-> PA4 is at low level.
558 +)))
461 461  
462 -* If the sensor value lower than 0x001E (30mm), the sensor value will be 0x00.
560 +(((
561 +1 ~-~-> PA4 is at high level.
463 463  
563 +
564 +* (((
565 +(% style="color:blue" %)**PB15_status: Support digital level input below 3.3V**
566 +)))
567 +
464 464  (((
569 +0 ~-~-> PB15 is at low level.
570 +)))
571 +
572 +(((
573 +1 ~-~-> PB15 is at high level..
574 +)))
575 +)))
576 +)))
577 +
578 +* (((
579 +(% style="color:blue" %)**MOD: Default =0**
580 +)))
581 +
582 +(((
583 +MOD=0 ~-~-> Uplink Total Pulse since factory
584 +)))
585 +
586 +(((
587 +MOD=1 ~-~-> Uplink total pulse since last FPORT=2 uplink.
588 +
465 465  
466 466  )))
467 467  
592 +* (((
593 +(% style="color:blue" %)**Water Flow Value**
594 +)))
595 +
596 +(((
597 +**Total Water Flow Volume = (Calculate Flag) x (Total Pulse)=9597/450=21.3L**
598 +)))
599 +
600 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/SW3L%20LoRaWAN%20Outdoor%20Flow%20Sensor/WebHome/image-20220519095946-5.png?width=727&height=50&rev=1.1||alt="image-20220519095946-5.png"]]
601 +
602 +
603 +(((
604 +**Total Water Flow for TDC timer = (Calculate Flag) x (Last Pulse)=79/450=0.2L**
605 +)))
606 +
607 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/SW3L%20LoRaWAN%20Outdoor%20Flow%20Sensor/WebHome/image-20220519095946-6.png?width=733&height=43&rev=1.1||alt="image-20220519095946-6.png"]] ** **
608 +
609 +
610 +=== 2.3.3 Historical Water Flow Status, FPORT~=3 ===
611 +
612 +
613 +(((
614 +SW3L-LB stores sensor values and users can retrieve these history values via the [[downlink command>>||anchor="H2.5DatalogFeature"]].
615 +)))
616 +
617 +(((
618 +The historical payload includes one or multiplies entries and every entry has the same payload as Real-Time water flow status.
619 +
620 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
621 +|=(% colspan="6" style="width: 515px; background-color:#D9E2F3;color:#0070C0" %)**Water Flow Value,  FPORT=3**
622 +|(% style="width:50px" %)**Size(bytes)**|(% style="width:110px" %)**1**|(% style="width:120px" %)**4**|(% style="width:110px" %)**1**|(% style="width:55px" %)**1**|(% style="width:70px" %)**4**
623 +|(% style="width:110px" %)**Value**|(% style="width:81px" %)Calculate Flag & [[Alarm>>||anchor="H3.3.4Alarmforcontinuouslywaterflow"]]|(% style="width:95px" %)(((
624 +Total pulse Or Last Pulse
625 +)))|(% style="width:78px" %)(((
626 +MOD & PA4_status & PB15_status
627 +)))|(% style="width:92px" %)Reserve(0x01)|(% style="width:134px" %)[[Unix TimeStamp>>||anchor="H2.5.2UnixTimeStamp"]]
628 +
629 +**Calculate Flag & Alarm:**
630 +
631 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
632 +|(% style="background-color:#d9e2f3; color:#0070c0; width:50px" %)**Size(bit)**|(% style="background-color:#d9e2f3; color:#0070c0; width:89px" %)**bit7**|(% style="background-color:#d9e2f3; color:#0070c0; width:89px" %)**bit6**|(% style="background-color:#d9e2f3; color:#0070c0; width:69px" %)**[bit5:bit2]**|(% style="background-color:#d9e2f3; color:#0070c0; width:129px" %)**bit1**|(% style="background-color:#d9e2f3; color:#0070c0; width:89px" %)**bit0**
633 +|(% style="width:88px" %)**Value**|(% style="width:96px" %)(((
634 +No ACK message
635 +)))|(% style="width:94px" %)Poll Message Flag|(% style="width:115px" %)Calculate Flag|(% style="width:136px" %)Alarm: 0: No Alarm; 1: Alarm|(% style="width:120px" %)TDC flag 0:No;1:Yes
636 +
637 +**MOD & PA4_status & PB15_status:**
638 +
639 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:240px" %)
640 +|(% style="background-color:#d9e2f3; color:#0070c0; width:60px" %)**Size(bit)**|(% style="background-color:#d9e2f3; color:#0070c0; width:60px" %)**bit7**|(% style="background-color:#d9e2f3; color:#0070c0; width:60px" %)**bit6**|(% style="background-color:#d9e2f3; color:#0070c0; width:60px" %)**[bit5:bit0]**
641 +|(% style="width:88px" %)**Value**|(% style="width:117px" %)PA4_status|(% style="width:117px" %)PB15_status|(% style="width:118px" %)MOD
642 +)))
643 +
644 +* (((
645 +Each data entry is 11 bytes and has the same structure as [[real time water flow status>>||anchor="H2.3.3A0WaterFlowValue2CUplinkFPORT3D2"]], to save airtime and battery, SW3L will send max bytes according to the current DR and Frequency bands.
646 +)))
647 +
648 +(((
649 +For example, in the US915 band, the max payload for different DR is:
650 +)))
651 +
652 +(((
653 +(% style="color:blue" %)**a) DR0:**(%%) max is 11 bytes so one entry of data
654 +)))
655 +
656 +(((
657 +(% style="color:blue" %)**b) DR1:**(%%) max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
658 +)))
659 +
660 +(((
661 +(% style="color:blue" %)**c) DR2:**(%%) total payload includes 11 entries of data
662 +)))
663 +
664 +(((
665 +(% style="color:blue" %)**d) DR3:**(%%) total payload includes 22 entries of data.
666 +)))
667 +
668 +(((
669 +If SW3L-LB doesn't have any data in the polling time. It will uplink 11 bytes of 0
670 +
671 +
672 +)))
673 +
674 +(((
675 +(% style="color:#037691" %)**Downlink:**
676 +)))
677 +
678 +(((
679 +0x31 64 92 C5 AC 64 92 C7 8C 05
680 +)))
681 +
682 +[[image:image-20230626093440-2.png||height="160" width="890"]]
683 +
684 +
685 +(((
686 +(% style="color:#037691" %)**Uplink:**
687 +)))
688 +
689 +(((
690 +41 00 01 00 00 00 08 64 92 C5 E4 40 00 01 00 00 00 08 64 92 C6 06 49 41 01 00 00 00 00 64 92 C6 8B 49 81 01 00 00 00 00 64 92 C7 34 4A 01 01 00 00 00 2D 64 92 C7 7C
691 +
692 +
693 +)))
694 +
695 +(((
696 +(% style="color:#037691" %)**Parsed Value:**
697 +)))
698 +
699 +(((
700 +[TDC_flag, Alarm, Calculate Flag, PA4_status, PB15_status, MOD, Total pulse or Last Pulse,** **Water Flow Value, TIME]
701 +)))
702 +
703 +
704 +(((
705 +[YES,FALSE,0,L,L, 0,8, 0.0,2023-06-21 09:41:56],
706 +
707 +[NO,FALSE,0,L,L, 0,8, 0.0,2023-06-21 09:42:30],
708 +
709 +[YES,FALSE,2,L,H,1,0, 0.0,2023-06-21 09:44:43],
710 +
711 +[YES,FALSE,2,H,L,1,0, 0.0,2023-06-21 09:47:32],
712 +
713 +[NO,TRUE ,2, L,L,1,45,0.7,2023-06-21 09:48:44],
714 +
715 +
716 +)))
717 +
718 +[[image:image-20230626093703-3.png||height="156" width="894"]]
719 +
720 +
721 +
468 468  == 2.4 Test Uplink and Change Update Interval ==
469 469  
470 470