Hallo,
hier wurde ja schon öfter über die RGB Stripes und deren Ansteuerung philosophiert. So ein Controller selber zu bauen ist nicht schwer. Ein entsprechendes PWM Signal zu erzeugen sowieso nicht. Die Frage ist nur wie bindet man sowas an. Über Funk ist nicht unbedingt sinnvoll, vor allem wenn man oft die Farben ändert. Ich denke das produziert zu viel Funkverkehr. Die Sache mit USB ist auch nicht der Renner weil man ja nicht immer ein Rechner in der nähe stehen hat. DMX kann man machen, habe ich auch, geht auch gut (auch wenn es noch kein Art-Net Module für FHEM gibt) aber mich interessiert viel mehr die Anbindung über Ethernet.
Weiß einer zufällig ob das mit dem AVR-NET-IO läuft? Kann dieser 3 PWM Kanäle unter Ethersex? Für 20 Euro würde ich jetzt ehrlich gesagt nicht anfangen eine eigene LAN-AVR-PWM Platine zu basteln, ich denke da ist die Zeit zu schade für. Da ist es sinnvoller bestehende Systeme zu benutzen. Oder hat einer noch eine andere Idee oder das vielleicht sogar schon umgesetzt?
Gruß
Daniel
also ich mache das per funkt mit einem panstamp und dem zugehörigen rgb carrier board.
faden macht der sketch lokal. es ist nur jeweils ein kommando zum starten und stoppen nötig. also kein problem mit deer funklast. ich habe auch eine ir fernbedienung integriert und kann das licht per fhem und per fb schalten. demnächst soll noch ein wand einbau dimmer dazu kommen. alle drei wege sind dann vollständig integriert und fhem weiss über den zustand des lichts jeder zeit bescheid.
gruss
andre
Das klingt sehr interessant, das schau ich mir mal an, Danke!
Kosten aber auch ganz schön die Teile...
Sag mal ich kenn mich mit der arduino Umgebung nicht so aus ich programmiere meine AVRs immer mit dem avr studio. Das von dem arduino klingt immer so wie Lego alles klickibunti. Braucht man da dann noch mehr? Die IDE ist frei verfügbar ja? Dann würde ich mir mal so ein Satz bestellen zum Spielen.
Gruß
Daniel
ich weiss nicht womit du die preise vergleichst aber da ganze kostet deutlich weniger als ein cul und z.b. der homematic oder fs20 led dimmer. dafür kann das system dann auch noch deutlich mehr. das rgb board ist im vergleich nicht das günstigste. aber wenn man wie ich nicht löten mag finde ich den preis ok. und wenn du löten magst kannst du den panstamp ja auf ein eigenes board setzen.
du brauchst nur die ide. und es gibt nichts zum klicken was bunt wäre... nur die lichter hinterher :)
gruss
andre
Da hast du recht für einen der nicht löten mag ist das was feines ja.
OK, dann werde ich mir das mal anschauen und mal so einen Satz bestellen.
Gruß
bestimmt hast du den panstamp thread (http://forum.fhem.de/index.php?t=msg&th=12487&prevloaded=1&rid=430&start=0) (//forum.fhem.de/index.php?t=msg&th=12487&prevloaded=1&rid=430&start=0)) inzwischen gefunden.
ansonsten gab es hier (Link (http://forum.fhem.de/index.php?topic=12743.0)) eine erste kurze Vorstellung meines sketch für den rgb controller. inzwischen geht schon einiges mehr.
gruss
andre
Habe ich gefunden ja, was auch immer ein "sketch" ist ;-) Aber ich nehme mal an damit ist das C Programm gemeint in Arduinisch ;-)
Gruß und Danke
Daniel
ach ja, noch was wegen dem klickibunti: ich verwende vi als externen editor und die ide nur zum flashen und das stelle ich grad auch noch auf kommandozeile um.
gruss
andre
Wie zum flashen eine IDE? Dafür braucht man die IDE doch nun gerade nicht, die Tools zum flashen sind doch meistens externe Programme, mhh naja. Ich würd da eh erstmal ein anderen Bootloader rauf hauen, der von Arduino soll 4 KB brauchen. Da finde ich den Fastboot besser, da reichen 256 Byte.
Mal schauen wann die Teile kommen, Paket ist heute raus ;-)
lach.
braucht man auch nicht. die ide ruft im hintergrund auch nur avr-gcc und co auf.
der arduino bootloader ist 2k gross und so lange ich nicht das letzte byte brauche ist das erst mal ok für mich. zumal zum bootloader ändern ein isp programmer nötig ist uns sonst eben nicht. vor allem fängt da fast schon wieder das löten an. so ist das mit den informatikern die es eher mit der software haben :)
die sind normalerweise in unter einer woche da.
gruss
andre
Mhh also ich hab auch Informatik studiert aber löte lieber als zu Programmieren ;-) Naja ok es war "Technische" Informatik *hüstel*
Na dann bin ich mal gespannt wann der gelbe Weihnachtsmann vor der Tür steht.
/Daniel
So habe heute alles bekommen.
Aber das RGB Modul muss ich erst mal umbauen, die MOSFETs sind ja nichts, versteh ich nicht wieso er da sone 0815 Dinger aufgelötet hat...
Dann werd ich jetzt mal anfangen da irgendwie die Beispiel Programme rein zu zimmern. Bzw. erst mal Dokus lesen, das mit dem XML Dateien da begreife ich nicht.
/Daniel
ist eigentlich alles ganz einfach :)
wenn du interesse hast lade ich meine die aktuelle version meiner module inklusive des sketches und der fhem integration hoch.
wenn du hardwaremässig einen besseres controller board baust hätte ich interesse daran. am liebsten mit 4 kanälen (rgbw) statt der drei (eigentlich sogar 5 (ww und kw) aber der Atmega328p hat nur 4 hardware pwm kanäle oder ?)
gruss
andre
Der 328P hat zwar nur 4 Timer aber 6 PWM Kanäle. Das würde schon reichen. Ich wollt erst mal nur die MOSFETs tauschen, aber stimmt man kann natürlich auch nen eigenes Board erstellen ja.
Aber wozu brauchst du denn noch die weiß Kanäle?
/Daniel
es gibt ein paar stellen wo ich led bänder nicht nur als effekt beleuchtung verwenden möchte sondern als hauptbeleuchtung. oder zumidnest ein weiss möchte das sich nicht mit halogen beisst. das geht mit rgb nicht wirklich gut. das gemischte weiss ist ziemlich bescheiden. mit warm weiss zusätzlich ist das sehr viel besser. die version mit 5 kanälen wäre dann aber wirklich nur noch luxus :)
gruss
andre
Mhh naja aber es gibt doch kein stripes die RGBW haben oder?
Naja egal, also ich wollt mir jetzt erst mal ne Platine machen (vermutlich sogar auf Lochraster) wo stärkere MOSFETs drauf sind. Wenn du jetzt 5 Kanäle brauchst kann man natürlich auch eine Platine mit 5 MOSFETs bauen, dann lötet man die zusätzlichen beiden Kanäle eben direkt unten an die Pins des Sockels an.
Also Quasi 5 Eingänge + GND und VCC und 6 Ausgänge (RGBXX + VCC)
/Daniel
doch. die gibt es inzwischen. es gibt stripes und flexband in rgbw (warm oder kalt) und es gibt stipes mit warm und kalt weiss. wenn es heller sein soll hilft auch einfach rgb und einen weiss nebeneinander.
5 wäre luxus. 4 sehr schön. den 5. einfach nicht zu bestücken ist ok.
gruss
andre
Vielleicht gibt es auf diesem Gebiet etwas neues (habe es zumindest gerade erst gefunden):
http://sourceforge.net/projects/simpleartnet (http://sourceforge.net/projects/simpleartnet)
Vielleicht könnte man diese Libary nutzen um per ArtNet Node Bsp:(http://www.dmxcontrol.de/wiki/Art-Net-Node_f%C3%BCr_25_Euro (http://www.dmxcontrol.de/wiki/Art-Net-Node_f%C3%BCr_25_Euro)) eine Verbindung von FHEM und DMX zu erschaffen.
Jo sowas suche ich auch noch, ein Art-Net FHEM Modul ;-)
Btw. also Art-Node würd ich lieber den nehmen: http://shop.ulrichradig.de/Bausaetze/AVR-ArtNet-Node-Bausatz.html (http://shop.ulrichradig.de/Bausaetze/AVR-ArtNet-Node-Bausatz.html) unwesentlich teurer aber dafür bestimmt etwas stabiler als der AVR-NET-IO.
/Daniel
Hat eigentlich schon mal jemand das FRM_PWM-modul in Verbindung mit Arduino (geht ja auch über Ethernet) als LED-Controller verwendet? Ist zwar nicht ganz meine Baustelle, aber wenn dem FRM_PWM-modul dafür irgendwas sinnvolles fehlt, würde ich es implementieren...
hallo norbert,
ich habe es noch nicht probiert, beim drüber nachdenken fällt mir aber sofort ein das es zumindest für farbige leds sehr unhandlich ist weil pro device nur ein pin bzw. farbkanal möglich ist. das macht es dann sehr schwer dir leds zu bedienen und den status im web frontend darzustellen.
für einfarbige leds ist es besser aber da fehlen dann immer noch die lampen typischen kommandos wie on/off/on-for-timer usw.
im prinzip also die gleiche einschränkung die das low level swap modul
vergleich zum darauf aufsetzenden rgb modul hat.
falls zu mehr in richtung leds (vor allem farbige und/oder mehr kanal) machen möchtest wäre es klasse so viel wie möglich gui, interaktion und farb handling zwischen allen devices die etwas in der richtung machen gemeinsam zu verwenden. ich habe schon ein paar dinge die den colorpicker betreffen ausgelagert und verwende das im hue und swap rgb modul. da gibt es aber noch einiges mehr das man wiederverwendbar machen kann.
gruss
andre
Ah - RGB.. klar :-)
zur maximalen Wiederverwendung müsste Dein RGB-LED-control-modul nach unten raus (zu den RGB-kanälen hin) ein wiederverwendbares Interface haben, in das man eine Perl-klasse (ein Perl-sprache: ein eigenes package) reinpluggen kann, dass die PWM-Werte der Kanäle dem(n) zugehörigem/n Ausgabedevice(s) zuweist. Also nicht so wie in FHEM üblicherweise gemacht 'LED-Controll-modul hat ein IODev, dieses hat Device-spezifische Methodennamen im package main', sondern für jeden möglichen IODevice-typ gibt es ein eigenes Perl-Package. Alle diese Packages enthalten die gleichen Methoden (damit das Controllermodul nur einmal eine Instanz des jeweiligen Packages erzeugen muss und unabhängig vom Typ immer die gleichen Aufrufe verwenden kann). Das IODev-spezifische Package ruft dann die zum IODev passenden Methoden im main-package auf.
- Norbert
ja. das mit den package ist die eine richtung der wiederverwendung. gerne wenn es ausser meinen beiden modulen noch einen abnehmer gibt. die andere richtung ist aber die innerhalb von fhem. d.h. den colorpicker und die dazu verwendeten notifys und readings einheitlich zu verwenden. das ist nur zum teil auf package ebene möglich sondern orthogonal dazu eine zweite ebene.
gruss
andre
Du hast natürlich recht, die SetFn/GetFn mit den zugehörigen Readings sollte hier eingentlich reichen, ist ja kein kompliziertes funktionales Interface. Ich bin jetzt nicht in dem Thema drin, gib mir mal einen Tip, wo die readings, die das LED-device zur Verfügung stellen müsste, dokumentiert sind.
eine erste version der beschreibung gibt es im wiki: http://www.fhemwiki.de/wiki/Color (http://www.fhemwiki.de/wiki/Color).
ich bin noch nicht dazu gekommen die icons zu beschreiben. dafür braucht es im prinzip eine 'get rgb' und 'get RGB' ersteres sollte den aktuellen rgb wert liefern, letzteres den aktuellen rgb wert auf volle helligkeit skaliert. das coloricon attribut und die umrechnung auf fs20 dim werde und anzeige der farbigen icons muss ich noch nach Color.pm verschieben.
gruss
andre
danke, da werde ich mich mal einlesen.
Gruß,
Norbert
hab gerade mal ein RGB-controller-modul für FRM (https://github.com/ntruchsess/fhem-mirror/blob/frm_rgb/fhem/FHEM/20_FRM_RGB.pm) geschrieben. set 'on|off|toggle|rgb' geht alles schon, allerdings ist mir nicht so klar, wie der ColorPicker eigentlich ins FhemWeb kommen soll. So wie ich das jetzt an SetExtensions übergebe ('rgb:colorpicker,RGB') habe ich dann für rgb auch genau die Werte 'colorpicker' und 'RGB' zur Auswahl?
FHEM_colorpickerInit rufe ich aus der Initialize-methode auf. Was braucht das Teil sonst noch, um zu erscheinen?
- Norbert
nur noch ein webCmd rgb oder rgb rrggbb
der colorpicker erscheint dann in der raum übersicht.
in der detail ansicht noch nicht weil das fhemweb bis vor kurzem noch nicht erlaubt hat. und seit dem es geht bin ich noch nicht dazu gekommen.
gruss
andre
danke, habs verstanden.
Hilfsfunktionen wie rgbToPct($) und alles was mit farbechtem Dimmen zu tun hat wären vieleicht im Color.pm zwecks Wiederverwendung besser aufgehoben, als im SWAP-modul?
- Norbert
ja. das sind genau die dinge die ich noch verschieben will. farbraum convertierungen, bestimmen des richtigen icons, noch ein gui element das die farben mit einem slider pro kanal einstellbar macht, ...
das ist bisher mangels zeit und feedback noch nicht passiert. aber wenn das 4 bzw. 5 kanal panstamp board endlich da ist wollte ich angehen wenn.
aber wo du gerade dabei bist firmata ein rgb modul über zu stülpen... wie wäre es das konfigurierter gleich auch auf 4 und 5 kanäle auszulegen? also zusätzlich zu rgb noch weiss bzw warm weiss und kalt weiss. (oder 5 einfarbige spots an einem kontroller/arduino. ich bin gerade dabei mir so was zu bauen.)
dann hätte ich gleich ein zweites device zum testen.
gruss
andre
Zitat von: justme1968 am 06 November 2013, 17:10:22
wie wäre es das konfigurierter gleich auch auf 4 und 5 kanäle auszulegen?
Im Prinzip kein Problem. Sag mir nur, wie Du Dir das mit dem set rgb Kommando genau vorstellst damit das kompatibel zum ColorPicker bleibt. Weiterhin 3bytes Hex-codiert, oder dann länger (4 bzw. 5 hex-codierte Bytes)? Ich möchte ich im FRM-Modul eigentlich keinerlei farbmischungsrelevanten Berechnungen machen, wenn man das im Color.pm unterbringen könnte.
Gruß,
Norbert
dann 4 oder 5 bytes hex codiert. dir abbildung vom 3 auf 4 oder 5 kanäle und umgekehrt soll auch in Color.pm. dazu wäre dann ein get channels im device nötig.
ja. alles was mit farben zu tun hat soll für das device so transparent wie möglich werden.
gruss
andre
Soweit fertig (https://github.com/ntruchsess/fhem-mirror/blob/master/fhem/FHEM/20_FRM_RGB.pm) :-), habe es grade in's SVN committed. Unterstützt so viele Channels, wie man Pins in der define-Zeile angibt. Ich war so frei die Utility-funktionen zum Umrechnen von RGB nach pct etc. ins Color.pm (https://github.com/ntruchsess/fhem-mirror/blob/master/fhem/FHEM/Color.pm#L57) (mit eigenem package 'Color', so dass man sie beim 'use Color' mit einem qw( :all ); importieren kann, zu verlegen.
- Norbert
das FRM_PWM-modul (https://github.com/ntruchsess/fhem-mirror/blob/master/fhem/FHEM/20_FRM_PWM.pm#L89) habe ich jetzt auch um die dimmer-relevanten sets erweitert :-)
- Norbert
ich hab für das swap modul inzwischen doch eine rückwärts kompatible lösung gefunden. ich stelle dann gleich alles auf deine color.pm ergänzungen um. und verschiebe dann das erzeugen der farbigen icons auch mit da rein.
gruss
andre
hallo norbert,
ich hab gerade eine erste version von Color.pm eingecheckt die eine funktion Color_devStateIcon enthält. eine kurze erste beschreibung ist hier: http://www.fhemwiki.de/wiki/Color#Farbige_Lampen_Icons (http://www.fhemwiki.de/wiki/Color#Farbige_Lampen_Icons).
die funktion ist absichtlich im main namensraum weil sie ja von fhem aus aufgerufen wird :).
gruss
andre