Forum Navigation
You need to log in to create posts and topics.

problema personal function y comandos en central mqtt

buenas tardes en la central mqtt tengo creadas 4 funciones personales las dos primeras me mandan un mensaje mqtt y en las otras dos es decir la 3 y la 4 es todo exactamente igual pero cambio el comando pues esas dos funciones no funcionan

esto esta en la funcion 1 que si funciona

if (!clientMQTT.connected()) {connect();}

else{

clientMQTT.publish("cmnd/calefactor/POWER","ON");

delay(100);

clientMQTT.publish("cmnd/calefactor/irsend","{Protocol:NEC,Bits:32,Data:0xFF19E6}");

delay(100);

clientMQTT.publish("cmnd/calefactor/irsend","{Protocol:NEC,Bits:32,Data:0xFF09F6}");

estado= true;

}

y esto en la funcion 3 que no funciona

if (!clientMQTT.connected()) {connect();}

else{

clientMQTT.publish("cmnd/calefactor/irsend","{0,1150,2350,2300,2400,1100,1200,2300,2400,1100,1200,1200,1150,2300,1200,1150,2350,2300,2350,1150,3550,1150,2350,2300,1200,1100,2400,2300,2350,1150,1200,2300,1200,1150,1200,1100,2400,1100}");

}

y el codigo esta bien a lo que me refiero con no funciona es a que la funcion 1 si manda mensaje mqtt pero cuando activo la funcion 2 no sale nada no envia no recibo mensaje.

las funciones y el resto de cosas en la central mqtt funcionan exactamente igual que en las centrales normales no? es decir condicionados,consignas etc...?

Hola doverman

Yo no tengo nada instalado con mqtt así que en ese aspecto no puedo decirte nada, lo que si veo es que en la primera funcion tienes dos (delay). Los delay no funcionan bien con el skecht que genera el software, a mi al principio me trajeron más de un dolor de cabeza porque hacia la función correspondiente y después se saltaba alguna sentencia o la función siguiente no acabada de funcionar.

Como te digo no sé si esto resuelve el problema

 

Saludos

No si la cosa es que el que tiene los delta funciona perfectamente el que lo funciona es el que tengo en personal funciona 3 que ese ni tiene delta ni nada y ese es que ni manda el mensaje por mqtt

Ok tema de los delays.

 

Jugando a las diferencias veo que funcion 1 tienes las comillas que cierran la publicación entre el corchete y paréntesis, en cambio en la funcion 4 la tienes antes del corchete

Prueba a cambiar

cambiado y tampoco funciona yo ya no se que mas mirarle en el codigo del arduino estaba bien ya que al subir scecht me ha dado el fallo lo modifico tambien en el primer post para que no lleve a errores

lo peor o mejor de todo es que copio la parte del topic en el MQTT.FX y la parte del mensaje y la publico y lo manda de maravilla y se enciende lo que se tiene que encender no lo entiendo.

Tal vez tú buffer de datos en el Arduino no sea lo suficientemente grande para mandar ese paquete.

 

Estado = Overload.

Probare que lo se me había ocurrido algo tan simple como poner la función 1 en la 3 haber si ese si que lo manda ya que el de la función 1 100% que funciona