Stella Light: Unterschied zwischen den Versionen

Aus Ethersex_Wiki
Wechseln zu: Navigation, Suche
Zeile 9: Zeile 9:
 
Nützlich zu wissen:
 
Nützlich zu wissen:
 
* PWM wird hier per Software nachgebildet, es werden nicht die (meist nur in kleiner Zahl vorhandenen) Hardware PWM Kanäle benutzt.
 
* PWM wird hier per Software nachgebildet, es werden nicht die (meist nur in kleiner Zahl vorhandenen) Hardware PWM Kanäle benutzt.
* Das Stella Modul benötigt einen komplett eigenen 8-Bit Timer und kann daher nicht zusammen mit anderen Modulen, die auch eigene Timer benötigen, kompiliert werden.
+
* Das Stella Modul benötigt einen komplett eigenen 8-Bit Timer und kann daher nicht zusammen mit anderen Modulen, die den selben Timer benötigen, kompiliert werden.
 
* [http://de.wikipedia.org/wiki/Gammakorrektur Gammakorrektur] ist noch experimentell und kann optional dazugeschaltet werden.
 
* [http://de.wikipedia.org/wiki/Gammakorrektur Gammakorrektur] ist noch experimentell und kann optional dazugeschaltet werden.
 
* Stella kann sehr schnell neue Farbwerte erhalten um beispielsweise auch bei härtesten Klängen noch "beatgenau" Farbwechsel durchzuführen.
 
* Stella kann sehr schnell neue Farbwerte erhalten um beispielsweise auch bei härtesten Klängen noch "beatgenau" Farbwechsel durchzuführen.
 
* Kanäle können nicht nur einfach gesetzt werden, sondern auch zum Zielwert faden. Es sind mehrere Fade Algorithmen implementiert.
 
* Kanäle können nicht nur einfach gesetzt werden, sondern auch zum Zielwert faden. Es sind mehrere Fade Algorithmen implementiert.
* Angesteuert wird entweder per UDP (Protokoll Details stehen weiter unten), mit Hilfe des ethersex ecmd Systems oder durch [[CRON-Dienst|Crontabs]] (Zeitgesteuerte Farb/Lichwechsel).
+
* Angesteuert wird entweder per [[Ecmd speed protocol]] (schnelles UDP Protokoll), mit Hilfe des Zeichenketten basierendem ethersex ecmd Systems (z.B. über den Webbrowser) oder durch [[CRON-Dienst|Crontabs]] (Zeitgesteuerte Farb/Lichwechsel).
* [http://de.wikipedia.org/wiki/User_Datagram_Protocol UDP] unterstützt selber keine Bestätigung, dass ein neuer Befehl eingegangen ist. Das Stella Protokoll kann diese Funktion aber optional liefern. (Bei schnellen Wechseln nicht empfehlenswert)
 
  
 
==Stella Modul aktivieren: Menuconfig==
 
==Stella Modul aktivieren: Menuconfig==

Version vom 17. April 2009, 18:18 Uhr

Was ist das Stella Modul

Das Stella Modul erzeugt PWM Signale und gibt diese an einem wahlfreiem Port des Mikrocontrollers aus. Es können somit bis zu 8 unabhängige Signale für z.B. Servo Motoren oder LEDs generiert werden. Für das Faden von LEDs ist dies insbesondere nützlich, da PWM in der Regel die einzige, einfach zu realisierende Möglichkeit für diesen Zweck ist.

Nützlich zu wissen:

  • PWM wird hier per Software nachgebildet, es werden nicht die (meist nur in kleiner Zahl vorhandenen) Hardware PWM Kanäle benutzt.
  • Das Stella Modul benötigt einen komplett eigenen 8-Bit Timer und kann daher nicht zusammen mit anderen Modulen, die den selben Timer benötigen, kompiliert werden.
  • Gammakorrektur ist noch experimentell und kann optional dazugeschaltet werden.
  • Stella kann sehr schnell neue Farbwerte erhalten um beispielsweise auch bei härtesten Klängen noch "beatgenau" Farbwechsel durchzuführen.
  • Kanäle können nicht nur einfach gesetzt werden, sondern auch zum Zielwert faden. Es sind mehrere Fade Algorithmen implementiert.
  • Angesteuert wird entweder per Ecmd speed protocol (schnelles UDP Protokoll), mit Hilfe des Zeichenketten basierendem ethersex ecmd Systems (z.B. über den Webbrowser) oder durch Crontabs (Zeitgesteuerte Farb/Lichwechsel).

Stella Modul aktivieren: Menuconfig

Um Stella in ethersex zu aktivieren, wählt man im Menü

 │ │                Load a Default Configuration  --->
 │ │                ...
 │ │                Applications  --->
 │ │                  ...
 │ │                  [*] Stella Light  --->

Stella arbeitet mit den Modulen Ecmd speed protocol, eeprom und Cron zusammen und bietet selber eine Moodlight Funktionalität. Eines dieser Möglichkeiten sollte genutzt werden, sonst tut Stella schlicht gar nichts.

Es gibt noch ein paar Dinge, die nicht per menuconfig konfiguriert werden können. Du musst z.B. folgendes in pinning/hardware/{deineHardware}.m4 hinzufügen, falls es nicht schon eingetragen ist, um beispielsweise Pins 2-7 von PortD für Stella zu nutzen:

ifdef(`conf_STELLA', `dnl
  STELLA_PORT_RANGE(PD2,PD7)
')

Hardware Beispiel Aufbauten

Die gibt es. Aber ganz offensichtlich hat noch niemand hier was eingetragen. Genau DU könntest jetzt anfangen und hier deinen Aufbau präsentieren.

Ansteuerung

Per ECMD

Stella unterstützt ecmd Befehle. Folgende Befehle können benutzt werden:

stella cron

Fügt dem CRON-Dienst einen job für Stella hinzu. Es müssen mindestens als Argumente der Kanal und die Zielhelligkeit übergeben werden. Optional sind dann noch Minute, Stunde, Tag, Monat, Wochentag und Wiederholungen. Wenn Optionale Parameter nicht angegeben werden, wird -1 angenommen.

channels

Liefert die Anzahl an einkompilierten Kanälen zurück. Kann nicht zur Laufzeit geändert werden.

stella version

Liefert die Stella Protokoll Version zurück.

stella fadestep get/set

Setzt bzw. liefert die Geschwindigkeit fürs Faden. Fordert einen Paramter fürs setzen.

channel get/set

Setzt bzw. liefert den Wert eines Kanals. Der Kanal und evtl. die Zielhelligkeit müssen angegeben werden.

Per Netzwerk (UDP)

Für diesen Modus muss dein Ethersex mit Ecmd speed protocol Unterstützung compiliert sein.

Programme

Du findest im ethersex Quellcode unter contrib/stella ein kleines c Programm, welches du mit "make" übersetzten kannst.

Ein Programm mit Oberfläche für Windows, MacOS und Linux gibt es ebenfalls: Stella Control. Quellcode und Binaries für Linux und Windows gibt es unter http://github.com/davidgraeff/stellacontrol/downloads. Zum Zeitpunkt des Schreibens war Version 1.3 aktuell. Hier einige Screenshots von Version 1.3: