# Debug tracking devices

## Data from Racemap platform

### Connection Chart

<figure><img src="https://1672210197-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LSRNxaH2Ju9Flr7JhJD%2Fuploads%2F7q281by861LviaFTHqei%2FScreenshot%202026-01-27%20171439.png?alt=media&#x26;token=2759f053-0ebd-458d-a7fc-abb2a1ab1283" alt=""><figcaption><p>Green to brown: delay of received coordinates, blue battery</p></figcaption></figure>

The interactive Connection Chart shows your GPS device's connectivity and communication mechanics at running operations. The Connection Chart features:

* Delay of received coordinates: The y-axis indicates the delay of received coordinates in seconds, sent from memory.
* Battery History: A dedicated second y-axis displays the battery history of your GPS tracker, enabling you to monitor power consumption.&#x20;
* Network insights such as: Hover for Mobile Country Code (MCC), Mobile Network Code (MNC), Location Area Code (LAC), Cell ID, and the radio technology.&#x20;
* Single events such as: Open socket, close socket, heartbeat, device info, movement, no movement, and power off.&#x20;

<figure><img src="https://1672210197-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LSRNxaH2Ju9Flr7JhJD%2Fuploads%2FObxdVVUNvEHoKYDf83yS%2FDownload%20(1).png?alt=media&#x26;token=fd73f3e4-55b4-46b7-b225-ca86cc33561e" alt=""><figcaption><p>Access the Track Chart for a specific device directly in the tracker management.</p></figcaption></figure>

{% hint style="success" %}
**syntax** `https://racemap.com/admin/track/<appId>?startDate=2023-11-14T12:30:00.000Z&endDate=2023-11-14T16:30:00.000Z`
{% endhint %}

### Tracks API

Pull the timestamps when a specific device recorded a location and when Racemap server received the same location, eg. to check the delay in sending live data through the mobile network.

{% hint style="success" %}
**syntax** `https://racemap.com/api/tracks/trackId/points?startTime=startTime&endTime=endTime`

**sample** <https://racemap.com/api/tracks/59e75469c8adf3c73d75fc66/points?startTime=2018-05-05T10:00:00Z&endTime=2018-05-05T10:15:00Z>
{% endhint %}

* `startTime` and `endTime` timestamps in UTC of the first and the last location in the query
* `trackId` unique Racemap ID of all locations of a specific device

![copy  trackId of the device you want to investigate in participants API](https://1672210197-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LSRNxaH2Ju9Flr7JhJD%2Fuploads%2FCuWuMUrJRRL96hpuNo2f%2Fparticipants-API.png?alt=media\&token=69d6d26d-c49f-46fc-b682-fa18c2be30d0)

{% content-ref url="../api/participants" %}
[participants](https://docs.racemap.com/api/participants)
{% endcontent-ref %}

| parameter    | description                                                                                                                  | type   |
| ------------ | ---------------------------------------------------------------------------------------------------------------------------- | ------ |
| `lng`        | longitude of location                                                                                                        | string |
| `lat`        | latitude                                                                                                                     | string |
| `elv`        | elevation                                                                                                                    | string |
| `time`       | timestamp in UTC when device recorded the location, in case of interpolation between last two points => linear interpolated  | string |
| `receivedAt` | timestamp in UTC when Racemap recorded the location, in case of interpolation between last two points => linear interpolated | string |

```json
[
{
"lng": 13.818634,
"lat": 51.107761,
"time": "2018-05-05T10:00:09Z",
"elv": 261,
"receivedAt": "2018-05-05T10:00:23.644Z"
},
{
"lng": 13.817738,
"lat": 51.107412,
"time": "2018-05-05T10:00:24Z",
"elv": 276,
"receivedAt": "2018-05-05T10:00:37.785Z"
},
{
"lng": 13.817476,
"lat": 51.107295,
"time": "2018-05-05T10:00:39Z",
"elv": 273,
"receivedAt": "2018-05-05T10:00:52.769Z"
},
{
"lng": 13.817476,
"lat": 51.107295,
"time": "2018-05-05T10:00:53Z",
"elv": 273,
"receivedAt": "2018-05-05T10:01:09.064Z"
},
{
"lng": 13.816854,
"lat": 51.106363,
"time": "2018-05-05T10:01:08Z",
"elv": 245,
"receivedAt": "2018-05-05T10:01:22.696Z"
},
{
"lng": 13.816932,
"lat": 51.105763,
"time": "2018-05-05T10:01:23Z",
"elv": 235,
"receivedAt": "2018-05-05T10:01:37.651Z"
},
{
"lng": 13.816588,
"lat": 51.105129,
"time": "2018-05-05T10:01:38Z",
"elv": 220,
"receivedAt": "2018-05-05T10:04:40.289Z"
}
]
```

## Record logs of tracking hardware

### Queclink GL320

#### Requirements

* Tracking device is turned on.
* UART data cable
* Windows computer
* We use the CoolTerm software to record the logs of the tracking device. Download CoolTerm here <https://coolterm.en.lo4d.com/windows>
* Enable the USB port of the computer for UART communication.\
  [Read documentation.](https://docs.racemap.com/config/cable#requirements)

{% hint style="info" %}
The device needs to be connected to the computer to record logs. You have to take the computer with you when reproducing specific tracking scenarios.
{% endhint %}

On Clicking on CoolTerm icon. The first window you see is this

<figure><img src="https://1672210197-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LSRNxaH2Ju9Flr7JhJD%2Fuploads%2Fgit-blob-b4056c868db94c459bdbd5b487a552b23a17f3e0%2F1.png?alt=media" alt=""><figcaption></figcaption></figure>

When connecting a powered-on device to the COM port via the UART cable, CoolTerm won't display it automatically. Users must configure CoolTerm each time it's opened, making sure the device is powered on and connected before initiating the application.

**Settings in CoolTerm**

Options >> Serial Port:

* UART: Select the port which is enabled for UART communication.
* Baudrate: 115200

<figure><img src="https://1672210197-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LSRNxaH2Ju9Flr7JhJD%2Fuploads%2Fgit-blob-9f12cf83dbf8e31b04e1acfa0872f60551940203%2F2%20(1).png?alt=media" alt=""><figcaption></figcaption></figure>

Terminal:

* Line Mode
* Local Echo

<figure><img src="https://1672210197-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LSRNxaH2Ju9Flr7JhJD%2Fuploads%2Fgit-blob-3426403b3b56284b889704e76efa6b56fc0005b6%2F3.png?alt=media" alt=""><figcaption></figcaption></figure>

Receive

* Add timestamps to received data

<figure><img src="https://1672210197-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LSRNxaH2Ju9Flr7JhJD%2Fuploads%2Fgit-blob-f5fcdfcecf578bf5f2782b0c17bdd88c999587c7%2F4.1.png?alt=media" alt=""><figcaption></figcaption></figure>

File Capture:

* Select the file in which you want to capture the logs.

**Commands:**

Send the command to the device to send logs using the command field:\
`AT+UARTLOG=9`

Send the command to the device to stop sending battery-related logs:\
`AT+UARTLOG=0,BAT`

Send the command to the device to stop sending logs:\
`AT+UARTLOG=0`

<figure><img src="https://1672210197-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LSRNxaH2Ju9Flr7JhJD%2Fuploads%2Fgit-blob-9f5928b54d6c86cacb4ecfd8fc903c6bf37de19f%2FScreenshot%202024-02-09%20153904.png?alt=media" alt=""><figcaption></figcaption></figure>
