MAC-Adresse eines Ideos U8150 unter Gingerman ändern

Streng nach dem Motto: „Ein Blog, den eh kaum einer liest, ist immer noch dazu gut, Wissen niederzuschreiben, um es fortan google-fähig in der Cloud zu speichern“ – hier eine Notiz für mich selbst: So ändert man die für alle CyanogenMod-Installationen identische MAC-Adresse auf einem Huawei Ideos 8150 nach Installation von Gingerman.

Wer wie ich gedachte, zwei Huawei Ideos U8150 statt unter Vanilla Android 2.2 „Froyo“ unter Android 2.3 „Gingerbread“ mit Hilfe der alternativen Firmware „Gingerman“ (basierend auf CyanogenMod 7) zu betreiben, wird sein blaues Wunder erleben: Beide Geräte verwenden fix die MAC-Adresse 00:90:4C.14:43:19, was am WLAN-Router kunterbunte Verwechselungen hervorruft.

Das Tool „MacAddressFree“ aus dem App Market, das dem Vernehmen nach mit Froyo-Ideos-Handys klar kommt, schafft es aber unter Gingerman leider nicht – und der Autor Joey Jiao ist untröstlich, aber es hilft ja alles nichts.

Nach langem Herumrätseln stellt sich heraus: Die MAC-Adresse wird definiert in

/system/etc/firmware/nvram.txt

Diese zu modifizieren ist jedoch nicht ganz trivial. Also: Auf zum Höllenritt.

  • Die ursprüngliche MAC-Adresse des Handys unter selig Froyo steht auf dem Aufkleber unter dem Akku. Es gibt eigentlich keinen Grund, diese nicht benutzen zu wollen.
    Also: Einmal runterfahren, Akku raus, MAC notieren (besser noch: Digifoto davon machen), Akku wieder rein, rebooten.
  • Terminal Emulator starten – das Ding ist nämlich unter Gingerman vorinstalliert.
  • „su – root“ eingeben – die vorinstallierte Superuser-App poppt auf, man gestatte der Shell einmalig Root-Rechte.
  • Wer nun direkt versucht, mit „cd /system/etc/firmware“ und „vi nvram.txt“ zum Ziel zu kommen, ist schief gewickelt: /system ist read/only gemountet, wie ein kurzer Blick mit „cat /proc/mounts | grep /system“ offenbart.
  • Aber diese Bildschirmausgabe ist wichtig: In meinem Fall ist das yaffs2-Dateisystem /dev/block/mtdblock4 als /system gemountet. Das müssen wir read/write remounten.
    Also: „mount -o rw,remount -t yaffs2 /dev/block/mtdblock4 /system“ (ggf. den Device-Namen anpassen).
  • Flugs mit „cat nvram.txt | grep macaddr“ prüfen, ob wir noch im richtigen Film sind. Da sollte stehen:

# cat nvram.txt | grep macaddr
macaddr=00:90:4c:14:43:19
#

  • So weit, so falsch. Und jetzt wird’s wild: „vi nvram.txt“. Der vi bedient sich natürlich per Bildschirmtastatur recht ungelenk – also noch ungelenker als eh schon. Je nach Version des Terminal Emulators erreicht man die ESC-Taste (wichtig zum Moduswechsel) mal mit „Ball – 1“ (also zuerst den Knopf in der Mitte des Steuerkreuzes und dann die „1“ per Bildschirmtastatur), mal mit „Vol-Dwn – 1”.
  • Am Ende sollte es dann in etwa so aussehen:

# cat nvram.txt | grep macaddr
# macaddr=00:90:4c:14:43:19
macaddr=5c:4c:a9:xx:xx:xx
#

  • Das heißt: Die Default-MAC wird einfach nur auskommentiert, in einer zweiten Zeile wird die korrekte gewünschte MAC eingegeben, die der Original-MAC des Handys entsprechen sollte. Dabei entsprechen die hinteren drei „xx“-Pärchen natürlich den letzten drei Hex-Bytes Eurer eigenen MAC.

  • Noch einmal peinlich genau die Syntax und die MAC überprüfen! Hier darf nichts schief gehen … !
  • Alte Lebensweisheit: Boot’s, tut’s.

Kids, never try this alone when your parents are not at home! 😉

7 Kommentare.

  1. Hat das X3 2 WLAN Chips? - Seite 2 - Android-Hilfe.de - pingback on 28. Oktober 2011 um 20:56
  2. Hallo,

    hab das selbe Problem, nur bei mir endet die adresse auf :29 und ich find die Datei nicht unter:
    /system/etc/firmware

    • Sorry, da kann ich Dir leider nicht helfen. Ich habe beschrieben, wie es bei mir funktioniert hat. Anschließend habe ich natürlich nicht länger daran „gearbeitet“.

  3. Viel einfacher:

    Die Datei mit dem Root-Explorer oder Root-Browser(-Lite) editieren.

    Klappte hier bei zwei X3 hervorragend. Beide mit angepasster Cyanogenmod7.2-benru89-v2 (von samia99, einmal Variante 3 und einmal die Weihnachtsvariante).

    Oder halt vor dem flashen die Datei im zip-Archiv bearbeiten.

    • Gute Idee! Das Problem war ja, dass die neue Firmware bereits lief und einige Apps bereits konfiguriert waren. Insofern musste der Wechsel der MAC ja quasi „am offenen Herzen“ ie. im laufenden System erfolgen.

  4. @michel:
    Datei gefunden mit
    find . -type f -name \nvram.txt
    in
    /system/wifi/nvram.txt

    LG

    PS: Huawei Sonic U8650 mit Cyanogenmod7.2-benru89-v3

Trackbacks und Pingbacks: