• Banner
    Arduino,  Hardware

    Haciendo inteligente mi aire acondicionado – Parte 2

    << Continuación de la parte 1

    Vuelvo desde el inframundo para continuar con mi «aire acondicionado inteligente» 😄

    En la anterior entrada, conseguimos echar a andar un sketch de prueba que permitía controlar el aire acondicionado mediante un arduino mega. Ahora toca portar el sketch a un ESP-01 para hacer uso de su conectividad WiFi y tamaño compacto, ya que no parece haber demasiado hueco dentro de la unidad split del aire acondicionado.

    Al igual que con el proyecto de mi lavadora inteligente (que sigue funcionando genial un año después 😊), la idea sería usar MQTT para la comunicación con mi servidor central openHAB, por lo que necesitaremos la librería PubSubClient.

    #include <ESP8266WiFi.h>
    #include <WiFiClient.h>
    #include <PubSubClient.h>
    
    .
    .
    .
    
    void reconnect() {
      // Loop until we're reconnected
      while (!client.connected()) {
        // Attempt to connect
        if (client.connect(mqttClientId, mqttUser, mqttPassword)) {
          // Once connected, resubscribe
          client.subscribe(mqttPowerCommandTopic);
          client.subscribe(mqttModeCommandTopic);
          client.subscribe(mqttTempCommandTopic);
          client.subscribe(mqttSpeedCommandTopic);
        } else {
          // Wait 5 seconds before retrying
          delay(5000);
        }
      }
    }

    Para la gestión de conexiones WiFi, he encontrado una librería que nos permite configurar de nuevo la conexión WiFi en caso de que cambiemos de red, sin tener que reprogramar la placa, lo que nos viene genial. Se llama WiFiManager. En este caso, le indicamos que, en caso de no poder conectarse por WiFi a nuestro router, abra una conexión para realizar la configuración, y reintente la conexión pasados 3 minutos (180 segundos).

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Ver
Privacidad