Correo: [email protected] - Teléfono: +56979962128

Arduino fue adquirida recientemente por Qualcomm y, junto con ese anuncio, lanzó una placa completamente nueva: el Arduino UNO Q. Mantiene el formato de siempre, pero trae una característica que la distingue de todo lo anterior: es un microcontrolador y un microcomputador con Linux al mismo tiempo, y ambos pueden comunicarse entre sí con facilidad.

La placa Arduino UNO Q, que combina un microcontrolador y un microcomputador con Linux

Qué es el Arduino UNO Q

El Arduino UNO Q combina un microcontrolador STM32U585 con un microcomputador capaz de correr Linux, el SoC Qualcomm Dragonwing QRB2210, todo dentro del formato clásico de una placa Arduino.

Especificaciones del Arduino UNO Q: SoC Qualcomm Dragonwing QRB2210 y microcontrolador STM32U585

Qualcomm Dragonwing™ QRB2210:

  • Cuatro núcleos Arm® Cortex®-A53 a 2,0 GHz
  • GPU Adreno con acelerador de gráficos 3D
  • Dos ISP (13 MP + 13 MP, o 25 MP) a 30 fps

Microcontrolador STM32U585, Arm® Cortex®-M33 de 32 bits:

  • Arm® Cortex®-M33 de hasta 160 MHz
  • 2 MB de memoria flash
  • 786 kB de SRAM
  • Unidad de coma flotante (FPU)

Cómo se programa el Arduino UNO Q

El UNO Q se puede programar igual que un Arduino UNO corriente para controlar sus GPIO desde el Arduino IDE, o bien usar el Arduino App Lab para manejar a la vez el lado del microcontrolador y el del microcomputador.

El microcontrolador (MCU) se programa en C/C++ como cualquier otra placa Arduino, y en el microcomputador (MPU) puedes ejecutar programas en Python.

Aunque una de las funciones más interesantes es poder programar ambos desde el mismo entorno, también puedes centrarte solo en el lado Arduino, o usar únicamente el microcomputador, como harías con una Raspberry Pi.

Los dos cerebros de la placa: el microprocesador QRB2210 y el microcontrolador STM32U585

Es decir, hay tres formas de trabajar con la placa:

  • Arduino clásico: usando solo el microcontrolador.
  • App Lab integrado: un entorno unificado con sketches C/C++ para el Arduino y programas Python para el microcomputador con Linux.
  • Linux autónomo: usando la placa como una Raspberry Pi, accediendo al sistema operativo por SSH o como computador independiente.

Comunicación entre el microcontrolador y el microcomputador

Algo realmente interesante es que ambos pueden intercambiar datos mediante una herramienta llamada Router Bridge.

Por ejemplo: desde el lado Arduino puedes recoger datos de sensores y controlar salidas, y luego pasar esa información al microcomputador para que la procesen programas más complejos. Cosas como ejecutar modelos de inteligencia artificial, procesar imágenes y audio, o conectarse a aplicaciones web avanzadas, todo mientras sigues controlando el hardware a través del STM32.

El Arduino App Lab

El Arduino App Lab es el software recomendado para programar la placa.

Entorno de desarrollo Arduino App Lab, que programa el microcontrolador y el microcomputador a la vez

Ahí escribes los programas del Arduino en C/C++ como siempre, y además puedes escribir y ejecutar programas Python en el microcomputador. Es un entorno de desarrollo todo en uno.

Otra novedad útil son los Bricks: bloques modulares que puedes instalar y arrastrar a tus proyectos para añadir funcionalidades listas para usar, como modelos de IA y otras características complejas.

En resumen, dentro del Arduino App Lab puedes tener:

  • Sketches de Arduino para el MCU
  • Scripts de Python para el MPU
  • Bricks para tu aplicación

Modos de programación

La placa se puede programar de tres maneras distintas desde el App Lab:

  • Conectada al PC: programas la placa directamente desde tu computador por cable USB, con el Arduino IDE o el App Lab.
  • Modo autónomo: todo se ejecuta en la propia placa, como un computador de placa única, usando el App Lab que viene preinstalado.
  • Modo inalámbrico: te conectas por Wi-Fi o Bluetooth para desplegar y depurar código de forma remota desde tu PC o dispositivo móvil.

Se puede usar como computador independiente

Igual que una Raspberry Pi, el Arduino UNO Q puede funcionar como un computador Linux autónomo: le conectas teclado, mouse y monitor, o bien usas tu propio computador para enviar y ejecutar comandos en la terminal por SSH.

Cuando se usa así, puedes aprovechar el App Lab preinstalado para escribir y ejecutar programas tanto para el microcontrolador como para el microcomputador.

Almacenamiento y conectividad

La placa incluye almacenamiento eMMC de 16 GB o 32 GB, más 2 GB o 4 GB de RAM LPDDR4, lo que da acceso rápido a memoria y almacenamiento fiable para aplicaciones embebidas.

Y algo muy importante para proyectos IoT: la placa admite Wi-Fi y Bluetooth.

Conectores de expansión

Además de los conectores GPIO clásicos —que mantienen la compatibilidad con los shields existentes—, la placa trae conectores de alta velocidad en la parte trasera para pantallas, cámaras o dispositivos de audio.

Conectores GPIO clásicos del Arduino UNO Q, compatibles con los shields existentes

También incluye un conector Qwiic, para integrar sensores y actuadores de terceros sin soldar.

Conector Qwiic del Arduino UNO Q, para enchufar sensores y actuadores sin soldar

Y una matriz de LEDs integrada, útil para dar retroalimentación al usuario.

Matriz de LEDs integrada en el Arduino UNO Q mostrando el logo de Arduino

Pinout del Arduino UNO Q

El UNO Q conserva la distribución conocida del UNO clásico: 14 pines digitales de entrada/salida (6 de ellos con PWM), 6 entradas analógicas, pines de alimentación (3,3 V, 5 V y GND) y el conector ICSP. A eso suma interfaces dedicadas de alta velocidad MIPI CSI/DSI para cámaras y pantallas, además del conector Qwiic I2C para encadenar sensores con facilidad.

Las seis entradas analógicas del Arduino UNO Q

Incluye además cuatro pequeños LEDs RGB integrados: dos controlables desde el microcomputador y dos desde el microcontrolador.

Esta imagen resume el pinout completo de la placa:

Diagrama de pines completo del Arduino UNO Q

Para más detalle, conviene revisar el archivo PDF con el pinout completo del Arduino UNO Q en la documentación oficial.

Cómo probar tu Arduino UNO Q

Como decíamos, hay varias formas de usar y programar esta placa. En esta sección vamos a probar rápidamente el microcontrolador y el microcomputador usando el Arduino App Lab en tu computador, con la placa conectada por USB-C.

Para conocer las otras formas de controlar y programar la placa —por SSH, en modo red o como computador autónomo—, puedes consultar el manual de usuario oficial del Arduino UNO Q.

Instalar y ejecutar el Arduino App Lab

1) Entra a la página de descargas de Arduino y descarga el Arduino App Lab.

Página de descarga del Arduino App Lab

2) Ejecuta el archivo de instalación.

3) Abre el Arduino App Lab.

4) Conecta la placa Arduino UNO Q a tu computador con un cable USB-C.

Arduino UNO Q conectado al computador mediante un cable USB-C

5) Espera un momento a que el computador y el entorno reconozcan la placa, y selecciona la opción USB.

Selección de la conexión USB en el Arduino App Lab para reconocer la placa

La aplicación Blink LED

Para probar la placa y hacerte una idea del App Lab, vamos a ejecutar la aplicación de ejemplo Blink LED que viene incluida.

En la barra lateral izquierda, haz clic en Examples y selecciona el ejemplo Blink LED.

Ejemplo Blink LED en la barra lateral de ejemplos del Arduino App Lab

Se mostrarán todos los archivos de la aplicación en la barra lateral.

Archivos del ejemplo Blink LED: una carpeta python para el MPU y una carpeta sketch para el MCU

Fíjate en que hay una carpeta python con el código que corre en el MPU, y una carpeta sketch con el código Arduino que corre en el MCU.

Cómo funciona el ejemplo

La aplicación incluye un archivo README.md que explica su funcionamiento y el código.

Además de mostrar cómo controlar uno de los LEDs integrados del MCU, el ejemplo enseña cómo pasar datos entre el microcomputador y el microcontrolador:

  • El programa en Python ejecuta un bucle que alterna el estado del LED a intervalos regulares.
  • El Router Bridge permite la comunicación entre el programa Python y el sketch de Arduino.
  • El programa Python envía el estado del LED al sketch.
  • El sketch recibe ese estado y controla el LED integrado en consecuencia.

Si abres el archivo main.py, esto es lo que verás:

Código del archivo main.py, que se ejecuta en el microcomputador

Y si abres sketch.ino, verás el sketch de Arduino:

Código del archivo sketch.ino, que se ejecuta en el microcontrolador

Ejecutar la aplicación

Para ejecutarla basta con hacer clic en el botón Run.

Botón Run del Arduino App Lab para compilar y ejecutar la aplicación en la placa

Espera unos minutos mientras compila y carga el código en la placa.

Durante el lanzamiento y mientras la aplicación corre, el programa cambia a la pestaña Console, donde se ve el avance del arranque, el monitor serie y la consola de Python. En este ejemplo concreto no se imprime nada en ninguno de los dos, así que se quedarán vacíos.

Pestaña Console del App Lab, con el avance del lanzamiento, el monitor serie y la consola de Python

Cuando el código empieza a ejecutarse, verás el LED rojo integrado parpadeando cada segundo.

El LED rojo integrado del Arduino UNO Q parpadeando cada segundo

Conclusión

Esta fue una introducción rápida a la nueva placa Arduino UNO Q. Para información más detallada puedes revisar la documentación oficial.

Es una placa que abre bastantes posibilidades para aplicaciones IoT que combinan lo simple de manejar sensores y periféricos con un microcontrolador, con modelos y aplicaciones más complejas que necesitan un microcomputador: ejecutar modelos de IA, montar servidores web, tener tu propia base de datos autoalojada y mucho más.

Ahora bien, si estás partiendo con IoT y microcontroladores, una placa Arduino sencilla, un ESP32 o una Raspberry Pi Pico pueden ser mejores puntos de partida para entender primero cómo funciona un microcontrolador, antes de pasar a algo más complejo como el UNO Q. También puedes usar solo las funciones del MCU y programarlo con el Arduino IDE clásico, aunque para proyectos simples de automatización esa placa queda algo sobrada.


Aprende esto en un curso

Si quieres trabajar a fondo con esta placa y sacarle partido a la combinación de microcontrolador y microcomputador, en MCI Educación tenemos el curso Arduino UNO Q — Sistemas Inteligentes Híbridos.

Fuente

Este tutorial es una traducción y adaptación al español de Arduino UNO Q: Getting Started (Features, Pinout, Examples), publicado en Random Nerd Tutorials. Las imágenes provienen del artículo original.

Aprende esto en un curso

Si prefieres verlo en vivo y con alguien que resuelva tus dudas, estos cursos presenciales de MCI Educación cubren el tema de este tutorial: