Hallo, mein Ziel ist es einen Raw IR Code der ESP8266IR Bibliothek via Mqtt zu "publishen".
In der Seriellen Konsole erhalte ich ihn immer und vollständig aber im MQTTFx nur wenn ein "kurzer" Rawcode emfangen wurde. Stimmt etwas mit der Arraylänge nicht? Hat jemand einen Rat für mich?
if (irrecv.decode(&results)) {
String myString;
for (int i = 1; i < results.rawlen; i++)
{
myString+= (results.rawbuf[i] * RAWTICK);
if ( i < results.rawlen-1 )
myString+=",";
}
char myValue[myString.length()];
myString.toCharArray(myValue,myString.length());
Serial.println(myValue);
client.publish("Wohnung/ESP/IR/REC/",myValue);
irrecv.resume();
}
Bibliotheken:
#include <ESP8266WiFi.h>
#include <PubSubClient.h>
#include <IRremoteESP8266.h>
#include <IRrecv.h>
#include <IRsend.h>
#include <IRutils.h>
Bsp. für eine serielle Ausgabe:
528,596,526,596,526,594,526,596,526,596,528,594,528,1716,528,596,526,594,528,594,528,1716,528,1716,528,598,526,1716,528,596,526,1716,528,1694,550,1718,528,596,526,594,528,1716,52
Bsp. für eine Mqtt Ausgabe:
526,594,526,1716,528,596,526,1716,528,1716,528,1694,550,594,530,594,526,1692,55