Lässt sich das ganze eigentlich auch an einem 60" Display realisieren? Vielleicht dann mit diesen RGB-Stripes? Bei der Größe müsste ich ja schon 2 oder eher 3 LED's zusammen schalten...sieht das dann übrhaupt noch gut aus?
Entschuldigt die Frage, aber ich lese mich gerade erst in dieses Thema ein.
Sammelbestell. AmbiLight BEENDET
-
-
Das Problem bei großem Display ist halt, dass die Anzahl der Kanäle derzeit auf der Seite der PC-Software auf 64 begrenzt ist. Ob sich das noch ändern wird oder nicht, kann ich dir natürlich nicht beantworten, da müsstest du den Autor von AtmoWin fragen, oder schauen ob es Alternativen mit mehr Kanälen gibt. Der Rechenaufwand diese auszuwerten steigt dann natürlich auch an.
Mehrere LEDs auf einen Kanal legen muss so schlecht aber garnicht aussehen, die Ambilights im (Phillips?) TV haben meines Wissens nach immernoch nur 3 oder 4 Kanäle (oben/links/rechts und unten) und das sieht ja auch nicht ganz scheiße aus.
-
Lassen sich auch gewöhnliche RGB-Stripes wie dieser hier als Ambilight verwenden?
[Blockierte Grafik: http://img809.imageshack.us/img809/268/leds4stagestrip.jpg]
Für meinen TV bräuchte ich insgesamt 447cm davon, das wären 45 Kanäle bei 3,3cm Abstand pro LED (3 LED's pro Kanal)
Und gibt es auch fertige USB-Controller zu kaufen um das ganze dann mit AtmoWin zu steuern, oder muss ich mir da selbst etwas zusammenlöten? -
Das ist kein gewöhnlicher RGB-Strip
dem Bildnamen "leds4stagestrip.jpg" entnehme ich, dass es sich dabei um den Digitalen Strip von Leds4Stage handelt...?
Der ginge da im Prinzip schon, gibt ja sogar auch nen DMX-Controller dafür, und AtmoWin kann ang. auch DMX ausgeben (ist noch nicht genau verifiziert...)
Der darauf verbaute Chip kann halt nur 32 Helligkeitsstufen (logarithmisch), also das Ding insg. 32.768 Farben - das könnte etwas zu grob aufgelöst sein...
Alternative wäre (wie schon ein paar mal in diesem Thread hier erwähnt) ein digitaler Strip mit dem WS2801, der kann 3x 8 Bit, also 16,7 Millionen Farben - dafür ist gerade ein Atmo-Light-Controller in der Mache jetzt dann in den Weihnachtsferien...
für größeren Pixelabstand/größere Pixel gäbe es da auch Einzelplatinen mit dem WS2801 drauf...
-
Ja richtig, das ist der von Leds4Stage.
Also du meinst sowas hier? http://www.aliexpress.com/fm-s…-36pcs-5050-RGB-leds.html
Bei meinem TV ist es ja auch kein Problem das jeweils nur 3 LED's zusammen angesteuert werden können. Wenn ich jede einzeln ansteuer, wäre ich bei weit über 64 Kanälen.
Ich weiß nur nicht ob der RGB-Strip auch was taugt...
Wo wird es den passenden Controller denn dann zu kaufen geben?
Grüße -
Den gibt's dann wohl als Bauanleitung bzw. Bausatz hier im Forum... - ich kann da jetzt aber keinen Termin nennen, bisschen wird's noch dauern... habe vor, das im Weihnachtsurlaub aufzubauen
Wenn's dann soweit ist, und Du Dir das selbst zusammen löten nicht zutraust, findet sich hier auch bestimmt jemand, der das gegen nen kleinen Obulus für Dich zusammenlötet (ich meine jetzt nicht mich, ich mache sowas nicht...)
Ich meinte eigentlich den verlinkten Strip aus meinem Thread, aber der andere wäre wohl für Dich noch besser, weil da eh' immer gleich 3 LEDs zusammen geschaltet sind... - müsstest halt mal ausrechnen, wie das bei Deiner Glotzengröße mit dem LED-Abstand hinkommt
kommt mir nur etwas spanisch vor, oben auf dem Foto sieht man 3 LEDs, unten auf dem Detailbild sind's dann 2 LEDs pro Segment...
Und bei dem kann ich nix über die Qualität der LEDs sagen (weil ich den noch nicht hatte) - bei dem anderen, von mir getesteten, sind die LEDs wirklich gut bzgl. Helligkeit, Farbe und Selektion
An die Experten, die hier mitlesen, wegen dem WS2801: da, bei dem verlinkten Strip, hängen nun doch einfach 3 LEDs in Reihe an dem WS2801 an 12 Volt.. - also keine Transistoren wie auf meinen Pixelplatinen, die ja lt. Datenblatt eigentlich bei mehr als 6 Volt nötig wären..? - was ist davon zu halten..?
Wohl billigbillig gemacht wegen US $89.47 - 93.68 pro 5 Meter...? - Klar, auf meinen ersten Test-Platinen hat das ja auch so funktioniert, Frage ist nur, wie lang..?!? - Oder das verfügbare DB des WS2801 stimmt hier einfach nicht, oder der Chip wurde verbessert...? - wenn man da ohne Probleme "offiziell" 3 LEDs an 12 V hin hängen könnte, wäre das ja echt ein Traum...
-
Vorsicht: die Abbildungen da bei Aliexpress harmonieren nicht miteinander. In den Details sehe ich 2 LEDs/IC. Ich kann aber mal nachsehen. Ich habe einen Strip da. Ich weiß nur nicht genau, welches Modell das ist, auf jeden Fall mit WS2801.
Unabhängig davon weiß ich, dass ein AmtoLight mit den digitalen Stripes von verschiedenen Leuten in Arbeit ist. Ich will da aber auch niemandem vorgreifen.
-
Naja, wenn die Atmo-Win-SW *wirklich* "echtes" DMX über ne USB-Serial-Bridge ausgeben kann, dann ist der Controller eigentlich eh' schon fertig: nen AVR mit FT232 dran nehmen, eine der div. DMX-zu-WS2801-SW hier aus dem Forum nehmen und läuft...
Geht dann letztlich nur noch darum, wer nun nen Bausatz/Fertiggerät dafür zusammenstellt, für die Leute, die sowas nicht mit den bereits im Forum zu findenden Infos selbst zusammenlöten und flashen können...
Wenn's doch ein leicht anderes Protokoll ist, dann muss man halt noch ein bisschen dran rumschustern...
-
Sag mir welchen AVR du nehmen willst und ob und wo du bestimmte Pins beschaltet haben möchtest und ich mach mich an Schaltplan und Layout... irgendwann zwischen den Feiertagen mal.
EDIT: Wird aber dann SMD, weil den FT232 gibts eh nicht anders.
-
Hm, also jetzt gibt's dann praktisch bald die Controller im Überfluss...?
Ja, aber schadet ja auch nix... machst Du halt dann SMD, ich mache ne DIP-Version für die Anfänger, halt dann mit RS232 - da muss man halt dann so nen Adapter dazu nehmen, aber schadet evtl. auch nix, wenn Controller und Rechner mal weiter auseinander stehen sollten (Warum auch immer, Heimkino o.ä.)
ich hatte ja schon mal ein Layout angefangen mit Mega48, FT232R und SD-Karte...
bin mir aber immer noch nicht ganz sicher, wie das genau werden soll, weil eigentlich sollte das Teil dann auch gleich recht universell sein... im Prinzip ist das ja nur ein µC mit USB-Chip dran, das könnte man auch noch für viele andere Sachen nehmen, z.B. RGB-LEDs vom Rechner aus steuern ohne DMX dazwischen, irgendwelche Sachen in den Rechner rein lesen, was auch immer... oder auch gleich Bootloader drauf, dann wäre das im Prinzip "sowas wie Arduino"...
Mega16 (* kostet jetzt auch nicht so viel mehr als Megax8, also evtl. gleich den für mehr I/O..? - könnte man dann z.B. 10 RGB-LEDs direkt vom Rechner aus steuern...
*) der ist aber schon lange abgekündigt, soweit ich weiß - aktuell wäre ja Mega16A, aber den gibt's bei Reichelt nicht... mal gucken, ob da ein großer Unterschied ist
ich würde das jetzt so machen: Einfach nen Megax8 oder Mega16 (such's Dir aus... ;), FT232R dran (klar, Rx und Tx), und dann die restlichen Pins sinnvoll (z.B. "Roboternetz-Standard") auf WSL legen, ISP nicht vergessen, 7805 (oder LM2574..?) für z.B. 12 V Eingang, dann hätte man schon so ne universelle Plattform, an die man dann LEDs, oder WS2801-Strips oder wasauchimmer anschließen kann... reine SW-Sache, für was das Dings dann gut ist
Pinbelegung wäre mir dann egal, ich mache das mit SW-Bitbang, weil ich mich nicht auf den HW-SPI festlegen will... natürlich diese Pins, die ja zusätzlich normale Portpins sind, ebenfalls auf die "Peripherie"-WSL mit drauf legen, man könnte dann also auch den HW-SPI nehmen...
Und wenn man den AVcc gleich ordentlich beschaltet (Spule etc., siehe Datenblatt), dann könnte man das Dings z.B. auch dazu verwenden, analoge Messwerte mit dem PC zu erfassen...
Der FT232 stellt ja auch gleich 3,3 V zur Verfügung, wäre evtl. ne Idee, Vin, 5V und 3,3V auch noch auf ne Stiftleiste oder Klemmen zu legen, für Erweiterungen (eben z.B. SD-Kartenleser)....?
Ist halt nun die Frage, Mega16 ist nur für das Atmo-Dings Overkill, Megax8 für manche Sachen dann wieder zu klein... Platinengröße sollte aber bei sowas ja auch nicht die große Rolle spielen (also dass es möglichst klein wird, meine ich), also evtl. doch gleich mit mehr Pins...?
Würde dann auch für einfachere Ambilights gehen, einfach direkt mit FETs (Zusatzplatine..?) 12 Kanäle schalten für 4x RGB-Strip, reine SW-Sache, was auf das Teil drauf kommt...
Weil ich i.M. nicht die große Auswahl da habe, werde ich dann wohl erst mal die Version mit Mega16 und MAX232 aufbauen... Blöder Weise schon wieder die nächste Woche fast voll (Kumpels bei Steuer und Umzug helfen, Do Konzert, Sylvester nun doch auch nen Job...), Zefix, ich hab' doch eigentlich "Urlaub"
-
Hallo Pesi,
die AtmoWin SW gibt kein echtes DMX aus!
Was dort als DMX bezeichnet wird ist in echt "miniDMX" lässt sich googlen.
Protokoll sieht so aus: Startbyte(1) ControllByte(1) DatenByte(256) Endebye(1)
Das Protokoll ist in meiner Software für die Atmo Stripes implementiert.
Also die nehmen das direkt von einem FT232 an, kann man also auch einfach nen Controller z.B. FT232 -> Mega/Tiny -> WS2801 bauen. -
Ja, genau so ist das ja geplant (siehe Post weiter oben), und mehr braucht's ja auch nicht... - letztlich ist der ganze "Controller" eben nur ne Umsetzung von MiniDMX- auf WS2801-Protokoll...
und das dachte ich mir eben schon, dass das etwas anders ist, nachdem im Geräte-Dialog von "simple DMX" die Rede war und man ja auch keine 250 kBaud einstellen kann...
Danke für den Tipp, ich hab' mal danach gesucht.. was ich bei solchen Protokollen
Zitat$5A - Blockstart
$A2 - Befehl: DMX-Out mit 512 Kanäle
512 Bytes für die Kanäle 1 bis 512
$A5 - Blockendeimmer nicht verstehe: wenn jetzt im Datenstrom zufällig die Kombination 0x5A - 0xA2 vorkommt, woher weiss er dann, dass das Daten sind, und nicht ein neuer Block...
klar, wenn's erst mal mit nem schwarzen Bild o.ä. losgeht, und dann der "Startcode" kommt, dann kann sich das darauf synchronisieren - aber wenn man zu einem beliebigen Zeitpunkt einschaltet oder der Strom mal kurz abreisst, dann kann Blödsinn rauskommen...
OK, *sooo* hoch ist die Wahscheinlichkeit auch nicht, dass diese Kombi im Datenstrom vorkommt, also spätestens nach ein paar Frames sollte das dann wieder "gelockt" sein...
aber das ist bei echtem DMX viel einfacher, da gibt's halt nen Frame Error, da fängt der neue Block an, das ist eindeutig...
-
Ich denke, das Protokoll ist einfach nicht für einen hotplugfähigen Bus ausgelegt, sondern eher für das Szenario bei dem der Empfänger schon auf seine Daten wartet, wenn der Sender mit dem ersten Frame beginnt. Da brauchst du dann auch nicht synchronisieren, denn - vorrausgesetzt es gibt keine Übertragungsfehler - hast du immer 515 Bytes pro Frame.
-
Genau vor dem Problem stand ich vor der Programmierung,
nun ist meine FW aber so intelligent und kann dasIch habe es folgendermasen gelöst.
Ich warte auf das Startbyte, wenn das angekommen ist warte ich auf das 2. Byte, Hinweis an Pesi wenn man hier ein 0xA0 anstatt des A2 empfängt bedeutet das, das nur 256 Kanäle gesendet werden.
So nachdem die zwei Bytes da sind, warte ich auf 256Byte, kommt nun ein 0xA5 ist es für mich trotzdem ein Nutzbyte.
Sind 256 Byte vorbei, warte ich zwingend auf das 0xA5 und dann gehts mit 0x5A wieder von vorne los.Der Trick ist also einfach nur, die 256 Bytes zu zählen und nicht auf ein 0xA5 zu lauschen.
Somit synct, sich die HW bei jedem durchlauf.Im schlimmsten Fall, geht mal ein Byte verloren, die nächsten 259Byte gehen in den Wind und dann kommt aber sicher wieder ein Ende Byte.
PS: In meiner Software gibt es extra eine miniDMX Library
Grüße
-
Ja, gibt's die SW denn irgendwo...? - ist dann aber C, oder...?
Über das Protokoll wurde ja hier schon mal diskutiert, da gab's ja damals auch die Verwirrung, ob das nun DMX ist, was da ausgegeben wird, oder nicht...
Und, ja, so hätte ich (bzw. werde ich) das auch machen - wenn die Start-Kombination gekommen ist, einfach die Kanäle abzählen, wie auch sonst...?
Ist ja auch kein Problem, mir ging's ja nur um's grundsätzliche Prinzip: Es *könnte* ja passieren (z.B. wenn man das Teil für DMXControl-Lichtsteuerung benutzt, da geht dieses Mini-DMX-Interface ja auch), dass zufällig im Datenstrom mal die Kombination 0xA5 0x5A 0xA1 vorkommt, das ist ja die selbe Kombi wie "Ende - Start - 256 Kanäle" - also könnte sich der Empfänger bei Hot Plug auch darauf synchronisieren, und die eigentliche Kombi als Daten interpretieren...
Aber wie schon gesagt, es ist *äusserst unwahrscheinlich*, dass sowas mal passiert, erst recht nicht bei nem Ambilight, wo sich die Kanäle ja ständig ändern...
ich werde das daher wohl der Einfachheit halber so machen, dass ich eben einfach auf diese Kombi 0xA5 0x5A 0xA1 warte, und ab da dann die 256 Kanäle abzähle... - ist zwar nicht ganz "regelkonform", weil eigentlich müsste man ja das 2. Byte auswerten, damit man weiß wie viele Kanäle kommen, aber hier ist die Zahl ja von der AtmoWin-SW festgelegt...
ZitatHinweis an Pesi wenn man hier ein 0xA0 anstatt des A2 empfängt bedeutet das, das nur 256 Kanäle gesendet werden.
m.W. sind es dann nur 96 Kanäle, 256 sind es bei 0xA1... habe das von dieser Seite, falls es jemanden interessiert...
Schickst Du eigentlich diese "OK-Meldung"
ZitatNach max. 100ms sendet MiniDMX folgendes zurück:
$5A - Blockstart
$C1 - Befehl erfolgreich ausgeführt
$A5 - Blockendeauch zurück, oder geht das auch ohne....?
-
Schicke keine OK Meldung,
weder AtmoWin noch DMXControl unterstützen diese Controllmeldung.Die Software gibt es unter nighty2k.de Projekte - Ambilight - Firmware
Aber Achtung meine ist auch noch ein bissel modifiziert.
Ich habe einen Master, der erste und dann ja nur Slaves.
Hierzu hab ich das "Anzahl der Kanäle-Byte" missbraucht.Der Master macht daraus ein 0x01, schickt es dann weiter, jeder Slave macht dann +1
Somit werden die einzelnen Stripes bei mir Addressiert. =)Grüße und Frohe Weihnachten
-
Ah, OK, danke, alles klar, dann schicke ich diese Meldung auch nicht...
Und wie vermutet ist Deine FW ja in C - ich mache das einfach komplett neu in ASM, muss ja eh' was anderes ausgeben...
Schöne Weihnachten noch!
-
Ich stelle mich gerne zum testen für die WS2801 Variante zur Verfügung
Kann auch gerne was helfen beim Platinendesign/löten etc. -
Wie, zum testen..? - SW ist schon fertig, ist ja nur ne WS2801-Ansteuer-Routine, und die Mini-DMX-Empfangsroutine dazu... einfach ein Protokollkonverter
läuft gerade auf nem Tiny2313, Empfang über MAX232 von so ner Prolific USB-Serial-Bridge von DX...
leider auf 115,2 kBaud mit nem 16 MHz Quarz mit 2,1% Baudraten-Fehler, ab&zu flackert's deswegen noch - muss erst noch nen Baudratenquarz besorgen, dann mache ich mal ein Video und stelle die SW rein...
Domi: kannst Du mal probieren, ob man den FT232 über den virtuellen Comport-Treiber auf 250 k stellen kann, also *wirklich*...? - auswählen kann ich die beim Prolific zwar, dann gibt's aber Fehlermeldung im AtmoWin... wenn das mit dem FT232R ginge, dann würde ich doch auch erst mal den nehmen, den habe ich noch da, Quarz nicht...
-
Da sollte es keine Probleme geben. Hier ein Auszug aus dem Datenblatt des TTL232-Kabels:
Baud Rates - The TTL-232R supports all standard baud rates and non-standard baud rates from 300 Baud up to 3 Megabaud. Achievable non-standard baud rates are calculated as follows -
Baud Rate = 3000000 / (n + x)
where n can be any integer between 2 and 16,384 ( = 214 ) and x can be a sub-integer of the value 0, 0.125, 0.25, 0.375, 0.5, 0.625, 0.75, or 0.875. When n = 1, x = 0, i.e. baud rate divisors with values between 1 and 2 are not possible.
This gives achievable baud rates in the range 183.1 baud to 3,000,000 baud. When a non-standard baud rate is required simply pass the required baud rate value to the driver as normal, and the FTDI driver will calculate the required divisor, and set the baud rate. See FTDI application note AN232B-05 for more details.(Quelle: http://elmicro.com/de/ft232r.html)
Ich hatte mir heute gerade 2 dieser Kabel für die normalen Atmo-Platinen besorgt (3,3V war doch richtig?). Bin aber noch nicht zum Test gekommen, vielleicht morgen.