En esta entrada vamos a integrar M5Stick S3 en Home Assistant, la nueva versión de uno de los dispositivos makers más populares.
Índice
M5Stick S3 y Habbit Pocket
El M5Stick S3 es la nueva versión del archiconocido Stick C Plus 2 (ambos de la marca M5Stack), un dispositivo que ya destacaba por ser tremendamente poderoso a pesar de lo pequeño y barato que es. Estos te permiten, por ejemplo, crear tu propio «Flipper Zero» con proyectos abiertos como Bruce.
Pero antes de nada, hagamos un repaso de las características del M5Stick S3:
- Corre sobre una placa ESP32-S3-PICO-1-N8R8, con 8 MB de memoria Flash y 8 MB de PSRAM.
- Incorpora una pantalla LCD de 1,14″ (135×240 píxeles), compatible con LVGL, un sensor IMU de 6 ejes y dos botones programables.
- Incorpora un micrófono y altavoz que nos permiten usarlo como asistente de voz.
- Cuenta con transmisor y receptor de infrarrojos, por lo que te permite controlar otros dispositivos.
- Funciona con una batería de litio de 250 mAh, que se recarga por su puerto USB-C.

Sin duda alguna, es un dispositivo superútil y versátil. La única pega que tiene es que, a día de hoy, no existe integración «oficial» con Home Assistant, ya que sus componentes son bastante modernos. No obstante, he conseguido crear unos componentes ‘custom’ que me han permitido crear este proyecto!
Lo he bautizado como el «Habbit Pocket», porque sigue la serie de dispositivos que he creado últimamente. Como su nombre indica, aprovechando su reducido tamaño, se trata de un intuitivo dispositivo «de bolsillo» que puedes colocar fácilmente en un llavero. Esto puede ser muy útil, por ejemplo, para tus invitados.
Requisitos previos
Para poder integrar M5Stick S3 en Home Assistant previamente necesitas:
- Tu M5Stick S3.
- Haber instalado ESPHome en Home Assistant.
- Un cable USB-C para alimentar la placa de DATOS (con un cable de carga no vas a poder instalar el software).
Configuración en ESPHome
Sigue estos pasos para integrar M5Stick S3 en Home Assistant
- En Home Assistant, ve a tu complemento de ESPHome, pulsa en New device > Continue > New Device Setup.
- Dale un nombre a tu dispositivo (por ejemplo, “Habbit Pocket”) y pulsa en “Next”.
- Como tipo de dispositivo, selecciona “ESP32-S3”. Observarás de fondo que se ha creado un nuevo bloque para tu dispositivo.
- Pulsa en “Skip” y haz clic en “Edit”, sobre el bloque de tu dispositivo. Copia el código que aparece y consérvalo, ya que vas a necesitar alguna parte del mismo.
- Reemplázalo por el código de nuestro repositorio de GitHub y actualiza tus credenciales, utilizando el código que copiaste en el paso anterior. En concreto, me refiero a esta parte del código:
# Enable Home Assistant API
api:
encryption:
key: "bg6hash6sjdjsdjk02hh0qnQeYVwm123vdfKE8BP5"
ota:
- platform: esphome
password: "asddasda27aab65a48484502b332f"
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "Assist Fallback Hotspot"
password: "ZsasdasdHGP2234"
- Cuando hayas terminado de editar el código, pulsa en “Save” e “Install”. Selecciona la opción “Manual download” y espera a que el código se compile.
- Cuando termine, selecciona la opción «Factory format» para descargar el fichero ‘.bin’ correspondiente.
- Ahora ve a la página de ESPHome y pulsa en “Connect”. En la ventana emergente, selecciona tu placa y pulsa en “Conectar”.
- Pulsa en “Install” y selecciona el fichero ‘.bin’ obtenido en el paso 7. De nuevo, pulsa en “Install”.
- Vuelve a Home Assistant y ve a Configuración > Dispositivos y servicios. Lo normal es que tu dispositivo haya sido descubierto y aparezca en la parte superior, esperando únicamente a que pulses el botón de “Configurar”. De lo contrario, pulsa en el botón de “Añadir integración”, busca “ESPHome” e introduce la IP de tu placa en el campo ‘Host’. Como siempre, te recomiendo que asignes una IP fija en tu router para evitar fallos en el futuro si esta cambia.
- Para terminar, ve a Configuración > Dispositivos y servicios > ESPHome. Pulsa sobre el enlace «Configurar» correspondiente a tu dispositivo. En la ventana emergente, marca la casilla «Permitir que el dispositivo realice acciones de Home Assistant» y pulsa en «Enviar». Esto va a permitir que podamos controlar nuestros dispositivos desde la pantalla.
Si todo ha ido bien, deberías ver esto en tu dispositivo.

Personalización y funcionamiento del Habbit Pocket
Puesto que este dispositivo está pensado para ser muy intuitivo y sencillo de usar, también es muy fácil de personalizar. Básicamente, hay dos aspectos en los que debes fijarte:
- Puedes personalizar el aspecto de la interfaz, cambiando la URL de la imagen que quieres utilizar (en el apartado ‘icon’ del principio del código), o modificando los colores, fuentes, iconos… que encuentres a lo largo del código.
- Puedes añadir tantos dispositivos como quieras, añadiéndolos en el apartado «Dispositivos controlables» del principio del código. Para cada uno de ellos tendrás que indicar la entidad que lo controla en Home Assistant, la acción que permite hacer ‘toggle’ y el icono que lo representa en el menú. Recuerda también actualizar el total de dispositivos en ‘devices_count’ y replicar los bloques correspondientes en los apartados de ‘image’ y ‘script’.
En cuanto a la forma de utilizarlo:
- Haz una doble pulsación sobre el botón central para activar la pantalla.
- Haz una pulsación prolongada sobre el botón central para activar el asistente de voz.
- Pulsa el botón lateral para entrar en el menú de dispositivos.
- Desde el menú de dispositivos, pulsa el botón lateral para moverte entre dispositivos y una doble pulsación para volver a la pantalla de inicio. Utiliza el botón central para hacer ‘toggle’ en los dispositivos.
- La pantalla se apaga automáticamente por inactividad (que puedes personalizar con el parámetro ‘idle_time’ al principio del código).

