PanStamp RGBWW Board mit DMX und IR: Unterschied zwischen den Versionen

Aus FHEMWiki
(Inhalt aus panStamp Diskussion übernommen)
K (Kategorie zugefügt)
Zeile 200: Zeile 200:
* [http://itse.homeip.net/projekte/12/6/ Projektseite] für das RGB-Multi-Board.
* [http://itse.homeip.net/projekte/12/6/ Projektseite] für das RGB-Multi-Board.
* [http://sourceforge.net/p/fhem/code/HEAD/tree/trunk/fhem/contrib/arduino/ rgbdriver sketch] auf sourceforge
* [http://sourceforge.net/p/fhem/code/HEAD/tree/trunk/fhem/contrib/arduino/ rgbdriver sketch] auf sourceforge
[[Kategorie:panStamp]]

Version vom 21. Juli 2015, 06:37 Uhr


Clock - Under Construction.svg An dieser Seite wird momentan noch gearbeitet.



PanStamp RGBWW Board mit DMX und IR
RGBWW Board
Allgemein
Protokoll SWAP
Typ Sender, Empfänger, Sensor, Interface
Kategorie
Technische Details
Kommunikation 868MHz
Kanäle
Betriebsspannung 12V
Leistungsaufnahme
Versorgung Netzteil
Abmessungen
Sonstiges
Modulname 35_SWAP_0000002200000003.pm 34_SWAP.pm
Ersteller Andre / justme1968
Hersteller panStamp

PanStamp RGBWW Board mit DMX und IR unterstützt RGBW LEDs und lässt sich per Infrarot Fernbedienung, DMX Controller (z. B. als Unterputz Touchpanel) und FHEM bedienen. Es ist eine Hard- und Softwareentwicklung auf Basis von panStamp Modulen und verwendet zusätzlich das FHEM Modul SWAP 0000002200000003 als 3. Ebene

Der Funktionsumfang wird in diesem Forenthread vorgestellt. Die Hardware für das Board wird hier im FHEM Forum vorgestellt und ein Prototyp ist hier zu sehen.

Hardware

Die Projektseite zur Hardware findet sich hier. Eine Version 2 des Boards in geplant.

Kompatibilität RBG-Board mit NRG-panStamps

Mit dem hier beschriebenen Sketch ist das Board nur mit den AVRs kompatibel. Die Pinbelegung zwischen AVR und NRG ist im Prinzip gleich bis auf Pin 23. Das ist bei dem NRG ein IO Pin und nicht Ground wie beim AVR. Das wäre kein Problem wenn man entweder hardwareseitig den Kontakt unterbricht oder aber programmiertechnisch diesen Pin NIE als Ausgang definiert. Ansonsten gibt’s ein „kurzen“. Oder wenn er als Ausgang definiert ist darf er nur das GND Potential haben, also Low, 0.

Beitrag [1]

Da es derzeit (Stand 01.05.2015) aber keinen Sketch gibt, der auf den NRG lauffähig ist, wäre vorher noch diese Herausforderung zu lösen.

Eigenschaften des fade TBC

http://forum.fhem.de/index.php?topic=13890.msg106644#msg106644


Software

Eine Übersicht über die derzeit vorhandene Funktionalität des Fhem Moduls und panStamp Sketches (Stand 01.05.2015): Beitrag was geht:

  • bis zu vier led kanäle (je nach kombination von ir und soft pwm)
  • ir senden
  • ir empfangen
  • messen ob die led versorgung an ist
  • helligkeit eines an A2 angeschlossenen helligkeits sensors
  • konfiguration der dmx basis adresse über das swap register 0x12
  • optional soft on auf letzten wert
  • alles was auch vorher schon ging: dimmen, faden, ir fernbedienungen anlernen, ...

wichtig zu wissen:

  • wenn ir aktiv ist und kein soft pwm lässt sich der 4. kanal nur ein und aus schalten
  • wenn ir aktiv ist muss soft pwm aktiv sein um den 4. kanäle auch zu dimmen
  • es wird nur ein zusätzlicher kanal tatsächlich schon unterstützt. der fünfte kommt noch
  • bei ir senden sind nur die aufrufe für sony und nec tatsächlich eingebaut. die anderen sind aber einfach zu ergänzen
  • beim ir senden sind noch keine Wiederholungen eingebaut. die müssen laut protokoll aber eigentlich sein

was noch kommt:

  • besseres soft pwm
  • mehr konfiguration bezüglich default verhalten. ramp zeiten, delays, ...
  • hsv farb modell um besser zu faden und vor allem um den weiss anteil automatisch auf die weiss leds zu legen
  • die virtuellen channel
  • fhem kompatibles ir senden
  • sofortiges senden von helligkeit und led spannung bei änderung
  • andere ir lib mit sehr viel besserer geräte unterstützung

wie gehabt muss alles über config.h mit Compilerschalter konfiguriert werden.

Arduino IDE 1.5 / 1.6 einrichten

Mit der Arduino IDE 1.5.x gab es zusätzlich eine grundlegende Umstellungen der Arduino SWAP Library, für die der derzeitige Sketch [r4716] angepasst werden muss. Der Sketch ist nur kompatibel zur alten SWAP Library, die unter Arduino IDE 1.0 installiert werden muss (Stand 01.05.2015).

Arduino IDE 1.0 einrichten

Zum Flashen der panStamps wird die Arduino IDE benötigt. Eine Installationsanleitung ist unter folgendem Link zu finden:

https://code.google.com/p/panstamp/wiki/firststeps

Für den RGB-Driver sketch sind je nach gewünschtem Funktionsumfang noch folgende libs zu installieren:

  • Die Dateien der Panstamp Lib läd man von hier [[2]] (panstamp_library.zip, 129k v.25, May 31, 2013). Mit der neueren Lib v.4 läuft die Kompillierung des derzeitigen Sketches nicht durch. Die Dateien der Lib speichert man in einem entsprechend neuen Unterordner, z.B. hierin C:\Users\<username>\Documents\Arduino\libraries. Am Ende der ganzen Aktion im Folgenden sollten sich in diesem Unterordner 3 neue Unterordner befinden: IRremote, DMXSerial und panstamp
  • Die Dateien der IR Remote Lib kopiert man von hier [[3]] und speichert sie ebenfalls in einem passenden Unterordner von libraries.
  • Die Dateien der DMX Lib kopiert man von hier [[4]] und speichert sie ein weiteres Mal in einem weiteren Unterordner von libraries. Weitere Informationen zur Verwendung von Arduino Libraties finden sich hier [[5]]. Dass die Libraries richtig erkannt worden sind, lässt sich dadurch erkennen, dass unter Sketch/Library importieren die 3 weiteren Punkte unten unter "beigetragen" auftauchen.

Die Librarys sollten entweder mit dem entsprechenden Menüpunkt in die IDE integriert werden oder jeweils nach auspacken des zip files als als kompletten Ordner im Arduino libraries verzeichnis abgelegt werden (siehe [6]).

  • Windows IDE only: Falls alles so bleibt, wie es heruntergeladen wurde, wechselt man wieder auf den Reiter sketch und importiert über ->Sketch Library importieren die entsprechenden Libs für IRremote und DMX. Dadurch werden 3 neue Zeilen hinzugefügt.
  • Nun sollte über Sketch/Überprüften/Kompillieren die Erstellung des Sketches möglich sein.
  • Falls erfolgreich unter Datei/Hochladen (ohne Programmer) den Sketch auf den Panstamp laden.

Für das kompilieren mit INO siehe hier.

Link zum Sketch

Die aktuelle Version des RGB-Driver Sketches findet sich auf sourceforge. Beitrag [7] Dieser muss in Arduino\libraries\panstamp\examples\sketches entpackt und die rbgdriver.ino gestartet werden. In der Arduino IDE sollte unter Tools->Board "Arduino Pro or Pro Mini (3.3V, 8MHz) w/ Atmega328" eingestellt sein. Wenn man das boards.txt file von hier installiert kann man in der IDE auch direkt panStamp als Plattform auswählen.

Kompillierte hex version

Eine kompiliertes HEX-File für drei (vier) Kanäle plus IR-Empfang und DMX ist hier im Forum zu finden: Beitrag [8]

HEX-File ohne IR und DMX

Eine kompiliertes HEX-File ohne IR-Empfang und DMX ist hier im Forum zu finden: Beitrag [9]


Compilerschalter

Welche Features der sketch bietet lässt sich im config.h file durch ein- oder auskommentieren der

#define ENABLE_...

Zeilen festlegen. Beitrag

#define ENABLE_DMX

#define ENABLE_DMX

Ermöglicht die Nutzung eines DMX RGB Einstellers zur Steuerung der RGB LEDs


Hierbei ist darauf zu achten, dass in der DMX-Lib in der Datei DMXSerial.h die Zeile

#define DmxModePin 2     // Arduino pin 2 for controlling the data direction

in

#define DmxModePin 7     // Arduino pin 7 for controlling the data direction

abgeändert werden muss.



#define HAS_SENSOR

 #define HAS_SENSOR

Ermöglicht die Nutzung eines DHT22 Sensors zur Auswertung von Temperatur und Luftfeuchtigkeit Dafür sollten diese Konfigurationszeilen auskommentiert sein:

 USE_SOFT_PWM;
 ENABLE_IR_SEND;
 ENABLE_REPEATER;

In der IRremote.cpp Datei in der Irremote Library muss die Zeile

void IRrecv::disableIRIn() 
{
TIMER_DISABLE_INTR;
}

sowie die Irremote.h Datei unter Public: um die Zeile

void disableIRIn();

erweitert werden.

Der Daten-Pin des DHT22 Sensors muss hierfür an A2 des panStamps angeschlossen werden. Ein Beispiel für die Umrechnung der userReading für Spannung Temp etc. ist hier beschrieben. Beitrag

Zusammenhänge der Konfiguration

Die Zusammenhänge der Konfiguration sind hier beschrieben Beitrag

4. und 5. LED Kanal TBC

http://forum.fhem.de/index.php?topic=13890.msg169741#msg169741 http://forum.fhem.de/index.php?topic=13890.msg192132#msg192132 http://forum.fhem.de/index.php?topic=13890.msg201922#msg201922 http://forum.fhem.de/index.php?topic=13890.msg201936#msg201936

Alternativer Fade per Patch

Als Alternative zum im Sketch und im Modul eingebauten Fade-Befehl ist hier ein Patch vorgestellt: Beitrag [10]

Der Patch ist nicht eingecheckt.


IR Schnittstelle TBC

IR TBC

http://forum.fhem.de/index.php?topic=13890.msg107061#msg107061 http://forum.fhem.de/index.php?topic=13890.msg107197#msg107197 http://forum.fhem.de/index.php?topic=13890.msg107415#msg107415 http://forum.fhem.de/index.php/topic,13890.msg122021.html#msg122021 http://forum.fhem.de/index.php/topic,13890.msg122077.html#msg122077 http://forum.fhem.de/index.php?topic=13890.msg167351#msg167351 http://forum.fhem.de/index.php?topic=13890.msg175269#msg175269 http://forum.fhem.de/index.php?topic=13890.msg175285#msg175285 http://forum.fhem.de/index.php?topic=13890.msg182582#msg182582 http://forum.fhem.de/index.php?topic=13890.msg245597#msg245597 http://forum.fhem.de/index.php?topic=13890.msg259267#msg259267

IR-Belegung Panstamp RGB-Board TBC

http://forum.fhem.de/index.php/topic,13890.msg163008.html#msg163008 http://forum.fhem.de/index.php/topic,13890.msg163153.html#msg163153

Ircluster TBC

http://forum.fhem.de/index.php?topic=13890.msg175331#msg175331

Irgate TBC

http://forum.fhem.de/index.php?topic=13890.msg175278#msg175278

DMX Schnittstelle

Da die DMX-Schrittstelle kein direktes Interface zu FHEM hat, sondern nur die direkte Kommunikation zwischen DMX-Kontroller und RGB-Board betrifft, ist die Schnittstelle nur bei der Konfiguration des Sketches und über die Dokumentation des Boards beschrieben.

Weblinks