Version 84.3 by Xiaoling on 2022/10/24 11:02

Hide last authors
Xiaoling 51.2 1 (% style="text-align:center" %)
2 [[image:1664505654417-133.png]]
3
4
5
6
Xiaoling 7.1 7 (% class="wikigeneratedid" %)
8 **Table of Contents:**
Edwin Chen 1.1 9
Xiaoling 51.2 10 {{toc/}}
Edwin Chen 1.1 11
Edwin Chen 2.1 12
13
Edwin Chen 12.1 14
Xiaoling 15.2 15 = 1.  Introduction =
16
17
Xiaoling 50.2 18 == 1.1  What is TrackerD ==
Xiaoling 15.2 19
Xiaoling 50.2 20
Xiaoling 15.3 21 (((
22 TrackerD is an (% style="color:blue" %)**Open Source LoRaWAN Tracker**(%%) based on (% style="color:blue" %)**ESP32 MCU**(%%) and (% style="color:blue" %)**Semtech LoRa Wireless Chip**.
23 )))
Xiaoling 7.2 24
Xiaoling 15.3 25 (((
Xiaoling 19.2 26 In TrackerD, there are various sensors such as GPS, WiFi, BLE, Temperature, Humidity, Motion Detection, and Buzzer. User can use TrackerD for different tracking scenario.
Xiaoling 7.2 27
Xiaoling 51.18 28 (((
Edwin Chen 8.1 29 TrackerD is program friendly. Developers can use Arduino IDE to customize the software of TrackerD to fit their IoT solution.
Xiaoling 51.18 30 )))
Edwin Chen 8.1 31
Xiaoling 51.18 32 (((
Xiaoling 19.2 33 The LoRa wireless technology used in TrackerD allows the user 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. It targets professional tracking services.
Xiaoling 15.3 34 )))
Xiaoling 51.18 35 )))
Edwin Chen 8.1 36
Xiaoling 15.3 37 (((
38 TrackerD is equipped with a (% style="color:blue" %)**1000mAh Li-on rechargeable battery**(%%). Each TrackerD has a worldwide unique OTAA keys to join the LoRaWAN network.
Xiaoling 16.4 39
40
Xiaoling 15.3 41 )))
Edwin Chen 8.1 42
Xiaoling 19.2 43 [[image:1664499921684-770.png]]
Edwin Chen 8.1 44
Xiaoling 15.4 45
Xiaoling 19.2 46 (% style="color:red" %)**Note: LoRaWAN server can be a general LoRaWAN server other than TTN.**
Edwin Chen 8.1 47
Xiaoling 15.2 48
Xiaoling 50.2 49
Xiaoling 19.2 50 == 1.2 Specifications ==
Edwin Chen 12.1 51
Xiaoling 15.2 52
Xiaoling 19.2 53 (% style="color:blue" %)**Micro Controller:**
Xiaoling 15.2 54
Xiaoling 19.2 55 * Espressif ESP32 PICO D4
56 * MCU: ESP32 PICO D4
57 * Bluetooth: Bluetooth V4.2 BR/EDR and Bluetooth LE
58 * WiFi : 802.11 b/g/n (802.11n up to 150 Mbps)
59 * Integrated SPI flash : 4 MB
60 * RAM: 448 KB
61 * EEPROM: 520 KB
62 * Clock Speed: 32Mhz
63
64 (% style="color:blue" %)**Common DC Characteristics:**
65
66 * Supply Voltage: 5V via USB port or Internal li-on battery
67 * Operating Temperature: -40 ~~ 60°C
68
69 (% style="color:blue" %)**LoRa Spec:**
70
71 * Frequency Range,
72 ** Band 1 (HF): 862 ~~ 1020 Mhz
73 * 168 dB maximum link budget.
74 * +20 dBm - 100 mW constant RF output vs.
75 * +14 dBm high efficiency PA.
76 * Programmable bit rate up to 300 kbps.
77 * High sensitivity: down to -148 dBm.
78 * Bullet-proof front end: IIP3 = -12.5 dBm.
79 * Excellent blocking immunity.
80 * Low RX current of 10.3 mA, 200 nA register retention.
81 * Fully integrated synthesizer with a resolution of 61 Hz.
82 * FSK, GFSK, MSK, GMSK, LoRaTM and OOK modulation.
83 * Built-in bit synchronizer for clock recovery.
84 * Preamble detection.
85 * 127 dB Dynamic Range RSSI.
86 * Automatic RF Sense and CAD with ultra-fast AFC.
87 * Packet engine up to 256 bytes with CRC.
88 * LoRaWAN 1.0.3 Specification
89
90 (% style="color:blue" %)**Battery:**
91
92 * 1000mA Li-on Battery power (for model TrackerD)
93
94 (% style="color:blue" %)**Power Consumption**
95
96 * Sleeping Mode: 200uA
97 * LoRa Transmit Mode: 125mA @ 20dBm 44mA @ 14dBm
98 * Tracking: max: 38mA
99
Xiaoling 84.2 100
Xiaoling 19.2 101 == 1.3  Features ==
102
103
104 * LoRaWAN 1.0.3 Class A
105 * ESP32 PICO D4
106 * SX1276/78 Wireless Chip
Xiaoling 51.31 107 * Arduino IDE Compatible
Xiaoling 19.2 108 * Open source hardware / software
109 * Regular/ Real-time GPS,BLE,WIFI tracking
110 * Built-in3 axis accelerometer (LIS3DH)
111 * Humidity / temperature sensor : GXCAS Technology GXHT3X
112 * Motion sensing capability
113 * Power Monitoring
114 * Charging circuit via USB port
115 * 1000mA Li-on Battery power
116 * Tri-color LED, Alarm button
117 * Datalog
118
Xiaoling 84.2 119
Xiaoling 19.2 120 == 1.4  Applications ==
121
122
Edwin Chen 12.1 123 * Logistics and Supply Chain Management
124 * Human tracking
125
Xiaoling 84.2 126
Xiaoling 19.3 127 = 2.1 Use TrackerD =
Xiaoling 19.2 128
Xiaoling 50.2 129
Xiaoling 19.3 130 == 2.1 How it works? ==
Xiaoling 19.2 131
Xiaoling 19.3 132
Xiaoling 19.2 133 TrackerD is configured as LoRaWAN OTAA Class A GPS tracker by default. It has OTAA keys to join LoRaWAN network. To connect a LoRaWAN network, user need to input the OTAA keys in the LoRaWAN IoT server and push reset button of TrackerD (next to USB port). TrackerD will wake up and auto join the network via OTAA.
134
135
Xiaoling 50.2 136
Xiaoling 19.3 137 == 2.2 Quick guide to connect to LoRaWAN server ==
Xiaoling 19.2 138
139
Xiaoling 50.2 140 Here is an example for how to join the [[TTNv3 LoRaWAN Network>>url:https://eu1.cloud.thethings.network]]. Below is the network structure, we use LPS8N as LoRaWAN gateway in this example. 
Xiaoling 19.2 141
142
Xiaoling 50.2 143 [[image:1664501652064-326.png]]
Xiaoling 19.2 144
Xiaoling 50.2 145
146
Xiaoling 19.2 147 The LPS8N is already set to connect to [[TTN V3 network >>url:https://eu1.cloud.thethings.network/]]. What the rest need to is register this device in TTN V3:
148
149
Xiaoling 50.2 150 (% style="color:blue" %)**Step 1**:(%%) Create a device in TTN V3 with the OTAA keys from TrackerD.
151
Xiaoling 19.2 152 Each TrackerD is shipped with a sticker with the default device EUI as below:
153
Xiaoling 51.3 154
Xiaoling 50.2 155 [[image:1664501677253-891.png]]
Xiaoling 19.2 156
157
158 Input these keys to their LoRaWAN Server portal. Below is TTN V3 screen shot:
159
160
Xiaoling 50.2 161 **__Add APP EUI in the application:__**
Xiaoling 19.2 162
163
Xiaoling 50.2 164 [[image:1664501711466-918.png]]
Xiaoling 19.2 165
166
167
Xiaoling 50.2 168 [[image:1664501721248-725.png]]
Xiaoling 19.2 169
170
Xiaoling 50.2 171 [[image:1664501734705-405.png]]
Xiaoling 19.2 172
173
174
Xiaoling 50.2 175 **__Add APP KEY and DEV EUI:__**
Xiaoling 19.2 176
177
Xiaoling 50.2 178 [[image:1664501784668-703.png]]
Xiaoling 19.2 179
180
181
182
Xiaoling 50.2 183 (% style="color:blue" %)**Step 2**:(%%) Power on TrackerD by using the on board switch.
Xiaoling 19.2 184
Xiaoling 50.2 185
186 (% style="color:blue" %)**Step 3:**(%%) TrackerD will auto join to the LoRaWAN network. After join success, TrackerD will start to upload message to IoT server.
187
188
Xiaoling 68.4 189
Xiaoling 66.3 190 == 2.3  Positioning Mode(SMOD) ==
Xiaoling 50.2 191
Xiaoling 66.3 192
Edwin Chen 55.1 193 Users can set TrackerD to different Positioning Mode for different applications. Below mod are supported.
Xiaoling 19.2 194
Edwin Chen 55.1 195 * (% style="color:#037691" %)**GPS ONLY(Factory Settings):    **(%%)only get and uplink GPS location info.
196 * (% style="color:#037691" %)**BLE ONLY:              **(%%)Only obtain iBeacon info via BLE and uplink. Design for Indoor tracking.
197 * (% style="color:#037691" %)**GPS/BLE Hybrid:   **(%%)Combination for Indoor and Outdoor tracking.Devices will try to search BLE iBeacon first. If device can't find the iBeacon, it will use GPS for positioning.
Xiaoling 19.2 198
Edwin Chen 55.1 199 Users can switch modes by [[changing SMOD>>||anchor="H3.2.7SetPositioningMode"]].
Xiaoling 19.2 200
Xiaoling 50.2 201
Xiaoling 19.2 202
Xiaoling 66.3 203 == 2.4  Uplink Payload ==
Xiaoling 19.2 204
205
Xiaoling 66.3 206 === 2.4.1 Uplink FPORT~=5, Device Status ===
Xiaoling 66.2 207
Xiaoling 66.3 208
Edwin Chen 74.1 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.
Xiaoling 19.2 210
Edwin Chen 76.1 211 Use can also get the Device Status uplink through the downlink command: **Downlink:  0x2301**
Xiaoling 19.2 212
Edwin Chen 76.1 213
Xiaoling 66.2 214 (% border="1.5" style="background-color:#ffffcc; color:green; width:520px" %)
215 |=(% 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 |=(% 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
Xiaoling 19.2 217
Xiaoling 66.2 218 [[image:1665301570342-765.png]]
219
220
Xiaoling 74.2 221 (% style="color:#037691" %)**Example of Device Status:**(%%) 13014001FF0FA24002
Xiaoling 19.2 222
Xiaoling 74.2 223 (% style="color:#037691" %)**Sensor Model:** (%%) For TrackerD,this value is 0x13
Xiaoling 19.2 224
Xiaoling 74.2 225 (% style="color:#037691" %)**Firmware Version: **(%%) 0x0140,Means:v1.4.0 version
Xiaoling 50.2 226
Xiaoling 74.2 227 (% style="color:#037691" %)**Frequency Band**:
Edwin Chen 55.1 228
229 *0x01: EU868
230
231 *0x02: US915
232
233 *0x03: IN865
234
235 *0x04: AU915
236
237 *0x05: KZ865
238
239 *0x06: RU864
240
241 *0x07: AS923
242
243 *0x08: AS923-1
244
245 *0x09: AS923-2
246
247 *0x0a: AS923-3
248
Xiaoling 74.2 249 Sub- Band:value 0x00~~0x08(only forAU915,US915,Others are 0xFF)
Edwin Chen 55.1 250
Xiaoling 74.2 251 (% style="color:#037691" %)**BAT:**(%%) shows the battery voltage for TrackerD.
Edwin Chen 55.1 252
253
Xiaoling 74.2 254 (% style="color:#037691" %)**Ex1:**(%%) 0x0FA2 = 4002mV
255
Edwin Chen 55.1 256 Use can also get the Device Status uplink through the downlink command:
257
258
Edwin Chen 75.1 259 (% style="color:#037691" %)**SMOD Field (total 1 byte)**(%%):0x40
Xiaoling 74.2 260
Edwin Chen 75.1 261 (% border="1.5" style="background-color:#ffffcc; color:green; width:420px" %)
262 |(% style="width:75px" %)**Size(bit)**|(% style="width:64px" %)2bits|(% style="width:137px" %)2bit|(% style="width:142px" %)4bit
263 |(% style="width:75px" %)**Value**|(% style="width:64px" %)SMOD|(% style="width:137px" %)GPS_Settings|(% style="width:142px" %)BLE_Settings
Xiaoling 74.2 264
Edwin Chen 75.1 265 (% style="color:blue" %)** SMOD:**
Xiaoling 74.2 266
Edwin Chen 75.1 267 (% style="color:red" %)** 1 :** (%%) GPS ONLY
Xiaoling 74.2 268
Edwin Chen 75.1 269 (% style="color:red" %)** 2 :** (%%) BLE ONLY
Xiaoling 74.2 270
Edwin Chen 75.1 271 (% style="color:red" %)** 3 :**  (%%) GPS/BLE Hybrid
Xiaoling 74.2 272
273
Edwin Chen 75.1 274 (% style="color:blue" %)** GPS_MOD: Define how to send GPS payload**
Xiaoling 74.2 275
Edwin Chen 75.1 276 (% style="color:red" %)** 0 : ** (%%) Enable uploading on-board Temperature and humidity values
Xiaoling 74.2 277
Edwin Chen 75.1 278 (% style="color:red" %)** 1 :** (%%) Disable uploading on-board Temperature and humidity values
Xiaoling 74.2 279
280
Edwin Chen 75.1 281 (% style="color:blue" %)** BLE_Settings:**
Xiaoling 74.2 282
Edwin Chen 75.1 283 (% style="color:red" %)** 1: ** (%%) BLE Positioning with Strongest iBeacon
Xiaoling 74.2 284
285
Edwin Chen 75.1 286 (% style="color:#037691" %)**Status Field (total 1 byte)**(%%):  0x02
Xiaoling 74.2 287
Xiaoling 78.3 288 (% border="1.5" style="background-color:#ffffcc; color:green; width:417px" %)
289 |(% style="width:77px" %)**Size(bit)**|(% style="width:70px" %)5 Bits|(% style="width:92px" %)1 Bit|(% style="width:48px" %)1 Bit|(% style="width:126px" %)1 Bit
290 |(% 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"]]
Xiaoling 74.2 291
Xiaoling 84.2 292
Xiaoling 66.3 293 === 2.4.2 Uplink FPORT~=2, Realtime GNSS Positioning + Temperature & Humidity ===
Edwin Chen 55.1 294
295
Edwin Chen 77.1 296 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,
Edwin Chen 55.1 297
298
Xiaoling 51.24 299 (% border="1.2" cellspacing="3" style="background-color:#ffffcc; color:green; width:480px" %)
Xiaoling 51.23 300 |=(% scope="row" style="width: 50px;" %)(((
Xiaoling 51.21 301 **Size(bytes)**
Edwin Chen 59.2 302 )))|(% style="width:60px" %)4|(% style="width:70px" %)4|(% style="width:80px" %)2|(% style="width:73px" %)1|(% style="width:40px" %)(((
303 2
Xiaoling 51.24 304 )))|(% style="width:87px" %)(((
Edwin Chen 59.2 305 2
Xiaoling 19.2 306 )))
Xiaoling 51.18 307 |=(% style="width: 69px;" %)**Value**|(% style="width:76px" %)[[Latitude>>||anchor="HLocationinfo:"]]|(% style="width:87px" %)[[Longitude>>||anchor="HLocationinfo:"]]|(% style="width:76px" %)(((
Xiaoling 51.5 308 [[Alarm & BAT>>||anchor="HAlarm26BAT:"]]
Edwin Chen 59.2 309 )))|(% style="width:73px" %)[[FLAG>>||anchor="HFLAG:"]]|(% style="width:40px" %)[[Hum>>||anchor="HHum:"]]|(% style="width:87px" %)[[Tem>>||anchor="HTem:"]]
Xiaoling 19.2 310
Xiaoling 66.2 311 [[image:1665301636888-168.png]]
Xiaoling 19.2 312
Xiaoling 50.2 313
Xiaoling 51.24 314 ==== (% style="color:blue" %)**Alarm & BAT:**(%%) ====
Xiaoling 19.2 315
Xiaoling 51.24 316 (% border="1.2" cellspacing="3" style="background-color:#ffffcc; color:green; width:250px" %)
317 |=(% scope="row" style="width: 50px;" %)**Size(bit)**|(% style="width:50px" %)1 bit|(% style="width:80px" %)1bit|(% style="width:50px" %)14bits
Xiaoling 51.22 318 |=(% style="width: 72px;" %)**Value**|(% style="width:67px" %)reserve|(% style="width:118px" %)Alarm Indicate|(% style="width:63px" %)[[BAT>>||anchor="HBAT:"]] 
Xiaoling 19.2 319
Xiaoling 51.24 320 ==== (% style="color:blue" %)**FLAG:**(%%) ====
321
322 (% border="1.2" cellspacing="3" style="background-color:#ffffcc; color:green; width:250px" %)
Edwin Chen 59.3 323 |=(% scope="row" style="width: 50px;" %)**Size(bit)**|(% style="width:50px" %)2bits|(% style="width:50px" %)1bit
324 |=(% style="width: 79px;" %)**Value**|(% style="width:55px" %)[[MOD>>||anchor="H3.2.7SetPositioningMode"]]|(% style="width:47px" %)[[LON>>||anchor="HLON:"]]
Xiaoling 19.2 325
Xiaoling 51.11 326 **Example:** Payload: 0x02863D68 FAC29BAF 4B45 60 0202 011A 
Xiaoling 19.2 327
328
Xiaoling 51.24 329 ==== (% style="color:blue" %)**Location info:**(%%) ====
Xiaoling 19.2 330
Xiaoling 51.11 331 * Latitude: 02863D68  ⇒  //if (0x//02863D68//& 0x80000000 = 0 )~://  //value = 02863D68 /1000000 = 42.351976//
332 * Longitude: FAC29BAF  ⇒ //if (0x//FAC29BAF// & 0x80000000 = 1 )~://  //value = (0x//FAC29BAF// – 0x 100000000)/1000000 =//-87.9094//57//
Xiaoling 19.2 333
Xiaoling 51.9 334 (% style="color:red" %)**Important note:**
Xiaoling 19.2 335
Xiaoling 50.2 336 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.
Xiaoling 19.2 337
Edwin Chen 59.3 338 2.  In this mode, the total payload will be 15 bytes, while US915/AU915 DR0 accepts only 11 bytes payload. In this case, the payload on server will be ignore and shows as below:
Xiaoling 19.2 339
340
Xiaoling 50.2 341 [[image:1664502116362-706.png]]
Xiaoling 19.2 342
343
Edwin Chen 59.3 344 3.  While GPS can't get location info after timeout(FTIME Parameter), the latitude and longitude will be filled with all 0x00:
Xiaoling 50.2 345
346 [[image:1664502166010-515.png]]
347
348
349
Xiaoling 51.24 350 ==== (% style="color:blue" %)**Alarm:**(%%) ====
Xiaoling 50.2 351
Xiaoling 74.9 352 **Example: ** 0x4B & 0x40 >> 6 = 0x01
Xiaoling 19.2 353
354
Xiaoling 51.24 355 ==== (% style="color:blue" %)**BAT:**(%%) ====
Xiaoling 51.6 356
Xiaoling 74.9 357 **Example: ** 0x4B45 & 0x3FFF ⇒ 2885 (mV).
Xiaoling 51.6 358
Xiaoling 51.27 359 (((
Edwin Chen 59.3 360 The battery info shows the battery voltage, User can use the below mapping to indicate the battery in percentage: \
Xiaoling 51.27 361 )))
Xiaoling 51.6 362
Xiaoling 50.4 363 * > 4.0v :  80% ~~ 100%
364 * 3.85v ~~3.99v:  60% ~~ 80%
365 * 3.70v ~~ 3.84v:  40% ~~ 60%
366 * 3.40v ~~ 3.69v:  20% ~~ 40%
367 * < 3.39v:  0~~20%
Xiaoling 19.2 368
Xiaoling 84.2 369
Xiaoling 74.3 370 ==== (% style="color:blue" %)**MOD:**(%%) ====
371
Edwin Chen 79.1 372 **Example: ** (0x60>>6) & 0x3f =1
Xiaoling 74.10 373
Xiaoling 74.7 374 **Set the format of GPS data uplink link:**
Xiaoling 74.3 375
Xiaoling 74.7 376 (% style="color:#037691" %)**0x00:** (%%) Enable uploading on-board Temperature and humidity values
Xiaoling 74.9 377 (% style="color:#037691" %)**0x01: ** (%%) Disable uploading on-board Temperature and humidity values
Xiaoling 74.3 378
379
Xiaoling 74.7 380 **Set the format of BLE data uplink link:**
Xiaoling 74.3 381
Xiaoling 74.7 382 (% style="color:#037691" %)**0x01: ** (%%) BLE Positioning with Strongest iBeacon
383
384
Xiaoling 74.10 385 ==== (% style="color:blue" %)**LON:**(%%) ====
Xiaoling 74.9 386
Xiaoling 74.10 387 **Example:** (0x60>>5) & 0x01=1.
Xiaoling 74.9 388
Xiaoling 51.4 389 Enable/Disable LED activity for uplink
Xiaoling 19.2 390
Xiaoling 51.27 391 (((
Xiaoling 74.7 392 (% style="color:#037691" %)**0x00:**  (%%) Disable LED indicator.
Xiaoling 51.27 393 )))
Xiaoling 19.2 394
Xiaoling 51.27 395 (((
Xiaoling 74.7 396 (% style="color:#037691" %)**0x01:**  (%%) Enable LED indicator (Default Value)
Xiaoling 51.27 397 )))
Xiaoling 19.2 398
399
Xiaoling 74.9 400
Xiaoling 51.24 401 ==== (% style="color:blue" %)**Hum:**(%%) ====
Xiaoling 19.2 402
Xiaoling 51.4 403 0202 = //if (0x0202 & 0x8000 = 0 ):  value =// 0x0202 / 100 = +514 ⇒ 51.4 degree
Xiaoling 19.2 404
405
Xiaoling 51.24 406 ==== (% style="color:blue" %)**Tem:**(%%) ====
Xiaoling 19.2 407
Xiaoling 51.9 408 011A =if (0x011A & 0x8000 = 1 ):  value =( 0x011A - 0x10000)/10(dec) ⇒ -//28.2 degree//
Xiaoling 51.4 409
410
Xiaoling 66.2 411
Xiaoling 66.3 412 === 2.4.3  Uplink FPORT~=3, Realtime GNSS Positioning (Default Mode) ===
Xiaoling 51.4 413
Xiaoling 66.2 414
Edwin Chen 78.1 415 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)
Xiaoling 19.2 416
417
Edwin Chen 59.2 418 (% border="1.2" cellspacing="3" style="background-color:#ffffcc; color:green; width:480px" %)
419 |=(% scope="row" style="width: 50px;" %)(((
420 **Size(bytes)**
421 )))|(% style="width:60px" %)4|(% style="width:70px" %)4|(% style="width:80px" %)2|(% style="width:73px" %)1
422 |=(% style="width: 69px;" %)**Value**|(% style="width:76px" %)[[Latitude>>||anchor="HLocationinfo:"]]|(% style="width:87px" %)[[Longitude>>||anchor="HLocationinfo:"]]|(% style="width:76px" %)(((
423 [[Alarm & BAT>>||anchor="HAlarm26BAT:"]]
424 )))|(% style="width:73px" %)[[FLAG>>||anchor="HFLAG:"]]
Xiaoling 50.2 425
Xiaoling 66.2 426 (% class="wikigeneratedid" %)
427 [[image:1665301687277-443.png]]
428
429
430
Xiaoling 66.3 431 === 2.4.4  Uplink FPORT~=4, History GNSS Positioning ===
Edwin Chen 59.2 432
Xiaoling 66.2 433
Xiaoling 78.2 434 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.
Edwin Chen 59.2 435
Xiaoling 66.2 436
Xiaoling 66.3 437 (% style="color:red" %)**Note for this mode:**
Edwin Chen 59.2 438
Edwin Chen 59.3 439 * a) TrackerD will do an ACK check for data records sending to make sure every data arrive server.
Xiaoling 66.3 440 * 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.
Edwin Chen 78.1 441 * 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
Xiaoling 50.2 442
Edwin Chen 59.3 443 The payload is 15 bytes, as below.
Xiaoling 50.2 444
Xiaoling 66.2 445 (% border="1.5" style="background-color:#ffffcc; color:green; width:520px" %)
446 |=(% scope="row" %)(((
447 **Size(bytes)**
448 )))|4|4|2|1|1|1|1|1
Xiaoling 66.3 449 |=**Value**|Latitude|Longitude|Year|Month|Day|Hous|Min|Sen
Edwin Chen 59.3 450
Xiaoling 68.2 451 [[image:image-20221009160309-2.png]]
Edwin Chen 59.3 452
Xiaoling 66.2 453
454
Xiaoling 66.3 455 === 2.4.5  Uplink FPORT~=6, BLE Positioning with Strongest iBeacon ===
Edwin Chen 59.3 456
Xiaoling 84.2 457
Edwin Chen 81.1 458 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.
Edwin Chen 59.3 459
Edwin Chen 82.1 460 User can set **[[BLEMASK>>||anchor="H3.2.11A0SetBLEMASKtofilterBLEiBeacon"]]** so TrackerD will only search the iBeacons which have UUID that match the BLEMASK settings.
Edwin Chen 79.1 461
Edwin Chen 81.1 462
Xiaoling 51.25 463 (% border="1.5" cellspacing="3" style="background-color:#ffffcc; color:green; width:450px" %)
Xiaoling 51.26 464 |=(% scope="row" style="width: 60px;" %)(((
Xiaoling 51.24 465 **Size(bytes)**
Xiaoling 51.26 466 )))|(% style="width:30px" %)16|(% style="width:50px" %)4|(% style="width:50px" %)4|(% style="width:120px" %)2|(% style="width:50px" %)4|(% style="width:50px" %)2|(% style="width:30px" %)1
Xiaoling 51.24 467 |=(% style="width: 50px;" %)**Value**|(% style="width:44px" %)[[UUID>>||anchor="HLocationinfo:"]]|(% style="width:61px" %)(((
Xiaoling 51.8 468 iBeacon MAJOR
Xiaoling 51.11 469 )))|(% style="width:63px" %)(((
470 iBeacon MINOR
Xiaoling 50.2 471 )))|(% style="width:71px" %)(((
Xiaoling 51.8 472 iBeacon Measured Power
Xiaoling 51.11 473 )))|(% style="width:50px" %)(((
Xiaoling 51.8 474 iBeacon RSSI
Xiaoling 51.11 475 )))|(% style="width:47px" %)(((
Xiaoling 51.8 476 [[Alarm & BAT>>||anchor="HAlarm26BAT:"]]
Xiaoling 51.11 477 )))|(% style="width:15px" %)[[FLAG>>||anchor="HFLAG:"]]
Xiaoling 19.2 478
Xiaoling 50.2 479 [[image:1664502425687-834.png]]
Xiaoling 19.2 480
481
Edwin Chen 79.1 482 * (% style="color:#037691" %)**BAT: ** (%%) Ex1:0x4B45 & 0x3FFF ⇒ 3901 (mV).
Xiaoling 51.9 483 * (% style="color:#037691" %)**MODE:   **(%%)Define the payload format.
484 * (% style="color:#037691" %)**UUID:     **(%%)The uuid from the strongest iBeacon.
485 * (% style="color:#037691" %)**MAJOR:** (%%) The MAJOR from the strongest iBeacon.
486 * (% style="color:#037691" %)**MINOR:**  (%%)The MAJOR from the strongest iBeacon.
487 * (% style="color:#037691" %)**Measured Power: ** (%%) The Measured Power from the strongest iBeacon.
488 * (% style="color:#037691" %)**RSSI:  ** (%%) The RSSI from the strongest iBeacon.
Xiaoling 19.2 489
Edwin Chen 82.1 490
Xiaoling 68.3 491 === 2.4.6  Add Payload format in TTN V3 ===
Xiaoling 19.3 492
Xiaoling 50.2 493
Xiaoling 19.2 494 In TTN V3, use can add a custom payload so it shows friendly.
495
Xiaoling 51.9 496 In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**
Xiaoling 19.2 497
498
Xiaoling 50.2 499 [[image:1664502649601-895.png]]
500
Xiaoling 51.9 501
Xiaoling 78.7 502 Add the decoder from this link: 
Xiaoling 19.2 503
Xiaoling 78.7 504 [[https:~~/~~/github.com/dragino/dragino-end-node-decoder/tree/main/TrackerD>>https://github.com/dragino/dragino-end-node-decoder/tree/main/TrackerD]]
Xiaoling 19.2 505
506 Save the change the uplink message will be parsed. As below:
507
Xiaoling 50.2 508 [[image:1664502676891-606.png]]
Xiaoling 19.2 509
510
511
Xiaoling 66.3 512 == 2.5 Integrate with Datacake ==
Xiaoling 19.2 513
514 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.
515
Xiaoling 50.2 516 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]]
Xiaoling 19.2 517
Xiaoling 50.2 518 [[image:1664502695771-538.png]]
Xiaoling 19.2 519
Xiaoling 50.2 520
521
Xiaoling 66.3 522 == 2.6 Integrate with Tago ==
Xiaoling 19.2 523
524
525
Edwin Chen 81.1 526 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.
527
Xiaoling 19.2 528 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]]
529
530
Edwin Chen 81.1 531
Xiaoling 50.2 532 [[image:1664502715371-321.png]]
Xiaoling 19.2 533
534
535
Xiaoling 68.4 536 == 2.7  Datalog Feature ==
Edwin Chen 56.1 537
Xiaoling 68.4 538
Edwin Chen 78.1 539 total 273 entries,by default,
Edwin Chen 56.1 540
Xiaoling 78.4 541 User can set [[PNACKMD=1>>||anchor="H3.2.10A0A0AutoSendNone-ACKmessages"]], to enable Datalog feature.
Xiaoling 68.4 542
Edwin Chen 71.1 543 Example use case.
Xiaoling 68.4 544
Edwin Chen 72.1 545 [[image:image-20221009234703-2.png||height="328" width="899"]]
Edwin Chen 71.1 546
547
Edwin Chen 72.1 548 [[image:image-20221009234629-1.png||height="390" width="577"]]
Edwin Chen 71.1 549
550
551
Xiaoling 66.3 552 == 2.8 Alarm Mode ==
Xiaoling 19.2 553
554
Xiaoling 51.27 555 (((
Xiaoling 51.11 556 User can push the (% style="color:red" %)**RED button**(%%) by more than 5 seconds to enter Alarm Mode.
Xiaoling 51.27 557 )))
Xiaoling 19.2 558
559
Xiaoling 51.27 560 (((
Edwin Chen 81.1 561 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.
Xiaoling 51.27 562 )))
Xiaoling 19.2 563
564
Xiaoling 51.27 565 (((
Xiaoling 19.2 566 Two ways to exit alarm mode:
Xiaoling 51.27 567 )))
Xiaoling 19.2 568
Edwin Chen 81.1 569 * Server sends a downlink command to exit.
Xiaoling 19.2 570 * User fast press the RED button 10 times.
571
Xiaoling 51.27 572 (((
Xiaoling 51.11 573 When exit alarm mode, (% style="color:red" %)**RED LED**(%%) will light up for 5 seconds, indicating that the alarm mode is exited. And the alert flag will be set to false.
Xiaoling 51.27 574 )))
Xiaoling 19.2 575
576
Xiaoling 50.2 577
Xiaoling 66.3 578 == 2.9 Transport Mode ==
Xiaoling 19.2 579
580
Edwin Chen 57.1 581 In Transport Mode, TrackerD will check if there is motion. If there is no motion, device will send uplinks every 20 minutes. If there is motion, device will send uplink every 5 minutes.
Xiaoling 19.2 582
Edwin Chen 55.1 583
Xiaoling 68.4 584
Xiaoling 66.3 585 == 2.10 LED Status ==
Xiaoling 19.2 586
587
Xiaoling 51.26 588 (% border="1.5" style="background-color:#ffffcc; color:green; width:500px" %)
Xiaoling 51.27 589 |=(% style="width: 150px;" %)**Event**|=(% style="width: 200px;" %)**Action**|=(% style="width: 150px;" %)**AT+LON to control on/off**
Xiaoling 51.11 590 |(% style="width:157px" %)**Power On**|(% style="width:271px" %)(% style="color:blue" %)**BLUE, **(% style="color:red" %)**RED , **(% style="color:green" %)**Green** flash once|(% style="width:202px" %)N/A
591 |(% style="width:157px" %)**Join request**|(% style="width:271px" %)(% style="color:green" %)**Green** (%%)led fast blink once (200ms)|(% style="width:202px" %)Yes
592 |(% style="width:157px" %)**Join Success**|(% style="width:271px" %)(% style="color:green" %)**Green**(%%) led on 5 second|(% style="width:202px" %)N/A
593 |(% style="width:157px" %)**Fixing Location**|(% style="width:271px" %)(% style="color:blue" %)**BLUE **(%%)blinks 200ms per second|(% style="width:202px" %)Yes
594 |(% style="width:157px" %)**Fixed and uplink**|(% style="width:271px" %)(% style="color:green" %)**GREEN ***(%%)***blinks twice (200ms per blink)**|(% style="width:202px" %)Yes
595 |(% style="width:157px" %)**Fail Fix and uplink**|(% style="width:271px" %)(% style="color:red" %)**RED **(%%)blinks twice (200ms per blink)|(% style="width:202px" %)Yes
596 |(% style="width:157px" %)**Enter Alarm mode**|(% style="width:271px" %)(% style="color:red" %)**RED **(%%)on for 3 seconds|(% style="width:202px" %)Yes
597 |(% style="width:157px" %)**Uplink under Alarm**|(% style="width:271px" %)(% style="color:red" %)**RED **(%%)on for 1 second|(% style="width:202px" %)Yes
598 |(% style="width:157px" %)**Exit Alarm**|(% style="width:271px" %)(% style="color:blue" %)**BLUE **(%%)led on 5 second|(% style="width:202px" %)Yes
599 |(% style="width:157px" %)**Get Downlink**|(% style="width:271px" %)(% style="color:green" %)**GREEN**(%%) led on 1 second|(% style="width:202px" %)Yes
600 |(% style="width:157px" %)**Movement Detect**|(% style="width:271px" %)(% style="color:red" %)**RED **(%%)led on 500ms|(% style="width:202px" %)N/A
Xiaoling 19.2 601
Xiaoling 84.2 602
Xiaoling 66.3 603 == 2.11 Button Function ==
Xiaoling 19.2 604
Xiaoling 50.2 605
Xiaoling 51.27 606 (% style="color:blue" %)**RESET button:**
Xiaoling 19.2 607
Xiaoling 50.2 608 [[image:1664502835802-546.png]]
Xiaoling 19.2 609
610 Push this button will reboot the device. Device will exit alarm mode and re-join to LoRaWAN server.
611
612
Xiaoling 51.11 613 (% style="color:red" %)**RED button:**
Xiaoling 19.2 614
Xiaoling 50.2 615 [[image:1664502854406-763.png]]
Xiaoling 19.2 616
617
Xiaoling 51.27 618 (% border="1.5" style="background-color:#ffffcc; color:green; width:520px" %)
619 |=(% style="width: 100px;" %)**Function**|=(% style="width: 210px;" %)**Action**|=(% style="width: 210px;" %)**Description**
Xiaoling 51.11 620 |(% 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"]]
621 |(% 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
Xiaoling 50.2 622 |(% 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.
Xiaoling 19.2 623
Xiaoling 84.2 624
Xiaoling 66.3 625 == 2.12 USB Port Function ==
Xiaoling 19.2 626
Xiaoling 50.2 627
Xiaoling 19.2 628 The USB interface of TrackerD has below functions:
629
630 * Power on the device
631 * Recharge the battery
Xiaoling 51.11 632 * [[Configure Device>>||anchor="H3.ConfigureTrackerDviaATcommandorLoRaWANdownlink"]]
633 * [[Upgrade Firmware>>||anchor="H5.UploadFirmware"]]
Xiaoling 19.2 634
Xiaoling 84.2 635
Xiaoling 19.3 636 = 3. Configure TrackerD via AT command or LoRaWAN downlink =
Xiaoling 19.2 637
638
639 User can configure TrackerD via AT Command or LoRaWAN Downlink.
640
Xiaoling 51.13 641 LoRaWAN Downlink instruction for different platforms:  [[IoT LoRaWAN Server>>doc:Main.WebHome]]
Xiaoling 19.2 642
643
Xiaoling 50.2 644
Xiaoling 19.3 645 == 3.1 Access AT Command ==
Xiaoling 19.2 646
647
Xiaoling 50.2 648 TrackerD supports the AT command set in stock firmware. User can connect to TrackerD with TYPE-C cable to use AT commands as shown below.
Xiaoling 19.2 649
650
Xiaoling 50.2 651 [[image:1664502999401-486.png]]
652
653
Xiaoling 51.11 654 In PC, User needs to set serial tool baud rate to (% style="color:green" %)**115200**(%%) to access serial console for TrackerD. TrackerD will output system info once power on and user will be able to send AT commands:
Xiaoling 19.2 655
656
Xiaoling 50.2 657 [[image:1664503022490-662.png]]
Xiaoling 19.2 658
659
Xiaoling 50.2 660 [[image:1664503035713-500.png]]
Xiaoling 19.2 661
662
Xiaoling 50.2 663 [[image:1664503047675-651.png]]
664
665
666
Xiaoling 19.3 667 == 3.2 Command Set ==
Xiaoling 19.2 668
669
Xiaoling 19.3 670 === 3.2.1 Set Transmit Interval ===
Xiaoling 19.2 671
Xiaoling 50.2 672
Xiaoling 19.2 673 Set device uplink interval.
674
Xiaoling 51.13 675 * (% style="color:blue" %)**AT Command:**
Xiaoling 19.2 676
Xiaoling 51.13 677 (% style="color:#037691" %)**AT+TDC=xxx **
Xiaoling 19.2 678
Xiaoling 50.2 679 Example:  AT+TDC=300000. Means set interval to 5 minutes(300 seconds)
Xiaoling 19.2 680
681
Xiaoling 51.13 682 * (% style="color:blue" %)**Downlink Payload (prefix 0x01):**
Xiaoling 19.2 683
Xiaoling 51.13 684 (% style="color:#037691" %)**0x01 00 01 2C**  (%%) ~/~/  Same as AT+TDC=300000
Xiaoling 19.2 685
686
Xiaoling 50.2 687
Xiaoling 19.3 688 === 3.2.2 Set Alarm Packet transmission interval ===
Xiaoling 19.2 689
Xiaoling 50.2 690
Xiaoling 19.2 691 Set alarm packet transmit interval
692
Xiaoling 51.13 693 * (% style="color:blue" %)**AT Command:**
Xiaoling 19.2 694
Xiaoling 51.13 695 (% style="color:#037691" %)**AT+ATDC=xx. **
Xiaoling 19.2 696
Xiaoling 51.2 697 Example:  AT+ATDC=60000  **~-~->    ** Set Alarm Packet Interval to 60 seconds. TrackerD will send every 60 seconds in Alarm mode, Default Value: 60000
Xiaoling 19.2 698
699
Xiaoling 51.13 700 * (% style="color:blue" %)**Downlink Payload (prefix 0xB1):**
Xiaoling 19.2 701
Xiaoling 51.13 702 (% style="color:#037691" %)**0xB1 00 00 3C ** (%%) ~/~/  Same as AT+ATDC=60000
Xiaoling 19.2 703
704
705
Edwin Chen 57.1 706 === 3.2.3 Set Transport Mode Packet transmission interval ===
Xiaoling 50.2 707
708
Edwin Chen 57.1 709 Set Transport Mode packet transmit interval
Xiaoling 19.2 710
Xiaoling 51.13 711 * (% style="color:blue" %)**AT Command:**
Xiaoling 19.2 712
Xiaoling 51.13 713 (% style="color:#037691" %)**AT+MTDC=xx. **
Xiaoling 19.2 714
Edwin Chen 57.1 715 Example:  AT+MTDC=300000  **~-~->    ** Set Transport Mode Packet Interval to 300 seconds. TrackerD will send every 300 seconds in Transport mode, Default Value: 300000
Xiaoling 19.2 716
717
Xiaoling 51.13 718 * (% style="color:blue" %)**Downlink Payload (prefix 0x03):**
Xiaoling 19.2 719
Xiaoling 51.13 720 (% style="color:#037691" %)**0x03 00 01 2C**  (%%) ~/~/  Same as AT+ MTDC=3000000
Xiaoling 19.2 721
722
723
Xiaoling 50.2 724 === 3.2.4 Exit Alarm ===
Xiaoling 19.2 725
Xiaoling 50.2 726
Xiaoling 19.2 727 Server send downlink command to exit Alarm mode
728
Xiaoling 51.13 729 * (% style="color:blue" %)**AT Command: No AT Command**
Xiaoling 19.2 730
Xiaoling 51.13 731 * (% style="color:blue" %)**Downlink Payload (prefix 0x02):**
Xiaoling 19.2 732
Xiaoling 51.13 733 (% style="color:#037691" %)**0x02 01**    (%%) ~/~/  Exit Alarm Mode
Xiaoling 19.2 734
Xiaoling 51.13 735
736
Xiaoling 50.2 737 === 3.2.5 Disable/Enable LED flash ===
738
739
Xiaoling 19.2 740 Disable/Enable LED for position, downlink and uplink
741
Xiaoling 51.13 742 * (% style="color:blue" %)**AT Command:**
Xiaoling 19.2 743
Xiaoling 51.13 744 (% style="color:#037691" %)**AT+LON=xx.  (Disable (0), Enable (1), default:1)**
Xiaoling 19.2 745
Xiaoling 51.28 746 Example: AT+LON=0  **~-~-> ** Disable LED for position, downlink and uplink.
Xiaoling 19.2 747
748
Xiaoling 51.13 749 * (% style="color:blue" %)**Downlink Payload (prefix 0xAE):**
Xiaoling 19.2 750
Xiaoling 51.13 751 (% style="color:#037691" %)**0xAE 00 ** (%%) ~/~/  Same as AT+LON=0
Xiaoling 19.2 752
753
754
Edwin Chen 59.1 755 === 3.2.6 Disable/Enable Transport Mode ===
Xiaoling 19.2 756
757
Edwin Chen 59.1 758 Users can use this feature to enable/disable Transport Mode.
Xiaoling 19.2 759
Xiaoling 51.13 760 * (% style="color:blue" %)**AT Command:**
Xiaoling 19.2 761
Xiaoling 51.13 762 (% style="color:#037691" %)**AT+INTWK=xx.  (Disable (0), Enable (1), default:0)**
Xiaoling 19.2 763
Edwin Chen 59.1 764 Example:  AT+ INTWK =1  **~-~->   ** Enable Transport Mode.
Xiaoling 19.2 765
766
Xiaoling 51.13 767 * (% style="color:blue" %)**Downlink Payload (prefix 0xAF):**
Xiaoling 19.2 768
Xiaoling 51.13 769 (% style="color:#037691" %)**0xAF 01 ** (%%) ~/~/  Same as AT+ INTWK =1
Xiaoling 19.2 770
771
772
Xiaoling 50.2 773 === 3.2.7 Set Positioning Mode ===
Xiaoling 19.2 774
Xiaoling 50.2 775
Edwin Chen 79.1 776 SMOD define how TrackerD scan and uplink data:
Xiaoling 19.2 777
778
Xiaoling 51.13 779 * (% style="color:blue" %)**AT Command:**
Xiaoling 19.2 780
Xiaoling 74.5 781 (% style="color:#037691" %)**AT+SMOD=aa,bb,cc**
Xiaoling 19.2 782
Edwin Chen 60.2 783 (% style="color:#037691" %)** aa:**
Xiaoling 19.2 784
Xiaoling 74.5 785 * (% style="color:red" %)**1: GPS ONLY(Factory Settings):    **(%%)only get and uplink GPS location info.
786 * (% style="color:red" %)**2: BLE ONLY:              **(%%)Only obtain iBeacon info via BLE and uplink. Design for Indoor tracking.
787 * (% style="color:red" %)**3: GPS/BLE Hybrid:   **(%%)Combination for Indoor and Outdoor tracking.Devices will try to search BLE iBeacon first. If device can't find the iBeacon, it will use GPS for positioning.
Edwin Chen 60.2 788
789 (% style="color:#037691" %)**bb:**
790
Xiaoling 74.5 791 * (% style="color:red" %)**0 :  **(%%)GPS+ BAT+ State+Tem&Hum
792 * (% style="color:red" %)**1 :**(%%)  GPS +BAT State
Edwin Chen 60.2 793
Xiaoling 74.5 794 (% style="color:#037691" %)**cc:   **
Edwin Chen 60.2 795
Xiaoling 74.5 796 * (% style="color:red" %)**1 : **(%%) (iBeacon)UUID+ Major + Minor+Power+Rssi+BAT+State  
Edwin Chen 60.2 797
Xiaoling 74.5 798 (% style="color:blue" %)**Example:**
Xiaoling 19.2 799
Edwin Chen 79.1 800 AT+ SMOD =1,0,0 ~-~->  GPS+ BAT+ State+Tem&Hum
Xiaoling 74.5 801 AT+ SMOD =1,1,0 ~-~->  GPS +BAT State
802 AT+ SMOD =2,0,1 ~-~->  (iBeacon)UUID+ Major + Minor+Power+Rssi+BAT+State
Xiaoling 19.2 803
804
Xiaoling 51.13 805 * (% style="color:blue" %)**Downlink Payload (prefix 0xA5):**
Xiaoling 19.2 806
Xiaoling 74.5 807 (% style="color:#037691" %)**0xA5 01 00 00**    (%%) ~/~/  Same as AT+ SMOD =1,0,0
Xiaoling 19.2 808
809
810
Xiaoling 50.2 811 === 3.2.8 Set MAX GPS position time ===
812
813
Xiaoling 19.2 814 Set max positioning time, default is 150 seconds. TrackerD will try to get location info within this period. If fail to get position data within this time, TrackerD will use 000000 for latitude and longitude.
815
816
817 If AT+FTIME=0. The GPS module will be always powered and positioning. This will highly increase the power consumption (up to 50mA). When AT+FTIME=0, it will improve fix accuracy and shorten the acquire time for next uplink.
818
819
Xiaoling 51.13 820 * (% style="color:blue" %)**AT Command:**
Xiaoling 19.2 821
Xiaoling 51.13 822 (% style="color:#037691" %)**AT+FTIME=xx**  (%%) **~-~-> ** Set to use xx as max fix time.
Xiaoling 19.2 823
Xiaoling 74.5 824 **Example:**  AT+FTIME=150
Xiaoling 19.2 825
826
Xiaoling 51.13 827 * (% style="color:blue" %)**Downlink Payload (prefix 0xAA):**
Xiaoling 19.2 828
Xiaoling 51.13 829 (% style="color:#037691" %)**0xAA 00 96 ** (%%) ~/~/  Set AT+FTIME=150
Xiaoling 19.2 830
831
832
Xiaoling 68.4 833 === 3.2.9 Set PDOP value for GPS fix accuracy ===
Xiaoling 19.2 834
835
Xiaoling 50.2 836 PDOP(Position Dilution of Precision) filter, TrackerD will only accept GPS data with a lower PDOP value than pre-configure PDOP value. If device can't get a valid GPS packet within FTIME timeout, it will use the GPS data with lowest PDOP value to server.
Xiaoling 19.2 837
Xiaoling 50.2 838
Xiaoling 19.2 839 A GPS packet with lower PDOP has higher accuracy. PDOP default value is 2.0
840
841
Xiaoling 51.13 842 * (% style="color:blue" %)**AT Command:**
Xiaoling 19.2 843
Xiaoling 51.13 844 (% style="color:#037691" %)**AT+PDOP=2.5 ** (%%) **~-~->  ** Set PDOP to 2.5
Xiaoling 19.2 845
846
Xiaoling 51.13 847 * (% style="color:blue" %)**Downlink Payload (prefix 0xAD):**
Xiaoling 19.2 848
Xiaoling 51.13 849 (% style="color:#037691" %)**0xAD 00 0A**   (%%) ~/~/  Set AT+PDOP=1  (0x0A / 10 =1)
Xiaoling 19.2 850
Xiaoling 51.13 851 (% style="color:#037691" %)**0xAD 00 19**   (%%) ~/~/  Set AT+PDOP=2.5    (0x19 / 10 =2.5)
Xiaoling 19.2 852
Xiaoling 51.13 853 (% style="color:#037691" %)**0xAD 00 46**    (%%) ~/~/  Set AT+PDOP=7  (0x46 / 10 =7)
Xiaoling 19.2 854
Xiaoling 50.2 855
Xiaoling 51.12 856
Xiaoling 19.2 857 Disable/Enable the confirmation mode
858
Xiaoling 51.13 859 * (% style="color:blue" %)**AT Command:**
Xiaoling 19.2 860
Xiaoling 74.6 861 (% style="color:#037691" %)**AT+CFM=xx**
Xiaoling 19.2 862
863
Xiaoling 50.2 864 **~ Example:**
Xiaoling 19.2 865
Xiaoling 51.2 866 AT+ CFM=0    **~-~->   ** Disable confirmation
Xiaoling 19.2 867
Xiaoling 50.2 868 AT+ CFM=1    **~-~->  ** Enable confirmation
Xiaoling 19.2 869
Xiaoling 50.2 870
Xiaoling 51.13 871 * (% style="color:blue" %)**Downlink Payload (prefix 0x05):**
Xiaoling 19.2 872
Xiaoling 51.13 873 (% style="color:#037691" %)**0x05 01 **(%%) ~/~/  Same as AT+ SMOD =1
Xiaoling 19.2 874
875
876
Xiaoling 74.6 877 === 3.2.10  Auto Send None-ACK messages ===
878
879
880 TrackerD will wait for ACK for each uplink, If TrackerD doesn't get ACK from the IoT server, it will consider the message doesn't arrive server and store it. TrackerD keeps sending messages in normal periodically. Once TrackerD gets ACK from a server, it will consider the network is ok and start to send the not-arrive message.
881
882
883 * (% style="color:blue" %)**AT Command: AT+PNACKMD**
884
885 The default factory setting is 0.
886
887
888 **Command Example Function Response:**
889
890 (% style="color:#037691" %)**AT+PNACKMD=1**  (%%) ~/~/  Poll None-ACK message OK
891
892
893 * (% style="color:blue" %)**Downlink Command: 0x34**
894
895 Example: 0x3401  ~/~/  Same as AT+PNACKMD=1
896
897
Xiaoling 84.2 898
Edwin Chen 80.1 899 === 3.2.11  Set BLEMASK to filter BLE iBeacon ===
900
Xiaoling 84.2 901
Edwin Chen 80.1 902 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.
903
904 Note: BLEMASK range is 6 ~~ 10 bytes. If AT+BLEMASK < 6 bytes, BLEMASK will be disabled.
905
906 (% style="color:blue" %)**AT Command:**(%%)
907 AT+BLEMASK=123456     ~/~/ Set BLEMASK = 123456
908 AT+BLEMASK=0  ~/~/ disable BLEMASK
909
910
911 (% style="color:blue" %)**Downlink Payload: (Prefix : 0xA5)**(%%)
912 Example:
913 0xA5010203040506    ~/~/ Set BLEMASK to 123456
914
915
916
Xiaoling 19.4 917 = 4. Setting for Different Scenarios =
Xiaoling 19.2 918
919
920
Xiaoling 19.4 921 = 5. Upload Firmware =
Xiaoling 19.2 922
Xiaoling 19.4 923
924 == 5.1 Firmware Change Log ==
925
Xiaoling 50.2 926
Xiaoling 19.2 927 **[[See this link>>url:https://github.com/dragino/TrackerD]]**
928
929
Xiaoling 50.2 930
Xiaoling 19.4 931 == 5.2 How to upgrade firmware ==
Xiaoling 19.2 932
933
Xiaoling 50.2 934 User can use the TrackerD's USB port to upgrade firmware into it. The hardware connection for upgrade firmware is as below:
Xiaoling 19.2 935
936
Xiaoling 50.2 937 (% style="color:blue" %)**Step1:  **(%%)Connect TrackerD and PC via USB cable shipped with TrackerD.
Xiaoling 19.2 938
Xiaoling 50.2 939
940 (% style="color:blue" %)**Step2:** (%%) Install CH9102 driver in the PC.
941
Xiaoling 19.2 942 After installation of the driver and plug in TrackerD, user should be able to see com port in PC's device manager.
943
944
Xiaoling 51.28 945 (% style="color:blue" %)**Step3:  **(%%)Download and Install Flash Tool:  [[https:~~/~~/www.espressif.com.cn/en/support/download/other-tools?keys=Flash%2BDownload%2BTools>>url:https://www.espressif.com.cn/en/support/download/other-tools?keys=Flash%2BDownload%2BTools]]
Xiaoling 19.2 946
947
Xiaoling 50.2 948 (% style="color:blue" %)**Step4:** (%%) Run Flash Download Tool and configure chip type to ESP32
Xiaoling 19.2 949
950
Xiaoling 50.2 951 [[image:1664503563660-578.png]]
Xiaoling 19.2 952
953
Xiaoling 50.2 954 [[image:1664503574618-659.png]]
Xiaoling 19.2 955
Xiaoling 50.2 956
Xiaoling 84.2 957
Xiaoling 50.2 958 (% style="color:blue" %)**Step5:** (%%) Select the firmware file (.bin format), com port and proper SPI configure. Clink Start. Bin file location:
959
Edwin Chen 73.1 960 [[https:~~/~~/github.com/dragino/TrackerD/releases>>https://github.com/dragino/TrackerD/releases]]
Xiaoling 19.2 961
962
963 Users need to use below files:
964
965 boot_app0.bin @0e000
966
967 ESP_LORA-eeprom-class.bin @ 0x10000
968
969
Xiaoling 50.2 970 [[image:1664503593459-435.png]]
Xiaoling 19.2 971
972
973
Xiaoling 50.2 974 After upgrade finish, it will show finish as below:
Xiaoling 19.2 975
Xiaoling 50.2 976 [[image:1664503611848-385.png]]
Xiaoling 19.2 977
978
Xiaoling 50.2 979
Xiaoling 19.4 980 = 6. Developer Guide =
Xiaoling 19.2 981
982
Xiaoling 19.4 983 == 6.1 Compile Source Code ==
984
985
986 === 6.1.1 Set up ARDUINO compile environment ===
987
988
Xiaoling 51.28 989 * **Download the latest Arduino software (IDE) from the Arduino official website:  [[https:~~/~~/www.arduino.cc/en/Main/Software>>url:https://www.arduino.cc/en/Main/Software]]**
Xiaoling 19.2 990
Xiaoling 51.15 991 Install IDE on PC, open and click (% style="color:#037691" %)**File ~-~-> Preference**,(%%) add the following URL:  [[https:~~/~~/dl.espressif.com/dl/package_esp32_index.json>>url:https://links.jianshu.com/go?to=https%3A%2F%2Fdl.espressif.com%2Fdl%2Fpackage_esp32_index.json]]
Xiaoling 19.2 992
993
Xiaoling 50.2 994 [[image:1664503635019-941.png]]
Xiaoling 19.2 995
Xiaoling 50.2 996
Xiaoling 68.4 997
Xiaoling 51.28 998 * (% style="color:#037691" %)**Go to tools ~-~-> Boards ~-~-> Boards Manager**,(%%) **find the esp32 information and install it.**
Xiaoling 19.2 999
Xiaoling 50.2 1000 [[image:1664503715811-892.png]]
Xiaoling 19.2 1001
1002
Xiaoling 84.3 1003 (% 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.
Xiaoling 19.2 1004
Xiaoling 84.3 1005 [[image:image-20221024105643-1.png]]
1006
1007 ** Figure1**
1008
1009
1010 [[image:image-20221024105643-2.png]]
1011
1012 **Figure2**
1013
1014
Xiaoling 51.28 1015 * **Download the latest TrackerD from the dragino github: [[https:~~/~~/github.com/dragino/TrackerD>>url:https://github.com/dragino/TrackerD]]**
Xiaoling 19.2 1016
Xiaoling 50.2 1017 Put the Library in the TrackerD directory into the libraries file in the Arduino directory:
Xiaoling 19.2 1018
1019
Xiaoling 50.2 1020 [[image:1664503752288-974.png]]
Xiaoling 19.2 1021
Xiaoling 50.2 1022
1023
Xiaoling 19.4 1024 == 6.2 Source Code ==
1025
1026
Xiaoling 51.16 1027 * (% style="color:blue" %)**Open the example in the TrackerD file, please select the correct port in the IDE, as shown below:**
Xiaoling 19.2 1028
Xiaoling 50.2 1029 [[image:1664503794261-827.png]]
Xiaoling 19.2 1030
1031
1032
Xiaoling 51.16 1033 * (% style="color:blue" %)**Click to upload**
Xiaoling 19.2 1034
Xiaoling 50.2 1035 [[image:1664503808294-336.png]]
Xiaoling 19.2 1036
1037
1038
Xiaoling 51.16 1039 * (% style="color:blue" %)**Check the result, if the upload is successful, as shown below, open the serial port to view the data**
Xiaoling 19.2 1040
Xiaoling 50.2 1041 [[image:1664503824081-592.png]] [[image:1664503831430-500.png]]
Xiaoling 19.2 1042
1043
1044
Xiaoling 18.2 1045 = 7.  FAQ =
Xiaoling 15.2 1046
1047
Xiaoling 18.2 1048 == 7.1 How to change the LoRa Frequency Bands/Region? ==
Edwin Chen 14.1 1049
1050
Xiaoling 51.14 1051 User can follow the introduction for [[how to upgrade image>>||anchor="H5.UploadFirmware"]]. When download the images, choose the required image file for download.
Edwin Chen 14.1 1052
Edwin Chen 12.1 1053
Edwin Chen 2.1 1054
Xiaoling 18.2 1055 == 7.2 What is the pin mapping for the USB program cable? ==
Edwin Chen 2.1 1056
Xiaoling 7.1 1057
Xiaoling 18.2 1058 [[image:1664499635206-262.png]]
Xiaoling 7.1 1059
1060
1061
Xiaoling 51.28 1062 (% border="1.5" cellspacing="3" style="background-color:#ffffcc; color:green; width:314px" %)
Xiaoling 51.27 1063 |=(% style="width: 118px;" %)**Pin**|=(% style="width: 67px;" %)**Color**|=(% style="width: 123px;" %)**USB Pin**
Xiaoling 18.2 1064 |(% style="width:118px" %)A4,B4,A9,B9|(% style="width:67px" %)Red|(% style="width:123px" %)VCC
1065 |(% style="width:118px" %)A7,B7|(% style="width:67px" %)White|(% style="width:123px" %)D- (N/A)
1066 |(% style="width:118px" %)A6,B6|(% style="width:67px" %)Green|(% style="width:123px" %)D+(N/A)
1067 |(% style="width:118px" %)A1,B1,A12,B12|(% style="width:67px" %)Black|(% style="width:123px" %)GND
1068 |(% style="width:118px" %)A5|(% style="width:67px" %)Purple|(% style="width:123px" %)MTDC/GOIO13
1069 |(% style="width:118px" %)B5|(% style="width:67px" %)Blue|(% style="width:123px" %)MTDC/GPIO12
1070 |(% style="width:118px" %)A8|(% style="width:67px" %)Yellow|(% style="width:123px" %)MTMS/GPIO14
1071 |(% style="width:118px" %)B8|(% style="width:67px" %)Grey|(% style="width:123px" %)MTDO/GPIO15
Xiaoling 7.1 1072
Xiaoling 18.2 1073 = 8.  Order Info =
Xiaoling 7.1 1074
1075
Xiaoling 15.6 1076 Part Number: (% style="color:blue" %)**TrackerD-XXX**
Edwin Chen 8.1 1077
Xiaoling 15.6 1078 (% style="color:blue" %)**XXX**(%%): The default frequency band
Edwin Chen 8.1 1079
Xiaoling 15.6 1080 * (% style="color:red" %)**EU433**(%%): Default frequency band EU433
1081 * (% style="color:red" %)**EU868**(%%): Default frequency band EU868
1082 * (% style="color:red" %)**IN865**(%%): Default frequency band IN865
1083 * (% style="color:red" %)**KR920**(%%): Default frequency band KR920
1084 * (% style="color:red" %)**AS923**(%%): Default frequency band AS923
1085 * (% style="color:red" %)**AU915**(%%): Default frequency band AU915
1086 * (% style="color:red" %)**US915**(%%): Default frequency band US915
Xiaoling 15.2 1087
Xiaoling 84.2 1088
Xiaoling 18.2 1089 = 9.  Packing Info =
1090
1091
Xiaoling 51.30 1092 (% style="color:#037691" %)**Package Includes**:
Edwin Chen 8.1 1093
Xiaoling 50.3 1094 * TrackerD LoRaWAN GPS/BLE Tracker x 1
1095 * USB recharge & program cable x 1
Edwin Chen 12.1 1096
Xiaoling 51.30 1097 (% style="color:#037691" %)**Dimensions and Weight**:
Edwin Chen 12.1 1098
Xiaoling 50.3 1099 * Device Size: 85 x 48 x 15 cm
1100 * Weight: 50g
Xiaoling 15.6 1101
Xiaoling 84.2 1102
Xiaoling 18.2 1103 = 10. Support =
1104
Xiaoling 50.3 1105
Xiaoling 18.2 1106 * Support is provided Monday to Friday, from 09:00 to 18:00 GMT+8. Due to different timezones we cannot offer live support. However, your questions will be answered as soon as possible in the before-mentioned schedule.
Xiaoling 51.28 1107 * Provide as much information as possible regarding your enquiry (product models, accurately describe your problem and steps to replicate it etc) and send a mail to [[support@dragino.com>>url:file:///D:/市场资料/说明书/LoRa/LT系列/support@dragino.com]].
Xiaoling 18.2 1108
Xiaoling 84.2 1109
Xiaoling 18.2 1110 = 11.  Reference =
1111
1112
Edwin Chen 12.1 1113 * [[**Firmware in Bin format**>>https://www.dropbox.com/sh/733s8xlwahhqg1d/AABxDz80lBVX_to8zNuUQWFja?dl=0]]
1114 * **[[Source Code>>https://github.com/dragino/TrackerD]] **
1115 * [[**Hardware Source**>>https://www.dropbox.com/sh/orwoy6cecb89m4e/AAD37sRuUrvKsHgAJxuVTkB5a?dl=0]]
Xiaoling 51.28 1116
Xiaoling 68.2 1117