Miniserie: Streaming-Box S100
| Teil 1 – S100 mit Debian einrichten | LU 10/2008, S. 71 |
| Teil 2 -- S100 als DVB- und Media-Center | LU 11/2008, S. 64 |
Im ersten Teil des Artikels haben wir eine ausgemusterte T-Online-Streamingbox in einen vollständigen Linux-Rechner verwandelt [1]. Nun soll die S100 zur Multimedia-Settop-Box mit DVB-T und Abspielmöglichkeit für Filme und Musik mutieren. Wir nutzen dazu die Mediacenter-Software My Media System (MMS, [2]) und VDR ([3], [4]) als Videorekorder für DVB-T. Da sich Installation und Konfiguration der beiden Pakete fast ebenso wie auf einem Standard-PC abspielen, beschränken wir uns hier auf die Besonderheiten im Zusammenhang mit der S100 und weisen, wo nötig, auf spezielle Workarounds hin.
Als DVB-Hardware lässt sich ein einfacher DVB-Stick an die S100 anschließen – allerdings sollte man auch dabei auf die im ersten Teil des Artikels bereits beschriebenen Probleme mit der Stromversorgung achten. Bestimmte Varianten der S100 verfügen auch über einen bestückten PCI-Steckplatz. Ist der vorhanden, so können Sie über eine entsprechende Riser-Karte auch eine DVB-PCI-Karte liegend einbauen. Auch Boxen "ohne" PCI-Steckplatz verfügen über die Anschlüsse, auf die lediglich keine PCI-Steckerleiste aufgelötet ist (Abbildung 1). Mutige mit guten Kenntnissen im Feinlöten können versuchen, diese nachzurüsten.
Fernbedienung
Bei der Fernbedienung der S100 handelt es sich nicht um eine IR-Fernbedienung im üblichen Sinn – also mit einem internen Anschluss an beispielsweise den seriellen Port – sondern um eine Tastaturemulation: Das Frontdisplay der Box emuliert eine einfache PS/2-Tastatur, die Tasten der Fernbedienung schicken Standard-Tastaturcodes ans Betriebssystem.
Eine Ausnahme stellt hier die Power-Taste dar. Sie signalisiert dem Frontpanel der Box, dass der Benutzer das System ausschalten möchte. Das schickt daraufhin über eine Steuerleitung ein ACPI-Signal zum Herunterfahren ans Betriebssystem. Allerdings wartet das Frontpanel nicht darauf, dass das System ordentlich herunterfährt, sondern klemmt nach rund vier Sekunden dem Mainboard einfach den Strom ab – ob das Betriebssystem nun beendet wurde oder nicht. Selbst ein optimiertes Linux lässt sich in so kurzer Zeit nicht ordnungsgemäß anhalten.
Für dieses Problem gibt es zwei mögliche Lösungen: So könnte man beispielsweise mit dem Einschleifen eines Bauteils in eines der Kabel des ATX-Power-Connectors die Zeit bis zur Stromabschaltung verlängern. Dies erfordert aber Fingerspitzengefühl und Erfahrung mit dem Lötkolben.
Eine mögliche Alternative ist es, sofort auf das ACPI-Signal zu reagieren, die Dateisysteme read-only zu remounten, alle wichtigen Prozesse zu beenden und erst dann den normalen Shutdown fortzusetzen. Der hat dann zwar immer noch keine Chance, bis zu Ende zu laufen, aber das Remounten der Dateisysteme minimiert das Risiko, dass das System in einen inkonsistenten Zustand gerät und vielleicht nicht mehr bootet. Dieser kleine "Hack" funktioniert problemlos. Um ihn einzubauen, ändern Sie in der Datei /etc/acpi/powerbtn.sh die Shutdown-Prozedur wie in Listing 1 gezeigt.
# schneller "Shutdown" sync sync mount -o remount,ro /boot mount -o remount,ro / # weitere Dateisysteme # read-only remounten […] # dann normaler Shutdown shutdown -h now
Kommt die Box als Server zum Einsatz, sollten Sie sie grundsätzlich über den normalen Konsolen-Shutdown herunterfahren. Allerdings kann das Betriebssystem dann die Box nach dem Halt nicht vollständig ausschalten – das erledigen Sie mit einem Druck entweder auf den Power-Button der Fernbedienung oder des Frontpanels. Die dann im Standby befindliche Box schalten Sie gegebenenfalls über den Kippschalter an der Rückseite ganz aus. Das spart einige Watt Stromverbrauch, unterbindet jedoch die Reaktivierung des Systems über die Fernbedienung.
TIPP
Bei Verwendung der S100 als Surfstation am LCD-TV hat sich der Einsatz einer Mediacenter-Tastatur mit eingebautem Trackball als sinnvolle Alternative zur Fernbedienung erwiesen.
LIRC-Emulator
Die meisten Applikationen unterstützen LIRC als Quelle für Signale von Fernbedienung. Der Standard-LIRCd lässt sich hier allerdings nicht nutzen, weil es dafür keine Anpassungen an das etwas andere Konzept der S100-Fernbedienung gibt. Nach Diskussionen im Zenega-User-Forum [5] entstand aber eine Art LIRC-Emulator: ein Daemon, der die Eingaben der Fernbedienung respektive des Frontpanels ins LIRC-Protokoll umsetzt. Damit kann man alle LIRC-fähigen Applikationen über die S100-Fernbedienung steuern.
Der Daemon selbst, zenegalircd, lässt sich problemlos aus den Quellen [6] bauen. Sie laden ihn beim Systemstart beispielsweise über ein Initskript, er benötigt keine weitere Konfiguration – dazu später mehr. Läuft der Daemon, prüfen Sie sein korrektes Funktionieren mittels irw. Dieses kleine Tool aus den LIRC-Standardwerkzeugen gibt die Kommandos aus, die der laufende LIRC-Server liefert – in unserem Fall also die Kommandos von Zenegalircd.



