> For the complete documentation index, see [llms.txt](https://docs.racemap.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.racemap.com/gps-devices/debugging.md).

# Debug tracking devices

## Data from RACEMAP platform

### Connection Chart

When a GPS tracker drops out mid-race, location data arrives late, or a battery dies unexpectedly, the Connection Chart is the first place to investigate. It visualises your GPS device's connectivity and communication over time — giving you a timeline of exactly what happened and when.

<figure><img src="/files/izDUvOagvZVPn9f5LXda" alt=""><figcaption><p>Green to brown: delay of received coordinates, blue: battery and network insights over the time line</p></figcaption></figure>

The Connection Chart shows:

* **Location data delay:** The y-axis displays how many seconds elapsed between a coordinate being recorded by a device (and possibly stored on memory) and received by RACEMAP.
* **Battery history:** A second y-axis tracks battery level over time, helping you to identify power drain patterns and optimise power consumption.
* **Device events:** Toggle specific events to keep the chart readable: open socket, close socket, heartbeat, device info, movement, no movement, and power off.
* **Network layer:** Hover over any block to see transmission (GSM or LTE), Cell ID, Mobile Country Code (MCC), Mobile Network Code (MNC), and Location Area Code (LAC). Alternating brown and green blocks indicate a carrier change; while each block represents one network cell.

Access the chart directly from tracker management, or use the URL syntax to open a specific device and time window.

<figure><img src="/files/53B69iqug2F1hq2W40qf" alt=""><figcaption><p>Access the Connection Chart for a specific device directly in the tracker management, CONnection column</p></figcaption></figure>

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

sample: <https://racemap.com/admin/connection-chart/860201065660881?events=ONLINE&startDate=2026-08-08T09%3A00%3A00.000%2B02%3A00&endDate=2026-08-11T18%3A00%3A00.000%2B02%3A00&network=1>
{% 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](/files/5lDlqrDQwJ2NQcfxzQjO)

{% content-ref url="/pages/-M\_zgpFYgo28IJBo4zVF" %}
[\*/starters, athlete data](/api/participants.md)
{% 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.](/gps-devices/config/cable.md#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="/files/STKNOG8I38RJYt5FlCBX" 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="/files/U9yNdQxwhpr6wvUNWRUw" alt=""><figcaption></figcaption></figure>

Terminal:

* Line Mode
* Local Echo

<figure><img src="/files/bT5BB0in9ASnEYd9J6sj" alt=""><figcaption></figcaption></figure>

Receive

* Add timestamps to received data

<figure><img src="/files/wPUxSm4rPpvCZqKR9t9M" 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="/files/IhxG0AVfy9wD10xBhBXT" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.racemap.com/gps-devices/debugging.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
