Last modified by Mengting Qiu on 2025/07/03 16:36

From version 71.1
edited by Xiaoling
on 2025/06/10 14:30
Change comment: There is no comment for this version
To version 72.1
edited by Mengting Qiu
on 2025/07/03 16:36
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.Xiaoling
1 +XWiki.ting
Content
... ... @@ -665,46 +665,54 @@
665 665  
666 666  == 2.5 Datalog Feature ==
667 667  
668 + Datalog Feature is to ensure IoT Server can get all sampling data from Sensor even if the LoRaWAN network is down. For each sampling, DS03A-LB/LS will store the reading for future retrieving purposes.
668 668  
669 -(% style="color:blue" %)**Datalog Feature** (%%)is to ensure IoT Server can get all sampling data from Sensor even if the LoRaWAN network is down. For each sampling, DS03A-LB/LS will store the reading for future retrieving purposes.
670 670  
671 -(% style="color:red" %)**Note:After the device is reset,in cumulative counting mode,the last stored count value will be read as the initial value.**
671 +=== 2.5.1 How datalog works ===
672 672  
673 673  
674 -=== 2.5.1 Ways to get datalog via LoRaWAN ===
674 +DS03A-LB/LS will wait for ACK for every uplink, when there is no LoRaWAN network,DS03A-LB/LS 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.
675 675  
676 +* (((
677 +a) DS03A-LB/LS will do an ACK check for data records sending to make sure every data arrive server.
678 +)))
679 +* (((
680 +b) DS03A-LB/LS will send data in **CONFIRMED Mode**, but DS03A-LB/LS 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 DS03A-LB/LS gets a ACK, DS03A-LB/LS will consider there is a network connection and resend all NONE-ACK messages.
676 676  
677 -Set PNACKMD=1, DS03A-LB/LS will wait for ACK for every uplink, when there is no LoRaWAN network, DS03A-LB/LS 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.
682 +
683 +)))
678 678  
679 -* a) DS03A-LB/LS will do an ACK check for data records sending to make sure every data arrive server.
680 -* b) DS03A-LB/LS will send data in **CONFIRMED Mode** when PNACKMD=1, but DS03A-LB/LS 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 DS03A-LB/LS gets a ACK, DS03A-LB/LS will consider there is a network connection and resend all NONE-ACK Message.
685 +=== 2.5.2 Enable Datalog ===
681 681  
682 -=== 2.5.2 Unix TimeStamp ===
683 683  
688 +User need to make sure below two settings are enable to use datalog;
684 684  
685 -DS03A-LB/LS uses Unix TimeStamp format based on
690 +* (% style="color:blue" %)**SYNCMOD=1(Default)**(%%) to enable sync time via LoRaWAN MAC command, click here ([[AT+SYNCMOD>>https://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/#H4.6Settimesynchronizationmethod28ThenetworkservermustsupportLoRaWANv1.0.329]]) for detailed instructions.
691 +* (% style="color:blue" %)**PNACKMD=1**(%%)** **to enable datalog feature, click here ([[AT+PNACKMD>>https://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/#H7.26RequesttheservertosendanACK]]) for detailed instructions.
686 686  
687 -[[image:image-20250331163638-7.jpeg]]
688 688  
689 -User can get this time from link:  [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] :
690 690  
691 -Below is the converter example
695 +Once DS03A-LB/LS Joined LoRaWAN network, it will send the MAC command (DeviceTimeReq) and the server will reply with (DeviceTimeAns) to send the current time to DS03A-LB/LS. If DS03A-LB/LS fails to get the time from the server, DS03A-LB/LS will use the internal time and wait for next time request (AT+SYNCTDC to set the time request period, default is 10 days).
692 692  
693 -[[image:image-20250331163648-8.jpeg]]
697 +(% 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.**
694 694  
695 -So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25
696 696  
700 +=== 2.5.3 Unix TimeStamp ===
697 697  
698 -=== 2.5.3 Set Device Time ===
699 699  
703 +DS03A-LB/LS uses Unix TimeStamp format based on
700 700  
701 -User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command.
705 +[[image:image-20250331163638-7.jpeg]]
702 702  
703 -Once DS03A-LB/LS Joined LoRaWAN network, it will send the MAC command (DeviceTimeReq) and the server will reply with (DeviceTimeAns) to send the current time to DS03A-LB/LS. If DS03A-LB/LS fails to get the time from the server, DS03A-LB/LS will use the internal time and wait for next time request (AT+SYNCTDC to set the time request period, default is 10 days).
707 +User can get this time from link:  [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] :
704 704  
705 -(% 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 and loriot support but TTN 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 v2 if SYNCMOD=1.**
709 +Below is the converter example
706 706  
711 +[[image:image-20250331163648-8.jpeg]]
707 707  
713 +So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25
714 +
715 +
708 708  == 2.6 ​Show Data in DataCake IoT Server ==
709 709  
710 710