nfiwrite das single binary Flashtool

  • Hi !


    Wie schon im DMM Board angekündigt habe ich einen Ersatz, fürs writenfi und nandwrite binary programmiert der die gesamte Funktionalität zum Image flashen in einem einzigen Binary anbietet.


    Also in telnet ein simples:


    Code
    1. nfiwrite imagename.nfi


    Was eigentlich nfiwrite -l -r -b -s -f imagename.nfi entsprich (siehe untenstehende Hilfe)


    oder wenn man nur ein secondstageloader.bin flashen will.


    Code
    1. nfiwrite secondstage.bin


    Das Tool kann aber auch alle Partitionen einzeln schreiben:



    LG
    gutemine

    Dateien

    Bad mood, bad manners, bad Plugins, you have been warned :whistling:

    Dieser Beitrag wurde bereits 16 Mal editiert, zuletzt von gutemine ()

  • also mit der 800se ist in der 0.0.5 das root flashen genauso gestorben wie bei der 500hd. hast du es deswegen in der 0.0.6 rausgenommen?



    ssl binary will nicht bzw wird scheinbar gar nicht geschrieben. box bootet normal




    komplettes image geht problemlos



    das schreiben eines loaders aus einem nfi geht wiederum problemlos


    auf der 8000 selbes bild:





    und hier noch die 7020hd.




    two beer or not two beer, that's the question!


    rotespony.jpg


    Mein kleines rotes Pony :love:

  • Danke fuers testen. Das secondstage loader flashen habe ich auf der 8000 mit dem secondstage bin aus dem dreambox-secondstage ipk aber ausprobiert da darf man aber jeine optionen nehmen und nur das binfile angeben.

    Bad mood, bad manners, bad Plugins, you have been warned :whistling:

  • ich hab das binary aus den sourcen ordner vom oe genommen. das sollte ausser dem namen nicht anders sein ..

    two beer or not two beer, that's the question!


    rotespony.jpg


    Mein kleines rotes Pony :love:

  • /usr/share/dreambox-secondstage


    Da macht das dreambox-secondstage sein secondstage-dmXXXX.bin hin und das flashe ich mit nfiwrite /usr/share/dreambox-secondstage/sec*.bin einfach.


    Beim Loader Schreiben ist weder single user modus noch sofortiger reboot nötig, das braucht man NUR wenn die root geflasht wird, -l und -b gehen auch im laufenden Betrieb.


    Hat schon wer probiert wenigstens die reinen secondstage*.nfi images so zu flashen, weil die müssten eigentlich auch gehen ?


    Weil dann schaue ich mir in der Zwischenzeit an was beim secondstage*.bin schiefgeht.


    Das Problem vom OE 1.6 und der alten dm800 ist der alte kernel 2.6.18, bei dem funktionieren die 64BIT ioctl Befehle nicht die nandwrite jetzt als default verwendet. Ich muss erst testen warum sich die alten ioctl anders verhalten beim schreiben des images, dann wird es wahrscheinlich auch Support für die alte 800 und OE 1.6 geben. Im Moment geht es eher mal darum zu sehen ob mit den neuen Boxen alles geht und die ganzen optionen auch funktionieren.


    das nfiwrite -b -r also ohne den loader zu schreiben wird halt bei den Klonen sehr beliebt werden, schon deswegen habe ich es mit dem Support der alten 800 nicht so eilig. Und nachdem ich die alte 800 vom LowFAT ja auch nicht mehr unterstütze ist es im Moment wichtiger das zu testen ob es 100% funktioniert was in der 0.0.6 testbar und verfügbar ist.


    LG
    gutemine

    Bad mood, bad manners, bad Plugins, you have been warned :whistling:

  • naja, alle versuche von mir -r alleine zu schreiben sind im orkus gelandet, sprich nach 10minuten gabs noch immer keinen reboot, dann halt abgebrochen ...

    two beer or not two beer, that's the question!


    rotespony.jpg


    Mein kleines rotes Pony :love:

  • -r geht nur mit -s und -f zusammen (da sollte aber ein Warning kommen). Wenn man von Dumbo device gebootet ist geht es aber auch ohne (und so habe ich das ganze ja getestet und entwickelt) daher NUR das warning statt Error - aber in der 0.0.7 ist das jetzt anders gelöst, da entscheidet das binary selbst ob -s und -r nötig ist.


    Aber ich habe jetzt den Bug gefunden warum die secondstage.bin nicht funktioniert haben, 0.0.7 kommt gleich.

    Bad mood, bad manners, bad Plugins, you have been warned :whistling:

    Dieser Beitrag wurde bereits 2 Mal editiert, zuletzt von gutemine ()

  • Ja du hast recht, bitte mit der 0.0.7 weitertesten ob jetzt SSL flashen von einem secondstage*.bin geht und bei -r das flashen auch klappt inklusive reboot.


    Ich habe das jetzt so implementiert das es selber nachsieht ob es vom Flash gebootet ist und dann statt blödem warning einfach das reboot und single user dazu macht wenn ein -r spezifiziert wird so wie wenn man gar nichts spezifiziert um das ganze image zu flashen.


    Mal sehen ob jetzt alles funktioniert, weil es sollte letztendlich in 100% der Fälle in allen Varianten klappen.


    PS: Man kann übrigens wenn ein OE 2.0 im Flash ist SCHON auch ein OE 1.6 damit flashen, außer auf der 7020hd wo sich ja das Flashlayout geändert hat fürs ubifs sollte das funktionieren, NUR in einem OE 1.6 image verweigert auch die 0.0.7 bis ich mir das genauer angesehen habe.

    Bad mood, bad manners, bad Plugins, you have been warned :whistling:

  • loader flashen scheint jetzt zu gehen



    machen wir mal ein backup und versuchen dann root zu flashen ;)

    two beer or not two beer, that's the question!


    rotespony.jpg


    Mein kleines rotes Pony :love:

  • Das Problem sind die vielen command line Optionen, ich überlege gerade ob ich -f und -s nicht ganz raus machen soll, weil so wie beim -r könnte ich das binary auch wenn man ganzes image flasht erkennen lassen ob reboot nötig ist weil man das gebootete Flashfilesystem schreibt. Mal sehen was Eure Tests sonst noch so ergeben :-)


    Ich habe in den letzten 2 Wochen wo ich das nfiwrite entwickelt habe glaube ich 100x geflasht, jetzt dürft Ihr halt auch :-)


    LG
    gutemine

    Bad mood, bad manners, bad Plugins, you have been warned :whistling:

  • >>>>machen wir mal ein backup und versuchen dann root zu flashen


    Ich habe gerade in ein OoZooN Image die root vom Merlin reingemacht und anschließend noch ein DMM Originalimage. So einfach habe ich den ganzen Images noch nie einen initramfs Kernel verpasst :-)


    Wenn es funktioniert ist es ein geiles Feature, weil da ich mir den Flashcode vom nandwrite geborgt habe hat es auch ein funktionierendes Bad Block handling, wenn du ein -p machst und auch den Freiplatz komplett schreibst statt nur zu erasen sollte es auch keine Bad Blocks mehr übersehen, womit hoffentlich der Blödsinn mit DreamUP und Recover Bad Sectors nicht mehr nötig ist um sowas zu finden.

    Bad mood, bad manners, bad Plugins, you have been warned :whistling:

    Dieser Beitrag wurde bereits 2 Mal editiert, zuletzt von gutemine ()

  • scheint jetzt zu gehen :)


    two beer or not two beer, that's the question!


    rotespony.jpg


    Mein kleines rotes Pony :love:

  • Na ja dann sieht das mal nicht so schlecht aus.


    Wollt Ihr auch die OE 1.6 bzw. die alte 800 testen, weil ich bin gerade dabei eine 0.0.8 zu machen wo in dem Fall halt die alten ioctl benutzt werden (hoffentlich)?


    Nachdem ich aber nicht sicher bin ob es funktioniert wird da eine Warnung ausgegeben - also Nullmodemkabel bereit halten !


    Wobei im Moment wir uns alleine quälen, aber das bin ich ja schon gewohnt :-)


    LG
    gutemine

    Bad mood, bad manners, bad Plugins, you have been warned :whistling:

  • Sei froh :-)


    Ich teste es auch nur mit den 3.2.4 Release Images auf der 8000.


    Im Prinzip funktioniert es ja auch mit OE 1.6 aber nur einzeln (z.B. nur SSL, nur boot, oder nur root) noch nicht das ganze Image auf einmal, da wäre evt. ein bootlog interessant ob es Fehlermeldungen gibt.


    OK, ich mache halt eine 0.0.8 auf die erste Seite, vielleicht fällt Euch was auf, weil ich werde schon Flashblind .-)

    Bad mood, bad manners, bad Plugins, you have been warned :whistling:

    Dieser Beitrag wurde bereits 2 Mal editiert, zuletzt von gutemine ()

  • komisch, warum startet die se mit ssl82 nicht mehr ... ;)


    also ssl.nfi gehen auch zu flashen.


    das release 3.2.4 mit -br und wieder zurück zu experimental auf der 800se geht auch :)

    two beer or not two beer, that's the question!


    rotespony.jpg


    Mein kleines rotes Pony :love:

  • Kling gut :-)


    Und ich denke ich habe das Problem mit OE 1.6 (bzw. eigentlich mit dem alten 2.6.18 Kernel) auch bald gefixed, ist nur mühsamer als ich dachte.



    [edit]


    Perfekt funktioniert es mit den OE 1.6 images bzw. dem alten Kernel zwar immer noch nicht (daher wird weiterhin eine Warnung ausgegeben) aber es funktioniert deutlich besser als mit der 0.0.8, daher habe ich Euch auf die erste Seite eine 0.0.9 gemacht.


    Bitte damit weitertesten!


    LG
    gutemine

    Bad mood, bad manners, bad Plugins, you have been warned :whistling:

  • So kommen wir nicht weiter wenn wir uns hier alleine abquälen :-(


    Kann wenigstens einer mal mit OE 2.0 Images wo schon alles wie geplant funktioneren sollte auf 8000 und/oder 7020hd ausprobieren ob sich auch richtig fette Backups mit > 128MB damit problemlos flashen lassen, weil eigentlich ist das nfiwrite Projekt ja deswegen entstanden weil das writenfi da an seine (Memory) Grenzen stößt.


    Wenn wir wissen ob das klappt dann macht es Sinn auch die OE 1.6 Sachen weiter zu testen.


    LG
    gutemine

    Bad mood, bad manners, bad Plugins, you have been warned :whistling:

  • Ich hab heut versuch ein Backup > 128 MB zu flashen auf meiner DM7020HD und hat alles wunderbar geklappt


  • Mit aktuellen OE 2.0 Images läuft die 0.0.9 auch schon schad- und klaglos bei mir seit Sonntag, aber mir fehlen immer noch die Inputs was die alten OE 1.6 Images und die alte 800 angeht. Mir soll das recht sein, ich kann den Support dafür auch weglassen, weil ich nichts davon selber mehr brauche. Insofern schadet Ihr Euch nur selber wenn Ihr Euch zurücklehnt :-)


    Und ja große Images gehen problemlos, mit der --pad Option kann man ja so wie beim alten nandwrite sogar den gesamten Flash beschreiben ohne das es beim memory kracht.

    Bad mood, bad manners, bad Plugins, you have been warned :whistling:

    Dieser Beitrag wurde bereits 2 Mal editiert, zuletzt von gutemine ()

  • OK, durch eure "volle" Unterstützung habe ich mich entschieden - das nfiwrite wird für ALLE boxen mit Kernel < 3.2 den code vom writenfi verwenden und damit auch die ganzen netten Features wie einzeln flashen der Partitionen nur für die 500hd/800se/8000/dm7020hd mit OE 2.0 Images anbieten.


    Tut mir leid, aber so geht das halt leider nicht, wenn Ihr was besseres haben wollt müsst Ihr auch was dafür tun - und Ihr hattet Eure Chance die Ihr nicht genutzt habt.


    Schade ...

    Bad mood, bad manners, bad Plugins, you have been warned :whistling:

    Dieser Beitrag wurde bereits 5 Mal editiert, zuletzt von gutemine ()

  • gutemine


    jetzt habe ich mein Image mit dem parameter nfiwrite -r geflasht, und folgende log Fehlermeldung erhalten,


    dieser log zeigt etwas mehr, als der log mit dflash,


    vielleicht kannst du daraus, etwas sehen, warum das neue dflash auf meiner box nicht geht,

  • ich habe jetzt das letzte aktuelle merlin im Flash gehabt und dann wieder mit dem parameter nfiwrite -r das aktuelle merlin geflasht,


    ist jetzt ein anderer fehler im log:

  • seltsam, sehr seltsam, weil meine 8k macht das nicht.


    kannst du mal ein 3.2.4 release image mit nfiwrite flashen, um zu sehen ob es am ubifs liegt ?


    ich weis das ist mühsam ...

    Bad mood, bad manners, bad Plugins, you have been warned :whistling:

  • Ich weis.


    Aber ich habe nicht umsonst den Sidestep mit dem fgwrite gemacht, um rauszufinden ob man ubifs nicht mit ubiformat besser flashen kann, wahrscheinlich mache ich das jetzt auch ins nfiwrite rein.

    Bad mood, bad manners, bad Plugins, you have been warned :whistling:

  • Das hast du mit nfiwrite geflasht wie ein OE 2.0 gebootet war ?


    Wenn ja, dann mache ich halt ein nfiwrite 0.2 wo wir auch ubiformat verwenden wenn UBI in der root verwendet wird.

    Bad mood, bad manners, bad Plugins, you have been warned :whistling:

  • das ist aber falsch, weil dann das nfiwrite in den Kompatibilitätsmodus geht und mit writenfi flasht.


    Du musst ein OE 2.0 im Flash haben und dann mit nfiwrite das release image flashen :-)

    Bad mood, bad manners, bad Plugins, you have been warned :whistling:

  • ok, alles klar,


    jetzt habe ich merlin oe2 im Flash und das release geflasht, box bootet nicht durch, ist der gleiche fehler im log.


    anbei der richtige log:

    Dateien

    • teraterm.log

      (14,51 kB, 2 Mal heruntergeladen, zuletzt: )

    Dieser Beitrag wurde bereits 2 Mal editiert, zuletzt von dino ()

  • da wurde der kernel aber gar nicht geschrieben weil er sich immer noch mit 3.2 meldet, irgendwie komisch, sehr komisch ... weil der kernel beim 3.2.4 release image müsste 2.6.18 sein.

    Bad mood, bad manners, bad Plugins, you have been warned :whistling: