#include #include #include #include #include #include #include #include #include #include #include #include //#include #include #include #include #include //#include DeviceAddress da[4] = { {0x28, 0xFF, 0x75, 0x3f, 0x93, 0x16, 0x04, 0xce}, {0x28, 0x85, 0xcd, 0x1b, 0x05, 0x00, 0x00, 0x48}, {0x28, 0xff, 0x79, 0x41, 0x88, 0x16, 0x03, 0x5a}, {0x28, 0x20, 0xbe, 0x1b, 0x05, 0x00, 0x00, 0xdc} }; uint16_t stat[4]; #define MOVE_S D0 #define GREEN D3 #define BLUE D6 #define LED_OUT D5 #define ONE_WIRE D4 #define BUTTON D7 #define RED D8 const char* ssid = "wf-home"; const char* password = "0ndthnrf"; const char* mqtt_server = "192.168.1.10"; #define TOPIC "home/" unsigned long crun; //sensors_event_t temp_event, pressure_event, humidity_event; float tempIn(NAN), tempOut(NAN), press(NAN), hum(NAN), tempHol(NAN), tempMor(NAN), tempHoM(NAN); int lightSP, lightDB, adc; char strFVal[11]; int16_t minCount; byte LCDpage; bool lightOn; //bool bmeread; byte nSens = 0; uint16_t mv, prMV; AsyncMqttClient mqttClient; Ticker mqttReconnectTimer; WiFiEventHandler wifiConnectHandler; WiFiEventHandler wifiDisconnectHandler; Ticker wifiReconnectTimer; struct stData { int SP; int DB; } lightData; void showLCD(int page, bool mv); void callback(char* topic, byte* message, unsigned int length); void publishSec(); void publishMin(); //void reconnect(); void getTemp(); void connectToWifi(); void connectToMqtt(); void onWifiConnect(const WiFiEventStationModeGotIP& event); void onWifiDisconnect(const WiFiEventStationModeDisconnected& event); void onMqttConnect(bool sessionPresent); void onMqttDisconnect(AsyncMqttClientDisconnectReason reason); void onMqttMessage(char* topic, char* payload, AsyncMqttClientMessageProperties properties, size_t len, size_t index, size_t total); void trim(char *s);