El 8 de septiembre, Seeed Studio anunció tres nuevos gadgets: una pantalla IPS de 0,96 pulgadas, otra de 1,14 pulgadas y otra de 1,47 pulgadas, cada una una placa portadora con un XIAO nRF52840 Plus ya soldado. Pantalla, botones, una IMU de 6 ejes, un micrófono y un conector de batería, en algo que cabe en la yema de un dedo.
Ya están en Velxio. Puedes abrir una, pulsar Run y ver cómo el propio firmware de demostración de Seeed dibuja sobre el cristal — sin pedir una placa y en el plan gratuito. La placa del lienzo está dibujada tal y como Seeed la fotografía, por delante y por detrás: el cristal, los botones USR y el micrófono en una cara; el XIAO nRF52840 Plus soldado, el zócalo de la batería, el interruptor de encendido, la ranura de la tarjeta o el puerto Grove, y los pads que puedes cablear, en la otra.

Las tres placas
Las tres llevan el mismo ordenador — un XIAO nRF52840 Plus — y los mismos sensores a su alrededor: una IMU de 6 ejes, un micrófono PDM, Bluetooth Low Energy y un conector de batería JST con detección de carga. Lo que cambia es el cristal y lo que Seeed puso a su alrededor.
XIAO 0.96” IPS Display — un panel ST7789, 80 x 160, con dos botones de usuario. La pequeña: una lectura de estado, un wearable, cualquier cosa que necesite una línea de texto y un número.

XIAO 1.14” IPS Display — un panel ST7789, 135 x 240, tres botones de usuario y, a diferencia de las otras dos, un conector Grove I2C. Ese conector es la razón por la que esta es la que hay que elegir si quieres colgarle un sensor.

XIAO 1.47” IPS Touch Display — un panel JD9853A, 172 x 320, con una capa táctil capacitiva y una ranura microSD. La insignia de la gama, y la que más cosas tiene dentro.
Lo que el navegador dibuja realmente

Esas tres imágenes no son maquetas. Cada una es el framebuffer de un controlador de pantalla emulado, rellenado por el propio firmware compilado de Seeed.
Merece la pena detallar la cadena, porque es justo el quid de la cuestión. Tu sketch lo compila un arduino-cli real con el propio core nRF52 de Seeed, para el FQBN de la propia placa. El firmware resultante lo ejecuta instrucción a instrucción un nuevo motor nRF52840 en el navegador — el mismo tipo de motor que ya ejecuta las placas ESP32 y RP2040 en Velxio. El firmware inicializa el periférico SPI y empieza a enviar bytes; un modelo del ST7789 lee las líneas de chip-select y de dato/comando de los pines en cada byte y decodifica lo que se le está ordenando hacer. Lo que ves en pantalla es el contenido de la memoria de ese controlador.
No se intercepta nada a nivel de librería. Si sustituyes la librería gráfica de Seeed por tus propias escrituras SPI, el panel sigue dibujando.
Empieza con el test gráfico
- Abre velxio.dev/example/xiao-114-graphictest. No necesitas cuenta.
- Pulsa el botón de reproducir en la barra de herramientas. El sketch se compila en los servidores de Velxio — la primera compilación de una librería nueva tarda un par de minutos, las siguientes son rápidas — y luego arranca la placa.
- Observa cómo el panel recorre diez primitivas de dibujo: barras de color, líneas, rectángulos, círculos, triángulos, texto, un degradado de píxeles. El monitor serie de la parte inferior imprime cuánto tardó cada una, exactamente igual que lo hace por USB sobre la mesa.
- Luego cambia algo. Intercambia un color, añade un
fillCircle, vuelve a ejecutarlo.
Inclínala, tócala, pon un archivo en la tarjeta
El panel es la parte difícil, pero no es la parte interesante. Lo que hace que merezca la pena simular estas placas es todo lo demás que llevan, y todo ello está conectado a algo que puedes mover con el ratón.
La IMU. La demo Electronic Quicksand de Seeed deja caer unos cientos de granos de arena y los deja caer hacia donde se incline la placa. Pulsa Sensors en la barra de herramientas del lienzo, arrastra el punto del pad de inclinación y la arena se acumulará en la esquina. El LSM6DS3TR-C responde por I2C en su dirección real y con la sensibilidad que especifica su datasheet, así que los números que convierte el sketch son los números que le daría el componente. El mismo pad ahora controla la IMU del XIAO nRF52840 Sense, MG24 Sense y nRF54L15 Sense a secas, que llevan el mismo componente.
El cristal táctil. En la placa de 1,47 pulgadas, el controlador capacitivo responde con el mismo informe de 14 bytes que lee el driver de Seeed, con su línea de interrupción bajada mientras hay un dedo apoyado. Dibuja sobre el panel con el ratón y los círculos caerán donde hayas hecho clic.
La ranura microSD. La tarjeta y el panel comparten un mismo bus SPI en la placa real, distinguidos por sus chip selects, y aquí también lo comparten. Los archivos de tu proyecto están en la tarjeta cuando el sketch la monta, y puedes añadir los tuyos a través del panel SD Card de la placa.
La batería. Esta es la sorpresa más agradable. La demo de batería de Seeed no se fía de un voltaje estático — conectada por USB, el propio nodo del cargador puede parecer una celda — así que primero aprende una línea base de solo USB y solo declara que hay batería presente tras una caída sostenida. Baja el deslizador de la batería en ese mismo panel Sensors una décima de voltio y observa cómo la máquina de estados del sketch se decide.

Lo que sacó a la luz ejecutar el código del fabricante
Catorce de los quince ejemplos de la galería son archivos de la propia Seeed, modificados solo de dos maneras: la nota de portado de la parte superior se convierte en una cabecera breve que indica de dónde viene el sketch, y se elimina un #include que el core ya proporciona. Ejecutarlos encontró dos problemas reales en Seeed_GFX2 1.0.0, la librería gráfica con la que se envían estas placas.
No compila en un sistema de archivos sensible a mayúsculas y minúsculas. El catálogo de productos de la librería incluye XIAO_ePaper_Boards.h y reTerminal_ePaper_Boards.h, mientras que los archivos se escriben EPaper — y cada una de esas dos cabeceras nombra después su propia cabecera de configuración de la misma manera incorrecta, así que el segundo par solo aparece una vez que has arreglado el primero. Cuatro líneas #include en tres archivos. En macOS y Windows eso se resuelve; en Linux — que es lo que ejecuta una granja de compilación — todos los sketches que tocan la librería se detienen con “No such file or directory”. Sigue hoy en la rama main del upstream. Velxio repara las cuatro líneas cuando descarga la librería, así que los ejemplos compilan.
La configuración del panel de 1,14 pulgadas tiene mal el orden de colores. La librería configura esa placa como RGB; el panel está cableado como BGR. Seeed lo sabe — sus propias demos para la placa llevan una anulación local del sketch con el comentario “the panel is physically wired for BGR color order” — pero la configuración de la propia librería no se ha puesto al día, y puedes ver la consecuencia en la propia grabación que hace Seeed de su test gráfico en la wiki: la primera barra de color se dibuja en rojo y sale azul, y la que se dibuja en amarillo sale cian.
Esa segunda cambió cómo modela Velxio el panel. Un modelo de pantalla que lleva un flag fijo de “intercambia rojo y azul” no puede reproducir esto, porque el intercambio no es una propiedad solo del panel — es lo que ocurre cuando el cableado del panel y el bit de orden de color del controlador no coinciden. Así que Velxio modela los dos por separado y deja que se cancelen. Un sketch que usa la anulación de Seeed se renderiza correctamente; un sketch que se cree lo que dice la librería muestra el mismo intercambio de rojo y azul que mostraría sobre tu mesa. La misma corrección se aplica a la inversión de pantalla, que es como los fondos negros de esa placa dejaron de salir blancos.
Lo que no está modelado
Siendo sinceros sobre las carencias, porque un simulador que en silencio no hace nada es peor que uno que lo dice:
- El micrófono PDM y los pads de salida I2S. Nada en el lienzo los alimenta, así que las demos de barra de voz y grabadora de Seeed deliberadamente no están en la galería en lugar de estar dibujando una línea plana.
- Bluetooth. La radio del nRF52840 queda fuera del alcance de este motor.
- Raise to Wake, la otra demo de IMU de Seeed, necesita la interrupción de wake de la IMU y el modo System ON sleep del chip. Ninguno de los dos está modelado todavía.
Todos los ejemplos de la galería
XIAO 0.96” IPS Display
XIAO 1.14” IPS Display
- GraphicTest
- Grove SHT31 en el conector I2C
- Los tres botones de usuario
- Estado de la batería
- Electronic Quicksand (la IMU)
XIAO 1.47” IPS Touch Display
- GraphicTest
- Touch Circle
- Leer texto de la microSD
- Estado de la batería
- Electronic Quicksand (la IMU)
- La demo del panel
- Diagnóstico solo LCD
Las placas están en la tienda de Seeed — la de 0.96 pulgadas, la de 1.14 pulgadas y la de 1.47 pulgadas táctil — y los sketches de demo están en Seeed-Projects/Display-Gadgets. Pruébalos aquí primero; los sketches se mueven igual en ambos sitios sin cambios.
Fotografías de las placas cortesía de Seeed Studio.