360 Grad IR WLAN Gateway

Begonnen von gloob, 08 Juni 2017, 21:16:36

Vorheriges Thema - Nächstes Thema

gloob

Würdest du vielleicht bitte hier posten wie du das Senden integriert hast.
Kommt bestimmt nochmal jemand und sucht eine Lösung.
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

Frank_Huber

#16
wenn es in FHEM mal läuft gerne.
Da stell ich mir einen DUMMY und ein DOIF vor.
dann per "SET IR_COMMANDS TV_POWER" z.B. TV einschalten

Hab vorhin ganz ohne FHEM manuell gesendet.
Werd heute Abend zuhause dann mal über FHEM testen.

EDIT: Hab es mal ungetestet eingerichtet.

Der Dummy zum Kommandos absetzen:
define IR_COMMAND dummy
attr IR_COMMAND group IR
attr IR_COMMAND room _Wohn/Ess
attr IR_COMMAND setList RADIO_POWER TV_POWER


Der DOIF zum Befehle ausführen:
define DOIF_IR_COMMANDS DOIF ([IR_COMMAND] eq "RADIO_POWER") ({GetHttpFile("http://192.168.112.232","/ir?code=FF08F7&bits=32&protocol=NEC")})\
DOELSEIF ([IR_COMMAND] eq "TV_POWER") ({GetHttpFile("192.168.112.232","/ir?code=FF08F7&bits=32&protocol=NEC")})
attr DOIF_IR_COMMANDS do always
attr DOIF_IR_COMMANDS group IR
attr DOIF_IR_COMMANDS room _Wohn/Ess
attr DOIF_IR_COMMANDS verbose 0


jeder IR Befehl müsste da im Dummy in die SETLIST und als eigener Zweig ins DOIF.

Werde das ganze heute Abend zuhause testen und nochmals berichten.

gloob

#17
Ich habe jetzt mal die Firmware im ersten Post angehängt als 7z Datei. Die Version ist noch ungetestet sollte aber rein theoretisch funktionieren.

Änderungen:

  • Update auf aktuellste Version der IR Bibliothek
  • Integration zum Senden von Raw Codes
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

CarstenF

Hallo,
sag mal, das FW Update wird über die Arduino IDE gemacht, oder? Dann benötigt man aber Arduino core for ESP8266 WLAN chip, richtig?
Ist die IR Bibliothek da schon mit drin oder muß man die separat noch aufspielen.
Gruß C.
Raspberry Pi4
CUL 868, CUL 433, LaCrosse Gateway, Zigbeetomqtt2, HUE, Homematic
Max-Cube umgeflasht
MAX!, FhemtoFhem, Homebridge, FhemConnector, IR_Gateway und sonst auch noch allerlei Spielzeug....

gloob

Ja die Software wird über die Arduino IDE aufgespielt.

Folgende Bibliotheken müssen installiert werden:

ZitatIRremoteESP8266 - by Sebastien Warin, Mark Szabo, Ken Shirriff, David Conran - V2.0
WifiManager - by tzapu - V0.12.0

Folgende Boarddefinitionen müssen noch über die Boardverwaltung eingebunden werden:

Zitatesp8266 - by ESP8266 Community - V2.3.0

Dafür bitte folgende Boardverwalter URL einbinden:

Zitathttp://arduino.esp8266.com/stable/package_esp8266com_index.json
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

Frank_Huber

nach dem Update erkennt er im serial monitor keine meiner Fernbedienungen mehr.
Hab grad heute vormittag alle Codes eingelesen.

kannst Du bitte die "alte" Firmware nochmal bereitstellen?

gloob

Die alte Firmware ist im ersten Post zu finden.
Ich hoffe, dass es nicht an der IRremoteESP8266 Version liegt. Ansonsten bitte die IRremoteESP8266 auf Version 1.2.0 downgraden.
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

CarstenF

Super, danke für die Antwort. Werde heute Abend ausprobieren.


Gesendet von iPad mit Tapatalk
Raspberry Pi4
CUL 868, CUL 433, LaCrosse Gateway, Zigbeetomqtt2, HUE, Homematic
Max-Cube umgeflasht
MAX!, FhemtoFhem, Homebridge, FhemConnector, IR_Gateway und sonst auch noch allerlei Spielzeug....

Frank_Huber

1.0 mittlerweile gefunden und getestet.

Ergebnis:
Arduino: 1.8.1 (Windows 7), Board: "WeMos D1 R2 & mini, 80 MHz, 57600, 4M (3M SPIFFS)"

IR_Blaster_1.0:64: error: variable or field 'ircode' declared void

void ircode(decode_results *results) {

             ^

IR_Blaster_1.0:64: error: 'decode_results' was not declared in this scope

IR_Blaster_1.0:64: error: 'results' was not declared in this scope

void ircode(decode_results *results) {

                             ^

IR_Blaster_1.0:75: error: variable or field 'encoding' declared void

void encoding(decode_results *results) {

               ^

IR_Blaster_1.0:75: error: 'decode_results' was not declared in this scope

IR_Blaster_1.0:75: error: 'results' was not declared in this scope

void encoding(decode_results *results) {

                               ^

IR_Blaster_1.0:98: error: variable or field 'dumpInfo' declared void

void dumpInfo (decode_results *results) {

               ^

IR_Blaster_1.0:98: error: 'decode_results' was not declared in this scope

IR_Blaster_1.0:98: error: 'results' was not declared in this scope

void dumpInfo (decode_results *results) {

                               ^

IR_Blaster_1.0:118: error: variable or field 'dumpRaw' declared void

void dumpRaw(decode_results *results) {

              ^

IR_Blaster_1.0:118: error: 'decode_results' was not declared in this scope

IR_Blaster_1.0:118: error: 'results' was not declared in this scope

void dumpRaw(decode_results *results) {

                              ^

IR_Blaster_1.0:145: error: variable or field 'dumpCode' declared void

void dumpCode (decode_results *results) {

               ^

IR_Blaster_1.0:145: error: 'decode_results' was not declared in this scope

IR_Blaster_1.0:145: error: 'results' was not declared in this scope

void dumpCode (decode_results *results) {

                               ^

IR_Blaster_1.0:58: error: 'IRsend' does not name a type

IRsend irsend(D1);        // an IR emitter led is connected to GPIO pin 1

^

IR_Blaster_1.0:59: error: 'IRrecv' does not name a type

IRrecv irrecv(D4);        // an IR receiver is connected to GPIO pin 4

^

IR_Blaster_1.0:60: error: 'decode_results' does not name a type

decode_results results;   // Somewhere to store the results

^

IR_Blaster_1.0:61: error: 'irparams_t' does not name a type

irparams_t save;          // A place to copy the interrupt state while decoding.

^

IR_Blaster_1.0:64: error: variable or field 'ircode' declared void

void ircode(decode_results *results) {

             ^

IR_Blaster_1.0:64: error: 'decode_results' was not declared in this scope

IR_Blaster_1.0:64: error: 'results' was not declared in this scope

void ircode(decode_results *results) {

                             ^

Mehrere Bibliotheken wurden für "IRremoteESP8266.h" gefunden
Benutzt: C:\Users\frank\Documents\Arduino\libraries\IRremoteESP8266
Nicht benutzt: C:\Program Files (x86)\Arduino\libraries\IRremoteESP8266
exit status 1
variable or field 'ircode' declared void

Dieser Bericht wäre detaillierter, wenn die Option
"Ausführliche Ausgabe während der Kompilierung"
in Datei -> Voreinstellungen aktiviert wäre.

gloob

Zitat von: Frank_Huber am 14 Juni 2017, 13:53:50
1.0 mittlerweile gefunden und getestet.

Ergebnis:
Arduino: 1.8.1 (Windows 7), Board: "WeMos D1 R2 & mini, 80 MHz, 57600, 4M (3M SPIFFS)"

IR_Blaster_1.0:64: error: variable or field 'ircode' declared void

void ircode(decode_results *results) {

             ^

IR_Blaster_1.0:64: error: 'decode_results' was not declared in this scope

IR_Blaster_1.0:64: error: 'results' was not declared in this scope

void ircode(decode_results *results) {

                             ^

IR_Blaster_1.0:75: error: variable or field 'encoding' declared void

void encoding(decode_results *results) {

               ^

IR_Blaster_1.0:75: error: 'decode_results' was not declared in this scope

IR_Blaster_1.0:75: error: 'results' was not declared in this scope

void encoding(decode_results *results) {

                               ^

IR_Blaster_1.0:98: error: variable or field 'dumpInfo' declared void

void dumpInfo (decode_results *results) {

               ^

IR_Blaster_1.0:98: error: 'decode_results' was not declared in this scope

IR_Blaster_1.0:98: error: 'results' was not declared in this scope

void dumpInfo (decode_results *results) {

                               ^

IR_Blaster_1.0:118: error: variable or field 'dumpRaw' declared void

void dumpRaw(decode_results *results) {

              ^

IR_Blaster_1.0:118: error: 'decode_results' was not declared in this scope

IR_Blaster_1.0:118: error: 'results' was not declared in this scope

void dumpRaw(decode_results *results) {

                              ^

IR_Blaster_1.0:145: error: variable or field 'dumpCode' declared void

void dumpCode (decode_results *results) {

               ^

IR_Blaster_1.0:145: error: 'decode_results' was not declared in this scope

IR_Blaster_1.0:145: error: 'results' was not declared in this scope

void dumpCode (decode_results *results) {

                               ^

IR_Blaster_1.0:58: error: 'IRsend' does not name a type

IRsend irsend(D1);        // an IR emitter led is connected to GPIO pin 1

^

IR_Blaster_1.0:59: error: 'IRrecv' does not name a type

IRrecv irrecv(D4);        // an IR receiver is connected to GPIO pin 4

^

IR_Blaster_1.0:60: error: 'decode_results' does not name a type

decode_results results;   // Somewhere to store the results

^

IR_Blaster_1.0:61: error: 'irparams_t' does not name a type

irparams_t save;          // A place to copy the interrupt state while decoding.

^

IR_Blaster_1.0:64: error: variable or field 'ircode' declared void

void ircode(decode_results *results) {

             ^

IR_Blaster_1.0:64: error: 'decode_results' was not declared in this scope

IR_Blaster_1.0:64: error: 'results' was not declared in this scope

void ircode(decode_results *results) {

                             ^

Mehrere Bibliotheken wurden für "IRremoteESP8266.h" gefunden
Benutzt: C:\Users\frank\Documents\Arduino\libraries\IRremoteESP8266
Nicht benutzt: C:\Program Files (x86)\Arduino\libraries\IRremoteESP8266
exit status 1
variable or field 'ircode' declared void

Dieser Bericht wäre detaillierter, wenn die Option
"Ausführliche Ausgabe während der Kompilierung"
in Datei -> Voreinstellungen aktiviert wäre.


Bitte ein Downgrad der Lib durchführen:

ZitatIRremoteESP8266 auf Version 1.2.0 downgraden
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

Frank_Huber

Zitat von: gloob am 14 Juni 2017, 13:51:57
Die alte Firmware ist im ersten Post zu finden.
Ich hoffe, dass es nicht an der IRremoteESP8266 Version liegt. Ansonsten bitte die IRremoteESP8266 auf Version 1.2.0 downgraden.

Danke, das wars.
1.0 benötigt die IRremote in 1.2.0
1.1 benötigt die 2.0

Da die 1.1 meine Knipsen nicht mehr erkennt bleibe ich erstmal bei 1.0.

Hab heute im Büro die wichtigsten Knipsen eingelesen.
Heute Abend mal sehen ob das funktioniert wie es soll. ;)


Frank_Huber

HILFE!

Codes einlernen geht einwandfrei.
z.B.

Encoding  : SAMSUNG
Code      : 808AE51 (32 bits)
Timing[67]:
     +4500, -4500     + 600, - 550     + 600, - 550     + 600, - 550
     + 600, - 550     + 600, -1650     + 650, - 500     + 650, - 500
     + 650, - 500     + 650, - 500     + 650, - 500     + 650, - 500
     + 650, - 500     + 650, -1650     + 650, - 500     + 650, - 500
     + 650, - 500     + 650, -1650     + 650, - 500     + 650, -1600
     + 650, - 500     + 650, -1650     + 650, -1650     + 650, -1650
     + 650, - 500     + 650, - 500     + 650, -1600     + 650, - 500
     + 650, -1650     + 700, - 500     + 650, - 500     + 650, - 500
     + 650, -1650     + 650
unsigned int  rawData[67] = {4500,4500, 600,550, 600,550, 600,550, 600,550, 600,1650, 650,500, 650,500, 650,500, 650,500, 650,500, 650,500, 650,500, 650,1650, 650,500, 650,500, 650,500, 650,1650, 650,500, 650,1600, 650,500, 650,1650, 650,1650, 650,1650, 650,500, 650,500, 650,1600, 650,500, 650,1650, 700,500, 650,500, 650,500, 650,1650, 650};  // SAMSUNG 808AE51
unsigned int  data = 0x808AE51;


baue ich daraus den Link:
http://192.168.12.95/ir?code=808A51&bits=32&protocol=SAMSUNG

bekomme ich ein: Protocol not implemented!

was mach ich falsch?
NEC codes einer anderen Knipse gehen.

CarstenF

Versuch mal Spaßeshalber Samsung statt SAMSUNG. Das ging bei mir plötzlich.
Ich hab ein anderes Problem, was Du vermutlich schon gelöst hast....
Ich erhalte beim Update die Fehlermeldung
In file included from /Users/Carsten/Downloads/IR_Blaster_1.1/IR_Blaster_1.1.ino:23:0:
sketch/WiFi_Functionality.h:12:25: fatal error: WiFiManager.h: No such file or directory
#include <WiFiManager.h>

Die Datei WiFiManager.h scheint zu fehlen, aber die Bibliotheken habe ich eingebunden und den Boardmanager auch.... Was mache ich denn da falsch?
Raspberry Pi4
CUL 868, CUL 433, LaCrosse Gateway, Zigbeetomqtt2, HUE, Homematic
Max-Cube umgeflasht
MAX!, FhemtoFhem, Homebridge, FhemConnector, IR_Gateway und sonst auch noch allerlei Spielzeug....

Frank_Huber

Ich bin zurück auf 1.0
Nach der Fehlermeldung fehlt die das addon WiFiManager. Kannst nachinstallieren. Im ersten Post sind Details

Gesendet von meinem S3_32 mit Tapatalk


Frank_Huber

LOL! Wer kommt auch das drauf. Er liest es in Großbuchstaben ein und senden muss ich klein.
Danke! Da wäre ich so schnell nicht drauf gekommen.

Gesendet von meinem S3_32 mit Tapatalk