RST-L WS 04/05 Dany Drygalla Andreas Haase

Transcription

RST-L WS 04/05 Dany Drygalla Andreas Haase
RST-L WS 04/05
Praktischer Versuch zur
Installation eines alternativen (besseren)
Betriebssystems auf der D-BOX II (Nokia)
Nach dem Artikel „Tux-TV“ in der Zeitschrift c't, Ausgabe 26, Jahrgang 2002
Dany Drygalla
Andreas Haase
Inhaltsverzeichnis
1 Vorwort.................................................................................................................................... 3
2 Anschlüsse der D-BOX............................................................................................................4
3 Nachteile des BetaNova–OS von BetaResearch gegenüber Linux.......................................... 4
4 Vorteile von Linux auf der DBOX...........................................................................................5
5 Hardware der Nokia DBOX..................................................................................................... 5
6 Vorbereitung der Installation................................................................................................... 5
7 Linux-Installation auf der D-BOX......................................................................................... 12
8 Funktionstest.......................................................................................................................... 15
9 Fazit........................................................................................................................................18
10 Links.....................................................................................................................................19
Anhang: c't Artikel.................................................................................................................... 19
Abbildungsverzeichnis
Abbildung 1: Anschlüsse der D-BOX
Abbildung 2: Flash_Reset Pin bei der Nokia-DBOX mit 2xIntel Flash. Quelle: http://www.dietmarh.net/img/nokia_2xi_pin12.jpg
Abbildung 3: Voreinstellungen für Debug Modus
Abbildung 4: Bootloader im Debug Modus. Quelle:http://wiki.tuxbox.org
Abbildung 5: Unter „Utililities“ befindet sich die Funktion zum Auslesen des Flash-ROMs der DBOX
Abbildung 6: Auslesevorgang an serieller Konsole
Abbildung 7: Microcodes aus Originalsoftware extrahieren
Abbildung 8: Auslesen der Microcodes erfolgreich
Abbildung 9: Herunterladen des Yadi-Images
Abbildung 10: der Bootmanager hat den Schreibvorgang beendet
Abbildung 11: Erster Start der DBOX mit Linux
Abbildung 12: Mit dem Laden der Microcodes auf die D-BOX ist die Installation von Linux abgeschlossen
Abbildung 13: Ucodes wurden erfolgreich eingebunden
Abbildung 14: NFS-Freigabe für die D-BOX einrichten, Anschließend „Start“ betätigen
Abbildung 15: Starten des Audioplayers
Abbildung 16: Der Audioplayer von Neutrino
Abbildung 17: NFS-Einstellungen
Abbildung 18: Einrichten der NFS Freigabe auf der D-BOX
Abbildung 19: rekursives Durchsuchen von Verzeichnissen
Abbildung 20: Der Audioplayer in Aktion
4
6
7
9
9
10
11
11
12
14
14
14
15
15
16
16
16
17
17
18
1 Vorwort
„Premiere-Zuschauer kennen das Theater: Die Original-Software der dbox2 macht den digitalen
Fernsehgenuss zur Geduldsprobe. Die Bedienoberfläche ist recht behäbig und nicht besonders
übersichtlich; das Zappen zwischen den Kanälen dauert bis zu fünf Sekunden und wer sich aus
hunderten von Satelliten-Kanälen seine Favoriten zusammenstellen möchte, verzweifelt an der
hakeligen Bouquet-Verwaltung.
Es gibt jedoch eine Alternative zum langweiligen Betanova-Betriebssystem: Findige LinuxEntwickler haben eine eigene Firmware entwickelt, die dem Digital-Receiver völlig neue
Anwendungsgebiete erschließt. Neben komfortablen und schnellen Bedienoberflächen für den
Fernseh-Modus laufen nun auch einfache Spiele und Netzwerkanwendungen auf der Box. Obwohl
in der dbox2 keineswegs ein Intel-Prozessor arbeitet, sondern ein PowerPC - mit der neuen
Software gibt sie sich kommunikativ wie ein normaler Linux-Rechner und lässt sich per TelnetKommandozeile und Browser-Oberfläche steuern.
Via FTP überträgt man komfortabel Senderlisten und Software-Updates in die Box. Ein PC im
lokalen Netzwerk kann den MPEG-Stream des Fernsehprogramms auf Festplatte bannen. Auch das
Radioprogramm digitaler Stationen findet so als Audio-Stream für Winamp & Co. den Weg ins
Heimnetz.
Eine so aufgebohrte dbox2 stellt andere Satelliten-Receiver leicht in den Schatten - vorausgesetzt
man verfügt über etwas Linux-Know-how und traut sich zu, die meist nötigen Hardware-Eingriffe
vorzunehmen. Die Software ist zwar mittlerweile recht ausgereift und leicht zu bedienen - hin und
wieder bleiben Abstürze jedoch nicht aus. „1
Es wird empfohlen, zunächst den c't Artikel (im Anhang dieses Dokumentes zu finden) zu lesen.
Dieser bietet eine gute Einführung in die Thematik, um die hier vorgestellten Arbeitsschritte und
Begriffe zu besser zu verstehen.
1 Tux-TV, Linux auf Premieres D-BOXII, C'T 26/2002, S. 224
2 Anschlüsse der D-BOX
1x Netzanschluß
1x Stereo RCA (Cinch) Ausgang (Anschluß an Stereoanlage)
2x Scart (1x Fernseher, 1x Videorecorder)
1x optischer Audio-Digitalausgang (IEC-958)
1x serieller Anschluß (RS-232)
1x Analog Modem (RJ-11)
1x SAT-Antenneneingang
1x Antennenausgang für Analog-Receiver
1x Ausgang für VCR-Steuerung (Infrarot)
Abbildung 1: Anschlüsse der D-BOX
3 Nachteile des BetaNova–OS von BetaResearch gegenüber Linux
–
Die D-Box benötigt nach dem Einschalten ca 3 Minuten zum Hochfahren (Linux: ca. 30
Sekunden)
–
Träge reagierende Benutzeroberfläche. Da die Benutzeroberfläche größtenteils in Java
programmiert wurde, sind sich viele Entwickler darüber einig, dass dies die Hauptursache für die
Trägheit des Systems ist.
–
Komplizierte und unübersichtliche Menüführung
–
Das Betanova-Betriebssystem verzichtet konsequent auf die Benutzung der vorhandenen
Ethernet-Schnittstelle, mit deren Hilfe sich das ohnehin im Receiver vorhandene MPEG2-Signal
ohne Qualitätsverlust auf einen angeschlossenen PC oder einen digitalen Videorecorder
übertragen ließe. Dem Anwender bleibt hier nur die Möglichkeit, das analoge Fernsehsignal am
SCART-Anschluß zur Aufzeichnung zu verwenden.
4 Vorteile von Linux auf der DBOX
–
Ca. 30 Sekunden nach dem Einschalten ist die D-BOX betriebsbereit
–
Komfortablere Benutzeroberfläche als mit dem Betanova-OS
–
Linux verwendet die am Gerät vorhandene Ethernet-Schnittstelle. Die D-BOX ist mit dem
Linux-Betriebssystem nun in der Lage, das MPEG2 – kodierte Fernsehsignal direkt in eine Datei
auf einem im lokalen Netzwerk angeschlossenen PC (mit einem freigegebenem Verzeichnis) zu
schreiben, um so Fernsehsendungen digital aufzunehmen. Anders herum kann die D-BOX jetzt
auch als so genannter „Streaming Client“ fungieren, was bedeutet, dass sich Musik (z. B. OGG
Vorbis, MP3)- und Videodateien (MPEG-Format), die sich auf der Festplatte eines Rechners im
Arbeitszimmer befinden, auf der D-BOX im Wohnzimmer wiedergeben lassen.
–
Fernsteuerung über eigenen HTTP-Server
–
Einfache Netzwerkanwendungen (RSH, Telnet, FTP...)
5 Hardware der Nokia DBOX
CPU Motorola MPC 832 (32 Bit PPC-Kern, 66MHz, Ethernet)
32MB SD-RAM
8MB Flash ROM, aufgeteilt auf zwei 4MB Intel TE28F320C3B Bausteine
Samsung CAM (Conditional Access Module)-Chip
C-Cube GTX MPEG-2 Transport Stream Demultiplexer Chip
C-Cube AVIA500 Audio/Video Decoder Chip
SAA7126 Digital Video Encoder
NEC 78k Microcontroller als Frontendprozessor
6 Vorbereitung der Installation
Damit Linux installiert werden kann, ist es nötig, den Bootloader der D-BOX, der das eigentliche
Betriebssystem auf der D-BOX startet, in den sogenannten Debug Modus zu bringen. Im Prinzip
reicht es aus, eine Variable im Bootloader zu ändern. Der Zugriff darauf ist jedoch das Problem.
Erst im Debug Modus führt der Bootloader Software (sprich:Linux) aus, die nicht durch
BetaResearch digital signiert wurde. Es gibt mehrere Methoden, den Bootloader der D-BOX in den
Debug Modus zu bringen. Welche das im einzelnen sind, hängt immer von der Software-Version
des Bootloaders, Anzahl (ein oder zwei) und Hersteller (Intel oder AMD) der verwendeten FlashEEPROM's, die in der Box verbaut wurden, sowie vom Hersteller der D-BOX ab (außer Nokia noch
Sagem und Philips). Die uns zur Verfügung stehende D-BOX ist ein „Spezialfall“, bei der nur eine
einzige Methode funktioniert (http://www.dietmar-h.net/mhc_debugn2xi.html). Siehe hierzu den
letzten Absatz im Abschnitt „Trojanischer Kernel“ im c't-Artikel. Dazu ist ein Hardware Eingriff in
das Gerät erforderlich, mit dem man zum richtigen Zeitpunkt den Bootvorgang unterbricht und den
Bootloader mit seinen eigenen Befehlen bearbeitet. Im Rahmen dieses Versuches führte die
genannte Methode sofort zum Erfolg. Die Methode wird im folgenden vorgestellt und setzt folgende
Dinge voraus:
–
Die D-BOX wird geöffnet und der FLASH_RESET-Pin lokalisiert (auf dem Bild unten das
Lötauge mit der Bezeichnung pin12)
–
Per Nullmodemleitung werden die RS-232 Schnittstellen von PC und D-BOX verbunden.
–
Die Netzwerkschnittstellen von PC und D-BOX werden über eine kreuzverdrahtete
Anschlussleitung (sog. Crossover Cable) verbunden.
–
Die Netzwerkkarte im PC wird dabei fest auf 10Mbit/s, halb duplex eingestellt, s. a. c't-Artikel,
Abschnitt „Türsteher“.
–
Die Software „Dbox II Bootmanager“ (http://dbox.feldtech.com/) auf dem PC.
–
Eine Datei namens ppcboot (http://www.dietmar-h.net/tools/ppcboot) wird benötigt. Diese Datei
enthält eine Laderoutine für den Linux-Kernel und wird vom Bootloader aufgerufen, da der
Bootloader nicht selbst den Linux-Kernel startet.
Abbildung 2: Flash_Reset Pin bei der Nokia-DBOX mit 2xIntel Flash. Quelle:
http://www.dietmar-h.net/img/nokia_2xi_pin12.jpg
Danach wurde der Bootmanager geöffnet. Im Feld „Dbox II IP“ kann eine beliebige IP-Adresse
eingegeben werden, solange sie im gleichen Subnetz der Netzwerkkarte des PCs liegt.
Die anderen Einstellungen wurden so vorgenommen, wie sie in der beschriebenen Methode
gefordert sind. Der eingetragene Pfad unter „Bootfile für Dbox“ zeigt auf die oben genannte
ppcboot. Nun wurde der Boot-Manager gestartet.
Abbildung 3: Voreinstellungen für Debug Modus
Danach wird die D-BOX in die Stromversorgung eingesteckt. Der Bootloader sendet einen BOOTPBroadcast in das Netzwerk. Damit bekommt die D-BOX die im Boot-Manager eingestellte IPAdresse zugewiesen und fordert per TFTP die ppcboot an:
BootP> Created dynamic ARP entry for DBoxIP 192.168.0.99 with MAC 00:50:9C:17:32:07
BootP> Answer sent!
TFTP> Started TFTP-Transfer for "D:\Software\DBOX\ppcboot"...
TFTP> Transfer finished, sent 414 blocks
Der Bootloader erkennt jedoch, dass es sich um eine nicht signierte Startdatei handelt und löst einen
Reset der D-BOX aus. In der LCD-Anzeige wird „Reset“ angezeigt und kurz darauf startet die DBOX neu. Da sich dies jetzt immer wiederholen würde, muss an dieser Stelle nun der Bootvorgang
unterbrochen werden. Sobald wieder Reset angezeigt wird, muss die „Pfeil-oben“ - Taste an der DBOX betätigt werden, bis eine Zahlenkolonne in der LCD-Anzeige erscheint. Dies veranlasst den
Bootloader, einen Test des Flash-Speichers durchzuführen. Dies ist jetzt der Zeitpunkt für den
Hardwareeingriff: Der FLASH_RESET-Pin muss nun mit einem Draht einige Sekunden auf Low-
Potential gelegt werden, z.B am Tunergehäuse (Die Bezeichnung FLASH_RESET ist unserer
Meinung nach etwas unglücklich gewählt, weil dadurch der Eindruck entsteht, der Flash-Speicher
würde gelöscht. Tatsächlich wird aber durch das low-Signal lediglich der Flash-Speicher
deaktiviert. Deshalb wäre die Bezeichnung CHIP_ENABLE sicherlich sinvoller). Dadurch fällt der
Test des Flash-Speichers für den Bootloader negativ aus, was ihn in einen Fehlerzustand bringt.
Durch den Fehlerzustand öffnet der Bootloader eine Konsole auf dem RS-232 Anschluß, der über
die Nullmodemleitung mit dem PC verbunden ist und wartet auf Benutzereingaben. Zu betätigende
Sondertasten sind durch eckige Klammern gekennzeichnet.
Durch den chorus-Befehl wird die geladene ppcboot gestartet, die vorher mangels Signatur nicht
ausgeführt wurde:
chorus 800000[ENTER]
Branching to 0x40000
ppcboot 0.6.4 (Nov
1 2002 - 18:37:07)
Initializing...
CPU:
PPC823ZTnnA at 67 MHz: 2 kB I-Cache 1 kB D-Cache
*** Warning: CPU Core has Silicon Bugs -- Check the Errata ***
Board: ### No HW ID - assuming TQM8xxL
DRAM: (faked) 32 MB
Ethernet: 00-50-9c-17-32-07
FLASH: 8 MB
LCD driver (KS0713) initialized
Input: serial
Output: serial
Ersten Flash-ROM Sektor ins RAM kopieren, 10000000 ist die Startadresse des Flash-ROMs auf
der DBOX.
dbox2-ppcboot> cp 10000000 01000000 1000[ENTER]
Speicheradresse 944h editieren, an dieser Adresse befindet sich eine Kopie der Debug-Variable bei
der Nokia-DBOX mit Bootloader(Bmon)-Version 1.0
dbox2-ppcboot> nm 01000944[ENTER]
01000944: ffffffff ? 00000000[ENTER]
Änderungsmodus verlassen
01000944: 00000000 ? [ESC][ENTER]
Software-Schreibschutz des ersten Flash-ROM-Sektors aufheben.
dbox2-ppcboot> prot off 1:0[ENTER]
Un-Protect Flash Sectors 0-0 in Bank # 1.
Nun den geänderten Sektor zurückschreiben. Normalerweise sollte die D-BOX einen zusätzlichen
Hardware-Schreibschutz für die ersten 128kb des Flash-Speichers besitzen, welcher bewirkt, dass
das nachfolgende Kommando fehlschlägt. Durch einen Designfehler auf der Hauptplatine ist dieser
jedoch wirkungslos. Das ist bei nahezu allen D-BOXen vom Hersteller Nokia der Fall.
dbox2-ppcboot> cp 01000000 10000000 1000[ENTER]
Copy to Flash... done
D-BOX Reset durchführen
dbox2-ppcboot> go 10000100[ENTER]
## Starting application at 0x10000100 ...
Nach dieser Prozedur ist der Debug-Modus aktiv. Die D-BOX zeigt nach dem Reset die typischen
Debug-Meldungen des Bootloaders an.
Abbildung 4: Bootloader im Debug
Modus. Quelle:http://wiki.tuxbox.org
Als nächstes muß wieder mit Hilfe des „Dbox II Bootmanager“ zunächst das Betanova-OS aus dem
Flash-ROM Der D-BOX ausgelesen werden. Gleichzeitig hat man so eine Sicherungskopie des
Betanova-OS als Speicherabbild auf der Festplatte. Der Bootmanager bringt dafür eine angepasste
ppcboot mit (ppcboot_readflash). Das Speicherabbild enthält spezielle Firmwaredateien
(microcodes oder auch ucodes genannt), die für die Funktion einzelner Hardwarekomponenten
(CAM, MPEG-2 Transport Stream Demultiplexer, Audio/Video Decoder) zwingend erforderlich
sind. Diese Dateien müssen nach dem Auslesen aus dem Original-Speicherabbild extrahiert werden
und werden nach der Linux-Installation per File Transfer Protocol (FTP) auf die D-BOX geladen.
Beides erledigt der „Dbox II Bootmanager“ auf Knopfdruck. Mit der Funktion „Image Flashen“
lässt sich das Flash-ROM auf der D-BOX mit einem beliebigen Speicherabbild beschreiben.
Abbildung 5: Unter „Utililities“ befindet sich die Funktion zum Auslesen des Flash-ROMs der DBOX
Der „Image Auslesen“-Button wird betätigt. Es erscheint ein Dialogfenster, welches zur Angabe des
Speicherortes und eines Dateinamens auffordert. Die Datei wurde mit
BN2.01_20050129_Nokia_SAT_2xIntel_BMON1.0.img benannt. Dabei bedeutet
–
–
–
–
–
BN2.01
Nokia
SAT
2xIntel
BMON1.0
= Betanova OS Version 2.01 (momentan aktuell von Premiere)
= Hersteller
= für Satellitenempfang
= Flash-ROM – Geometrie, hier: zwei Bausteine von Intel
= Software-Version des Bootloaders, hier: 1.0
So lässt sich das zur jeweiligen D-BOX passende Flash-ROM Image leicht identifizieren. Das ist
vor allem nützlich, wenn bereits mehrere Versionen der Originalsoftware auf der Festplatte
existieren, da diese immer zur jeweiligen D-BOX eines Herstellers passen. Das liegt hauptsächlich
daran, dass der Bootloader auf einer Nokia-DBOX eine geringfügig veränderte HardwareInitialisierung vornehmen muss als sein Pendant auf einer Philips-DBOX. Daher bleibt beim
Bespielen des Flash-Speichers einer DBOX mit Linux der Bootloader unangetastet, der sich in den
ersten 128kB (Adresse 0x10000000 - 0x1001FFFF) des Flash-Speichers befindet.
Abbildung 6: Auslesevorgang an serieller Konsole
Wenn der Auslesevorgang erfolgreich beendet wurde, müssen jetzt die Microcodes aus dem
ausgelesenen Speicherabbild des Betanova-Betriebssystems extrahiert werden (ucodes.bin,
avia500.ux, avia600.ux, cam-alpha.bin)
Abbildung 7: Microcodes aus Originalsoftware extrahieren
Abbildung 8: Auslesen der Microcodes erfolgreich
7 Linux-Installation auf der D-BOX
So wie es verschiedene Linux-Distributionen für den Einsatz auf dem PC gibt, werden für die DBOX ebenfalls verschiedene Linux-Varianten zum Download angeboten. Diese unterscheiden sich
jedoch weniger im Aussehen der grafischen Oberfläche sondern vielmehr in der Ausstattung. Neben
„offiziellen“ Images (z.B auf www.yadi.org) sind auch solche von einzelnen Privatpersonen zu
finden, welche die Entschlüsselung des Senders Premiere und anderer, nicht deutschsprachiger
Programme auch ohne gültige Smartcard erlauben. Diese Images einhalten eine Software, mit der
das für die Entschlüsselung jeweils benötigte Conditional Access- (CA-) System emuliert werden
kann. In Zusammenhang mit diesen „inoffiziellen (= illegalen)“ Images fällt daher auch häufig der
Name eines australischen Laufvogels. Ohne gültige Schlüssel, um deren Beschaffung sich der
Anwender selbst kümmern muss, bleibt aber auch hier der Bildschirm dunkel.
Nicht nur im Hinblick auf die rechtliche Problematik sondern auch in Sachen Stabilität ist ein
offiziell angebotenes Linux-Image erste Wahl. Daher wurde auch ein Yadi-Image auf der D-BOX
installiert. Es handelt sich hier um eine Release-Version vom Oktober 2004. Das Image muss
lediglich entsprechend der Anzahl in der DBOX vorhandenen Flash-ROM's ausgewählt werden.
Z.B. die Datei 200410262111_yadi_squashfs_head_2x.img trägt den Zusatz 2x woraus sich
erkennen lässt, dass diese Image-Datei für zwei Flash-ROM Bausteine auf der Hauptplatine der
DBOX vorgesehen ist.
Abbildung 9: Herunterladen des Yadi-Images
Anschließend wird im Dbox II Bootmanager die Funktion „Image Flashen“ unter Utilities
ausgewählt. Per Dialogfenster wird die Yadi-Imagedatei ausgewählt. Danach muss die D-BOX neu
gestartet werden. Zunächst startete die D-BOX jedoch nicht mit der ppcboot_writeflash aus dem
Dbox II Bootmanager, sondern startete unerwartet das Betanova-OS im Flash-ROM. Der Fehler war
jedoch anhand der Statusausgaben des Bootloaders im COM-Terminal des Dbox II Bootmanagers
schnell gefunden. Offensichtlich ist der BootP request untergegegangen, da die
Netzwerkverbindung zu diesem Zeitpunkt noch nicht zwischen D-BOX und PC synchronisiert war:
BOOTP/TFTP bootstrap loader (v0.3)
debug: Transmitting BOOTP request via broadcast
debug: Given up BOOTP/TFTP boot
boot net failed
Abhilfe konnte geschaffen werden, indem erneut die Funktion „Image flashen“ gewählt wurde und
dieses mal den Bootloader der D-BOX einen erweiterten Systemtest durchführen ließ. Dazu
mussten wie bei einem Reset die „Standby-“ und die „Pfeil-oben“ Taste simultan am Gerät betätigt
werden, bis die LCD-Anzeige an der D-BOX erlischt. Anstatt nun beide Tasten gleichzeitig
loszulassen, wird die „Pfeil-oben“-Taste noch ein bis zwei Sekunden länger gehalten. Nach
Beendigung des Systemtests bleibt der Bootloader mit seiner Eingabeaufforderung stehen. Hier ist
dann boot net [ENTER] einzugeben. Damit wird per BootP und TFTP die PPCBoot
(ppcboot_writeflash) geladen und ausgeführt. Diese PPCboot fordert wiederum per TFTP unsere
Linux-Imagedatei an und übernimmt auch deren Kopieren in den Flash-Speicher der D-BOX. Der
Schreibvorgang soll jetzt detailliert dargestellt werden.
Systemtest gestartet
debug: DDF: Calibrating delay loop... debug: DDF: 67.79 BogoMIPS
debug: BMon V1.0 mID 01
debug: feID dd
gtxID 0b
debug: fpID 5a
dsID 01-5c.f1.24.07.00.00-01
debug: HWrev X5 SWrev 0.81
debug: B/Ex/Fl(MB) 16/16/08
WATCHDOG reset enabled
debug: &_text 0x10000, &_etext 0x26160, &_data 0x26160, &_edata 0x29c50
debug: &_end 0x347dc, &__stack 0x400000
debug: Memory tests (0x400000 – 0x1000000)
debug: NumberTest: debug: passed
debug: MarchTest: debug: passed
debug: PermTest: debug: passed
debug: Extension Memory tests (0x1000000 – 0x2000000)
debug: NumberTest: debug: passed
debug: MarchTest: debug: passed
debug: PermTest: debug: passed
Systemtest beendet, mit boot net [ENTER] wird gestartet
dbox2:root> boot net[ENTER]
IP-Adresse vom PC beziehen, ppcboot_writeflash laden
debug: BOOTP/TFTP bootstrap loader (v0.3)
debug: Transmitting BOOTP request via broadcast
debug: Got BOOTP reply from Server IP 192.168.0.10, My IP 192.168.0.99
debug: Sending TFTP-request for file
D/_Software/Audio_Video/DBOX/DBoxBootManager/ppcboot_writeflash
Bootloader überprüft ppcboot auf gültige Signatur, Ergebnis wird jedoch nicht berücksichtigt, da
der Bootloader im Debug-Modus ist und ppcboot an 0x40000 wird ausgeführt.
will verify ELF image, start= 0x800000, size= 201596
verify sig: 262
boot net: boot file has no valid signature
Branching to 0x40000
ppcboot 0.6.4 (Apr 11 2002 - 16:10:44)
hier kommen jetzt einige Statusausgaben...
anschließend wird die Imagedatei wiederum per BootP angefordert
dbox2-ppcboot> bootp 120000 /D/_Software/Audio_Video/DBOX/200410262111_yadi_squa
shfs_head_2x.img
BOOTP broadcast 1
TFTP from server 192.168.0.10; our IP address is 192.168.0.99
Filename '/D/_Software/Audio_Video/DBOX/200410262111_yadi_squashfs_head_2x.img'.
Load address: 0x120000
Loading: #.....# done
Software-Schreibschutz des Flash-ROM's wird erst ab 128kB (Adresse 0x10020000) aufgehoben,
damit der Bootloader in jedem Falle geschützt bleibt
dbox2-ppcboot> protect off 10020000 107fffff
...............................................................
Un-Protected 63 sectors
Flash-Rom muss zunächst gelöscht werden, bevor erneutes Schreiben möglich ist.
dbox2-ppcboot> erase 10020000 107fffff
Erase Flash from 0x10020000 to 0x107fffff
sector 66 .... done
Erased 63 sectors
Nun wird das Image im RAM an Offset 0x120000 in das Flash-ROM mit Offset 0x10020000
jeweils in 4Byte-Blöcken kopiert (Der Parameter l in cp.l steht für long). 1F8000 ist Anzahl zu
kopierender Blöcke in Hex. 1F800016 = 2.064.38410 multipliziert mit 4Bytes je Block ergibt
8.257.536Bytes, was genau der Größe der heruntergeladenen Image-Datei ohne Bootloader
entspricht.
dbox2-ppcboot> cp.l 120000 10020000 1F8000
Copy to Flash... done
Abbildung 10: der Bootmanager hat den Schreibvorgang beendet
Ist der Vorgang fertig gestellt, kann die DBOX nun neu gestartet werden und fährt ab sofort mit
Linux und der Bedienoberfläche Neutrino hoch. Jetzt müssen noch die im vorherigen Kapitel
beschriebenen Firmwaredateien (ucodes) auf die DBOX. Nach dem ersten Start mit Linux steht im
LCD-Display die Aufforderung, eine IP-Adresse einzugeben. Diese muss im gleichen Subnetz wie
die IP-Adresse des PCs liegen, damit die Firmwaredateien mit dem Dbox II Bootmanager oder
einem beliebigen FTP-Programm in das Verzeichnis /var/tuxbox/ucodes kopiert werden können.
Abbildung 11: Erster Start der DBOX mit Linux
Abbildung 12: Mit dem Laden der
Microcodes auf die D-BOX ist die
Installation von Linux abgeschlossen
Beim Hochladen der Microcodes meldete der D-BOX II Bootmanager, dass die Prüfsumme der
Datei „cam-alpha.bin“ fehlerhaft sei. Diese Meldung ist falsch. Mit dem Umstieg auf sein neues
Verschlüsselungssystem hat Premiere per Satellit diese Datei aktualisiert. Das Programm erkennt
lediglich die neue Prüfsumme noch nicht und meldet daher den Fehler. Ob die Ucodes erfolgreich
kopiert wurden, lässt sich unter der neuen Benutzeroberfläche feststellen:
„Hauptmenü>>Service>>Ucodes überprüfen“
Abbildung 13: Ucodes wurden erfolgreich eingebunden
Damit ist die Installation von Linux auf der DBOX abgeschlossen. Es existieren Anleitungen für die
Benutzeroberfläche Neutrino im Netz z.B. unter http://www.neutrino-anleitung.de. Auf die
Bedienung der Benutzeroberfläche soll im Rahmen des Berichts nicht weiter eingegangen werden.
8 Funktionstest
Der Test des Fernsehempfanges funktionierte einwandfrei. Hierzu waren leider keine
Bildschirmfotos möglich. Die Umschaltzeiten zwischen einzelnen Programmen lagen ca bei einer
Sekunde gegenüber fünf Sekunden mit dem originalen Betriebssystem Betanova. Zusätzlich sollte
die DBOX ihre Fähigkeit als Streaming Client unter Beweis stellen. Unter Windows wurde mit
Hilfe des Dbox II Bootmanagers ein Verzeichnis als NFS-Freigabe ausgewählt und im lokalen
Netzwerk zur Verfügung gestellt.
Abbildung 14: NFS-Freigabe für die D-BOX
einrichten, Anschließend „Start“ betätigen
Dann wurde die Freigabe in die Netzwerkeinstellungen der D-BOX eingebunden. Die
nachfolgenden Bildschirmfotos zeigen die Konfigurationsschritte.
Abbildung 15: Starten des Audioplayers
Abbildung 16: Der Audioplayer von Neutrino
Mit der Taste „d-box“ auf der Fernbedienung wird ein Menü zum mounten von NFSVerzeichnissen eingeblendet. Diese Einstellung ist auch über das Neutrino-Hauptmenü>>
Einstellungen>>Netzwerk erreichbar.
Abbildung 17: NFS-Einstellungen
Es lassen sich bis zu acht NFS- oder CIFS-Freigaben einrichten, die durch die D-BOX benutzt
werden sollen. Die folgende Abbildung zeigt die Einstellungen zur Konfiguration der Freigabe.
Abbildung 18: Einrichten der NFS Freigabe auf der D-BOX
Mit der Funktion „Jetzt mounten“ wird die soeben eingerichtete Freigabe eingebunden.
Anschließend kehrten wir zum Audioplayer zurück. Mit der grünen Taste auf der Fernbedienung
fügt man nun Einträge in die Playlist hinzu. Mit der Fernbedienung kann man sich nun durch den
Verzeichnisbaum bewegen. Betätigt man die „OK“-Taste der Fernbedienung auf einem
ausgewählten Verzeichnis, wird dies rekursiv durchsucht.
Abbildung 19: rekursives Durchsuchen von Verzeichnissen
Anschließend sind die Titel in der Playlist vorhanden und können abgespielt werden.
Abbildung 20: Der Audioplayer in Aktion
9 Fazit
Angesichts des Funktionsumfanges und des Bedienkomforts kann Linux auf der DBOX als echte
Alternative zum Betriebssystem Betanova angesehen werden. Die alternative Software für die DBOX ist mittlerweile so ausgereift, dass die im c't-Artikel von vor zwei Jahren beschriebenen
Abstürze nicht auftauchten. Unserer Meinung nach gibt es deshalb derzeit keinen Anlaß, das
Betriebssystem Betanova in Zukunft wieder zu verwenden. Zur Fehlersuche vor und nach dem
Umbau in den Debug Modus des Bootmanagers und um die DBOX im Netz als Streaming
Client/Server verwenden zu können, sind jedoch Grundkenntnisse sowohl über Netzwerkprotokolle
als auch über Linux erforderlich.
10 Links
Eine kleine D-BOX II Enzyklopädie (über 400 Artikel), Dokumentationsplattform des GNU DBOX
II Dokumentationsprojektes
http://www.wiki.tuxbox.org
Für jede D-BOX II die passende Debug-Methode, Linux@D-BOX Howto's, kleines Glossar
http://www.dietmar-h.net
Debug-Methode, die bei der uns zur Verfügung stehenden DBOX angewendet wurde
http://www.dietmar-h.net/mhc_debugn2xi.html
D-Box II Bootmanager
http://dbox.feldtech.com
Eine Linux-Distribution für die D-BOX
http://www.yadi.org
z.B. Verschiedene Tools für PC und DBOX werden hier vorgestellt
http://www.dbox2.info
Anleitung für die Benutzeroberfläche Neutrino
http://www.neutrino-anleitung.de
Anhang: c't Artikel
Artikel „Tux-TV“ der Zeitschrift c't, Ausgabe 26, Jahrgang 2002