luego modificar el fichero User_Setup.h  C:\Users\phari\Documents\Arduino\libraries\TFT_eSPI

A continuación os dejamos el código completo del correspondiente .INO, con comentarios suficientes como para que podáis usarlo de referencia y, con suerte, ahorraros una parte del tiempo que a nosotros nos ha costado conseguir que todo funcione como debería.

Acceso a mi pool publico en NMminer

Uno de los momentos “divertidos” del proyecto ha sido el autodiscovery MQTT: en teoría, Home Assistant debería crear automáticamente los sensores definidos desde Arduino… pero en la práctica nos encontramos con un error tan críptico como inútil. Tras varias horas de depuración, logs, pruebas y algún que otro suspiro existencial, descubrimos que el problema no era la lógica, ni el formato JSON, ni el topic… sino algo mucho más prosaico: el tamaño máximo del payload.

Uno de nuestros sensores generaba en su definición un mensaje que excedía los 128 bytes por defecto, así que Home Assistant simplemente ignoraba la creación del sensor. La “solución”, por llamarla de alguna manera, fue ampliar ese límite a 1024 bytes en el fichero PubSubClient.h de la correspondiente librería PubSubClient.

Acceso a mi pool publico en NMminer.

Un cambio trivial que, por supuesto, tardamos más de lo que nos gustaría admitir en encontrar.

Tampoco fue precisamente un paseo convertir nuestro logo en PNG a un fichero .h sin halos blancos, sin transparencias traicioneras y sin que la pantalla TFT pareciera recién salida de un paintball. La teoría decía que bastaba con aplicar un simple rgb888_to_rgb565 y listo; la práctica, en cambio, nos recordó que nada es “simple” cuando se mezclan PNGs, canales alfa y librerías de terceros. Al final lo resolvimos escribiendo un programita en Python que, sobre el papel, era “sencillo”… aunque nos llevó más iteraciones de las que nos gustaría admitir. Pero bueno, esa historia merece capítulo propio, así que la dejamos para otro día.

Otra de las cosas que no nos ha dejado del todo satisfechos es el comportamiento de la CYD cuando, por arte de magia o por capricho del router, se pierde la conexión con Home Assistant. En la versión actual del software que hemos hecho, la placa solo comprueba la conexión al inicio, como si la WiFi fuese una entidad estable, fiable y digna de confianza. La realidad, por supuesto, es que la WiFi y MQTT tienen la mala costumbre de desconectarse justo cuando más los necesitas, y nuestra CYD —muy obediente ella— se queda mirando al vacío sin intentar reconectar. Lo ideal sería añadir una comprobación periódica de estado, tanto de la WiFi como del cliente MQTT, y relanzar la conexión cuando toque. Nada dramático, pero sí una mejora necesaria para que la estación no se convierta en un adorno cuando el router decide echarse la siesta.

103
Suscribirse
Notificación
1 Comment
1
0
¡Aquí puedes dejar tus comentarios!x