Hallo,
da imich jetzt auch das "MQTT-Fieber" gepackt hat und IR-Signale per Raw übertagen wollte, bin ich auf
https://github.com/1technophile/OpenMQTTGatewayaufmerksam geworden(dank Google). Das klang schonmal interessant eine MiniIRCUL-ähnliche Funktion zu haben ohne 2 Mikrocontroller dafür nutzen zu müssen.
Zusätzlich noch 433MHz Funk, Temperatur und Luftfeuchte mit Sachen aus meiner Grabbelkiste und das auch noch per MQTT...
Also einen ESP8266-201 mit einigen IR-Dioden über einen Transistor geschaltet + DHT22 + FS1000A + Reciever + IR-Empfangsdiode auf einer Platine mit "edelster Dead-Bug-Methode" (deswegen auch keine Bilder - hehe) mit einem PC-Netzteil (3,3v + 5V) versorgt.
Sketch runtergeladen und die User_config.h mit WLAN, MQTT-Parametern, MQTT-Topics angepasst (von home auf fhem)und die richtigen Pins bei ClassicWiring angepasst.
Danach noch per Anleitung im Wiki die MQTT_MAX_PACKET_SIZE auf 512 erhöht um IR-Raw versenden und Empfangen zu können und sicherheiitshalber noch die pubIRunknownPrtcl true gesetzt.
Den angepassten Sketch auf den ESP201 geladen und los geht's...
In FHEM ein MQTT_Device erstellt.
Mit einem autoSubscribeReadings auf fhem/IRtoMQTT/+ hat man dann die IR-Readings in FHEM.
define IRMQTT MQTT_DEVICE
attr IRMQTT autoSubscribeReadings fhem/IRtoMQTT/+
Danach hab ich einen Dummy erstellt
define IRsender dummy
attr IRsender readingList IRRaw IRGC IRLG IRSony IRCOOLIX IRWhynter IRNEC IRDISH IRSharp IRSAMSUNG IRRC5
attr IRsender setList IRRaw IRGC IRLG IRSony IRCOOLIX IRWhynter IRNEC IRDISH IRSharp IRSAMSUNG IRRC5
Darauf kommt dann eine MQTT_BRIDGE, die MQTTtoIR heisst.
Ein publishReading_IRRaw auf das Topic fhem/commands/IR_Raw
define MQTTIR MQTTT_BRIDGE IRsender
attr MQTTIR publishReading_IRCOOLIX fhem/commands/IR_COOLIX
attr MQTTIR publishReading_IRDISH fhem/commands/IR_DISH
attr MQTTIR publishReading_IRGC fhem/commands/IR_GC
attr MQTTIR publishReading_IRLG fhem/commands/IR_LG
attr MQTTIR publishReading_IRNEC fhem/commands/IR_NEC
attr MQTTIR publishReading_IRRC5 fhem/commands/IR_RC5
attr MQTTIR publishReading_IRRaw fhem/commands/IR_Raw
attr MQTTIR publishReading_IRSAMSUNG fhem/commands/IR_SAMSUNG
attr MQTTIR publishReading_IRSharp fhem/commands/IR_Sharp
attr MQTTIR publishReading_IRSony fhem/commands/IR_Sony
attr MQTTIR publishReading_IRWhynter fhem/commands/IR_Whynter
und schon kann man mit:
setreading IRsender IRRaw <den Wert der in fhem/IRtoMQTT/raw empfangen wurde>
einen IR-Befehl absenden und das ganze in ein notify einbauen.
setreading IRsender IRGC <Wert aus dem IR GlobalCache>
sendet einen IR-Code aus
https://irdb.globalcache.com/zu RF bin ich noch nicht gekommen, aber falls das nicht dekodiert werden sollte frage ich mich ob man das durch das SignalDUINO-Plugin jagen könnte.
Bluetooth-Module hab ich erst bestellt und wenn die aus China hier sind erweiter ich das hier.
erstmal viel Spass beim Nachbauen und testen
cya
[edit: 19.8.17 : code-tags vervollständigt]