Version 51.2 by Xiaoling on 2022/09/30 10:41

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
Edwin Chen 8.1 28 TrackerD is program friendly. Developers can use Arduino IDE to customize the software of TrackerD to fit their IoT solution.
29
Xiaoling 19.2 30 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 31 )))
Edwin Chen 8.1 32
Xiaoling 15.3 33 (((
34 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 35
36
Xiaoling 15.3 37 )))
Edwin Chen 8.1 38
Xiaoling 19.2 39 [[image:1664499921684-770.png]]
Edwin Chen 8.1 40
Xiaoling 15.4 41
Xiaoling 19.2 42 (% style="color:red" %)**Note: LoRaWAN server can be a general LoRaWAN server other than TTN.**
Edwin Chen 8.1 43
Xiaoling 15.2 44
Xiaoling 50.2 45
Xiaoling 19.2 46 == 1.2 Specifications ==
Edwin Chen 12.1 47
Xiaoling 15.2 48
Xiaoling 19.2 49 (% style="color:blue" %)**Micro Controller:**
Xiaoling 15.2 50
Xiaoling 19.2 51 * Espressif ESP32 PICO D4
52 * MCU: ESP32 PICO D4
53 * Bluetooth: Bluetooth V4.2 BR/EDR and Bluetooth LE
54 * WiFi : 802.11 b/g/n (802.11n up to 150 Mbps)
55 * Integrated SPI flash : 4 MB
56 * RAM: 448 KB
57 * EEPROM: 520 KB
58 * Clock Speed: 32Mhz
59
60 (% style="color:blue" %)**Common DC Characteristics:**
61
62 * Supply Voltage: 5V via USB port or Internal li-on battery
63 * Operating Temperature: -40 ~~ 60°C
64
65 (% style="color:blue" %)**LoRa Spec:**
66
67 * Frequency Range,
68 ** Band 1 (HF): 862 ~~ 1020 Mhz
69 * 168 dB maximum link budget.
70 * +20 dBm - 100 mW constant RF output vs.
71 * +14 dBm high efficiency PA.
72 * Programmable bit rate up to 300 kbps.
73 * High sensitivity: down to -148 dBm.
74 * Bullet-proof front end: IIP3 = -12.5 dBm.
75 * Excellent blocking immunity.
76 * Low RX current of 10.3 mA, 200 nA register retention.
77 * Fully integrated synthesizer with a resolution of 61 Hz.
78 * FSK, GFSK, MSK, GMSK, LoRaTM and OOK modulation.
79 * Built-in bit synchronizer for clock recovery.
80 * Preamble detection.
81 * 127 dB Dynamic Range RSSI.
82 * Automatic RF Sense and CAD with ultra-fast AFC.
83 * Packet engine up to 256 bytes with CRC.
84 * LoRaWAN 1.0.3 Specification
85
86 (% style="color:blue" %)**Battery:**
87
88 * 1000mA Li-on Battery power (for model TrackerD)
89
90 (% style="color:blue" %)**Power Consumption**
91
92 * Sleeping Mode: 200uA
93 * LoRa Transmit Mode: 125mA @ 20dBm 44mA @ 14dBm
94 * Tracking: max: 38mA
95
96
97
98 == 1.3  Features ==
99
100
101 * LoRaWAN 1.0.3 Class A
102 * ESP32 PICO D4
103 * SX1276/78 Wireless Chip
104 * Arduino IDE Compatible
105 * Open source hardware / software
106 * Regular/ Real-time GPS,BLE,WIFI tracking
107 * Built-in3 axis accelerometer (LIS3DH)
108 * Humidity / temperature sensor : GXCAS Technology GXHT3X
109 * Motion sensing capability
110 * Power Monitoring
111 * Charging circuit via USB port
112 * 1000mA Li-on Battery power
113 * Tri-color LED, Alarm button
114 * Datalog
115
116
117 == 1.4  Applications ==
118
119
Edwin Chen 12.1 120 * Logistics and Supply Chain Management
121 * Human tracking
122
Xiaoling 16.2 123
124
Xiaoling 19.3 125 = 2.1 Use TrackerD =
Xiaoling 19.2 126
Xiaoling 50.2 127
Xiaoling 19.3 128 == 2.1 How it works? ==
Xiaoling 19.2 129
Xiaoling 19.3 130
Xiaoling 19.2 131 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.
132
133
Xiaoling 50.2 134
Xiaoling 19.3 135 == 2.2 Quick guide to connect to LoRaWAN server ==
Xiaoling 19.2 136
137
Xiaoling 50.2 138 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 139
140
Xiaoling 50.2 141 [[image:1664501652064-326.png]]
Xiaoling 19.2 142
Xiaoling 50.2 143
144
Xiaoling 19.2 145 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:
146
147
Xiaoling 50.2 148 (% style="color:blue" %)**Step 1**:(%%) Create a device in TTN V3 with the OTAA keys from TrackerD.
149
Xiaoling 19.2 150 Each TrackerD is shipped with a sticker with the default device EUI as below:
151
Xiaoling 50.2 152 [[image:1664501677253-891.png]]
Xiaoling 19.2 153
154
155
156
157 Input these keys to their LoRaWAN Server portal. Below is TTN V3 screen shot:
158
159
Xiaoling 50.2 160 **__Add APP EUI in the application:__**
Xiaoling 19.2 161
162
Xiaoling 50.2 163 [[image:1664501711466-918.png]]
Xiaoling 19.2 164
165
166
Xiaoling 50.2 167 [[image:1664501721248-725.png]]
Xiaoling 19.2 168
169
Xiaoling 50.2 170 [[image:1664501734705-405.png]]
Xiaoling 19.2 171
172
173
Xiaoling 50.2 174 **__Add APP KEY and DEV EUI:__**
Xiaoling 19.2 175
176
Xiaoling 50.2 177 [[image:1664501784668-703.png]]
Xiaoling 19.2 178
179
180
181
Xiaoling 50.2 182 (% style="color:blue" %)**Step 2**:(%%) Power on TrackerD by using the on board switch.
Xiaoling 19.2 183
Xiaoling 50.2 184
185 (% 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.
186
187
188 (% style="color:blue" %)**Positioning Mode(SMOD):**
189
Xiaoling 19.2 190 * **GPS ONLY(Factory Settings): **only get GPS location info.
191 * **BLE ONLY: **Only obtain iBeacon info via BLE. Design for Indoor tracking.
192 * **GPS/BLE Hybrid: **Combination for Indoor and Outdoor tracking.
193
194 User can switch modes by [[changing SMOD>>path:#Positioning_Mode]].
195
196
Xiaoling 50.2 197
Xiaoling 19.3 198 == 2.3 Uplink Payload ~-~-~-~-~-~-~-~-~-~-~-~-~-~- ==
Xiaoling 19.2 199
200
Xiaoling 50.2 201 === 2.3.1 Uplink FPORT~=5, Device Status ===
Xiaoling 19.2 202
203
204
Xiaoling 50.2 205 === 2.3.2 Uplink FPORT~= , Realtime GNSS Positioning ===
Xiaoling 19.2 206
207
Xiaoling 50.2 208 The default uplink payload includes totally 11 bytes. (User can use AT+MOD=0 to enable the Temperature and humidity sensor to hum/tem info from accelerometer. When accelerometer info is enable, total payload will be 15 bytes, please note 15 bytes won't work on DR0 on US915/AU915 frequency band. )
Xiaoling 19.2 209
Xiaoling 50.2 210
211 (% border="2" style="background-color:#ffffcc; color:green; width:537px" %)
212 |(% style="width:69px" %)(((
Xiaoling 19.2 213 **Size**
214
215 **(bytes)**
Xiaoling 50.2 216 )))|(% style="width:76px" %)4|(% style="width:87px" %)4|(% style="width:76px" %)2|(% style="width:52px" %)1|(% style="width:88px" %)(((
Xiaoling 19.2 217 2
218
219 (optional )
Xiaoling 50.2 220 )))|(% style="width:83px" %)(((
Xiaoling 19.2 221 2
222
223 (optional)
224 )))
Xiaoling 50.2 225 |(% style="width:69px" %)**Value**|(% style="width:76px" %)[[Latitude>>path:#Location]]|(% style="width:87px" %)[[Longitude>>path:#Location]]|(% style="width:76px" %)(((
Xiaoling 19.2 226 [[Alarm &>>path:#Alarm]]
227
228 [[BAT>>path:#Alarm]]
Xiaoling 50.2 229 )))|(% style="width:52px" %)[[FLAG>>path:#Flag]]|(% style="width:88px" %)Hum|(% style="width:83px" %)[[Tem>>path:#Pitch]]
Xiaoling 19.2 230
231
232
Xiaoling 50.2 233 [[image:1664501958445-288.png]]
Xiaoling 19.2 234
Xiaoling 50.2 235
Xiaoling 19.2 236 **Alarm & BAT:**
237
Xiaoling 50.2 238 (% border="2" style="background-color:#ffffcc; color:green; width:329px" %)
239 |(% style="width:72px" %)**Size(bit)**|(% style="width:67px" %)1 bit|(% style="width:118px" %)1bit|(% style="width:63px" %)14 bits
240 |(% style="width:72px" %)**Value**|(% style="width:67px" %)reserve|(% style="width:118px" %)Alarm Indicate|(% style="width:63px" %)[[BAT>>path:#BAT]] 
Xiaoling 19.2 241
Xiaoling 50.2 242
243
Xiaoling 19.2 244 **FLAG:**
245
Xiaoling 50.2 246 (% border="2" style="background-color:#ffffcc; color:green; width:332px" %)
247 |(% style="width:79px" %)**Size(bit)**|(% style="width:55px" %)2 bits|(% style="width:47px" %)1bit|(% style="width:140px" %)5 bits
248 |(% style="width:79px" %)**Value**|(% style="width:55px" %)[[MOD>>path:#MD]]|(% style="width:47px" %)[[LON>>path:#LON]]|(% style="width:140px" %)Firmware version 
Xiaoling 19.2 249
250
Xiaoling 50.2 251 **Example: Payload: 0x02863D68 FAC29BAF 4B45 60 0202 011A  **
Xiaoling 19.2 252
253
254 **Location info:**
255
Xiaoling 50.4 256 * Latitude: 02863D68  ⇒  //if (0x//02863D68//& 0x80000000 = 0 )~://  //value = 02863D68 /1000000 = 42.351976//
257 * Longitude: FAC29BAF  ⇒ //if (0x//FAC29BAF// & 0x80000000 = 1 )~://  //value = (0x//FAC29BAF// – 0x 100000000)/1000000 =//-87.9094//57//
Xiaoling 19.2 258
259
Xiaoling 50.2 260 **Important note:**
Xiaoling 19.2 261
Xiaoling 50.2 262 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 263
Xiaoling 50.2 264 2.  In firmware version v1.5, Roll & Pitch is disabled by default.
Xiaoling 19.2 265
Xiaoling 50.2 266 3.  When enable 9-axis motion sensor, the total payload will be 15 bytes, while US915/AU915 DR0 accept only 11 bytes payload. In this case, the payload on server will be ignore and shows as below:
Xiaoling 19.2 267
268
Xiaoling 50.2 269 [[image:1664502116362-706.png]]
Xiaoling 19.2 270
271
Xiaoling 50.2 272
273 4.  While GPS can't get location info after timeout(FTIME Parameter), the latitude and longitude will be filled with all 0x00:
274
275 [[image:1664502166010-515.png]]
276
277
278
Xiaoling 50.4 279 * **Alarm**:  Example:  0x4B & 0x40 >> 6 = 0x01
280 * **BAT**:  Example:  0x0CDD & 0x3FFF ⇒ 3293 (mV).
Xiaoling 50.2 281
Xiaoling 19.2 282 The battery info shows the current voltage, for **TrackerD** version which powered by li-on battery. User can use below mapping to indicate the battery in percentage: \
283
284
Xiaoling 50.4 285 * > 4.0v :  80% ~~ 100%
286 * 3.85v ~~3.99v:  60% ~~ 80%
287 * 3.70v ~~ 3.84v:  40% ~~ 60%
288 * 3.40v ~~ 3.69v:  20% ~~ 40%
289 * < 3.39v:  0~~20%
Xiaoling 19.2 290
291
Xiaoling 50.2 292
Xiaoling 19.2 293 * **LON: **Enable/Disable LED activity for uplink
294
Xiaoling 50.2 295 0x00:  Disable LED indicator.
Xiaoling 19.2 296
Xiaoling 50.2 297 0x01:  Enable LED indicator (Default Value)
Xiaoling 19.2 298
299
Xiaoling 50.4 300 * **Hum**: 0202 = //if (0x0202 & 0x8000 = 0 ):  value =// 0x0202 / 100 = +514 ⇒ 51.4 degree
301 * **//Tem//**//: 011A =if (0x011A & 0x8000 = 1 ):  value =( 0x011A - 0x10000)/10(dec) ⇒ -//28.2 degree
Xiaoling 19.2 302
303
304
305
306
Xiaoling 50.2 307 === 2.3.3 Uplink FPORT~= , History GNSS Positioning ===
Xiaoling 19.2 308
309
Xiaoling 50.2 310
311 === 2.3.4 BLE positioning Payload(Fport2) ===
312
313
Xiaoling 19.2 314 Different MODE has different payload:
315
316 **MODE=2**
317
Xiaoling 50.2 318 (% border="2" style="background-color:#ffffcc; color:green; width:620px" %)
319 |(% style="width:70px" %)(((
Xiaoling 19.2 320 **Size**
321
322 **(bytes)**
Xiaoling 50.2 323 )))|(% style="width:54px" %)16|(% style="width:72px" %)4|(% style="width:71px" %)4|(% style="width:145px" %)2|(% style="width:72px" %)4|(% style="width:76px" %)2|(% style="width:54px" %)1
324 |(% style="width:70px" %)**Value**|(% style="width:54px" %)[[UUID>>path:#Location]]|(% style="width:72px" %)(((
Xiaoling 19.2 325 iBeacon
326
327 MAJOR
Xiaoling 50.2 328 )))|(% style="width:71px" %)(((
Xiaoling 19.2 329 iBeacon
330
331 MINOR
Xiaoling 50.2 332 )))|(% style="width:145px" %)(((
Xiaoling 19.2 333 iBeacon Measured
334
335 Power
Xiaoling 50.2 336 )))|(% style="width:72px" %)(((
Xiaoling 19.2 337 iBeacon
338
339 RSSI
Xiaoling 50.2 340 )))|(% style="width:76px" %)(((
Xiaoling 19.2 341 [[Alarm &>>path:#Alarm]]
342
343 [[BAT>>path:#Alarm]]
Xiaoling 50.2 344 )))|(% style="width:54px" %)[[FLAG>>path:#Flag]]
Xiaoling 19.2 345
Xiaoling 50.2 346 [[image:1664502425687-834.png]]
Xiaoling 19.2 347
348
Xiaoling 50.2 349 * **BAT**:  Ex1: 0x4B45 & 0x3FFF ⇒ 3901 (mV).
Xiaoling 51.2 350 * **MODE:   **Define the payload format.
351 * **UUID:     **The uuid from the strongest iBeacon.
Xiaoling 50.2 352 * **MAJOR**:  The MAJOR from the strongest iBeacon.
353 * **MINOR**:  The MAJOR from the strongest iBeacon.
354 * **Measured** **Power**:  The Measured Power from the strongest iBeacon.
355 * **RSSI**:  The RSSI from the strongest iBeacon.
Xiaoling 19.2 356
357
358
359
Xiaoling 50.2 360
Xiaoling 19.3 361 === 2.3.5 Add Payload format in TTN V3 ===
362
Xiaoling 50.2 363
Xiaoling 19.2 364 In TTN V3, use can add a custom payload so it shows friendly.
365
366 In the page Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder
367
368
Xiaoling 50.2 369 [[image:1664502649601-895.png]]
370
Xiaoling 19.2 371 Add the decoder from this link:
372
373
374 Save the change the uplink message will be parsed. As below:
375
Xiaoling 50.2 376 [[image:1664502676891-606.png]]
Xiaoling 19.2 377
378
379
Xiaoling 19.3 380 == 2.4 Integrate with Datacake ==
Xiaoling 19.2 381
382
383 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.
384
Xiaoling 50.2 385 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 386
387
Xiaoling 50.2 388 [[image:1664502695771-538.png]]
Xiaoling 19.2 389
Xiaoling 50.2 390
391
Xiaoling 19.3 392 == 2.5 Integrate with Tago ==
Xiaoling 19.2 393
394
395 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.
396
397 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]]
398
399
Xiaoling 50.2 400 [[image:1664502715371-321.png]]
Xiaoling 19.2 401
402
403
Xiaoling 19.3 404 == 2.6 Alarm Mode ==
Xiaoling 19.2 405
406
407 User can push the **RED button** by more than 5 seconds to enter Alarm Mode.
408
409
410 Once enter Alarm mode, the **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.
411
412
413 Two ways to exit alarm mode:
414
415 * Server send a downlink command to exit.
416 * User fast press the RED button 10 times.
417
418 When exit alarm mode, **RED LED** will light up for 5 seconds, indicating that the alarm mode is exited. And the alert flag will be set to false.
419
420
Xiaoling 50.2 421
Xiaoling 19.3 422 == 2.7 Sports Mode ~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-- ==
Xiaoling 19.2 423
424
425
Xiaoling 19.3 426 == 2.8 LED Status ==
Xiaoling 19.2 427
428
Xiaoling 50.2 429 (% border="2" style="background-color:#ffffcc; color:green; width:636px" %)
430 |(% style="width:157px" %)**Event**|(% style="width:271px" %)**Action**|(% style="width:202px" %)**AT+LON to control on/off**
431 |(% style="width:157px" %)**Power On**|(% style="width:271px" %)**BLUE, RED , Green** flash once|(% style="width:202px" %)N/A
432 |(% style="width:157px" %)**Join request**|(% style="width:271px" %)**Green** led fast blink once (200ms)|(% style="width:202px" %)Yes
433 |(% style="width:157px" %)**Join Success**|(% style="width:271px" %)**Green** led on 5 second|(% style="width:202px" %)N/A
434 |(% style="width:157px" %)**Fixing Location**|(% style="width:271px" %)**BLUE **blinks 200ms per second|(% style="width:202px" %)Yes
435 |(% style="width:157px" %)**Fixed and uplink**|(% style="width:271px" %)**GREEN **blinks twice (200ms per blink)|(% style="width:202px" %)Yes
436 |(% style="width:157px" %)**Fail Fix and uplink**|(% style="width:271px" %)**RED **blinks twice (200ms per blink)|(% style="width:202px" %)Yes
437 |(% style="width:157px" %)**Enter Alarm mode**|(% style="width:271px" %)**RED **on for 3 seconds|(% style="width:202px" %)Yes
438 |(% style="width:157px" %)**Uplink under Alarm**|(% style="width:271px" %)**RED **on for 1 second|(% style="width:202px" %)Yes
439 |(% style="width:157px" %)**Exit Alarm**|(% style="width:271px" %)**BLUE **led on 5 second|(% style="width:202px" %)Yes
440 |(% style="width:157px" %)**Get Downlink**|(% style="width:271px" %)**GREEN** led on 1 second|(% style="width:202px" %)Yes
441 |(% style="width:157px" %)**Movement Detect**|(% style="width:271px" %)**RED **on 500ms|(% style="width:202px" %)N/A
Xiaoling 19.2 442
443
444
445
Xiaoling 19.3 446 == 2.9 Button Function ==
Xiaoling 19.2 447
Xiaoling 50.2 448
Xiaoling 19.2 449 **RESET button:**
450
Xiaoling 50.2 451 [[image:1664502835802-546.png]]
Xiaoling 19.2 452
453 Push this button will reboot the device. Device will exit alarm mode and re-join to LoRaWAN server.
454
455
456 **RED button:**
457
Xiaoling 50.2 458 [[image:1664502854406-763.png]]
Xiaoling 19.2 459
460
Xiaoling 50.2 461 (% border="2" style="background-color:#ffffcc; color:green; width:627px" %)
462 |(% style="width:135px" %)**Function**|(% style="width:220px" %)**Action**|(% style="width:265px" %)**Description**
463 |(% style="width:135px" %)Send Alarm|(% style="width:220px" %)Keep Pressing **RED** button for more than 5 seconds|(% style="width:265px" %)Enter Alarm Mode.  See [[Alarm Mode>>path:#Alarm_Mode]]
464 |(% style="width:135px" %)Exit Alarm Mode|(% style="width:220px" %)Fast press the **RED** button 10 times|(% style="width:265px" %)Exit Alarm Mode
465 |(% 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 466
467
468
Xiaoling 19.3 469 == 2.10 USB Port Function ==
Xiaoling 19.2 470
Xiaoling 50.2 471
Xiaoling 19.2 472 The USB interface of TrackerD has below functions:
473
474 * Power on the device
475 * Recharge the battery
476 * [[Configure Device>>path:#AT_Command]]
477 * [[Upgrade Firmware>>path:#upgrade_image]]
478
479
480
481
Xiaoling 19.3 482 = 3. Configure TrackerD via AT command or LoRaWAN downlink =
Xiaoling 19.2 483
484
485 User can configure TrackerD via AT Command or LoRaWAN Downlink.
486
487 LoRaWAN Downlink instruction for different platforms: [[IoT LoRaWAN Server>>url:http://wiki.dragino.com/xwiki/bin/view/Main/]]
488
489
Xiaoling 50.2 490
Xiaoling 19.3 491 == 3.1 Access AT Command ==
Xiaoling 19.2 492
493
Xiaoling 50.2 494 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 495
496
Xiaoling 50.2 497 [[image:1664502999401-486.png]]
498
499
Xiaoling 19.2 500 In PC, User needs to set serial tool baud rate to **115200** to access serial console for TrackerD. TrackerD will output system info once power on and user will be able to send AT commands:
501
502
Xiaoling 50.2 503 [[image:1664503022490-662.png]]
Xiaoling 19.2 504
505
506
Xiaoling 50.2 507 [[image:1664503035713-500.png]]
Xiaoling 19.2 508
509
510
Xiaoling 50.2 511 [[image:1664503047675-651.png]]
512
513
514
Xiaoling 19.3 515 == 3.2 Command Set ==
Xiaoling 19.2 516
517
Xiaoling 19.3 518 === 3.2.1 Set Transmit Interval ===
Xiaoling 19.2 519
Xiaoling 50.2 520
Xiaoling 19.2 521 Set device uplink interval.
522
523 * AT Command:
524
525 AT+TDC=xxx
526
Xiaoling 50.2 527 Example:  AT+TDC=300000. Means set interval to 5 minutes(300 seconds)
Xiaoling 19.2 528
529
530 * Downlink Payload (prefix 0x01):
531
Xiaoling 50.2 532 0x01 00 01 2C     ~/~/  Same as AT+TDC=300000
Xiaoling 19.2 533
534
Xiaoling 50.2 535
Xiaoling 19.3 536 === 3.2.2 Set Alarm Packet transmission interval ===
Xiaoling 19.2 537
Xiaoling 50.2 538
Xiaoling 19.2 539 Set alarm packet transmit interval
540
541 * AT Command:
542
543 AT+ATDC=xx.
544
Xiaoling 51.2 545 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 546
547
548 * Downlink Payload (prefix 0xB1):
549
Xiaoling 50.2 550 0xB1 00 00 3C  ~/~/  Same as AT+ATDC=60000
Xiaoling 19.2 551
552
553
Xiaoling 50.2 554 === 3.2.3 Set Sports Mode Packet transmission interval ===
555
556
Xiaoling 19.2 557 Set sports packet transmit interval
558
559 * AT Command:
560
561 AT+MTDC=xx.
562
Xiaoling 51.2 563 Example:  AT+MTDC=300000  **~-~->    ** Set Sports Mode Packet Interval to 300 seconds. TrackerD will send every 300 seconds in Sports mode, Default Value: 300000
Xiaoling 19.2 564
565
566 * Downlink Payload (prefix 0x03):
567
Xiaoling 50.2 568 0x03 00 01 2C  ~/~/  Same as AT+ MTDC=3000000
Xiaoling 19.2 569
570
571
Xiaoling 50.2 572 === 3.2.4 Exit Alarm ===
Xiaoling 19.2 573
Xiaoling 50.2 574
Xiaoling 19.2 575 Server send downlink command to exit Alarm mode
576
577 * AT Command:
578
579 No AT Command
580
581
582 * Downlink Payload (prefix 0x02):
583
Xiaoling 50.2 584 0x02 01  ~/~/  Exit Alarm Mode
Xiaoling 19.2 585
586
587
Xiaoling 50.2 588 === 3.2.5 Disable/Enable LED flash ===
589
590
Xiaoling 19.2 591 Disable/Enable LED for position, downlink and uplink
592
593 * AT Command:
594
595 AT+LON=xx.  (Disable (0), Enable (1), default:1)
596
Xiaoling 50.2 597 Example: AT+LON=0  **~-~-> ** Disable LED for position, downlink and uplink.
Xiaoling 19.2 598
599
600 * Downlink Payload (prefix 0xAE):
601
Xiaoling 50.2 602 0xAE 00  ~/~/  Same as AT+LON=0
Xiaoling 19.2 603
604
605
Xiaoling 50.2 606 === 3.2.6 Disable/Enable movement detect (Debug Only) ===
Xiaoling 19.2 607
608
609 User can use this feature to check and set thread hole of movement detect
610
611 * AT Command:
612
613 AT+INTWK=xx.  (Disable (0), Enable (1), default:0)
614
Xiaoling 51.2 615 Example:  AT+ INTWK =1  **~-~->   ** Enable detect movement.
Xiaoling 19.2 616
617
618 * Downlink Payload (prefix 0xAF):
619
Xiaoling 50.2 620 0xAF 01  ~/~/  Same as AT+ INTWK =1
Xiaoling 19.2 621
622
623
Xiaoling 50.2 624 === 3.2.7 Set Positioning Mode ===
Xiaoling 19.2 625
Xiaoling 50.2 626
Xiaoling 19.2 627 SMOD define the how TrackerD scan and uplink date.
628
Xiaoling 50.2 629 GPS室外定位模式:  设备默认模式,设备入网后会发送device当前模式下的信息,随后立即定位发送数据包(默认是3分钟定位,超过将发送无效数据),如果出现意外情况下,快速按键3下,将会发出报警消息(默认每分钟发送一次)。GPS还有一种logdata模式,在断网的情况下将数据存储下来,等到有网的时候,一次将数据以每10秒上报。
Xiaoling 19.2 630
Xiaoling 50.2 631 BLE室内定位模式:  设备入网后会发送device当前模式下的信息,随后立即定位发送数据包(默认是5秒,超过将发送无效数据),如果出现意外情况下,快速按键3下,将会发出报警消息(默认每3分钟发送一次)。
Xiaoling 19.2 632
Xiaoling 50.2 633 GPS和BLE混动模式:设备入网后会发送device当前模式下的信息,随后立即判断是否在室内,如果是就进行BLE定位,不是就GPS定位。如果出现意外情况下,快速按键3下,将会发出报警消息(默认每分钟发送一次)。
Xiaoling 19.2 634
Xiaoling 50.2 635 运动模式:  设备入网后会发送device当前模式下的信息,随后发送GPS定位数据,设备判断是否在运动,没有运动传感器没有检测到动作,立即进入静止状态(默认20分钟),如果产生运动,将每5分钟发送一次数据,再第五分钟后检测设备有误运动,无将切换到静止状态,有立即发送数据。
Xiaoling 19.2 636
637
638
639 * AT Command:
640
641 AT+SMOD=xx.
642
643
Xiaoling 50.2 644 **Example:**
Xiaoling 19.2 645
Xiaoling 50.2 646 AT+ SMOD =1,0  **~-~-> ** GPS+ BAT+ State+Tem&Hum
Xiaoling 19.2 647
Xiaoling 50.2 648 AT+ SMOD =1,1    **~-~->**  GPS +BAT State
Xiaoling 19.2 649
Xiaoling 50.2 650 AT+ SMOD =2,3    **~-~->**  (iBeacon)UUID+ Major + Minor+Power+Rssi+BAT+State。
Xiaoling 19.2 651
Xiaoling 50.2 652
Xiaoling 19.2 653 * Downlink Payload (prefix 0xA5):
654
Xiaoling 50.2 655 0xA5 01 00  ~/~/  Same as AT+ SMOD =1,0
Xiaoling 19.2 656
657
658
Xiaoling 50.2 659 === 3.2.8 Set MAX GPS position time ===
660
661
Xiaoling 19.2 662 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.
663
664
665 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.
666
667
668 * AT Command:
669
Xiaoling 50.2 670 AT+FTIME=xx  **~-~-> ** Set to use xx as max fix time.
Xiaoling 19.2 671
Xiaoling 50.2 672 Example:  AT+FTIME=150
Xiaoling 19.2 673
674
675 * Downlink Payload (prefix 0xAA):
676
Xiaoling 50.2 677 0xAA 00 96  ~/~/  Set AT+FTIME=150
Xiaoling 19.2 678
679
680
Xiaoling 19.4 681 === 3.3.9 Set PDOP value for GPS fix accuracy ===
Xiaoling 19.2 682
683
Xiaoling 50.2 684 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 685
Xiaoling 50.2 686
Xiaoling 19.2 687 A GPS packet with lower PDOP has higher accuracy. PDOP default value is 2.0
688
689
690 * AT Command:
691
Xiaoling 50.2 692 AT+PDOP=2.5  **~-~->  ** Set PDOP to 2.5
Xiaoling 19.2 693
694
695 * Downlink Payload (prefix 0xAD):
696
Xiaoling 50.2 697 0xAD 00 0A  ~/~/  Set AT+PDOP=1  (0x0A / 10 =1)
Xiaoling 19.2 698
Xiaoling 50.2 699 0xAD 00 19  ~/~/  Set AT+PDOP=2.5    (0x19 / 10 =2.5)
Xiaoling 19.2 700
Xiaoling 50.2 701 0xAD 00 46  ~/~/  Set AT+PDOP=7  (0x46 / 10 =7)
Xiaoling 19.2 702
Xiaoling 50.2 703
Xiaoling 19.2 704 Disable/Enable the confirmation mode
705
706 * AT Command:
707
708 AT+CFM=xx.
709
710
Xiaoling 50.2 711 **~ Example:**
Xiaoling 19.2 712
Xiaoling 51.2 713 AT+ CFM=0    **~-~->   ** Disable confirmation
Xiaoling 19.2 714
Xiaoling 50.2 715 AT+ CFM=1    **~-~->  ** Enable confirmation
Xiaoling 19.2 716
Xiaoling 50.2 717
Xiaoling 19.2 718 * Downlink Payload (prefix 0x05):
719
Xiaoling 50.2 720 0x05 01  ~/~/  Same as AT+ SMOD =1
Xiaoling 19.2 721
722
723
Xiaoling 19.4 724 = 4. Setting for Different Scenarios =
Xiaoling 19.2 725
726
727
Xiaoling 19.4 728 = 5. Upload Firmware =
Xiaoling 19.2 729
Xiaoling 19.4 730
731 == 5.1 Firmware Change Log ==
732
Xiaoling 50.2 733
Xiaoling 19.2 734 **[[See this link>>url:https://github.com/dragino/TrackerD]]**
735
736
Xiaoling 50.2 737
Xiaoling 19.4 738 == 5.2 How to upgrade firmware ==
Xiaoling 19.2 739
740
Xiaoling 50.2 741 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 742
743
Xiaoling 50.2 744 (% style="color:blue" %)**Step1:  **(%%)Connect TrackerD and PC via USB cable shipped with TrackerD.
Xiaoling 19.2 745
Xiaoling 50.2 746
747 (% style="color:blue" %)**Step2:** (%%) Install CH9102 driver in the PC.
748
Xiaoling 19.2 749 After installation of the driver and plug in TrackerD, user should be able to see com port in PC's device manager.
750
751
Xiaoling 50.2 752 (% style="color:blue" %)**Step3:**(%%) Download and Install Flash Tool:
Xiaoling 19.2 753
754 [[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]]
755
756
Xiaoling 50.2 757 (% style="color:blue" %)**Step4:** (%%) Run Flash Download Tool and configure chip type to ESP32
Xiaoling 19.2 758
759
Xiaoling 50.2 760 [[image:1664503563660-578.png]]
Xiaoling 19.2 761
762
Xiaoling 50.2 763 [[image:1664503574618-659.png]]
Xiaoling 19.2 764
Xiaoling 50.2 765
766 (% style="color:blue" %)**Step5:** (%%) Select the firmware file (.bin format), com port and proper SPI configure. Clink Start. Bin file location:
767
Xiaoling 19.2 768 [[https:~~/~~/www.dropbox.com/sh/733s8xlwahhqg1d/AABxDz80lBVX_to8zNuUQWFja?dl=0>>url:https://www.dropbox.com/sh/733s8xlwahhqg1d/AABxDz80lBVX_to8zNuUQWFja?dl=0]]
769
770
771 Users need to use below files:
772
773 boot_app0.bin @0e000
774
775 ESP_LORA-eeprom-class.bin @ 0x10000
776
777
Xiaoling 50.2 778 [[image:1664503593459-435.png]]
Xiaoling 19.2 779
780
781
Xiaoling 50.2 782 After upgrade finish, it will show finish as below:
Xiaoling 19.2 783
Xiaoling 50.2 784 [[image:1664503611848-385.png]]
Xiaoling 19.2 785
786
Xiaoling 50.2 787
Xiaoling 19.4 788 = 6. Developer Guide =
Xiaoling 19.2 789
790
Xiaoling 19.4 791 == 6.1 Compile Source Code ==
792
793
794 === 6.1.1 Set up ARDUINO compile environment ===
795
796
Xiaoling 50.2 797 * 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 798
Xiaoling 50.2 799 Install IDE on PC, open and click **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 800
801
Xiaoling 50.2 802 [[image:1664503635019-941.png]]
Xiaoling 19.2 803
Xiaoling 50.2 804
Xiaoling 19.2 805 * Go to tools ~-~-> Boards ~-~-> Boards Manager, find the esp32 information and install it.
806
807
808
Xiaoling 50.2 809 [[image:1664503715811-892.png]]
Xiaoling 19.2 810
811
812
Xiaoling 50.2 813 * Download the latest TrackerD from the dragino github: [[https:~~/~~/github.com/dragino/TrackerD>>url:https://github.com/dragino/TrackerD]]
Xiaoling 19.2 814
815
Xiaoling 50.2 816 Put the Library in the TrackerD directory into the libraries file in the Arduino directory:
Xiaoling 19.2 817
818
Xiaoling 50.2 819 [[image:1664503752288-974.png]]
Xiaoling 19.2 820
Xiaoling 50.2 821
822
Xiaoling 19.4 823 == 6.2 Source Code ==
824
825
Xiaoling 19.2 826 * Open the example in the TrackerD file, please select the correct port in the IDE, as shown below:
827
Xiaoling 50.2 828 [[image:1664503794261-827.png]]
Xiaoling 19.2 829
830
831
Xiaoling 50.2 832 * Click to upload
Xiaoling 19.2 833
Xiaoling 50.2 834 [[image:1664503808294-336.png]]
Xiaoling 19.2 835
836
837
Xiaoling 50.2 838 * Check the result, if the upload is successful, as shown below, open the serial port to view the data
Xiaoling 19.2 839
Xiaoling 50.2 840 [[image:1664503824081-592.png]] [[image:1664503831430-500.png]]
Xiaoling 19.2 841
842
843
Xiaoling 18.2 844 = 7.  FAQ =
Xiaoling 15.2 845
846
Xiaoling 18.2 847 == 7.1 How to change the LoRa Frequency Bands/Region? ==
Edwin Chen 14.1 848
849
Xiaoling 18.2 850 User can follow the introduction for [[how to upgrade image>>path:#upgrade_image]]. When download the images, choose the required image file for download.
Edwin Chen 14.1 851
Edwin Chen 12.1 852
Edwin Chen 2.1 853
Xiaoling 18.2 854 == 7.2 What is the pin mapping for the USB program cable? ==
Edwin Chen 2.1 855
Xiaoling 7.1 856
Xiaoling 18.2 857 [[image:1664499635206-262.png]]
Xiaoling 7.1 858
859
860
Xiaoling 18.2 861 (% border="2" style="background-color:#ffffcc; color:green; width:314px" %)
862 |(% style="width:118px" %)**Pin**|(% style="width:67px" %)**Color**|(% style="width:123px" %)**USB Pin**
863 |(% style="width:118px" %)A4,B4,A9,B9|(% style="width:67px" %)Red|(% style="width:123px" %)VCC
864 |(% style="width:118px" %)A7,B7|(% style="width:67px" %)White|(% style="width:123px" %)D- (N/A)
865 |(% style="width:118px" %)A6,B6|(% style="width:67px" %)Green|(% style="width:123px" %)D+(N/A)
866 |(% style="width:118px" %)A1,B1,A12,B12|(% style="width:67px" %)Black|(% style="width:123px" %)GND
867 |(% style="width:118px" %)A5|(% style="width:67px" %)Purple|(% style="width:123px" %)MTDC/GOIO13
868 |(% style="width:118px" %)B5|(% style="width:67px" %)Blue|(% style="width:123px" %)MTDC/GPIO12
869 |(% style="width:118px" %)A8|(% style="width:67px" %)Yellow|(% style="width:123px" %)MTMS/GPIO14
870 |(% style="width:118px" %)B8|(% style="width:67px" %)Grey|(% style="width:123px" %)MTDO/GPIO15
Xiaoling 7.1 871
Xiaoling 50.3 872
873
874
875
Xiaoling 18.2 876 = 8.  Order Info =
Xiaoling 7.1 877
878
Xiaoling 15.6 879 Part Number: (% style="color:blue" %)**TrackerD-XXX**
Edwin Chen 8.1 880
Xiaoling 15.6 881 (% style="color:blue" %)**XXX**(%%): The default frequency band
Edwin Chen 8.1 882
Xiaoling 15.6 883 * (% style="color:red" %)**EU433**(%%): Default frequency band EU433
884 * (% style="color:red" %)**EU868**(%%): Default frequency band EU868
885 * (% style="color:red" %)**IN865**(%%): Default frequency band IN865
886 * (% style="color:red" %)**KR920**(%%): Default frequency band KR920
887 * (% style="color:red" %)**AS923**(%%): Default frequency band AS923
888 * (% style="color:red" %)**AU915**(%%): Default frequency band AU915
889 * (% style="color:red" %)**US915**(%%): Default frequency band US915
Xiaoling 15.2 890
Xiaoling 50.3 891
892
893
894
Xiaoling 18.2 895 = 9.  Packing Info =
896
897
Edwin Chen 8.1 898 **Package Includes**:
899
Xiaoling 50.3 900 * TrackerD LoRaWAN GPS/BLE Tracker x 1
901 * USB recharge & program cable x 1
Edwin Chen 12.1 902
Xiaoling 15.6 903 **Dimensions and Weight**:
Edwin Chen 12.1 904
Xiaoling 50.3 905 * Device Size: 85 x 48 x 15 cm
906 * Weight: 50g
Xiaoling 15.6 907
908
Xiaoling 50.3 909
910
Xiaoling 18.2 911 = 10. Support =
912
Xiaoling 50.3 913
Xiaoling 18.2 914 * 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 50.3 915 * 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 916
917
918
919
920 = 11.  Reference =
921
922
Edwin Chen 12.1 923 * [[**Firmware in Bin format**>>https://www.dropbox.com/sh/733s8xlwahhqg1d/AABxDz80lBVX_to8zNuUQWFja?dl=0]]
924 * **[[Source Code>>https://github.com/dragino/TrackerD]] **
925 * [[**Hardware Source**>>https://www.dropbox.com/sh/orwoy6cecb89m4e/AAD37sRuUrvKsHgAJxuVTkB5a?dl=0]]