Last modified by Mengting Qiu on 2025/07/03 15:42

From version 179.1
edited by Mengting Qiu
on 2025/07/03 15:41
Change comment: There is no comment for this version
To version 178.1
edited by Saxer Lin
on 2025/06/30 15:11
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.ting
1 +XWiki.Saxer
Content
... ... @@ -1267,37 +1267,26 @@
1267 1267  == 2.9 Datalog Feature(Since v1.3.0) ==
1268 1268  
1269 1269  
1270 -Datalog Feature is to ensure IoT Server can get all sampling data from Sensor even if the LoRaWAN network is down. For each sampling, SDI-12-LB will store the reading for future retrieving purposes.
1271 -
1272 -
1273 -=== 2.5.1 How datalog works ===
1274 -
1275 -
1276 -SDI-12-LB will wait for ACK for every uplink, when there is no LoRaWAN network,SDI-12-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.
1277 -
1278 -* (((
1279 -a) SDI-12-LB will do an ACK check for data records sending to make sure every data arrive server.
1270 +(((
1271 +Datalog Feature is to ensure IoT Server can get all sampling data from Sensor even if the LoRaWAN network is down. For each sampling, SDI-12-LB will store the reading for future retrieving purposes. There are two ways for IoT servers to get datalog from SDI-12-LB.
1280 1280  )))
1281 -* (((
1282 -b) SDI-12-LB will send data in **CONFIRMED Mode**, but SDI-12-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 SDI-12-LB gets a ACK, SDI-12-LB will consider there is a network connection and resend all NONE-ACK messages.
1283 1283  
1284 -
1285 -)))
1286 1286  
1287 -=== 2.5.2 Enable Datalog ===
1275 +=== 2.9.1 Ways to get datalog via LoRaWAN ===
1288 1288  
1289 1289  
1290 -User need to make sure below two settings are enable to use datalog;
1278 +There are two methods:
1291 1291  
1292 -* (% 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.
1293 -* (% 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.
1280 +(% style="color:blue" %)**Method 1:** (%%)IoT Server sends a downlink LoRaWAN command to [[poll the value>>||anchor="H2.8.4Pollsensorvalue"]] for specified time range.
1294 1294  
1295 1295  
1283 +(% style="color:blue" %)**Method 2: **(%%)Set PNACKMD=1, SDI-12-LB will wait for ACK for every uplink, when there is no LoRaWAN network, SDI-12-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.
1296 1296  
1297 -Once SDI-12-LB Joined LoRaWAN network, it will send the MAC command (DeviceTimeReq) and the server will reply with (DeviceTimeAns) to send the current time to SDI-12-LB. If SDI-12-LB fails to get the time from the server, SDI-12-LB will use the internal time and wait for next time request (AT+SYNCTDC to set the time request period, default is 10 days).
1298 1298  
1299 -(% 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.**
1286 +(% style="color:red" %)**Note for method 2:**
1300 1300  
1288 +* a) SDI-12-LB will do an ACK check for data records sending to make sure every data arrive server.
1289 +* b) SDI-12-LB will send data in **CONFIRMED Mode** when PNACKMD=1, but SDI-12-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 SDI-12-LB gets a ACK, SDI-12-LB will consider there is a network connection and resend all NONE-ACK Message.
1301 1301  
1302 1302  === 2.9.2 Unix TimeStamp ===
1303 1303  
... ... @@ -1316,6 +1316,39 @@
1316 1316  So, we can use AT+TIMESTAMP=1742889625 or downlink 3067E26299 to set the current time 2025 – March ~-~- 25 Tuesday  08:00:25
1317 1317  
1318 1318  
1308 +=== 2.9.3 Set Device Time ===
1309 +
1310 +
1311 +(((
1312 +(% style="color:blue" %)**There are two ways to set device's time:**
1313 +)))
1314 +
1315 +(((
1316 +**1.  Through LoRaWAN MAC Command (Default settings)**
1317 +)))
1318 +
1319 +(((
1320 +User need to set SYNCMOD=1 to enable sync time via MAC command.
1321 +)))
1322 +
1323 +(((
1324 +Once SDI-12-LB Joined LoRaWAN network, it will send the MAC command (DeviceTimeReq) and the server will reply with (DeviceTimeAns) to send the current time to SDI-12-LB. If SDI-12-LB fails to get the time from the server, SDI-12-LB will use the internal time and wait for next time request (AT+SYNCTDC to set the time request period, default is 10 days).
1325 +)))
1326 +
1327 +(((
1328 +(% 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.**
1329 +)))
1330 +
1331 +
1332 +(((
1333 +**2. Manually Set Time**
1334 +)))
1335 +
1336 +(((
1337 +User needs to set SYNCMOD=0 to manual time, otherwise, the user set time will be overwritten by the time set by the server.
1338 +)))
1339 +
1340 +
1319 1319  === 2.9.4 Poll sensor value ===
1320 1320  
1321 1321