Changes for page TrackerD -- LoRaWAN Tracker User Manual
Last modified by Xiaoling on 2025/04/27 16:48
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 2 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Edwin1 +XWiki.Xiaoling - Content
-
... ... @@ -98,6 +98,7 @@ 98 98 * Tracking: max: 38mA 99 99 100 100 101 + 101 101 == 1.3 Features == 102 102 103 103 ... ... @@ -117,6 +117,7 @@ 117 117 * Datalog 118 118 119 119 121 + 120 120 == 1.4 Applications == 121 121 122 122 ... ... @@ -124,6 +124,7 @@ 124 124 * Human tracking 125 125 126 126 129 + 127 127 = 2.1 Use TrackerD = 128 128 129 129 ... ... @@ -208,9 +208,11 @@ 208 208 209 209 Uplink the device configures with FPORT=5. Once TrackerD Joined the network, it will uplink this message to the server. After the first uplink, TrackerD will uplink Device Status every 12 hours. 210 210 214 +Use can also get the Device Status uplink through the downlink command: **Downlink: 0x2301** 211 211 212 -(% border="1.5" style="background-color:#ffffcc; color:green; width:520px" %) 213 -|=(% scope="row" style="width: 108px;" %)**Size(bytes)**|=(% style="width: 82px;" %)**1**|=(% style="width: 83px;" %)**2**|=(% style="width: 94px;" %)**1**|=(% style="width: 84px;" %)**1**|=(% style="width: 44px;" %)2|=(% style="width: 63px;" %)**2**|=(% style="width: 60px;" %)1 216 + 217 +(% border="1.5" style="background-color:#ffffcc; color:green; width:440px" %) 218 +|=(% style="width: 60px;" %)**Size(bytes)**|=(% style="width: 70px;" %)**1**|=(% style="width: 70px;" %)**2**|=(% style="width: 70px;" %)**1**|=(% style="width: 50px;" %)**1**|=(% style="width: 30px;" %)2|=(% style="width: 40px;" %)**2**|=(% style="width: 40px;" %)1 214 214 |=(% style="width: 108px;" %)**Value**|(% style="width:82px" %)Sensor Model|(% style="width:83px" %)Firmware Version|(% style="width:94px" %)Frequency Band|(% style="width:84px" %)Sub-band|(% style="width:44px" %)BAT|(% style="width:63px" %)SMOD|(% style="width:60px" %)Status 215 215 216 216 [[image:1665301570342-765.png]] ... ... @@ -254,12 +254,11 @@ 254 254 Use can also get the Device Status uplink through the downlink command: 255 255 256 256 257 - 258 258 (% style="color:#037691" %)**SMOD Field (total 1 byte)**(%%):0x40 259 259 260 -(% border="1.5" style="background-color:#ffffcc; color:green; width: 420px" %)261 -|(% style="width: 75px" %)**Size(bit)**|(% style="width:64px" %)2bits|(% style="width:137px" %)2bit|(% style="width:142px" %)4bit262 -|(% style="width:75px" %)**Value**|(% style="width:64px" %)SMOD|(% style="width:1 37px" %)GPS_Settings|(% style="width:142px" %)BLE_Settings264 +(% border="1.5" style="background-color:#ffffcc; color:green; width:270px" %) 265 +|=(% scope="row" style="width: 60px;" %)**Size(bit)**|(% style="width:50px" %)2bits|(% style="width:80px" %)2bit|(% style="width:80px" %)4bit 266 +|=(% style="width: 75px;" %)**Value**|(% style="width:64px" %)SMOD|(% style="width:104px" %)GPS_Settings|(% style="width:103px" %)BLE_Settings 263 263 264 264 (% style="color:blue" %)** SMOD:** 265 265 ... ... @@ -282,30 +282,26 @@ 282 282 (% style="color:red" %)** 1: ** (%%) BLE Positioning with Strongest iBeacon 283 283 284 284 285 - 286 286 (% style="color:#037691" %)**Status Field (total 1 byte)**(%%): 0x02 287 287 288 -(% border="1.5" style="background-color:#ffffcc; color:green; width: 450px" %)289 -|(% style="width: 77px" %)**Size(bit)**|(% style="width:82px" %)5 Bits|(% style="width:106px" %)1 Bit|(% style="width:67px" %)1 Bit|(% style="width:121px" %)1 Bit290 -|(% style="width:77px" %)**Value**|(% style="width: 82px" %)Reserve|(% style="width:106px" %)PNACKMD|(% style="width:67px" %)LON|(% style="width:121px" %)Transport****Mode291 +(% border="1.5" style="background-color:#ffffcc; color:green; width:260px" %) 292 +|=(% scope="row" style="width: 50px;" %)**Size(bit)**|(% style="width:50px" %)5 Bits|(% style="width:60px" %)1 Bit|(% style="width:20px" %)1 Bit|(% style="width:80px" %)1 Bit 293 +|=(% style="width: 77px;" %)**Value**|(% style="width:70px" %)Reserve|(% style="width:92px" %)[[PNACKMD>>||anchor="H2.4.4A0UplinkFPORT3D42CHistoryGNSSPositioning"]]|(% style="width:48px" %)[[LON>>||anchor="H3.2.5Disable2FEnableLEDflash"]]|(% style="width:126px" %)[[Transport Mode>>||anchor="H2.9TransportMode"]] 291 291 292 - 293 293 294 - 295 295 296 - 297 297 === 2.4.2 Uplink FPORT~=2, Realtime GNSS Positioning + Temperature & Humidity === 298 298 299 299 300 -User can use **AT+SMOD=1,0** to enable uploading on-board Temperature and humidity values, and the total payload will be 15 bytes, please note that 15 bytes won't work on DR0 on US915/AU915 frequency band.300 +Users can use **AT+SMOD=1,0,0** to enable uploading on-board Temperature and humidity values, and the total payload will be 15 bytes, 301 301 302 302 303 -(% border="1.2" cellspacing="3" style="background-color:#ffffcc; color:green; width: 480px" %)304 -|=(% scope="row" style="width: 50px;" %)(((303 +(% border="1.2" cellspacing="3" style="background-color:#ffffcc; color:green; width:320px" %) 304 +|=(% scope="row" style="width: 60px;" %)((( 305 305 **Size(bytes)** 306 -)))|(% style="width: 60px" %)4|(% style="width:70px" %)4|(% style="width:80px" %)2|(% style="width:73px" %)1|(% style="width:40px" %)(((306 +)))|(% style="width:50px" %)4|(% style="width:50px" %)4|(% style="width:70px" %)2|(% style="width:30px" %)1|(% style="width:30px" %)((( 307 307 2 308 -)))|(% style="width: 87px" %)(((308 +)))|(% style="width:30px" %)((( 309 309 2 310 310 ))) 311 311 |=(% style="width: 69px;" %)**Value**|(% style="width:76px" %)[[Latitude>>||anchor="HLocationinfo:"]]|(% style="width:87px" %)[[Longitude>>||anchor="HLocationinfo:"]]|(% style="width:76px" %)((( ... ... @@ -322,10 +322,11 @@ 322 322 |=(% style="width: 72px;" %)**Value**|(% style="width:67px" %)reserve|(% style="width:118px" %)Alarm Indicate|(% style="width:63px" %)[[BAT>>||anchor="HBAT:"]] 323 323 324 324 325 + 325 325 ==== (% style="color:blue" %)**FLAG:**(%%) ==== 326 326 327 -(% border="1.2" cellspacing="3" style="background-color:#ffffcc; color:green; width:2 50px" %)328 -|=(% scope="row" style="width: 50px;" %)**Size(bit)**|(% style="width: 50px" %)2bits|(% style="width:50px" %)1bit328 +(% border="1.2" cellspacing="3" style="background-color:#ffffcc; color:green; width:120px" %) 329 +|=(% scope="row" style="width: 50px;" %)**Size(bit)**|(% style="width:30px" %)2bits|(% style="width:30px" %)1bit 329 329 |=(% style="width: 79px;" %)**Value**|(% style="width:55px" %)[[MOD>>||anchor="H3.2.7SetPositioningMode"]]|(% style="width:47px" %)[[LON>>||anchor="HLON:"]] 330 330 331 331 **Example:** Payload: 0x02863D68 FAC29BAF 4B45 60 0202 011A ... ... @@ -336,6 +336,8 @@ 336 336 * Latitude: 02863D68 ⇒ //if (0x//02863D68//& 0x80000000 = 0 )~:// //value = 02863D68 /1000000 = 42.351976// 337 337 * Longitude: FAC29BAF ⇒ //if (0x//FAC29BAF// & 0x80000000 = 1 )~:// //value = (0x//FAC29BAF// – 0x 100000000)/1000000 =//-87.9094//57// 338 338 340 + 341 + 339 339 (% style="color:red" %)**Important note:** 340 340 341 341 1. When power is low (<2.84v), GPS won't be able to get location info and GPS feature will be disabled and the location field will be filled with 0x0FFFFFFF, 0x0FFFFFFF. ... ... @@ -372,9 +372,10 @@ 372 372 * < 3.39v: 0~~20% 373 373 374 374 378 + 375 375 ==== (% style="color:blue" %)**MOD:**(%%) ==== 376 376 377 -**Example: ** (0x60>>6)& 0x3f =1 .381 +**Example: ** (0x60>>6) & 0x3f =1 378 378 379 379 **Set the format of GPS data uplink link:** 380 380 ... ... @@ -402,7 +402,6 @@ 402 402 ))) 403 403 404 404 405 - 406 406 ==== (% style="color:blue" %)**Hum:**(%%) ==== 407 407 408 408 0202 = //if (0x0202 & 0x8000 = 0 ): value =// 0x0202 / 100 = +514 ⇒ 51.4 degree ... ... @@ -417,13 +417,13 @@ 417 417 === 2.4.3 Uplink FPORT~=3, Realtime GNSS Positioning (Default Mode) === 418 418 419 419 420 -The default uplink payload includes total ly11 bytes. The payload is the first 11 bytes of Uplink FPORT=2, real-time GNSS positioning, (remove the temp and humidity)423 +The default uplink payload includes total 11 bytes (**AT+SMOD=1,1,0**). The payload is the first 11 bytes of Uplink FPORT=2, real-time GNSS positioning, (remove the temp and humidity) 421 421 422 422 423 -(% border="1.2" cellspacing="3" style="background-color:#ffffcc; color:green; width: 480px" %)424 -|=(% scope="row" style="width: 50px;" %)(((426 +(% border="1.2" cellspacing="3" style="background-color:#ffffcc; color:green; width:300px" %) 427 +|=(% scope="row" style="width: 60px;" %)((( 425 425 **Size(bytes)** 426 -)))|(% style="width:60px" %)4|(% style="width: 70px" %)4|(% style="width:80px" %)2|(% style="width:73px" %)1429 +)))|(% style="width:60px" %)4|(% style="width:60px" %)4|(% style="width:60px" %)2|(% style="width:50px" %)1 427 427 |=(% style="width: 69px;" %)**Value**|(% style="width:76px" %)[[Latitude>>||anchor="HLocationinfo:"]]|(% style="width:87px" %)[[Longitude>>||anchor="HLocationinfo:"]]|(% style="width:76px" %)((( 428 428 [[Alarm & BAT>>||anchor="HAlarm26BAT:"]] 429 429 )))|(% style="width:73px" %)[[FLAG>>||anchor="HFLAG:"]] ... ... @@ -436,7 +436,7 @@ 436 436 === 2.4.4 Uplink FPORT~=4, History GNSS Positioning === 437 437 438 438 439 -Set [[PNACKMD=1>> url:http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/#H4.13AutoSendNone-ACKmessages]], and TrackerD will wait for ACK for every uplink, when there is no LoRaWAN network, TrackerD 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.442 +Set [[PNACKMD=1>>||anchor="H3.2.10A0A0AutoSendNone-ACKmessages"]], and TrackerD will wait for ACK for every uplink, when there is no LoRaWAN network, TrackerD 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. 440 440 441 441 442 442 (% style="color:red" %)**Note for this mode:** ... ... @@ -443,10 +443,11 @@ 443 443 444 444 * a) TrackerD will do an ACK check for data records sending to make sure every data arrive server. 445 445 * b) TrackerD will send data in (% style="color:blue" %)**CONFIRMED Mode**(%%) when PNACKMD=1, but TrackerD 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 TrackerD gets an ACK, TrackerD will consider there is a network connection and resend all NONE-ACK Messages. 449 +* c) the total payload will be 15 bytes, while US915/AU915 DR0 accepts only 11 bytes of payload. In this case (DR0 of US915/AU915), the payload on server will show NULL 446 446 447 447 The payload is 15 bytes, as below. 448 448 449 -(% border="1.5" style="background-color:#ffffcc; color:green; width:5 20px" %)453 +(% border="1.5" style="background-color:#ffffcc; color:green; width:500px" %) 450 450 |=(% scope="row" %)((( 451 451 **Size(bytes)** 452 452 )))|4|4|2|1|1|1|1|1 ... ... @@ -459,6 +459,11 @@ 459 459 === 2.4.5 Uplink FPORT~=6, BLE Positioning with Strongest iBeacon === 460 460 461 461 466 +TrackerD supports BLE scans for indoor positioning. User can set [[**SMOD**>>||anchor="H3.2.7SetPositioningMode"]] to **BLE pure** or **GPS/BLE hybrid** so TrackerD will scan BLE iBeacon and find the strongest iBeacon info and uplink. 467 + 468 +User can set **[[BLEMASK>>||anchor="H3.2.11A0SetBLEMASKtofilterBLEiBeacon"]]** so TrackerD will only search the iBeacons which have UUID that match the BLEMASK settings. 469 + 470 + 462 462 (% border="1.5" cellspacing="3" style="background-color:#ffffcc; color:green; width:450px" %) 463 463 |=(% scope="row" style="width: 60px;" %)((( 464 464 **Size(bytes)** ... ... @@ -478,7 +478,7 @@ 478 478 [[image:1664502425687-834.png]] 479 479 480 480 481 -* (% style="color:#037691" %)**BAT: ** (%%) Ex1: 490 +* (% style="color:#037691" %)**BAT: ** (%%) Ex1:0x4B45 & 0x3FFF ⇒ 3901 (mV). 482 482 * (% style="color:#037691" %)**MODE: **(%%)Define the payload format. 483 483 * (% style="color:#037691" %)**UUID: **(%%)The uuid from the strongest iBeacon. 484 484 * (% style="color:#037691" %)**MAJOR:** (%%) The MAJOR from the strongest iBeacon. ... ... @@ -499,8 +499,9 @@ 499 499 [[image:1664502649601-895.png]] 500 500 501 501 502 -Add the decoder from this link: 511 +Add the decoder from this link: 503 503 513 +[[https:~~/~~/github.com/dragino/dragino-end-node-decoder/tree/main/TrackerD>>https://github.com/dragino/dragino-end-node-decoder/tree/main/TrackerD]] 504 504 505 505 Save the change the uplink message will be parsed. As below: 506 506 ... ... @@ -511,15 +511,10 @@ 511 511 == 2.5 Integrate with Datacake == 512 512 513 513 514 -((( 515 515 After TrackerD sends data to LoRaWAN server such as TTN, use can pass the data to Datacake and plot out, currently only support GPS plot. 516 -))) 517 517 518 -((( 519 519 Instruction is here: [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Notes%20for%20Data%20Cake/#H7.Example~~-~~-AddTrackerDGPSTrackingInDataCake>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Notes%20for%20Data%20Cake/#H7.Example--AddTrackerDGPSTrackingInDataCake]] 520 -))) 521 521 522 - 523 523 [[image:1664502695771-538.png]] 524 524 525 525 ... ... @@ -527,15 +527,12 @@ 527 527 == 2.6 Integrate with Tago == 528 528 529 529 530 -((( 531 -After TrackerD sends data to LoRaWAN server such as TTN, use can pass the data to Datacake and plot out, currently only support GPS plot. 532 -))) 535 +After TrackerD sends data to LoRaWAN server such as TTN, user can pass the data to Datacake and plot out, currently only support GPS plot. 533 533 534 -((( 535 535 Instruction is here: [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Tago.IO/#H3.A0Example-CreateTrackerD2FLGT92positioningwidget>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Tago.IO/#H3.A0Example-CreateTrackerD2FLGT92positioningwidget]] 536 -))) 537 537 538 538 540 + 539 539 [[image:1664502715371-321.png]] 540 540 541 541 ... ... @@ -543,8 +543,9 @@ 543 543 == 2.7 Datalog Feature == 544 544 545 545 546 -total 273 entries,by default disable548 +total 273 entries,by default, 547 547 550 +User can set [[PNACKMD=1>>||anchor="H3.2.10A0A0AutoSendNone-ACKmessages"]], to enable Datalog feature. 548 548 549 549 Example use case. 550 550 ... ... @@ -564,7 +564,7 @@ 564 564 565 565 566 566 ((( 567 -Once enter Alarm mode, the (% style="color:green" %)**GREEN LED**(%%) will flash 3 times, the buzzer will alarm for 5 seconds, then TrackerD will immediately send a packet without location info and then send a data packet with GPS positioning information. After that, the device will send 60 packets at 1-minute intervals. The Alarm flag in the payload will be set for the next 60 packets unless exit alert mode. 570 +Once enter Alarm mode, the (% style="color:green" %)**GREEN LED**(%%) will flash 3 times, the buzzer will alarm for 5 seconds, then TrackerD will immediately send a packet without location info and then send a data packet with GPS positioning information. After that, the device will send 60 packets at 1-minute intervals. The Alarm flag in the payload will be set for the next 60 packets unless exits alert mode. 568 568 ))) 569 569 570 570 ... ... @@ -572,7 +572,7 @@ 572 572 Two ways to exit alarm mode: 573 573 ))) 574 574 575 -* Server send a downlink command to exit. 578 +* Server sends a downlink command to exit. 576 576 * User fast press the RED button 10 times. 577 577 578 578 ((( ... ... @@ -622,8 +622,8 @@ 622 622 [[image:1664502854406-763.png]] 623 623 624 624 625 -(% border="1 .5" style="background-color:#ffffcc; color:green; width:520px" %)626 -|=(% style="width: 100px;" %)**Function**|=(% style="width: 2 10px;" %)**Action**|=(% style="width: 210px;" %)**Description**628 +(% border="1" style="background-color:#ffffcc; color:green; width:510px" %) 629 +|=(% style="width: 100px;" %)**Function**|=(% style="width: 205px;" %)**Action**|=(% style="width: 205px;" %)**Description** 627 627 |(% style="width:135px" %)Send Alarm|(% style="width:220px" %)Keep Pressing (% style="color:red" %)**RED**(%%) button for more than 5 seconds|(% style="width:265px" %)Enter Alarm Mode. See [[Alarm Mode>>||anchor="H2.6AlarmMode"]] 628 628 |(% style="width:135px" %)Exit Alarm Mode|(% style="width:220px" %)Fast press the (% style="color:red" %)**RED** (%%)button 10 times|(% style="width:265px" %)Exit Alarm Mode 629 629 |(% style="width:135px" %)Enter Deep Sleep Mode|(% style="width:220px" %)Press and hold the button for 10 seconds, then quickly press the device 3 times to enter deep sleep|(% style="width:265px" %)This is the mode ship out from factory. CPU will be complete in sleep mode and no LoRa activity, only use before deploy. ... ... @@ -666,11 +666,9 @@ 666 666 [[image:1664503022490-662.png]] 667 667 668 668 669 - 670 670 [[image:1664503035713-500.png]] 671 671 672 672 673 - 674 674 [[image:1664503047675-651.png]] 675 675 676 676 ... ... @@ -784,7 +784,7 @@ 784 784 === 3.2.7 Set Positioning Mode === 785 785 786 786 787 -SMOD define the how TrackerD scan and uplink data:788 +SMOD define how TrackerD scan and uplink data: 788 788 789 789 790 790 * (% style="color:blue" %)**AT Command:** ... ... @@ -808,7 +808,7 @@ 808 808 809 809 (% style="color:blue" %)**Example:** 810 810 811 - AT+ SMOD =1,0 812 + AT+ SMOD =1,0,0 ~-~-> GPS+ BAT+ State+Tem&Hum 812 812 AT+ SMOD =1,1,0 ~-~-> GPS +BAT State 813 813 AT+ SMOD =2,0,1 ~-~-> (iBeacon)UUID+ Major + Minor+Power+Rssi+BAT+State 814 814 ... ... @@ -906,6 +906,27 @@ 906 906 Example: 0x3401 ~/~/ Same as AT+PNACKMD=1 907 907 908 908 910 + 911 +=== 3.2.11 Set BLEMASK to filter BLE iBeacon === 912 + 913 + 914 +BLEMASK is to filter the unwanted BLE iBeacons during scan. For example, if BLEMASK is 123456. LBT1 will only uplink UUID info which includes 123456. It will ignore all other iBeacons which doesn’t contact 123456 in the UUID. 915 + 916 +(% style="color:red" %)**Note: BLEMASK range is 6 ~~ 10 bytes. If AT+BLEMASK < 6 bytes, BLEMASK will be disabled.** 917 + 918 +(% style="color:blue" %)**AT Command:** 919 + 920 + (% style="color:#037691" %)**AT+BLEMASK=123456** (%%) ~/~/ Set BLEMASK = 123456 921 + 922 + (% style="color:#037691" %)**AT+BLEMASK=0** (%%) ~/~/ disable BLEMASK 923 + 924 + 925 +(% style="color:blue" %)**Downlink Payload: (Prefix : 0xA5)** 926 + 927 +Example: 0xA5010203040506 ~/~/ Set BLEMASK to 123456 928 + 929 + 930 + 909 909 = 4. Setting for Different Scenarios = 910 910 911 911 ... ... @@ -946,6 +946,7 @@ 946 946 [[image:1664503574618-659.png]] 947 947 948 948 971 + 949 949 (% style="color:blue" %)**Step5:** (%%) Select the firmware file (.bin format), com port and proper SPI configure. Clink Start. Bin file location: 950 950 951 951 [[https:~~/~~/github.com/dragino/TrackerD/releases>>https://github.com/dragino/TrackerD/releases]] ... ... @@ -991,7 +991,18 @@ 991 991 [[image:1664503715811-892.png]] 992 992 993 993 1017 +(% id="cke_bm_4554S" style="display:none" %) (%%)Find the path of SP32 installation, find the file as shown in Figure 1, and change the SPI pin to the shown in Figure 2. 994 994 1019 +[[image:image-20221024105643-1.png]] 1020 + 1021 +**~ Figure1** 1022 + 1023 + 1024 +[[image:image-20221024105643-2.png]] 1025 + 1026 + **Figure2** 1027 + 1028 + 995 995 * **Download the latest TrackerD from the dragino github: [[https:~~/~~/github.com/dragino/TrackerD>>url:https://github.com/dragino/TrackerD]]** 996 996 997 997 Put the Library in the TrackerD directory into the libraries file in the Arduino directory:
- image-20221024105643-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +11.3 KB - Content
- image-20221024105643-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +64.5 KB - Content