Zephyr on Arduino UNO Q MCU

Published: (January 2, 2026 at 02:53 PM EST)
2 min read
Source: Dev.to

Source: Dev.to

Overview

The Arduino UNO Q uses an STM32U585 MCU to handle all Arduino functionality. It communicates with the main processor and the board’s GPIO pins. The only reliable source for the pinout is the official schematic:

Arduino UNO Q schematic (PDF)

The schematic shows which GPIO pins are connected to the RGB LED (LED 3 and LED 4), which can be used as references for your own projects.

Prerequisites

  • Zephyr SDK (minimum version 4.3.0 – the first release with UNO Q support)
  • ADB tools – to transfer files to the device from the host PC
  • A cloned Zephyr workspace (e.g., ~/zephyrproject/zephyr)

Build and flash a Zephyr sample

The following steps compile and run the classic blinky example on the UNO Q.

# Navigate to your Zephyr workspace
cd ~/zephyrproject/zephyr

# Build the blinky sample for the Arduino UNO Q board
west build -p always -b arduino_uno_q samples/basic/blinky

Transfer the binary to the device

adb push build/zephyr/zephyr.elf /tmp/

Flash the STM32U585 MCU

Open a shell on the UNO Q via ADB and run the remoteocd upload command (paths may need adjusting to match your installation).

adb shell

# Inside the UNO Q shell
/home/arduino/.arduino15/packages/arduino/tools/remoteocd/0.0.4-rc.4/remoteocd \
    upload \
    --adb-path "/home/arduino/.arduino15/packages/arduino/tools/adb/32.0.0/adb" \
    -s "{upload.port.properties.serialNumber}" \
    -f "/home/arduino/.arduino15/packages/arduino/hardware/zephyr/0.52.0/variants/arduino_uno_q_stm32u585xx/flash_bootloader.cfg" \
    "--verbose" \
    /tmp/zephyr.elf

If the process completes successfully, LED 3 will blink green.

Restoring the Sketch Bootloader

Uploading a new sketch from the Arduino App Lab will fail after flashing a Zephyr binary because the STM32U585 still contains the Sketch Bootloader. Re‑install the bootloader to regain normal Arduino sketch uploading:

arduino-cli burn-bootloader -b arduino:zephyr:unoq -P jlink

After this command, the board accepts sketches uploaded via the App Lab as usual.

References

  • Zephyr documentation for Arduino UNO Q:
  • Arduino RemoteOCD repository:
  • Arduino UNO Q schematic (PDF):
Back to Blog

Related posts

Read more »

The RGB LED Sidequest 💡

markdown !Jennifer Davishttps://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%...

Mendex: Why I Build

Introduction Hello everyone. Today I want to share who I am, what I'm building, and why. Early Career and Burnout I started my career as a developer 17 years a...