Forum: Mikrocontroller und Digitale Elektronik Ethersex Stella-Modul mehr als 8 Kanäle


von Christian S. (multi-man)


Lesenswert?

Hallo !

Mir ist schon klar, dass es generell kein Problem ist, mit einem 
ATMega32 mehr als 8 PWM-Signale auszugeben, dazu gibts hier ja auch 
genug code.

Allerdings wollte ich die Ports über Ethernet steuern, also hab ich ein 
Pollin-Net-IO Board genommen und Ethersex drauf gemacht und kann über 
das Stella-Light-Modul auch 8 Kanäle steuern ...

Ich bräuchte aber 12 Kanäle. Habe mir den Code jetzt schon ein paar mal 
angeguckt aber da ich aus der Bascom-Ecke komme blicke ich echt nicht 
durch, wie ich die Source erweitern könnte, um eben mehr Ports zu 
erhalten ...

Vielleicht hat das ja einer von euch schonmal gemacht, oder jemand hat 
ne andere Idee, wie ich die Aufgaben

- 12 PWM-Ports
- Ethernet-Schnittstelle mit einfachen TCP-Steuerbefehlen und Abfragen

unter einen Hut bringen könnte

Vielen Dank im Vorraus

Gruß
Christian

von AVR D. (avrdude)


Lesenswert?

Hallo Christian,

auch wenn ich nach zwei Jahren einen halbtoten Thread ausgrabe: Wie hast 
du Ethersex auf dem AVR NET IO mit Stella zum laufen gebracht? Wenn ich 
es aktiviere, erhalte ich u.a. den Fehler
warning: 'STELLA_COMPARE_VECTOR' appears to be a misspelled signal 
handler
und andere Fehler, die auch andere schon bei
http://list.zerties.org/pipermail/ethersex-devel/2010-July/001519.html
dokumentiert haben.

Kannst du mir bitte den rettenden Tip geben, wie man das zum Laufen 
bekommt?

Danke im Voraus!

von DK (Gast)


Lesenswert?

Hey AVR Dude / Christian,

gibts dafür inzwischen eine Lösung?

Habe extra Ubuntu installiert um die PWM nicht selbst schreiben zu 
müssen...

von AVR D. (avrdude)


Lesenswert?

Hi DK,

jep, es läuft, dank der klasse Unterstützung im IRC-Channel. Ich musste 
in der pinning Datei für das AVR NET IO folgendes abändern:

ifdef(`conf_STELLA', `dnl
  STELLA_PORT1_RANGE(PD2,PD7)
  STELLA_USE_TIMER(2)
')

Die Konfiguration aus dem Wiki, wo USE_TIMER(1) gesetzt wird, ist nicht 
korrekt, da dieser bereits verwendet wird. Diese eine falsche Zeile 
hatte die ganze Latte an Fehlern produziert.

Damit du Stella per web steuern kannst, musst du im Konfigurationsmenü 
noch folgendes aktivieren:

Unter General setup - vfs support - vfs file inlining - inline stella 
light

Viel Erfolg damit!
Bei Fragen einfach melden...

Gruß
avrdude

von DK (Gast)


Lesenswert?

Perfekt, danke avrdude!!

Ich hab die Pinning Konfiguration einfach blind abgeschrieben, nur noch 
meine PORTS geändert...

Da hätte ich echt lange gesucht, weil die Fehlermeldung doch rel. 
nichtssagend ist :)

Ethersex Server läuft jetzt :)




Hab aber nochmal eine Frage:

Mit der originalen (Pollin) Firmware habe ich die einzelnen Channels 
bereits erfolgreich über TCP/IP Befehle geschaltet.

In dem Fall über ein Labview Programm - ja ich male gerne Bilder... :)

Nun dachte ich, das würde mit der Ethersex Firmware genau so einfach 
funktionieren, indem ich den PORT auf 2701 (Standard TCP Port bei 
Ethersex) ändere und dann zB. "channel 0 155" als Befehl verwende.

Nur leider reagiert mein NET IO darauf nicht, und es kommt auch keine 
Antwort...

Im Browser eingeben funktioniert:
http://192.168.3.222/ecmd?channel 0 155

Die entsprechende LED wird auf den Wert "gedimmt" und es kommt ein "OK" 
als return.

Nur eben per TCP/IP hab ich keinerlei Reaktion :(



Grüße Dominik
Viele Dank übrigens für die nette Hilfe!!

von Dominik K. (dk-labview)


Angehängte Dateien:

Lesenswert?

War jetzt seit 2 Jahren nur Mitleser / Gast :D

Jetzt hab ich mich doch mal angemeldet :)

Also falls wer damit was anfangen kann: mein Testprogramm in LV.

Das "SETPORT X.Y" funktioniert natürlich nur mit der originalen 
Firmware.

Fernziel von dem Projekt ist eine Gebäudeautomation, aber der erste 
Schritt einfach nur mal eine RGB- Raumbeleuchtung.



Und wie gesagt:

Christian S. schrieb:
> - Ethernet-Schnittstelle mit einfachen TCP-Steuerbefehlen und Abfragen

Genau das möchte ich auch noch haben :)

mfg DK

von AVR D. (avrdude)


Lesenswert?

> Perfekt, danke avrdude!!
> Da hätte ich echt lange gesucht, weil die Fehlermeldung doch rel.
> nichtssagend ist :)

Ja, ich habe auch ewig gesucht, ich weiß wie nervenaufreibend das ist!!!

> Hab aber nochmal eine Frage:
>
> Mit der originalen (Pollin) Firmware habe ich die einzelnen Channels
> bereits erfolgreich über TCP/IP Befehle geschaltet.

Ja, klappt bei mir auch.

> Nun dachte ich, das würde mit der Ethersex Firmware genau so einfach
> funktionieren, indem ich den PORT auf 2701 (Standard TCP Port bei
> Ethersex) ändere und dann zB. "channel 0 155" als Befehl verwende.
>
> Nur leider reagiert mein NET IO darauf nicht, und es kommt auch keine
> Antwort...
> Nur eben per TCP/IP hab ich keinerlei Reaktion :(

Nein, das geht leider nicht mit Ethersex. Ich habe auch schon ewig 
gesucht, jedoch nichts frei verfügbares gefunden.
Ich wollte es auch mit Labview ansteuern, aber ohne TCP/IP-Befehle wird 
das schwierig.

In Labview gibts jedoch auch die Funktion http post und http get - evtl. 
bekommst du es damit zum Laufen. Das sollte genauso funktionieren wie 
auch im Browser! Ich habe es jedoch noch nicht getestet, würde mich aber 
über Erfolgsmeldungen freuen :-)

Dies ist zwar keine Steuerung über diskrete TCP/IP Befehle, es hat 
jedoch die gleiche Funktionalität. Nur die Implementierung unterscheidet 
sich.

von Dominik K. (dk-labview)


Lesenswert?

oh Gott, dann muss ich die Firmware doch selbst schreiben.

Stand doch auf den komischen Ethersex Pages... Steuerbefehle über 
TCP/IP...

Diese HTTP Befehle sind ja total träge, und die Stella Light oder 
Ethersex im Allgemeinen sind doch n ziemlicher Schrott.

Also nach dem Aufriss den ich betrieben habe mit Ubuntu installieren und 
in terminalfenstern rumzutexten...
Totale Enttäuschung - die Firmware ist einfach nur MIST.

von Dominik K. (dk-labview)


Lesenswert?

Die PWM ist überhaupt sehr schlecht gemacht.

Selbst auf der höchsten Frequenz ist ein deutliches Flackern sichtbar, 
wenn man den Kopf dreht.

Sobald man alle Kanäle auf 0 / 255 runterdimmt fangen alle Kanäle an zu 
blinken, also ne sorry, aber die Software ist echt das letzte.

Wenn ich die Firmware fertig habe lade ich sie hoch.
Und zwar ohne GIT, ohne Ubuntu, ohne TERMINAL und den ganzen anderen 
pickligen Linix-Nerd Schwachsinn.

von Dominik K. (dk-labview)


Lesenswert?

Also HTTP / GET funktioniert.

Allerdings dauert ein einziger Zugriff für einen Kanal alleine 415 ms 
und ist daher für ernsthafte Anwendungen unbrauchbar.

Wer will schon sieben Sekunden warten bis das Licht angeht...

Der Umweg über HTTP ist einfach nur dämlich!
Weis der Geier was sich die rammelnde Osterhasen-Bande dabei gedacht 
hat...

Habe die Firmware heute selbst in Angriff genommen.

Einfach 15 PWM Soft Kanäle mit zentralem dekrement/inkrement Timerteiler 
und einer hohen Modulationsfrequenz. Angesteuert werden Fading Timer und 
die einzelnen Kanäle über TCP/IP.
Zugriffszeit wird bei etwa 5 ms + Netzwerk-Ping liegen.

Der Unterschied ist eben nur: Mit TCP/IP werden alle Kanäle und das 
Fading mit nur einem Zugriff übertragen.

von AVR D. (avrdude)


Lesenswert?

Hallo Dominik,

coole Sache! Ich bin auf das Ergebnis sehr gespannt und würde mich 
freuen, wenn du es wie angekündigt als zip-Datei hochlädst.
Danke auch für deinen Erfahrungsbericht mit den http-Befehlen!

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.