Arduino UNO Q
Overview
The Arduino UNO Q is a development board featuring a Qualcomm QRB2210 processor (Quad core ARM Cortex-A53) and an STM32U585 microcontroller. The board is designed around the Arduino form factor and is compatible with traditional Arduino shields and accessories. This port targets the STM32U585 microcontroller on the board.
Hardware
Qualcomm QRB2210 Processor (Quad core ARM Cortex-A53)
STM32U585 Microcontroller (ARM Cortex-M33 at 160 MHz)
2 Mbyte of Flash memory and 786 Kbytes of RAM
2 RGB user LEDs
One 13x8 LED Matrix
Internal UART and SPI buses connected to the QRB2210
Built-in CMSIS-DAP debug adapter (through QRB2210)
Supported Features
The arduino_uno_q board supports the hardware features listed below.
- on-chip / on-board
- Feature integrated in the SoC / present on the board.
- 2 / 2
-
Number of instances that are enabled / disabled.
Click on the label to see the first instance of this feature in the board/SoC DTS files. -
vnd,foo -
Compatible string for the Devicetree binding matching the feature.
Click on the link to view the binding documentation.
Programming and debugging
The arduino_uno_q board supports the runners and associated west commands listed below.
| flash | debug |
|---|
Debug adapter
The QRB2210 microprocessor can act as an SWD debug adapter for the STM32U585.
This is supported by the openocd binary available in the board, and its
functionality can be made available to the computer via adb port forwarding
commands.
This interface is not yet integrated with the west flash command, but
debugging is supported.
Debugging
Debugging can be done with the usual west debug command after starting the
debug server on the board. The following commands, run from an USB-connected
computer, allow to debug the Blinky application on the
Uno Q board:
adb forward tcp:3333 tcp:3333 && adb shell arduino-debug
# in a different shell
west build -b arduino_uno_q samples/basic/blinky
west debug -r openocd
Restoring the Arduino sketch loader
The Arduino UNO Q comes with a pre-installed application that acts as a loader for user sketches, and is shipped as part of the Arduino Zephyr cores. If you overwrite this application, you can restore it later by issuing the following command from an USB-connected computer:
adb shell arduino-cli burn-bootloader -b arduino:zephyr:unoq -P jlink
The same arduino-cli command can also be directly used on the board, when
in standalone mode:
arduino-cli burn-bootloader -b arduino:zephyr:unoq -P jlink