Next Previous Contents

2.1 Wie bootet die DBox2

1. Der Bootloader wird geladen.
2. Der Bootloader macht eine bootp Anfrage nach einer IP , einem tftp Server und nach einem Kernel den er laden kann .
3. Entweder wird ein Kernel übers Netzwerk gebootet (wenn 2. erfolgreich war)
    oder es wird der Kernel aus dem Flash gebootet.
4. Der aus dem Flash gebootete Choruskernel configuriert sich über eine Rarp anfrage.

Für Punkt 2 braucht man einen DHCP Server .
Für Punkt 4 braucht man    bei Kernel 2.2.x Kernelsupport für Rarp.
                                          bei Kernel 2.4.x einen Rarp Deamon.

2.2 Vorraussetzungen

* Die dbox und euren PC müsst ihr mit einem Crossover Kabel verbinden.
   Crossover => 1 - 3,2 - 6,3 - 1,4 - 4,5 - 5, 6 - 2,7 - 7,8 - 8

* Die dbox kann natürlich auch Mittels einem normalen Hub (der Hub muss für 10mbit ausgelegt sein, die dbox kann nicht 100mbit) mit
   eurem Rechner verbunden werden, ACHTUNG hier keine Crossover Kabel verwenden!

* Wenn ihr nur an der dbox ein Nullmodem Kabel eingesteckt habt (und nicht am PC) kann die dbox nicht booten, und bleibt
    'hängen' --> also Nullmodem Kabel entweder an dbox UND PC oder ganz weg
 

2.3 Mit Linux

Ihr braucht ein Paar Verzeichnisse :
/dbox
/dbox2
/dbox2/tftpboot

HOSTS:

Tragt die dbox2 in eure /etc/hosts ein
Austzug aus /etc/hosts:



<IP-ADRESSE-DER-DBOX2> dbox

DHCP SERVER :

DHCP Server neu Compilieren mit diesen Sourcen (bei so vielen Leuten hat der DHCP Server nicht richtig funktioniert ...)
Auszug aus /etc/dhcpd.conf:



subnet 192.168.1.0 netmask 255.255.255.0 {
}
host dbox {
fixed-address <IP-DER-DBOX2>;
hardware ethernet <MAC-ADRESSE-DER-DBOX2-MIT-:-GETRENNT>;
allow bootp;
server-name <"IP-DES-LINUX-RECHNERS">;
#filename "/dbox2/tftpboot/ppcboot";
}


Dieses Beispiel geht davon aus das eure Ip´s im netzt 192.168.1.x sind , fals nicht müsst ihr natürlich subnet auch noch ändern..
Wichtig sind die " " um die IP-DES-LINUX-RECHNERS .

RARP:

Bei Kernel 2.2.x einfach mit
rarp -s dbox <MAC-ADRESSE-DER-BOX-MIT-:-GETRENNT>
baut diesen Befehl in ein Startscrippt ein , sonst müsst ihr ihn nach jedem Booten wieder neu eingeben ...

Bei Kernel 2.4.x müsst ihr euch den RARP Deamon besorgen und dann die MAC-ADRESSE in die /etc/ethers schreiben
wichtig ist das ihr den Rarpd mit der Option -e startet !
Auszug aus /etc/ethers:



<MAC-ADRESSE-DER-DBOX2-MIT-:-GETRENNT> <IP-DER-DBOX2>

NFS:

Auszug aus /etc/exports



/dbox           dbox(rw,no_root_squash)

TFTP:

Auszug aus /etc/inetd.conf



tftp dgram udp wait root /usr/sbin/tcpd in.tftpd -s /dbox2/tftpboot


 

2.4 Mit Windows

Ihr braucht ein Paar Verzeichnisse :
c:\dbox
c:\dbox2
c:\dbox2\tftpboot
 

Ihr braucht das Windows Toolkit das Field geschrieben hat , das Tollkit ist DHCP , RARP und TFTP server + rsh und terminal client !
ihr findet das Toolkit und eine gute anleitung dazu unter http://dbox.feldtech.com/

zum generellen ablauf des debug enablen solltet ihr hier auf jedenfall weiterlesen
wie das alles in Field´s Tool geht steht in seiner readme

hier nochmal ein dank an Field für sein Tool , das ist echt gut :)

2.5 Bei "Lade ... " stehen bleib

ACHTUNG :
                        Ich erhalte in letzter zeit immer mehr Mails von Leuten die Ihr Flash kaputt gemacht haben.
                        Sowas kann passieren , obwohl es mir noch nicht passiert ist ... wer weiss was die gemacht haben
                        Was aber klar ist, ist das diese Kurzschlussmethode sehr RISKANT ist
                        Also genau Überlegen ob ihr das Risiko eingehen wollt !!!

Das ist das Ziehl , die DBox2 muss bei "Lade ..." stehen bleiben und der ChorusKernel muss einen RSH-Deamon auf machen.
Das passiert dann , wenn der ChorusKernel aus irgenteinem grund sein Initscrippt nicht findet. Das erreichen wir indem wir zum
richtigen Zeitpunkt das Flash abschalten.

Jetzt mal einen Testdurchlauf machen :

    DBox2 über ein Crosskabel an euren Rechner auf dem RARP und DHCPD laufen , anschliessen.
    DBox2 anpingen (der ping wird erstmal nicht beantwortet, aber den ping im Auge behalten)
              "Nur für linux : Der Pingtimeout von Linux ist sehr hoch daher ist das ziehmlich ungenau , es ist aber wichtig das man sofort
                 kurzschliesst sobalt die DBox2 pingbar ist , deshalb am besten 10 pings gleichzeitig in einer Console laufen lassen
                 also mit & starten ... "
    DBox2 in den Strom stecken , nun leuft erstmal ein Balken von links nach rechts , danach kommt dann "Lade ..."
    nun solltet ihr eien Ping reply von der DBox2 bekommen kommt er nicht , dann geht RARP nicht.

Wenn der Test Ok war weitermachen , ansonsten Fehler suchen.

    DBox2 aus aus dem Strom ziehen
 

Je nach DBox2 Version (Nokia,Sagem oder Philips) ist das anders , deshalb:

Nokia mit 2 * Intel Flash Rams :

                    Ihr müsst zum richtigen Zeitpunkt  2 Lötpunkte auf der Platine verbinden (Schalter auf ON), und zwar die die auf dem Foto
                    hier Rot eingekreist sind

Nokia mit 2 * AMD Flash Rams :

                    Ihr müsst zum richtigen Zeitpunkt  2 Lötpunkte auf der Platine verbinden (Schalter auf ON) , und zwar die die auf dem Foto
                    hier Rot eingekreist sind

Sagem mit 1 * Intel Flash Ram :

                        Einfach zum richtigen Zeitpunkt den Stromstecker abziehen auf dem Foto hier abziehen .(Entspricht Schalter auf ON)  
                        Tipp : Da der stecker gegen unabsichtliches abziehen mit einer Lasche gesichert ist , am besten
                                  vorher den stecker schon 2 mm hochziehen so das er schon über der Lasche steht.

Sagem mit 2 * Intel Flash Rams :

                        Einfach zum richtigen Zeitpunkt den Stromstecker abziehen auf dem Foto hier abziehen .(Entspricht Schalter auf ON)  
                        Tipp : Da der stecker gegen unabsichtliches abziehen mit einer Lasche gesichert ist , am besten
                                  vorher den stecker schon 2 mm hochziehen so das er schon über der Lasche steht.

Sagem mit 2 * AMD Flash Rams in 2 * Intel Layout :

                        Einfach zum richtigen Zeitpunkt den Stromstecker abziehen auf dem Foto hier abziehen .(Entspricht Schalter auf ON)  
                        Tipp : Da der stecker gegen unabsichtliches abziehen mit einer Lasche gesichert ist , am besten
                                  vorher den stecker schon 2 mm hochziehen so das er schon über der Lasche steht.

Sagem mit 2 * AMD Flash Rams in 1 * Intel Layout :

                        Einfach zum richtigen Zeitpunkt den Stromstecker abziehen auf dem Foto hier abziehen .(Entspricht Schalter auf ON)  
                        Tipp : Da der stecker gegen unabsichtliches abziehen mit einer Lasche gesichert ist , am besten
                                  vorher den stecker schon 2 mm hochziehen so das er schon über der Lasche steht.
 
Philips mit 2 * Intel Flash Rams :

                    Ihr müsst zum richtigen Zeitpunkt diesen Lötpunkt mit 3.3 V verbinden . (Schalter auf ON)



Der Zeitpunkt :

Der Zeitpunkt zu dem ihr die Pins verbinden müst ist auf jeder DBox2 gleich !
Sobalt die DBox2 auf euren Ping antwortet müsst ihr SOFORT  die jeweiligen Pins verbinden , und das  SOFORT heist auch SOFORT.
Also nicht erst dann anfangen zu suchen was man wie verbinden muss !!
Am besten löst man das indem man an die jeweiligen Pins ein Stück Kabel anlötet , an das mann einen kleinen Schalter macht .

Viele leute haben ihren flash inhalt mit dieser methode gelöscht (kann passieren wenn mann den zeitpunkt nicht genau trifft) daher habe
ich diesen part neu überarbeitet.

Also ihr solltet ein Kabel an die besagten pins anlöten und dazwischen einen Schalter machen.
Der Schalter sollte erstmal auf Offen stehen !!

Trotzdem passiert es das man nicht genau den Zeitpunkt erwischt . Ich habs 100 mal versucht , und nur 40 mal hat es geklappt :( .
Also wenn es nicht geht , nochmal probieren ... bei euch muss es ja  nur einmal klappen .

ACHTUNG :
                      Falls es nicht geht , erstmal alles nocheinmal Gewissenhaft überprüfen !!
                      1. Binn ich geerdet ?
                      2. Ist ein Arbeitsmaterial geerdet ?
                      3. Hab ich wirklich die richtigen Punkte erwicht ?

Nicht 1000 mal probieren das Flasch kurzzuschliessen !!! lieber mal abwarten , Teetrinken und nochmal alles überdenken !!



DIE PROZEDUR :
 
 

1. DBox2 Stromstecker ist draussen und der über die Kabel angelegte Schalter steht auf Offen
    (Bei sagem gibt es diesen schalter nicht , dort heist Schalter Offen einfach das das Strockkabel auf dem Bild normal Steckt)
2. DBox2 über ein Crosskabel an euren Rechner auf dem RARP und DHCPD laufen , anschliessen.
3. DBox2 anpingen (der ping wird erstmal nicht beantwortet, aber den ping im Auge behalten)
4. DBox2 Stromstecker in die Steckdose Stecken
5. nun den ping nicht aus den Augen behalten , wenn die DBox2 den Ping beantwortet müsst ihr den Schalter auf ON legen
    Die Dbox2 sollte nun bei "Lade ..." stehen bleiben , und der Ping sollte weiterhin beantwortet werden.
    (Bei sagem gibt es diesen schalter nicht , dort heist Schalter ON einfach das das Strockkabel auf dem Bild abgezogen ist)

    wird der ping nicht mehr beatwortet wars der falsche Zeitpunkt , dann den DBox2 Stromstecker raus ziehen !!!
    nachdem der Stromstecker draussen ist den schalter wieder auf Offen legen (wirklich erst wenn die Dbox2 keinen Strom mehr hat den Schalter
                                                                                                                        auf Offen legen, ansonsten macht ihr euren Flashinhalt kaputt !!!!)
    und dann wieder bei 1 anfangen !!!

6. wird der ping nach dem "Schalter auf ON legen"  noch immer beantwortet ,dann seit ihr ein kleines Stück weiter
    probiert nun :   'rsh dbox help' in eurer shell , dadraufhin sollte eine Ausgabe kommen die so Aussieht :

        mpg:/ # rsh dbox help
        ChorusOS r3 rsh daemon - valid commands are:

        mount [hostaddr:filesystem|special_file [mount_point]]
        umount [-v|-F|-f|-a|-t [ufs|nfs]] [special_file]
        swapon mount_point
        arun [-s site] [-S | -U] [-k] [-T] [-d] [-q] [-D] [-Z] actor_name [actor arguments]
        akill [-s site] [-c] aid
        aps [-s site]
        reboot
        route [add | delete [net | host] args]
        ping host
        echo string
        setenv var value
        unsetenv var
        source filename
        env
        memstat
        sleep [time in seconds, default=1s]
        help
        mpg:/ #

    Wenn nix kommt , dann wars der falsche Zeitpunkt , dann den DBox2 Stromstecker raus ziehen !!!
     nachdem der Stromstecker draussen ist den schalter wieder auf Offen legen (wirklich erst wenn die Dbox2 keinen Strom mehr hat den Schalter
                                                                                                                        auf Offen legen, ansonsten macht ihr euren Flashinhalt kaputt !!!!)
    und dann wieder bei 1 anfangen !!!

7. wenn die besagte help kommt dann seit ihr wieder ein Kleines Stück weiter
    probiert nun :   'rsh dbox mount' in eurer shell , dadraufhin sollte eine Ausgabe kommen die so Aussieht :

        mpg:/ # rsh dbox mount
        C_INIT:
            root_device mount on /    (flfs)
        mpg:/ #

    Das ist das schwerste das bekommt mann sehr selten hin :( aber anders gehts nicht .(

    Wenn nix kommt , dann wars der falsche Zeitpunkt , dann den DBox2 Stromstecker raus ziehen !!!
     nachdem der Stromstecker draussen ist den schalter wieder auf Offen legen (wirklich erst wenn die Dbox2 keinen Strom mehr hat den Schalter
                                                                                                                        auf Offen legen, ansonsten macht ihr euren Flashinhalt kaputt !!!!)
    und dann wieder bei 1 anfangen !!!

8. Wenn ihr eine Ausgabe so wie sie oben da steht bakommt , dann habt ihr das Schwirigste geschaft , Herzlichen Glückwunsch.
    Ich wiederhole nochmal lieber

        1.Die DBox2 sollte nun bei "Lade ..." stehen geblieben sein (das Display sollte sich nicht zu "Einen Moment bitte "ändern)
        2.Die DBox2 muss Pingbar sein
        3.Die DBox2 muss auf den befehl : 'rsh dbox help' eine kleine Help bringen
        4.Die DBox2 muss auf den befehl : 'rsh dbox mount ' eine Rückgabe liefern die so Aussieht :

                                mpg:/ # rsh dbox mount
                                C_INIT:
                                    root_device mount on /    (flfs)
                                mpg:/ #

9. OK nur wenn wirklich alle vorherigen Punkte erfolgreich waren macht ihr hier weiter !!
    Ansonsten wieder zurück zu Punkt 1 !

10. Schalter auf Offen legen !
         Nur wenn der Schalter auf offen liegt könnt ihr die Files aus der dbox rauskopieren

11.mit dem Software Rauskopieren weitermachen
 

2.6 Software Rauskopieren

Auf eurem Rechner muss jetzt noch ein NFSServer laufen:

Das verzeichnis /dbox sollte existieren und sollte per nfs Freigegeben sein

Im verzeichnis /dbox müssen die cpR.class und das copy.sh.  bzw copy_dbox2.bat Scrippt liegen.

Nachdem eure DBox2 nun bei "Lade..." steht und der NFSServer auch leuft , könnt ihr den inhalt mit dem copy.sh scrippt rüberkopieren.

einfach 'copy.sh ip-eures-rechners' oder 'copy_dbox2 ip-eures-rechners' im verzeichnis /dbox eingeben (copy.sh muss natürlich ausführbar sein)

nun sollte folgende Meldung kommen :

                                                C_INIT: mount 192.168.0.201:/dbox on /lost+found
                                                started aid = 10
                                                //
                                                creating /lost+found/
                                                //usr/
                                                creating /lost+found//usr
                                                //usr/siege/

                                               ................... etc ....

das dauert einige Minuten , wenn es fertig ist habt ihr in /dbox den kompletten Dateisystem Inhalt eures Flashs.

2.7 Debug-Mode enablen

'/dbox/root/platform/drv/tuner.so' mit 'tuner.so' von http://dbox2.elxsi.de/files/tuner.so ersetzen.
'/dbox/root/bin/upgrade' in '/dbox/root/bin/upgrade_old' umbenennen.

nun braucht ihr noch das Scippt debug.sh bzw debug_dbox2.bat in /dbox

Der Flash bereich den wir verändern  wollen ist Hardware mässig schreibgeschützt , deshalb muss man jetzt  noch ein Paar pins verbinden
um den Schreinschutz zu deaktiwieren.

Schreibschutz Disablen :

Ist wieder je nach DBox2 anders
Ihr könnt das während des Betriebes machen (aber aufpassen , ein pin ist 3.3V also nicht im Betrieb mit nem geerdeten Lötkolben rumlöten),
der Schreibschutz muss auch nur für den Zeitraum vom Start der debug.sh bis auf eurem Terminalprogramm "done !!" steht
verbunden sein. Natürlich kann mann das grade bei der Philips schlecht , da muss man am besten einen
Draht dafür unten auf der Platine anlöten.Wichtig ist , das nachdem die DBox2 im Debugmodus ist , ihr den Schreibschutz wieder enabled ,
sonst killt ihr euch später mal ausversehen den Bootloader
und damit habt ihr dann nen Briefbeschwerer :(

Nokia mit 2 * Intel Flash Rams :

        Jumper XH4 und XH6 (sind direkt am Flash) setzen. Bei den meisten neueren Boxen sind hier leider keine Jumper mehr eingeloetet,
        sondern nur noch Lötpunkte. Diese beiden Lötpunkte einfach mit einem Kabel verbinden (Kabel anloeten).

Nokia mit 2 * AMD Flash Rams :

         Jumper XH3 setzen. Bei den meisten neueren Boxen sind hier leider keine Jumper mehr eingeloetet, sondern
         nur noch Lötpunkte. Diese beiden Lötpunkte einfach mit einem Kabel verbinden (Kabel anloeten).

Sagem mit 1 * Intel Flash Ram :

        Die 2 Lötpunkte auf diesem Bild verbinden.

Sagem mit 2 * Intel Flash Rams :

         Wie auf dem Bild beschrieben verbinden.

Sagem mit 2 * AMD Flash Rams in 2 * Intel Layout :

         Die beiden Lötpunkte auf diesem Bild (pin 14 von jedem Flash) mit dem Lötpunkt auf diesem Bild ( 9V) verbinden.

Sagem mit 2 * AMD Flash Rams in 1 * Intel Layout :

         Die beiden Lötpunkte auf diesem Bild (pin 14 von jedem Flash) mit dem Lötpunkt auf diesem Bild ( 9V) verbinden.

Philips mit 2 * Intel Flash Rams :

         Den einen Pin (an dem Pin 14 vom Flash ankommt) vom Wiederstand R3556 der leider auf der Rückseite der Platine ist mit 3.3 V verbinden.
 

OK nun kann es losgehen.

    DBox2 über ein Nullmodemkabel mit eurem Rechner verbinden , Terminalprogramm starten , Einstellungen : 57600,8n1 kein protokoll
    'debug.sh ip-eures-rechners' oder 'debug_dbox2 ip-eures-rechners' im verzeichnis /dbox eingeben (debug.sh muss natürlich ausführbar sein)

Da kommen jetzt ganz viele Fehlermeldungen  die kann man getrost ignorieren.
Hier aber die wichtigsten ausgaben :

    C_INIT: mount 192.168.0.105:/dbox on /
    Und nun ins Terminalprogram kucken (57600,8,n,1)
    started aid = 10
    INIT Version 0.9 loaded
    INIT: library path:
     LD_LIBRARY_PATH=/root/platform/sagem-dbox2/lib:/root/platform/lib:/root/lib:/usr/lib:/root/platform/mpc8xx-dbox2/lib:/root/platform/nokia-dbox2/lib"
    INIT: start run level 2
    INIT: execute "ddf"
    INIT:   time: 3059 sec, 530000000 nsec
    INIT:   started aid = 11

wenn ihr das gesehen habt ist alles OK da kommen eventuel vorher und nachher noch einge fehlermeldungen , das ist normal !
wichtig sind die Paar zeilen da oben !
 

Nun Sollte auf eurem Terminal Client (verbunden über ein Serielles Nullmodemkabel , einstellungen 57600,8n1 kein protokoll)
folgemndes zu sehen sein :

            DebugEnabler (c) tmbinc, gillem +(sagem,amd,philips) 1.7
            bl-version      : 1.0
            product? at     : 10000944
            current state   : tmb-locked
            flashrom type   : 2x16 bit? yes. vendor: INTEL
            unprotecting    : OK!
            flashing NOW    : DONE !

wobei die Variablen von box zu box anders sind ....

Wenn am ende kein "Done !!" steht , sondern ein "FAILED!!!"dann hat das Schreibschutz disablen nicht funtioniert (lack auf den lötstellen etc ..)
Wenn "Done!!" da steht , dann ist eure DBox2 im Debugmodus , ihr könnt sie jetzt aus machen . Das sie im Debugmodus ist seht ihr
dann auch nachdem ihr sie an wieder in Strom steckt , nun steht auf dem Display viel mehr info.

Wenn da steht "bl-version : unknown, please report" dann kennt der Debungenabler euren Bootloader nicht
überprüft dann erstmal was für eine Version der DebugEnabler hat , das steht in der ersten Zeile , die Version die mit allen uns bekannten Boxen
funktioniert ist die " DebugEnabler (c) tmbinc, gillem +(sagem,amd,philips) 1.6final " wenn nicht das da steht , dann habt ihr vergessen
'/dbox/root/platform/drv/tuner.so' mit 'tuner.so' von http://dbox2.elxsi.de/files/tuner.so ersetzen.!!!
tut das , und probiert es dann nochmal , allerdings müsst ihr wieder von vorne anfangen (also Stromstecker raus .......)

Wenn aber da steht : DebugEnabler (c) tmbinc, gillem +(sagem,amd,philips) 1.7
                                "bl-version : unknown, please report"

dann meldet euch bei uns mit eurem Problem und wir kuken das wir euch helfen ....
 
 


Next Previous Contents