diff --git a/DomoEsp_v02/MqttSensManager.cpp b/DomoEsp_v02/MqttSensManager.cpp index 4acb2c4..a4e71f0 100644 --- a/DomoEsp_v02/MqttSensManager.cpp +++ b/DomoEsp_v02/MqttSensManager.cpp @@ -12,6 +12,7 @@ MqttSensor::MqttSensor() { ivar=-1; + flags=0; } void MqttSensor::Set(MqttSensor *s) { diff --git a/DomoEsp_v02/config_rf.h b/DomoEsp_v02/config_rf.h index 99f40ee..9a8775f 100644 --- a/DomoEsp_v02/config_rf.h +++ b/DomoEsp_v02/config_rf.h @@ -108,6 +108,48 @@ class ActDomoConfig: public DomoConfig /* */ } }; +class PulSalonPruebConfig: public DomoConfig +{ + public: + PulSalonPruebConfig() + { + velocidadPortSerie=115200; + strcpy(ssidWifi,"Idhun");//nombre wifi + strcpy(keyWifi,"Ardileorca1234.");//key wifi + + strcpy(ideEsp,"Esp8266_pulSalonPrueb");//idenitificador del esp (sera Ășnico) + strcpy(hostMQTT,"192.168.2.50");//servidor mqttBroker + portMQTT=1883;//puerto del servidor mqtt Broker + + refresTimeVars=30;//tiempo de refresco en segundos de las variables + refresTimeSens=15;//tiempo de refresco en segundos de los sensores + + //config lcd-------------------- + lcd.colum=16;//columnas lcd + lcd.lines=2;//lineas + //pines lcd + lcd.rs=0; + lcd.en=0;//eneable + lcd.d0=0; + lcd.d1=0; + lcd.d2=0; + lcd.d3=0; + + } + //configuracion de sensores, variables, lcd--------------------------------- + virtual void ConfigGen(MqttSensManager* sens, MqttVarManager* vars, LcdMQTTViewer *lcd, MqttDesencadenadorManager *des) + { + //sensores-------------------------------------------------------- + + //sens->AddHDT22(D4, "casa/desp"); + // sens->AddDout(D1, "casa/p/LEnt", true); + sens->AddDout(D7, "casa/p/LEnt", true); + sens->AddDin( D1,"casa/p/pul1"); + sens->AddDin( D2, "casa/p/pul2"); + sens->AddDin( D3, "casa/p/pul3"); + sens->AddDin( D4,"casa/p/pulAll"); + } +}; class AutomatismosDomoConfig: public DomoConfig { public: @@ -309,11 +351,11 @@ class PulSalonConfig: public DomoConfig */ //sens->AddHDT22(D4, "casa/desp"); // sens->AddDout(D1, "casa/Salon/LEnt", true); - sens->AddDout(D7, "casa/Salon/LEnt", false); - sens->AddDinAccion( D1, "casa/Salon/pul1"); - sens->AddDinAccion( D2, "casa/Salon/pul2"); - sens->AddDinAccion( D5, "casa/Salon/pul3"); - sens->AddDinAccion( D6, "casa/Salon/pulAll"); + sens->AddDout(D7, "casa/Salon/LEnt", true); + sens->AddDinRetardOff( D1, 1,"casa/Salon/pul1"); + sens->AddDinRetardOff( D2, 1, "casa/Salon/pul2"); + sens->AddDinRetardOff( D5, 1, "casa/Salon/pul3"); + sens->AddDinRetardOff( D6, 1,"casa/Salon/pulAll"); } }; class DespachoDomoConfig: public DomoConfig @@ -403,9 +445,9 @@ class CocinaDomoConfig: public DomoConfig des->AddDes(st); sprintf(st,"{%d}<1 -> !{%d} ",4,5);//accion interruptor des->AddDes(st); - sprintf(st,"{%d}<1&{%d}>0&{%d}=0 -> {%d}=1 ",mov,lauto,lam,lam);//apaga luz si no hay nadie + sprintf(st,"{%d}<1&{%d}>0&{%d}=1 -> {%d}=0 ",mov,lauto,lam,lam);//apaga luz si no hay nadie des->AddDes(st); - sprintf(st,"{%d}<20&{%d}>0&{%d}>0 -> {%d}=0 ",luz,mov,lauto,lam);//enciende luz si hay presencia y esta oscuro + sprintf(st,"{%d}<20&{%d}>0&{%d}>0&{%d}=0 -> {%d}=1 ",luz,mov,lauto,lam,lam);//enciende luz si hay presencia y esta oscuro des->AddDes(st); } @@ -446,9 +488,9 @@ class SalonDomoConfig: public DomoConfig //desencadenaores---------- char st[64]; //Efecto Interruptor----- - sprintf(st,"{%d}>0 -> {%d}=1 & {%d}=1 & {%d}=1 ",pulIall,lamb,lchim, lent);//terminar en espacios + sprintf(st,"{%d}>0 -> {%d}=1 & {%d}=1 & {%d}=0 ",pulIall,lamb,lchim, lent);//terminar en espacios des->AddDes(st); - sprintf(st,"{%d}<1 -> {%d}=0 & {%d}=0 & {%d}=0 ",pulIall,lamb,lchim, lent);//terminar en espacios + sprintf(st,"{%d}<1 -> {%d}=0 & {%d}=0 & {%d}=1 ",pulIall,lamb,lchim, lent);//terminar en espacios des->AddDes(st); //Efecto Pulsadores sprintf(st,"{%d}>0 -> !{%d} ",pulAll,pulIall);//terminar en espacios