Version 80.1 by Edwin Chen on 2022/10/22 00:15

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
100 == 1.3  Features ==
101
102
103 * LoRaWAN 1.0.3 Class A
104 * ESP32 PICO D4
105 * SX1276/78 Wireless Chip
Xiaoling 51.31 106 * Arduino IDE Compatible
Xiaoling 19.2 107 * Open source hardware / software
108 * Regular/ Real-time GPS,BLE,WIFI tracking
109 * Built-in3 axis accelerometer (LIS3DH)
110 * Humidity / temperature sensor : GXCAS Technology GXHT3X
111 * Motion sensing capability
112 * Power Monitoring
113 * Charging circuit via USB port
114 * 1000mA Li-on Battery power
115 * Tri-color LED, Alarm button
116 * Datalog
117
118 == 1.4  Applications ==
119
120
Edwin Chen 12.1 121 * Logistics and Supply Chain Management
122 * Human tracking
123
Xiaoling 19.3 124 = 2.1 Use TrackerD =
Xiaoling 19.2 125
Xiaoling 50.2 126
Xiaoling 19.3 127 == 2.1 How it works? ==
Xiaoling 19.2 128
Xiaoling 19.3 129
Xiaoling 19.2 130 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.
131
132
Xiaoling 50.2 133
Xiaoling 19.3 134 == 2.2 Quick guide to connect to LoRaWAN server ==
Xiaoling 19.2 135
136
Xiaoling 50.2 137 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 138
139
Xiaoling 50.2 140 [[image:1664501652064-326.png]]
Xiaoling 19.2 141
Xiaoling 50.2 142
143
Xiaoling 19.2 144 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:
145
146
Xiaoling 50.2 147 (% style="color:blue" %)**Step 1**:(%%) Create a device in TTN V3 with the OTAA keys from TrackerD.
148
Xiaoling 19.2 149 Each TrackerD is shipped with a sticker with the default device EUI as below:
150
Xiaoling 51.3 151
Xiaoling 50.2 152 [[image:1664501677253-891.png]]
Xiaoling 19.2 153
154
155 Input these keys to their LoRaWAN Server portal. Below is TTN V3 screen shot:
156
157
Xiaoling 50.2 158 **__Add APP EUI in the application:__**
Xiaoling 19.2 159
160
Xiaoling 50.2 161 [[image:1664501711466-918.png]]
Xiaoling 19.2 162
163
164
Xiaoling 50.2 165 [[image:1664501721248-725.png]]
Xiaoling 19.2 166
167
Xiaoling 50.2 168 [[image:1664501734705-405.png]]
Xiaoling 19.2 169
170
171
Xiaoling 50.2 172 **__Add APP KEY and DEV EUI:__**
Xiaoling 19.2 173
174
Xiaoling 50.2 175 [[image:1664501784668-703.png]]
Xiaoling 19.2 176
177
178
179
Xiaoling 50.2 180 (% style="color:blue" %)**Step 2**:(%%) Power on TrackerD by using the on board switch.
Xiaoling 19.2 181
Xiaoling 50.2 182
183 (% 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.
184
185
Xiaoling 68.4 186
Xiaoling 66.3 187 == 2.3  Positioning Mode(SMOD) ==
Xiaoling 50.2 188
Xiaoling 66.3 189
Edwin Chen 55.1 190 Users can set TrackerD to different Positioning Mode for different applications. Below mod are supported.
Xiaoling 19.2 191
Edwin Chen 55.1 192 * (% style="color:#037691" %)**GPS ONLY(Factory Settings):    **(%%)only get and uplink GPS location info.
193 * (% style="color:#037691" %)**BLE ONLY:              **(%%)Only obtain iBeacon info via BLE and uplink. Design for Indoor tracking.
194 * (% 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 195
Edwin Chen 55.1 196 Users can switch modes by [[changing SMOD>>||anchor="H3.2.7SetPositioningMode"]].
Xiaoling 19.2 197
Xiaoling 50.2 198
Xiaoling 19.2 199
Xiaoling 66.3 200 == 2.4  Uplink Payload ==
Xiaoling 19.2 201
202
Xiaoling 66.3 203 === 2.4.1 Uplink FPORT~=5, Device Status ===
Xiaoling 66.2 204
Xiaoling 66.3 205
Edwin Chen 74.1 206 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 207
Edwin Chen 76.1 208 Use can also get the Device Status uplink through the downlink command: **Downlink:  0x2301**
Xiaoling 19.2 209
Edwin Chen 76.1 210
Xiaoling 66.2 211 (% border="1.5" style="background-color:#ffffcc; color:green; width:520px" %)
212 |=(% 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
213 |=(% 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 214
Xiaoling 66.2 215 [[image:1665301570342-765.png]]
216
217
Xiaoling 74.2 218 (% style="color:#037691" %)**Example of Device Status:**(%%) 13014001FF0FA24002
Xiaoling 19.2 219
Xiaoling 74.2 220 (% style="color:#037691" %)**Sensor Model:** (%%) For TrackerD,this value is 0x13
Xiaoling 19.2 221
Xiaoling 74.2 222 (% style="color:#037691" %)**Firmware Version: **(%%) 0x0140,Means:v1.4.0 version
Xiaoling 50.2 223
Xiaoling 74.2 224 (% style="color:#037691" %)**Frequency Band**:
Edwin Chen 55.1 225
226 *0x01: EU868
227
228 *0x02: US915
229
230 *0x03: IN865
231
232 *0x04: AU915
233
234 *0x05: KZ865
235
236 *0x06: RU864
237
238 *0x07: AS923
239
240 *0x08: AS923-1
241
242 *0x09: AS923-2
243
244 *0x0a: AS923-3
245
Xiaoling 74.2 246 Sub- Band:value 0x00~~0x08(only forAU915,US915,Others are 0xFF)
Edwin Chen 55.1 247
Xiaoling 74.2 248 (% style="color:#037691" %)**BAT:**(%%) shows the battery voltage for TrackerD.
Edwin Chen 55.1 249
250
Xiaoling 74.2 251 (% style="color:#037691" %)**Ex1:**(%%) 0x0FA2 = 4002mV
252
Edwin Chen 55.1 253 Use can also get the Device Status uplink through the downlink command:
254
255
Xiaoling 66.2 256
Edwin Chen 75.1 257 (% style="color:#037691" %)**SMOD Field (total 1 byte)**(%%):0x40
Xiaoling 74.2 258
Edwin Chen 75.1 259 (% border="1.5" style="background-color:#ffffcc; color:green; width:420px" %)
260 |(% style="width:75px" %)**Size(bit)**|(% style="width:64px" %)2bits|(% style="width:137px" %)2bit|(% style="width:142px" %)4bit
261 |(% style="width:75px" %)**Value**|(% style="width:64px" %)SMOD|(% style="width:137px" %)GPS_Settings|(% style="width:142px" %)BLE_Settings
Xiaoling 74.2 262
Edwin Chen 75.1 263 (% style="color:blue" %)** SMOD:**
Xiaoling 74.2 264
Edwin Chen 75.1 265 (% style="color:red" %)** 1 :** (%%) GPS ONLY
Xiaoling 74.2 266
Edwin Chen 75.1 267 (% style="color:red" %)** 2 :** (%%) BLE ONLY
Xiaoling 74.2 268
Edwin Chen 75.1 269 (% style="color:red" %)** 3 :**  (%%) GPS/BLE Hybrid
Xiaoling 74.2 270
271
Edwin Chen 75.1 272 (% style="color:blue" %)** GPS_MOD: Define how to send GPS payload**
Xiaoling 74.2 273
Edwin Chen 75.1 274 (% style="color:red" %)** 0 : ** (%%) Enable uploading on-board Temperature and humidity values
Xiaoling 74.2 275
Edwin Chen 75.1 276 (% style="color:red" %)** 1 :** (%%) Disable uploading on-board Temperature and humidity values
Xiaoling 74.2 277
278
Edwin Chen 75.1 279 (% style="color:blue" %)** BLE_Settings:**
Xiaoling 74.2 280
Edwin Chen 75.1 281 (% style="color:red" %)** 1: ** (%%) BLE Positioning with Strongest iBeacon
Xiaoling 74.2 282
283
284
Edwin Chen 75.1 285 (% style="color:#037691" %)**Status Field (total 1 byte)**(%%):  0x02
Xiaoling 74.2 286
Xiaoling 78.3 287 (% border="1.5" style="background-color:#ffffcc; color:green; width:417px" %)
288 |(% 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
289 |(% 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 290
Xiaoling 66.3 291 === 2.4.2 Uplink FPORT~=2, Realtime GNSS Positioning + Temperature & Humidity ===
Edwin Chen 55.1 292
293
Edwin Chen 77.1 294 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 295
296
Xiaoling 51.24 297 (% border="1.2" cellspacing="3" style="background-color:#ffffcc; color:green; width:480px" %)
Xiaoling 51.23 298 |=(% scope="row" style="width: 50px;" %)(((
Xiaoling 51.21 299 **Size(bytes)**
Edwin Chen 59.2 300 )))|(% style="width:60px" %)4|(% style="width:70px" %)4|(% style="width:80px" %)2|(% style="width:73px" %)1|(% style="width:40px" %)(((
301 2
Xiaoling 51.24 302 )))|(% style="width:87px" %)(((
Edwin Chen 59.2 303 2
Xiaoling 19.2 304 )))
Xiaoling 51.18 305 |=(% style="width: 69px;" %)**Value**|(% style="width:76px" %)[[Latitude>>||anchor="HLocationinfo:"]]|(% style="width:87px" %)[[Longitude>>||anchor="HLocationinfo:"]]|(% style="width:76px" %)(((
Xiaoling 51.5 306 [[Alarm & BAT>>||anchor="HAlarm26BAT:"]]
Edwin Chen 59.2 307 )))|(% style="width:73px" %)[[FLAG>>||anchor="HFLAG:"]]|(% style="width:40px" %)[[Hum>>||anchor="HHum:"]]|(% style="width:87px" %)[[Tem>>||anchor="HTem:"]]
Xiaoling 19.2 308
Xiaoling 66.2 309 [[image:1665301636888-168.png]]
Xiaoling 19.2 310
Xiaoling 50.2 311
Xiaoling 51.24 312 ==== (% style="color:blue" %)**Alarm & BAT:**(%%) ====
Xiaoling 19.2 313
Xiaoling 51.24 314 (% border="1.2" cellspacing="3" style="background-color:#ffffcc; color:green; width:250px" %)
315 |=(% scope="row" style="width: 50px;" %)**Size(bit)**|(% style="width:50px" %)1 bit|(% style="width:80px" %)1bit|(% style="width:50px" %)14bits
Xiaoling 51.22 316 |=(% style="width: 72px;" %)**Value**|(% style="width:67px" %)reserve|(% style="width:118px" %)Alarm Indicate|(% style="width:63px" %)[[BAT>>||anchor="HBAT:"]] 
Xiaoling 19.2 317
Xiaoling 51.24 318 ==== (% style="color:blue" %)**FLAG:**(%%) ====
319
320 (% border="1.2" cellspacing="3" style="background-color:#ffffcc; color:green; width:250px" %)
Edwin Chen 59.3 321 |=(% scope="row" style="width: 50px;" %)**Size(bit)**|(% style="width:50px" %)2bits|(% style="width:50px" %)1bit
322 |=(% style="width: 79px;" %)**Value**|(% style="width:55px" %)[[MOD>>||anchor="H3.2.7SetPositioningMode"]]|(% style="width:47px" %)[[LON>>||anchor="HLON:"]]
Xiaoling 19.2 323
Xiaoling 51.11 324 **Example:** Payload: 0x02863D68 FAC29BAF 4B45 60 0202 011A 
Xiaoling 19.2 325
326
Xiaoling 51.24 327 ==== (% style="color:blue" %)**Location info:**(%%) ====
Xiaoling 19.2 328
Xiaoling 51.11 329 * Latitude: 02863D68  ⇒  //if (0x//02863D68//& 0x80000000 = 0 )~://  //value = 02863D68 /1000000 = 42.351976//
330 * Longitude: FAC29BAF  ⇒ //if (0x//FAC29BAF// & 0x80000000 = 1 )~://  //value = (0x//FAC29BAF// – 0x 100000000)/1000000 =//-87.9094//57//
Xiaoling 19.2 331
Xiaoling 51.9 332 (% style="color:red" %)**Important note:**
Xiaoling 19.2 333
Xiaoling 50.2 334 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 335
Edwin Chen 59.3 336 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 337
338
Xiaoling 50.2 339 [[image:1664502116362-706.png]]
Xiaoling 19.2 340
341
Edwin Chen 59.3 342 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 343
344 [[image:1664502166010-515.png]]
345
346
347
Xiaoling 51.24 348 ==== (% style="color:blue" %)**Alarm:**(%%) ====
Xiaoling 50.2 349
Xiaoling 74.9 350 **Example: ** 0x4B & 0x40 >> 6 = 0x01
Xiaoling 19.2 351
352
Xiaoling 51.24 353 ==== (% style="color:blue" %)**BAT:**(%%) ====
Xiaoling 51.6 354
Xiaoling 74.9 355 **Example: ** 0x4B45 & 0x3FFF ⇒ 2885 (mV).
Xiaoling 51.6 356
Xiaoling 51.27 357 (((
Edwin Chen 59.3 358 The battery info shows the battery voltage, User can use the below mapping to indicate the battery in percentage: \
Xiaoling 51.27 359 )))
Xiaoling 51.6 360
Xiaoling 50.4 361 * > 4.0v :  80% ~~ 100%
362 * 3.85v ~~3.99v:  60% ~~ 80%
363 * 3.70v ~~ 3.84v:  40% ~~ 60%
364 * 3.40v ~~ 3.69v:  20% ~~ 40%
365 * < 3.39v:  0~~20%
Xiaoling 19.2 366
Xiaoling 74.3 367 ==== (% style="color:blue" %)**MOD:**(%%) ====
368
Edwin Chen 79.1 369 **Example: ** (0x60>>6) & 0x3f =1
Xiaoling 74.10 370
Xiaoling 74.7 371 **Set the format of GPS data uplink link:**
Xiaoling 74.3 372
Xiaoling 74.7 373 (% style="color:#037691" %)**0x00:** (%%) Enable uploading on-board Temperature and humidity values
Xiaoling 74.9 374 (% style="color:#037691" %)**0x01: ** (%%) Disable uploading on-board Temperature and humidity values
Xiaoling 74.3 375
376
Xiaoling 74.7 377 **Set the format of BLE data uplink link:**
Xiaoling 74.3 378
Xiaoling 74.7 379 (% style="color:#037691" %)**0x01: ** (%%) BLE Positioning with Strongest iBeacon
380
381
Xiaoling 74.10 382 ==== (% style="color:blue" %)**LON:**(%%) ====
Xiaoling 74.9 383
Xiaoling 74.10 384 **Example:** (0x60>>5) & 0x01=1.
Xiaoling 74.9 385
Xiaoling 51.4 386 Enable/Disable LED activity for uplink
Xiaoling 19.2 387
Xiaoling 51.27 388 (((
Xiaoling 74.7 389 (% style="color:#037691" %)**0x00:**  (%%) Disable LED indicator.
Xiaoling 51.27 390 )))
Xiaoling 19.2 391
Xiaoling 51.27 392 (((
Xiaoling 74.7 393 (% style="color:#037691" %)**0x01:**  (%%) Enable LED indicator (Default Value)
Xiaoling 51.27 394 )))
Xiaoling 19.2 395
396
Xiaoling 74.9 397
Xiaoling 51.24 398 ==== (% style="color:blue" %)**Hum:**(%%) ====
Xiaoling 19.2 399
Xiaoling 51.4 400 0202 = //if (0x0202 & 0x8000 = 0 ):  value =// 0x0202 / 100 = +514 ⇒ 51.4 degree
Xiaoling 19.2 401
402
Xiaoling 51.24 403 ==== (% style="color:blue" %)**Tem:**(%%) ====
Xiaoling 19.2 404
Xiaoling 51.9 405 011A =if (0x011A & 0x8000 = 1 ):  value =( 0x011A - 0x10000)/10(dec) ⇒ -//28.2 degree//
Xiaoling 51.4 406
407
Xiaoling 66.2 408
Xiaoling 66.3 409 === 2.4.3  Uplink FPORT~=3, Realtime GNSS Positioning (Default Mode) ===
Xiaoling 51.4 410
Xiaoling 66.2 411
Edwin Chen 78.1 412 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 413
414
Edwin Chen 59.2 415 (% border="1.2" cellspacing="3" style="background-color:#ffffcc; color:green; width:480px" %)
416 |=(% scope="row" style="width: 50px;" %)(((
417 **Size(bytes)**
418 )))|(% style="width:60px" %)4|(% style="width:70px" %)4|(% style="width:80px" %)2|(% style="width:73px" %)1
419 |=(% style="width: 69px;" %)**Value**|(% style="width:76px" %)[[Latitude>>||anchor="HLocationinfo:"]]|(% style="width:87px" %)[[Longitude>>||anchor="HLocationinfo:"]]|(% style="width:76px" %)(((
420 [[Alarm & BAT>>||anchor="HAlarm26BAT:"]]
421 )))|(% style="width:73px" %)[[FLAG>>||anchor="HFLAG:"]]
Xiaoling 50.2 422
Xiaoling 66.2 423 (% class="wikigeneratedid" %)
424 [[image:1665301687277-443.png]]
425
426
427
Xiaoling 66.3 428 === 2.4.4  Uplink FPORT~=4, History GNSS Positioning ===
Edwin Chen 59.2 429
Xiaoling 66.2 430
Xiaoling 78.2 431 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 432
Xiaoling 66.2 433
Xiaoling 66.3 434 (% style="color:red" %)**Note for this mode:**
Edwin Chen 59.2 435
Edwin Chen 59.3 436 * a) TrackerD will do an ACK check for data records sending to make sure every data arrive server.
Xiaoling 66.3 437 * 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 438 * 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 439
Edwin Chen 59.3 440 The payload is 15 bytes, as below.
Xiaoling 50.2 441
Xiaoling 66.2 442 (% border="1.5" style="background-color:#ffffcc; color:green; width:520px" %)
443 |=(% scope="row" %)(((
444 **Size(bytes)**
445 )))|4|4|2|1|1|1|1|1
Xiaoling 66.3 446 |=**Value**|Latitude|Longitude|Year|Month|Day|Hous|Min|Sen
Edwin Chen 59.3 447
Xiaoling 68.2 448 [[image:image-20221009160309-2.png]]
Edwin Chen 59.3 449
Xiaoling 66.2 450
451
Xiaoling 66.3 452 === 2.4.5  Uplink FPORT~=6, BLE Positioning with Strongest iBeacon ===
Edwin Chen 59.3 453
Edwin Chen 79.1 454 TrackerD supports BLE scans for indoor positioning. User can set **SMOD** to **BLE pure** or **GPS/BLE hybrid** so TrackerD will scan BLE iBeacon before each uplink.
Edwin Chen 59.3 455
Edwin Chen 79.1 456
Xiaoling 51.25 457 (% border="1.5" cellspacing="3" style="background-color:#ffffcc; color:green; width:450px" %)
Xiaoling 51.26 458 |=(% scope="row" style="width: 60px;" %)(((
Xiaoling 51.24 459 **Size(bytes)**
Xiaoling 51.26 460 )))|(% 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 461 |=(% style="width: 50px;" %)**Value**|(% style="width:44px" %)[[UUID>>||anchor="HLocationinfo:"]]|(% style="width:61px" %)(((
Xiaoling 51.8 462 iBeacon MAJOR
Xiaoling 51.11 463 )))|(% style="width:63px" %)(((
464 iBeacon MINOR
Xiaoling 50.2 465 )))|(% style="width:71px" %)(((
Xiaoling 51.8 466 iBeacon Measured Power
Xiaoling 51.11 467 )))|(% style="width:50px" %)(((
Xiaoling 51.8 468 iBeacon RSSI
Xiaoling 51.11 469 )))|(% style="width:47px" %)(((
Xiaoling 51.8 470 [[Alarm & BAT>>||anchor="HAlarm26BAT:"]]
Xiaoling 51.11 471 )))|(% style="width:15px" %)[[FLAG>>||anchor="HFLAG:"]]
Xiaoling 19.2 472
Xiaoling 50.2 473 [[image:1664502425687-834.png]]
Xiaoling 19.2 474
475
Edwin Chen 79.1 476 * (% style="color:#037691" %)**BAT: ** (%%) Ex1:0x4B45 & 0x3FFF ⇒ 3901 (mV).
Xiaoling 51.9 477 * (% style="color:#037691" %)**MODE:   **(%%)Define the payload format.
478 * (% style="color:#037691" %)**UUID:     **(%%)The uuid from the strongest iBeacon.
479 * (% style="color:#037691" %)**MAJOR:** (%%) The MAJOR from the strongest iBeacon.
480 * (% style="color:#037691" %)**MINOR:**  (%%)The MAJOR from the strongest iBeacon.
481 * (% style="color:#037691" %)**Measured Power: ** (%%) The Measured Power from the strongest iBeacon.
482 * (% style="color:#037691" %)**RSSI:  ** (%%) The RSSI from the strongest iBeacon.
Xiaoling 19.2 483
Xiaoling 68.3 484 === 2.4.6  Add Payload format in TTN V3 ===
Xiaoling 19.3 485
Xiaoling 50.2 486
Xiaoling 19.2 487 In TTN V3, use can add a custom payload so it shows friendly.
488
Xiaoling 51.9 489 In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**
Xiaoling 19.2 490
491
Xiaoling 50.2 492 [[image:1664502649601-895.png]]
493
Xiaoling 51.9 494
Xiaoling 78.7 495 Add the decoder from this link: 
Xiaoling 19.2 496
Xiaoling 78.7 497 [[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 498
499 Save the change the uplink message will be parsed. As below:
500
Xiaoling 50.2 501 [[image:1664502676891-606.png]]
Xiaoling 19.2 502
503
504
Xiaoling 66.3 505 == 2.5 Integrate with Datacake ==
Xiaoling 19.2 506
507
Xiaoling 51.27 508 (((
Xiaoling 19.2 509 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.
Xiaoling 51.27 510 )))
Xiaoling 19.2 511
Xiaoling 51.27 512 (((
Xiaoling 50.2 513 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 51.27 514 )))
Xiaoling 19.2 515
516
Xiaoling 50.2 517 [[image:1664502695771-538.png]]
Xiaoling 19.2 518
Xiaoling 50.2 519
520
Xiaoling 66.3 521 == 2.6 Integrate with Tago ==
Xiaoling 19.2 522
523
Xiaoling 51.27 524 (((
Xiaoling 19.2 525 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.
Xiaoling 51.27 526 )))
Xiaoling 19.2 527
Xiaoling 51.27 528 (((
Xiaoling 19.2 529 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]]
Xiaoling 51.27 530 )))
Xiaoling 19.2 531
532
Xiaoling 50.2 533 [[image:1664502715371-321.png]]
Xiaoling 19.2 534
535
536
Xiaoling 68.4 537 == 2.7  Datalog Feature ==
Edwin Chen 56.1 538
Xiaoling 68.4 539
Edwin Chen 78.1 540 total 273 entries,by default,
Edwin Chen 56.1 541
Xiaoling 78.4 542 User can set [[PNACKMD=1>>||anchor="H3.2.10A0A0AutoSendNone-ACKmessages"]], to enable Datalog feature.
Xiaoling 68.4 543
Edwin Chen 71.1 544 Example use case.
Xiaoling 68.4 545
Edwin Chen 72.1 546 [[image:image-20221009234703-2.png||height="328" width="899"]]
Edwin Chen 71.1 547
548
Edwin Chen 72.1 549 [[image:image-20221009234629-1.png||height="390" width="577"]]
Edwin Chen 71.1 550
551
552
Xiaoling 66.3 553 == 2.8 Alarm Mode ==
Xiaoling 19.2 554
555
Xiaoling 51.27 556 (((
Xiaoling 51.11 557 User can push the (% style="color:red" %)**RED button**(%%) by more than 5 seconds to enter Alarm Mode.
Xiaoling 51.27 558 )))
Xiaoling 19.2 559
560
Xiaoling 51.27 561 (((
Xiaoling 51.11 562 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.
Xiaoling 51.27 563 )))
Xiaoling 19.2 564
565
Xiaoling 51.27 566 (((
Xiaoling 19.2 567 Two ways to exit alarm mode:
Xiaoling 51.27 568 )))
Xiaoling 19.2 569
570 * Server send a downlink command to exit.
571 * User fast press the RED button 10 times.
572
Xiaoling 51.27 573 (((
Xiaoling 51.11 574 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 575 )))
Xiaoling 19.2 576
577
Xiaoling 50.2 578
Xiaoling 66.3 579 == 2.9 Transport Mode ==
Xiaoling 19.2 580
581
Edwin Chen 57.1 582 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 583
Edwin Chen 55.1 584
Xiaoling 68.4 585
Xiaoling 66.3 586 == 2.10 LED Status ==
Xiaoling 19.2 587
588
Xiaoling 51.26 589 (% border="1.5" style="background-color:#ffffcc; color:green; width:500px" %)
Xiaoling 51.27 590 |=(% style="width: 150px;" %)**Event**|=(% style="width: 200px;" %)**Action**|=(% style="width: 150px;" %)**AT+LON to control on/off**
Xiaoling 51.11 591 |(% 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
592 |(% style="width:157px" %)**Join request**|(% style="width:271px" %)(% style="color:green" %)**Green** (%%)led fast blink once (200ms)|(% style="width:202px" %)Yes
593 |(% style="width:157px" %)**Join Success**|(% style="width:271px" %)(% style="color:green" %)**Green**(%%) led on 5 second|(% style="width:202px" %)N/A
594 |(% style="width:157px" %)**Fixing Location**|(% style="width:271px" %)(% style="color:blue" %)**BLUE **(%%)blinks 200ms per second|(% style="width:202px" %)Yes
595 |(% style="width:157px" %)**Fixed and uplink**|(% style="width:271px" %)(% style="color:green" %)**GREEN ***(%%)***blinks twice (200ms per blink)**|(% style="width:202px" %)Yes
596 |(% style="width:157px" %)**Fail Fix and uplink**|(% style="width:271px" %)(% style="color:red" %)**RED **(%%)blinks twice (200ms per blink)|(% style="width:202px" %)Yes
597 |(% style="width:157px" %)**Enter Alarm mode**|(% style="width:271px" %)(% style="color:red" %)**RED **(%%)on for 3 seconds|(% style="width:202px" %)Yes
598 |(% style="width:157px" %)**Uplink under Alarm**|(% style="width:271px" %)(% style="color:red" %)**RED **(%%)on for 1 second|(% style="width:202px" %)Yes
599 |(% style="width:157px" %)**Exit Alarm**|(% style="width:271px" %)(% style="color:blue" %)**BLUE **(%%)led on 5 second|(% style="width:202px" %)Yes
600 |(% style="width:157px" %)**Get Downlink**|(% style="width:271px" %)(% style="color:green" %)**GREEN**(%%) led on 1 second|(% style="width:202px" %)Yes
601 |(% style="width:157px" %)**Movement Detect**|(% style="width:271px" %)(% style="color:red" %)**RED **(%%)led on 500ms|(% style="width:202px" %)N/A
Xiaoling 19.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 66.3 624 == 2.12 USB Port Function ==
Xiaoling 19.2 625
Xiaoling 50.2 626
Xiaoling 19.2 627 The USB interface of TrackerD has below functions:
628
629 * Power on the device
630 * Recharge the battery
Xiaoling 51.11 631 * [[Configure Device>>||anchor="H3.ConfigureTrackerDviaATcommandorLoRaWANdownlink"]]
632 * [[Upgrade Firmware>>||anchor="H5.UploadFirmware"]]
Xiaoling 19.2 633
Xiaoling 19.3 634 = 3. Configure TrackerD via AT command or LoRaWAN downlink =
Xiaoling 19.2 635
636
637 User can configure TrackerD via AT Command or LoRaWAN Downlink.
638
Xiaoling 51.13 639 LoRaWAN Downlink instruction for different platforms:  [[IoT LoRaWAN Server>>doc:Main.WebHome]]
Xiaoling 19.2 640
641
Xiaoling 50.2 642
Xiaoling 19.3 643 == 3.1 Access AT Command ==
Xiaoling 19.2 644
645
Xiaoling 50.2 646 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 647
648
Xiaoling 50.2 649 [[image:1664502999401-486.png]]
650
651
Xiaoling 51.11 652 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 653
654
Xiaoling 50.2 655 [[image:1664503022490-662.png]]
Xiaoling 19.2 656
657
658
Xiaoling 50.2 659 [[image:1664503035713-500.png]]
Xiaoling 19.2 660
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
Edwin Chen 80.1 898 === 3.2.11  Set BLEMASK to filter BLE iBeacon ===
899
900 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.
901
902 Note: BLEMASK range is 6 ~~ 10 bytes. If AT+BLEMASK < 6 bytes, BLEMASK will be disabled.
903
904 (% style="color:blue" %)**AT Command:**(%%)
905 AT+BLEMASK=123456     ~/~/ Set BLEMASK = 123456
906 AT+BLEMASK=0  ~/~/ disable BLEMASK
907
908
909 (% style="color:blue" %)**Downlink Payload: (Prefix : 0xA5)**(%%)
910 Example:
911 0xA5010203040506    ~/~/ Set BLEMASK to 123456
912
913
914
Xiaoling 19.4 915 = 4. Setting for Different Scenarios =
Xiaoling 19.2 916
917
918
Xiaoling 19.4 919 = 5. Upload Firmware =
Xiaoling 19.2 920
Xiaoling 19.4 921
922 == 5.1 Firmware Change Log ==
923
Xiaoling 50.2 924
Xiaoling 19.2 925 **[[See this link>>url:https://github.com/dragino/TrackerD]]**
926
927
Xiaoling 50.2 928
Xiaoling 19.4 929 == 5.2 How to upgrade firmware ==
Xiaoling 19.2 930
931
Xiaoling 50.2 932 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 933
934
Xiaoling 50.2 935 (% style="color:blue" %)**Step1:  **(%%)Connect TrackerD and PC via USB cable shipped with TrackerD.
Xiaoling 19.2 936
Xiaoling 50.2 937
938 (% style="color:blue" %)**Step2:** (%%) Install CH9102 driver in the PC.
939
Xiaoling 19.2 940 After installation of the driver and plug in TrackerD, user should be able to see com port in PC's device manager.
941
942
Xiaoling 51.28 943 (% 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 944
945
Xiaoling 50.2 946 (% style="color:blue" %)**Step4:** (%%) Run Flash Download Tool and configure chip type to ESP32
Xiaoling 19.2 947
948
Xiaoling 50.2 949 [[image:1664503563660-578.png]]
Xiaoling 19.2 950
951
Xiaoling 50.2 952 [[image:1664503574618-659.png]]
Xiaoling 19.2 953
Xiaoling 50.2 954
955 (% style="color:blue" %)**Step5:** (%%) Select the firmware file (.bin format), com port and proper SPI configure. Clink Start. Bin file location:
956
Edwin Chen 73.1 957 [[https:~~/~~/github.com/dragino/TrackerD/releases>>https://github.com/dragino/TrackerD/releases]]
Xiaoling 19.2 958
959
960 Users need to use below files:
961
962 boot_app0.bin @0e000
963
964 ESP_LORA-eeprom-class.bin @ 0x10000
965
966
Xiaoling 50.2 967 [[image:1664503593459-435.png]]
Xiaoling 19.2 968
969
970
Xiaoling 50.2 971 After upgrade finish, it will show finish as below:
Xiaoling 19.2 972
Xiaoling 50.2 973 [[image:1664503611848-385.png]]
Xiaoling 19.2 974
975
Xiaoling 50.2 976
Xiaoling 19.4 977 = 6. Developer Guide =
Xiaoling 19.2 978
979
Xiaoling 19.4 980 == 6.1 Compile Source Code ==
981
982
983 === 6.1.1 Set up ARDUINO compile environment ===
984
985
Xiaoling 51.28 986 * **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 987
Xiaoling 51.15 988 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 989
990
Xiaoling 50.2 991 [[image:1664503635019-941.png]]
Xiaoling 19.2 992
Xiaoling 50.2 993
Xiaoling 68.4 994
Xiaoling 51.28 995 * (% style="color:#037691" %)**Go to tools ~-~-> Boards ~-~-> Boards Manager**,(%%) **find the esp32 information and install it.**
Xiaoling 19.2 996
Xiaoling 50.2 997 [[image:1664503715811-892.png]]
Xiaoling 19.2 998
999
1000
Xiaoling 51.28 1001 * **Download the latest TrackerD from the dragino github: [[https:~~/~~/github.com/dragino/TrackerD>>url:https://github.com/dragino/TrackerD]]**
Xiaoling 19.2 1002
Xiaoling 50.2 1003 Put the Library in the TrackerD directory into the libraries file in the Arduino directory:
Xiaoling 19.2 1004
1005
Xiaoling 50.2 1006 [[image:1664503752288-974.png]]
Xiaoling 19.2 1007
Xiaoling 50.2 1008
1009
Xiaoling 19.4 1010 == 6.2 Source Code ==
1011
1012
Xiaoling 51.16 1013 * (% style="color:blue" %)**Open the example in the TrackerD file, please select the correct port in the IDE, as shown below:**
Xiaoling 19.2 1014
Xiaoling 50.2 1015 [[image:1664503794261-827.png]]
Xiaoling 19.2 1016
1017
1018
Xiaoling 51.16 1019 * (% style="color:blue" %)**Click to upload**
Xiaoling 19.2 1020
Xiaoling 50.2 1021 [[image:1664503808294-336.png]]
Xiaoling 19.2 1022
1023
1024
Xiaoling 51.16 1025 * (% 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 1026
Xiaoling 50.2 1027 [[image:1664503824081-592.png]] [[image:1664503831430-500.png]]
Xiaoling 19.2 1028
1029
1030
Xiaoling 18.2 1031 = 7.  FAQ =
Xiaoling 15.2 1032
1033
Xiaoling 18.2 1034 == 7.1 How to change the LoRa Frequency Bands/Region? ==
Edwin Chen 14.1 1035
1036
Xiaoling 51.14 1037 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 1038
Edwin Chen 12.1 1039
Edwin Chen 2.1 1040
Xiaoling 18.2 1041 == 7.2 What is the pin mapping for the USB program cable? ==
Edwin Chen 2.1 1042
Xiaoling 7.1 1043
Xiaoling 18.2 1044 [[image:1664499635206-262.png]]
Xiaoling 7.1 1045
1046
1047
Xiaoling 51.28 1048 (% border="1.5" cellspacing="3" style="background-color:#ffffcc; color:green; width:314px" %)
Xiaoling 51.27 1049 |=(% style="width: 118px;" %)**Pin**|=(% style="width: 67px;" %)**Color**|=(% style="width: 123px;" %)**USB Pin**
Xiaoling 18.2 1050 |(% style="width:118px" %)A4,B4,A9,B9|(% style="width:67px" %)Red|(% style="width:123px" %)VCC
1051 |(% style="width:118px" %)A7,B7|(% style="width:67px" %)White|(% style="width:123px" %)D- (N/A)
1052 |(% style="width:118px" %)A6,B6|(% style="width:67px" %)Green|(% style="width:123px" %)D+(N/A)
1053 |(% style="width:118px" %)A1,B1,A12,B12|(% style="width:67px" %)Black|(% style="width:123px" %)GND
1054 |(% style="width:118px" %)A5|(% style="width:67px" %)Purple|(% style="width:123px" %)MTDC/GOIO13
1055 |(% style="width:118px" %)B5|(% style="width:67px" %)Blue|(% style="width:123px" %)MTDC/GPIO12
1056 |(% style="width:118px" %)A8|(% style="width:67px" %)Yellow|(% style="width:123px" %)MTMS/GPIO14
1057 |(% style="width:118px" %)B8|(% style="width:67px" %)Grey|(% style="width:123px" %)MTDO/GPIO15
Xiaoling 7.1 1058
Xiaoling 18.2 1059 = 8.  Order Info =
Xiaoling 7.1 1060
1061
Xiaoling 15.6 1062 Part Number: (% style="color:blue" %)**TrackerD-XXX**
Edwin Chen 8.1 1063
Xiaoling 15.6 1064 (% style="color:blue" %)**XXX**(%%): The default frequency band
Edwin Chen 8.1 1065
Xiaoling 15.6 1066 * (% style="color:red" %)**EU433**(%%): Default frequency band EU433
1067 * (% style="color:red" %)**EU868**(%%): Default frequency band EU868
1068 * (% style="color:red" %)**IN865**(%%): Default frequency band IN865
1069 * (% style="color:red" %)**KR920**(%%): Default frequency band KR920
1070 * (% style="color:red" %)**AS923**(%%): Default frequency band AS923
1071 * (% style="color:red" %)**AU915**(%%): Default frequency band AU915
1072 * (% style="color:red" %)**US915**(%%): Default frequency band US915
Xiaoling 15.2 1073
Xiaoling 18.2 1074 = 9.  Packing Info =
1075
1076
Xiaoling 51.30 1077 (% style="color:#037691" %)**Package Includes**:
Edwin Chen 8.1 1078
Xiaoling 50.3 1079 * TrackerD LoRaWAN GPS/BLE Tracker x 1
1080 * USB recharge & program cable x 1
Edwin Chen 12.1 1081
Xiaoling 51.30 1082 (% style="color:#037691" %)**Dimensions and Weight**:
Edwin Chen 12.1 1083
Xiaoling 50.3 1084 * Device Size: 85 x 48 x 15 cm
1085 * Weight: 50g
Xiaoling 15.6 1086
Xiaoling 18.2 1087 = 10. Support =
1088
Xiaoling 50.3 1089
Xiaoling 18.2 1090 * 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 1091 * 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 1092
1093 = 11.  Reference =
1094
1095
Edwin Chen 12.1 1096 * [[**Firmware in Bin format**>>https://www.dropbox.com/sh/733s8xlwahhqg1d/AABxDz80lBVX_to8zNuUQWFja?dl=0]]
1097 * **[[Source Code>>https://github.com/dragino/TrackerD]] **
1098 * [[**Hardware Source**>>https://www.dropbox.com/sh/orwoy6cecb89m4e/AAD37sRuUrvKsHgAJxuVTkB5a?dl=0]]
Xiaoling 51.28 1099
Xiaoling 68.2 1100