AVR Controller für Frontpanel

Fragen und Antworten zur Hardware der T-Online S100

Re: AVR Controller für Frontpanel

Beitragvon SvenGWK » 18.10.2008 00:50

Nein, so umständlich ist das ja nicht.
Das Script besteht ja schließlich schon und stellt ja im endeffekt nur die Systemzeit.
eine Anpassung ist recht einfach.
Ich kann ja mal das vdrsettime.sh posten wenn ich es irgendwie aus einem Image extrahieren kann, sollte nicht das problem sein.
egalus aus dem vdr-portal habe ich bereits den link zu dem thread geschickt mit der bitte da mal sein wissen einfliessen zu lassen,
er istder entwickler der zendeb distri.
ich vermute mal es ist wirklich recht einfach, obwohl ich mich nicht damit auskenne.
letztendlich muss ja nur die zeit in sekunden errechnet und dem controller übergeben werden, das ist nicht so großartig verschieden.
SvenGWK
Member
 
Beiträge: 22
Registriert: 21.04.2008 22:00

Re: AVR Controller für Frontpanel

Beitragvon egalus » 18.10.2008 15:09

Ich schreib mal ne Kleinigkeit dazu:

Für die SMT gibt es ein (zumindest aus meiner Sicht gesehen) relativ ähnliches Bastelprojekt, das SMTWakeupBoard.
Wie es der Zufall so will arbeitet auch das mit einem ATMega.
Ohne jetzt Grundlegende Kenntnisse in der Programmierung dieser Chips zu haben könnte ich mir sehr gut vorstellen, dass sich Teile des Sources für jenes Projekt wunderbar auch für dieses Projekt benutzen lassen.

Solange man einen VDR auf der S100 betreibt ist es eigentlich kein Problem von diesem beim Shutdown zu erfahren wann der nächste aktive Teimer ansteht, das gibt der VDR nämlich ganz brav dem (falls definiert) shutdown script mit.
The command given in the '-s' option will be called with five parameters.
The first one is the time (in UTC) of the next timer event (as a time_t
type number), and the second one is the number of seconds from the current
time until the next timer event. Your program can choose which one to use
for programming some sort of hardware device that makes sure the computer
will be restarted in time before the next timer event. Your program must
also initiate the actual shutdown procedure of the computer. After this
your program should return to VDR. VDR will not automatically exit after
calling the shutdown program, but will rather continue normally until it
receives a SIGTERM when the computer is actually shut down. So in case
the shutdown fails, or the shutdown program for some reason decides not to
perform a shutdown, VDR will stay up and running and will call the shutdown
program again after another MinUserInactivity minutes.

If there are currently no timers active, both parameters will be '0'.
In that case the program shall not set the hardware for automatic restart
and only perform the system shutdown. A program that uses the second parameter
to set the hardware for restart must therefore also check whether the first
parameter is '0'.

The third parameter contains the number of the channel that will be recorded
by the next timer (or 0 if no timer is present), and the fourth parameter
contains the file name of the recording as defined in the timer (or an empty
string if no timer is present). These can be used by the shutdown program to
show that information on some display interface etc.

The fifth parameter indicates the reason why the shutdown was requested.
'0' means this is an automatic shutdown due to some timeout, while '1' means
that this is a user requested shutdown (resulting from pressing the "Power"
key). The shutdown program may use this information to decide whether or
not to actually perform the system shutdown.


Damit muss man nichtmal Uhrzeiten umrechnen sondern kann dem Controller einfach die Sekunden bis zur nächsten Aufzeichnung abzüglich einer Zeitspanne zum Aufwachen mitgeben.

Der wirkliche Poweroff wird bei der SMTWAkeup Lösung einfach am logischen Ende von /etc/init.d/halt durchgeführt.
Hier wird einfach - nachdem alles runtergefahren wurde - die HDD geparkt und dem Controller mitgeteilt, dass er die SMT in 3 Sekunden hart ausschalten soll. Selbiges sollte dann auch für die S100 funktionieren.
egalus
Professional
 
Beiträge: 138
Registriert: 09.08.2007 17:33

Re: AVR Controller für Frontpanel

Beitragvon twinpeaks » 18.10.2008 23:02

Hi,

@egalus:
Danke für die Infos, ich schau mir das mal an.

Ansonsten hab ich heute die Firmware 0.2 gepostet (hängt am ersten Beitrag):
+ Deaktivieren des automatischen Abschaltens nach SHUTDOWN_TIMEOUT möglich durch setzen auf 0 in main.h
+ Detektion ob Host PC an oder aus ist (einstellbar mit HOST_POWER_SYNC in main.h)

Gruß,
twinpeaks
Benutzeravatar
twinpeaks
Advanced Member
 
Beiträge: 34
Registriert: 17.06.2008 22:37

Re: AVR Controller für Frontpanel

Beitragvon kris » 20.10.2008 17:00

HI,

das ist ein feiner thread, da mir das Frontpanel meiner beiden s100 gehörig auf den Zeiger geht, hätte ich gerne zwei exemplare, sofern das mit der Sammelbestellung klappen würde.

MFG
KRis
kris
Member
 
Beiträge: 29
Registriert: 17.10.2008 16:47

Re: AVR Controller für Frontpanel

Beitragvon twinpeaks » 22.10.2008 22:05

Hallo zusammen,

ja das mit der Sammelbestellung klappt:
Wer einen programmierten Controller (Bootloader + Firmware) mit PLCC-Sockel und Quarz haben will, schickt mir bitte eine E-Mail an [email protected] mit der Anzahl der Teilesätze, eurer E-Mail- und Post-Anschrift.
Der Einfachheit halber verschicke ich nur komplette Sätze, also immer nur Controller + Sockel + Quarz, auch wenn jemand z.B. schon nen Sockel hat. Die paar Cent reißen es sowieso nicht raus.

Preis pro Teilesatz EUR 3,- plus EUR 2,- Versandkostenpauschale.
Also:
1 Satz = EUR 5,- / 2 Sätze = EUR 8,- / 3 Sätze = EUR 11,- / usw.
Bezahlung per Überweisung nach der Bestellung, vor der Lieferung. Kontonummer gibt es dann per E-Mail.

Ich sammel erstmal die eingehenden Bestellungen bis 31.10.2008 und werde dann die entspr. Bauteile selbst bestellen und danach versenden.

Gruß,
twinpeaks
Benutzeravatar
twinpeaks
Advanced Member
 
Beiträge: 34
Registriert: 17.06.2008 22:37

Re: AVR Controller für Frontpanel

Beitragvon twinpeaks » 07.11.2008 20:36

Hallo Sammelbesteller,

Ich habe heute die Lieferung der Bauteile der Sammelbestellung bekommen. Am Wochenende werde ich versuchen, alle Controller zu programmieren und versandfertig zu machen, so dass ich alles Anfang nächster Woche zur Post bringen kann.

Vielen Dank übrigens an alle Besteller für euer Vertrauen, dass ihr alle per Vorkasse bezahlt habt!

Gruß,
twinpeaks
Benutzeravatar
twinpeaks
Advanced Member
 
Beiträge: 34
Registriert: 17.06.2008 22:37

Re: AVR Controller für Frontpanel

Beitragvon kris » 09.11.2008 01:45

HI,

Vielen Dank übrigens an alle Besteller für euer Vertrauen, dass ihr alle per Vorkasse bezahlt habt!

Na wir haben zu danken, das Du Dir die Arbeit machst. Vielen Dank nochmals.

MFG
Kris
kris
Member
 
Beiträge: 29
Registriert: 17.10.2008 16:47

Re: AVR Controller für Frontpanel

Beitragvon twinpeaks » 10.11.2008 22:41

Hi,
die Controller hab ich heute verschickt. Sollten also bald bei euch ankommen.

Ich habe übrigens eine Hand voll Controller mehr bestellt. Falls noch jemand einen will, einfach melden!

Gruß,
twinpeaks
Benutzeravatar
twinpeaks
Advanced Member
 
Beiträge: 34
Registriert: 17.06.2008 22:37

Re: AVR Controller für Frontpanel

Beitragvon kris » 11.11.2008 17:23

HI,

sind angekommen. Dann kann das Löten ja losgehen :)

MfG
KRis
kris
Member
 
Beiträge: 29
Registriert: 17.10.2008 16:47

Re: AVR Controller für Frontpanel

Beitragvon twinpeaks » 11.11.2008 22:04

Hi,

ich habe an das Ur-Posting noch die Skripte angehängt, die zum Programmieren des Wake-up Timers nötig sind.
Es gibt da unterschiedliche Herangehensweisen. Ich habe die vorhandene bzw. schon vorbereitetet Logik der Zenslack-Distri verwendet:

Das Skript /etc/zenslack/setalarm.sh wird beim Shutdowm durch /etc/rc.d/rc.6 aufgerufen, liest den nächsten aktiven Timer aus der Datei /etc/vdr/timers.conf, und setzt den Timer des Frontpanels entsprechend. Das genügt, wenn man die Box manuell ausschaltet.

Damit auch VDR die Box automatisch runterfährt, wenn eine bestimmte Zeit keine Taste gedrückt wird, muss man ihm ein Shutdown-Skript per Option übergeben. Das geschieht in /etc/zenslack/runvdr.sh. Dort muss die Option --shutdown=/etc/zenslack/vdrshutdown.sh \ hinzugefügt werden. Das angegebene Skript wiederum initiiert einfach einen Shutdown (per Befehl ans Frontpanel). Den Rest erledigt dann setalarm.sh.

Gruß,
twinpeaks
Benutzeravatar
twinpeaks
Advanced Member
 
Beiträge: 34
Registriert: 17.06.2008 22:37

Re: AVR Controller für Frontpanel

Beitragvon kris » 11.11.2008 22:42

HI,

so, eingebaut und läuft. Ich verstehe jedoch nicht wie ich die Firmwareversion abfragen kann?

Ich hab naiverweise gedacht ein
echo -ne '\xa2\xD1' > /dev/ttyS1
würde mir was erzählen, macht es aber nicht

MFG
KRis
kris
Member
 
Beiträge: 29
Registriert: 17.10.2008 16:47

Re: AVR Controller für Frontpanel

Beitragvon twinpeaks » 11.11.2008 22:55

Hi,

Ich hab naiverweise gedacht ein
echo -ne '\xa2\xD1' > /dev/ttyS1
würde mir was erzählen, macht es aber nicht


Doch das erzählt dir was. Du muss nur richtig zuhören. :-)
Auf einem zweiten Terminal eingeben:
cat /dev/ttyS1
zeigt die Antwort an.

Gruß,
twinpeaks
Benutzeravatar
twinpeaks
Advanced Member
 
Beiträge: 34
Registriert: 17.06.2008 22:37

Re: AVR Controller für Frontpanel

Beitragvon kris » 11.11.2008 23:17

Hi,

ahhh... Ok, dann schau ich mir das später mal an. Hab gerade die Kiste ausgemacht.

MFG
KRis
kris
Member
 
Beiträge: 29
Registriert: 17.10.2008 16:47

Re: AVR Controller für Frontpanel

Beitragvon SvenGWK » 21.11.2008 22:45

Hi,

nochmal Riesendank für Deine Arbeit.
Habe das ganze jetzt mit Zendeb zum laufen gebracht und es funktioniert fantastisch!
SvenGWK
Member
 
Beiträge: 22
Registriert: 21.04.2008 22:00

Re: AVR Controller für Frontpanel

Beitragvon SvenGWK » 22.11.2008 18:47

Falls jemand den Controller in Verbindung mit ZenDEB einsetzen möchte - so funktioniert´s...

Den Inhalt der /etc/vdr/shutdown-hooks/S90.smt-wakeup löschen und durch den Inhalt des setalarm.sh Script´s ersetzen
Den Pfad zu dem timers.conf anpassen auf "/var/lib/vdr/timers.conf"
vor die letzte Zeile noch /sbin/shutdown -h now "Power button pressed" einfügen, damit sich das System auch abschaltet.

Der Exitcode der übergeben wird wenn kein timer in der timers.conf steht muss noch auf 0 geändert werden,
sonst fährt die Kiste nicht runter wenn kein Timer vorhanden ist.

######################################################################
# Get next timer (1st line of timers.conf)
TIMERLINE=$(head -n 1 $TIMERFILE)
if [ -z "$TIMERLINE" ]; then
say "No timers found. Frontpanel timer will be deactivated."
echo -ne "\xA2\xD2\x00\x00\x00\x00" > /dev/ttyS1
exit 1 exit 0 muss da hin
fi

######################################################################




Attribute auf 777 setzen

In /etc/acpi/powerbtn.sh die Zeile /sbin/shutdown -h now "Power button pressed"
durch /usr/bin/svdrpsend HITK POWER ersetzen



Das war´s. :)
Zuletzt geändert von SvenGWK am 22.11.2008 22:08, insgesamt 1-mal geändert.
SvenGWK
Member
 
Beiträge: 22
Registriert: 21.04.2008 22:00

VorherigeNächste

Zurück zu Hardware

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 5 Gäste

cron