> For the complete documentation index, see [llms.txt](https://docs.arkelectron.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.arkelectron.com/knowledge-base/knowledge-base/ublox-firmware-update.md).

# u-blox Firmware Update

The u-blox receiver's firmware is separate from the ARK module's CAN node firmware, and is updated with u-blox's [u-center](https://www.u-blox.com/en/product/u-center) desktop tools — u-center for the ZED-F9P, u-center 2 for the ZED-X20P. The procedure applies to the [ARK RTK GPS](/products/gps/ark-rtk-gps.md), [ARK RTK Base](/products/gps/ark-rtk-base.md), and [ARK X20 RTK GPS](/products/gps/ark-x20-rtk-gps.md).

## Connecting

* **ARK RTK Base** — connect over USB-C. The F9P enumerates directly as a USB serial port.
* **CAN modules (ARK RTK GPS, ARK X20 RTK GPS)** — hold the safety switch while powering the module through a CAN port, until all three LEDs blink rapidly. This bridges the receiver's `UART1` to the debug connector's UART (pins 2/3 of the 6-pin JST-SH, plus GND). Attach a 3.3V USB-serial adapter there and connect u-center to that COM port. Check *Use this baudrate for update* and select `115200`. See the [PX4 ARK RTK GPS page](https://docs.px4.io/main/en/dronecan/ark_rtk_gps.html) for the full procedure.

{% hint style="warning" %}
u-blox firmware cannot be updated over UART2. `GPS_UBX_MODE` 7 opens UART2 as a UBX diagnostic port for u-center, but firmware update is only available on UART1 via the debug passthrough above.
{% endhint %}

## Updating

1. Check the installed version: in u-center open **View > Messages View > UBX > MON > VER**; u-center 2 shows the firmware version on the device page.
2. Download the firmware image from the u-blox product page — [ZED-F9P](https://www.u-blox.com/en/product/zed-f9p-module) or [ZED-X20P](https://www.u-blox.com/en/product/zed-x20p-module), under *Documentation & resources*.
3. Run the firmware update tool (**Tools > Firmware Update** in u-center, **Firmware Update** on the device page in u-center 2), select the downloaded image, and leave the remaining settings at their defaults.
4. When the update completes, power cycle the module and re-check the version.

{% hint style="warning" %}
Do not power cycle the module while the update is running.
{% endhint %}


---

# 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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.arkelectron.com/knowledge-base/knowledge-base/ublox-firmware-update.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
