Ich habe lange nach einer Lösung suchen müssen, um meinen Westinghouse
Deckenventilator über Infrarot zu steuern, da mir alle IR Libraries für
Arduino nicht weitergeholfen haben. Vielleicht habe ich mich auch zu
blöd angestellt, aber ich habe jetzt eine gut funktionierende Lösung
gefunden.
Und da mir das Internet und dieses Forum im speziellen schon viele gute
Antworten geliefert hat, möchte ich meine Lösung hier gerne teilen.
Der Westinghouse Deckenventilator hat einen IR-Empfänger von
Westinghouse (78095) mit dran.
Den Schaltungsaufbau habe ich als Bild angehängt.
Als IR-LED habe ich eine SFH4580 mit einen 4,7 Ohm Vorwiderstand
genommen (der könnte auch kleiner sein, aber ich möchte den Transistor
nicht überlasten und es funktioniert damit sehr gut).
Als Transistor habe ich einen BC337-16 verwendet, der mit einen 1 kOhm
Widerstand am Arduino hängt.
Für den Arduino-Code habe ich versucht den Speicherverbrauch klein zu
halten und den Code möglichst übersichtlich zu schreiben.
Der komplette Code sieht so aus:
.
.
1
// Westinghouse ceiling fan ir control 78095
2
#define irLedPin 8 // der Pin an dem der Transistor für die IR-LED hängt
3
4
voidsetup(){
5
pinMode(irLedPin,OUTPUT);
6
}
7
8
voidloop(){
9
delay(3000);
10
sendCodeLight();// Licht an- oder ausschalten
11
delay(2000);
12
sendCodeFan1();// Ventilator auf Stufe 1
13
delay(10000);
14
sendCodeFan2();// Ventilator auf Stufe 2
15
delay(10000);
16
sendCodeFan3();// Ventilator auf Stufe 3
17
delay(10000);
18
sendCodeFan0();// Ventilator aus
19
delay(10000);
20
sendCodeLightDimmer(38);// Licht dimmen - 38 ist 1x komplett runter- oder hochgedimmt
Thanks a lot for sharing, we succeeded using your timings / messages. We
used the arduino IR library (which is also used within the ESPEasy
project). The trick is to send the code multiple times (it's 4x in your
code, in our case 2x was sufficient) sending it just once did never work
in our setup.
We ended up with a esp (with ESPEasy) using irsend raw command, a
transistor/mosfet with resistors to drive the IR led.
Vielen Dank für das Austüfteln! Ich hab auch einen Westinghouse Comet
und lediglich eine Fernbedienung (hängt überm Bett) und ansonsten nur
den normalen Lichtschalter, an dem er hängt. Sehr unpraktisch.
Ich hab einen Wemos D1 mini mit dem IR-Controller-Shield genommen - der
soll einen Webserver oder MQTT bekommen, sodass der Ventilator dann über
einen iobroker aus beliebigen Geräten angesteuert werden kann. Klappt
prototypisch dank dieses Codes auch sehr gut. Nur das Dimmen hat nicht
hin (auch nicht, wenn ich genau diesen Code auf den D1 mini flashe), da
passiert einfach gar nichts. Dimmen über die Fernbedienung ist
allerdings möglich.
Hat dazu jemand eine Idee? Wird bei Westinghouse das Dimmen inzwischen
anders angesteuert? Der Comet scheint eine relativ neue Konstruktion zu
sein insofern, als dass er noch mit "austauschbare Leuchtmittel"
beworben wurde, aber (leider) mit einem fest eingebauten
LED-Leuchtmittel kam.