Seeed Studio XIAO ESP32-C6
¿Qué es?
La Seeed Studio XIAO ESP32-C6 es una placa de desarrollo de la familia XIAO que concentra una potencia de conectividad sin precedentes en un factor de forma del tamaño de un pulgar. Su principal atractivo es el uso del chip ESP32-C6, que permite a los desarrolladores crear soluciones que pueden comunicarse a través de prácticamente todos los protocolos inalámbricos de bajo consumo relevantes en el mercado actual.
¿Qué chip/microcontrolador usa?
El cerebro de la placa es el Espressif ESP32-C6. Este avanzado System-on-Chip (SoC) se basa en una arquitectura de doble núcleo:
- Procesador de Alto Rendimiento (HP): Un núcleo RISC-V de 32 bits que opera hasta 160 MHz, encargado de las tareas principales de la aplicación.
- Procesador de Bajo Consumo (LP): Un núcleo RISC-V de 32 bits que opera hasta 20 MHz, ideal para mantener la conectividad y realizar tareas en modos de sueño profundo, optimizando drásticamente el consumo de batería.
Esta arquitectura RISC-V representa una apuesta por el hardware de código abierto, ofreciendo una alternativa moderna y eficiente a las arquitecturas tradicionales.
¿Para qué sirve?
Su capacidad para manejar múltiples protocolos la hace extremadamente versátil para:
- Domótica y Hogar Inteligente: Sirve para crear dispositivos compatibles con Matter, ya que puede usar Thread para la red de malla y Bluetooth para la puesta en marcha (commissioning).
- Gateways Multiprotocolo: Puede actuar como un puente, traduciendo datos entre dispositivos Wi-Fi, Bluetooth, Zigbee y Thread.
- Redes de Sensores Industriales (IIoT): El soporte para Wi-Fi 6 (802.11ax) mejora la eficiencia y el rendimiento en entornos con alta densidad de dispositivos.
- Dispositivos Wearables: Su bajo consumo en modo de reposo y la conectividad Bluetooth 5.3 la hacen ideal para dispositivos alimentados por batería.
¿Qué mejoras tiene frente a versiones anteriores ?
Comparada con la popular XIAO ESP32-C3, la C6 ofrece un salto evolutivo:
- Arquitectura de Doble Núcleo: El añadido de un núcleo de bajo consumo permite una gestión energética mucho más sofisticada.
- Conectividad Ampliada: La C3 solo soporta Wi-Fi 4 y Bluetooth 5. La C6 añade Wi-Fi 6, Bluetooth 5.3, Zigbee y Thread, abriendo la puerta a ecosistemas como Matter.
- Mayor Memoria SRAM: Pasa de 400KB en la C3 a 512KB de SRAM en la C6, permitiendo manejar aplicaciones y pilas de red más complejas.
¿Por qué elegir esta placa y no otra?
Trae en un solo chip WiFi 6, Bluetooth LE, Zigbee y Thread, y es compatible con ESP IDF, el entorno oficial de Espressif. Sirve si todavía no decides qué protocolo inalámbrico vas a usar.
¿Cuándo es mejor usar esta placa en lugar de otras?
Elígela cuando tu proyecto deba ser compatible con múltiples ecosistemas de domótica (Matter) o cuando necesites la eficiencia de Wi-Fi 6 en redes congestionadas. Es ideal para crear un dispositivo que pueda ser controlado por Bluetooth desde un móvil, pero que a la vez participe en una red de malla Zigbee o Thread. En deep sleep consume 15 µA, según Seeed.
Tabla de características técnicas
Pinout de la Seeed Studio XIAO ESP32-C6
Según el wiki de Seeed, D0, D1 y D2 (GPIO0 a GPIO2) son las entradas analógicas A0 a A2. D3 es GPIO21. D4 (GPIO22) es SDA y D5 (GPIO23) es SCL del I2C. D6 (GPIO16) es TX y D7 (GPIO17) es RX de la UART. D8 (GPIO19), D9 (GPIO20) y D10 (GPIO18) son SCK, MISO y MOSI del SPI. El LED de usuario está en GPIO15 y el botón BOOT en GPIO9.
Casi todos los pines tienen más de una función. El detalle está en la página de multiplexado de pines del wiki de Seeed.
Antes de conectar una batería o un sensor
- Polaridad: la batería va soldada a los pads BAT del reverso. Según el wiki de Seeed, el negativo está junto a D8 y el positivo junto a D5. Revisa la serigrafía BAT antes de soldar.
- Nunca al pin 3V3: la placa carga la batería hasta 4,2 V y el ESP32 C6 admite como máximo 3,6 V en su alimentación, según la hoja de datos de Espressif.
- Batería con protección: el esquemático de Seeed muestra el cargador de la placa (SGM40567) y ningún integrado de protección para la celda. Usa una batería de litio que traiga su propio circuito de protección (PCM).
- Pines de 3,3 V: un GPIO acepta como máximo 0,3 V por sobre los 3,3 V de la alimentación, según la hoja de datos de Espressif. Una señal de 5 V necesita un conversor de nivel lógico.
Librerías recomendadas:
El desarrollo en el ESP32-C6 es extremadamente potente y flexible, con varias opciones según el nivel de experiencia del usuario.
ESP-IDF (Entorno Profesional Recomendado):
El Espressif IoT Development Framework (ESP-IDF) es el entorno oficial y más potente para trabajar con los chips ESP32. Se basa en C/C++ y FreeRTOS, y ofrece acceso completo a todas las características del hardware.
- Pilas de protocolo: ESP IDF trae las de WiFi, Bluetooth LE (Bluedroid y NimBLE) y OpenThread. La de Zigbee viene aparte, en el ESP Zigbee SDK de Espressif, que funciona sobre ESP IDF.
- Drivers: Proporciona drivers de bajo nivel para todos los periféricos (GPIO, I2C, SPI, RMT, etc.), optimizados para el máximo rendimiento.
Arduino IDE:
Para un prototipado más rápido y sencillo, el ESP32-C6 es compatible con el entorno Arduino. Es necesario instalar el paquete de placas de Espressif (versión 3.0 o superior).
- WiFi.h: Librería estándar para gestionar conexiones Wi-Fi. La versión para ESP32-C6 incluye soporte para las nuevas características de Wi-Fi 6.
- BLE: Librerías de Bluetooth Low Energy del paquete de Espressif. El ESP32 C6 no tiene Bluetooth Clásico, así que BluetoothSerial.h no funciona.
- Librerías de terceros: La mayoría de librerías populares para sensores (I2C/SPI) como las de Adafruit o SparkFun son compatibles.
PlatformIO / C++:
PlatformIO integra el ESP-IDF y el framework de Arduino en un entorno de desarrollo profesional como VSCode.
- Framework esp-idf: Permite usar el SDK oficial de Espressif con las ventajas de la gestión de proyectos y librerías de PlatformIO. Es la combinación recomendada para proyectos serios.
- Framework arduino: la plataforma oficial de PlatformIO (espressif32) trae la XIAO ESP32 C6 solo con el framework ESP IDF. Para programarla con Arduino usa el Arduino IDE con el paquete esp32 de Espressif en versión 3.0.0 o superior.
MicroPython:
MicroPython tiene firmware oficial para el ESP32 C6 (ESP32_GENERIC_C6) desde la versión 1.24.0, publicada el 25 de octubre de 2024. Se descarga en micropython.org.
Preguntas frecuentes
¿Cómo conecto una batería de litio a la XIAO ESP32 C6?
Suelda una batería de litio recargable de 3,7 V a los pads BAT del reverso. El negativo está junto a D8 y el positivo junto a D5. La placa trae circuito de carga con su LED, así que la batería se carga cuando conectas el USB C. Con batería, el pin 5V queda sin tensión. No conectes la batería al pin 3V3. Ese pin es la salida del regulador de la placa y por ahí la batería no se carga. Para leer su voltaje tienes que soldar un divisor 1 a 2 con resistencias de 200 kΩ hacia A0.
Mi computador no reconoce la placa. ¿Qué hago?
Revisa primero que el cable USB C sirva para datos y no únicamente para carga. Si el puerto sigue sin aparecer, entra en modo BootLoader. Mantén presionado el botón BOOT mientras conectas el cable al computador y suéltalo después. En Arduino IDE necesitas el paquete esp32 de Espressif en versión 3.0.0 o superior.
¿Cómo uso una antena externa en el conector U.FL?
La placa trae una antena cerámica integrada y un conector U.FL, y el cambio entre las dos se hace por código con su switch de RF. Pon GPIO3 en LOW para activar el switch y GPIO14 en HIGH para elegir la antena externa. Conectar la antena no basta si no cambias esos pines. La antena externa tiene que ser de 2,4 GHz, la banda que usan el WiFi, el Bluetooth LE, Zigbee y Thread en este chip.
¿Sirve para Zigbee, Thread y Matter?
Sí. El ESP32 C6 trae una radio IEEE 802.15.4, que es la que usan Zigbee 3.0 y Thread, además de WiFi 6 y Bluetooth LE en la misma antena. Para Matter puede usar Thread como red y Bluetooth LE para la puesta en marcha. Espressif tiene pilas oficiales de Zigbee y de OpenThread para este chip. Ten en cuenta dos límites. El WiFi es solo de 2,4 GHz y el chip no tiene Bluetooth Clásico, así que BluetoothSerial.h no funciona. En Arduino IDE, Matter necesita la partición Huge APP (3MB No OTA/1MB SPIFFS), que eliges en Herramientas, opción Partition Scheme, porque el programa no cabe en los 1,2 MB de la partición por defecto. La documentación de Espressif pide además activar Erase All Flash Before Sketch Upload en el mismo menú. Para Zigbee, elige en Herramientas el modo en Zigbee mode (ED para un dispositivo final, ZCZR para un coordinador o router) y la partición Zigbee 4MB with spiffs.




