Mein Tolino Shine der ersten Generation ist zwar schon etwas in die Jahre gekommen, leistet mir aber weiterhin gute Dienste. Ich hatte das Gerät damals mit der Firmware-Version 1 gekauft, welche man noch recht einfach rooten konnte. Diese Chance hatte ich aber mit dem ersten Firmware-Update, welches ich einspielte, verpasst.
Inzwischen bin ich bei Firmware-Version 10.5 angekommen, die sich nicht ohne das Gerät zu öffnen rooten lässt. Da das Gerät aber sowieso keine Garantie mehr hat und es sich nach einem Sturz an einer Ecke schon leicht geöffnet hat, will ich es noch einmal mit dem Rootzugang versuchen.
Öffnen des Tolino
Laut einigen Forenbeiträgen ist es ganz einfach, den Tolino ohne Beschädigungen zu öffnen. Nachdem ich mit einigen Displaywechseln bein Handys bereits etwas Erfahrung gesammelt habe, ging es tatsächlich ganz einfach.
Zunächst fährt man vorsichtig mit einem Fingernagel, einem Plektrum oder einem Öffnungswerkzeug durch den umlaufenden Spalt des Gerätes herum. Dabei löst man vorsichtig die Ösen des Gehäuses, ohne sie abzubrechen. Am Besten geht es, wenn man oben neben den Schaltern anfängt und sich nach unten arbeitet.
An der Klappe unten sind Gehäuseober- und Unterseite miteinander verklebt. Dies kann man vorsichtig mit einer Plastikkarte lösen.
Das Display ist ebenfalls mit dem Deckel verklebt – auch hier hilft die Plastikkarte. Zunächst schiebt man sie seitlich zwischen Display und Deckel und löst beide Seiten. Anschließend kann man sie von Außen Richtung Mitte schieben um die Klebeverbindung jeweils oben und unten abzulösen. Danach kann man den Deckel einfach abnehmen.
Nun müssen noch 4 Schrauben gelöst werden, um das Mainboard komplett vom Gehäuse zu befreien. Auf der Rückseite steckt eine Mini-SD-Karte, auf der sich das Betriebssystem und die Bücher befinden.
SD-Karte sichern
Jetzt kann die SD-Karte entnommen und mittels Kartenleser mit dem PC verbunden werden. Als Erstes sollte man eine Datensicherung erstellen.
Alle Befehle hier funktionieren unter Linux als root.
#> blkid /dev/mmcblk0p1: LABEL_FATBOOT="MEIN TOLINO" LABEL="MEIN TOLINO" UUID="*****" TYPE="vfat" PARTUUID="*****-01" /dev/mmcblk0p2: UUID="*****-*****-*****-*****-*****" TYPE="ext4" PARTUUID="*****-02" /dev/mmcblk0p4: LABEL="recovery" UUID="*****-*****-*****-*****-*****" TYPE="ext4" PARTUUID="*****-04" /dev/mmcblk0p5: UUID="*****-*****-*****-*****-*****" TYPE="ext4" PARTUUID="*****-05" /dev/mmcblk0p6: UUID="*****-*****-*****-*****-*****" TYPE="ext4" PARTUUID="*****-06"
Der Befehl blkid zeigte alle erkannten Partitionen. Ich sehe, dass das Device mmcblk0 ist und dass es 6 Partitionen gibt. Die komplette Karte wird erst einmal mit dd kopiert:
#> dd if=/dev/mmcblk0 of=tolino_backup.img bs=1M status=progress73400320 bytes (73 MB, 70 MiB) copied, 4 s, 18,3 MB/s
Ein paar Minuten später hat man eine komplette Kopie der Speicherkarte. Sollte in den nachfolgenden Schritten etwas schief gehen, kann man jederzeit durch vertauschen der Parameter hinter „if“ und „of“ den originalen Zustand wiederherstellen.
Tools downloaden …
Als Nächstes wirde eine „su“-Binary (das eigentliche Root-Tool) sowie ein paar weitere Programme, z.B. der Google-Playstore benötigt. Ein komplettes Paket ist unter https://allesebook.de/anleitung/tolino-shine-root-zugriff-inkl-google-play-94674/ zu finden (der 20 MB Download ohne das Recovery-Image reicht aus).
… und installieren
Jetzt wird die System-Partition der SD-Card gemountet und die benötigten Daten kopiert.
#> mount /dev/mmcblk0p2 /mnt/ #> ls -al /mnt insgesamt 43 drwxr-xr-x 13 root root 1024 2. Dez 19:06 . drwxr-xr-x 22 root root 4096 20. Nov 09:25 .. drwxr-xr-x 2 root root 3072 2. Dez 19:05 app drwxr-xr-x 2 root 2000 3072 2. Dez 19:06 bin -rw-r--r-- 1 root root 1222 1. Aug 2008 build.prop drwxr-xr-x 7 root root 1024 2. Dez 19:05 etc drwxr-xr-x 2 root root 3072 2. Dez 19:05 fonts drwxr-xr-x 2 root root 1024 2. Dez 19:06 framework drwxr-xr-x 6 root root 9216 2. Dez 19:06 lib drwxr-xr-x 2 root root 12288 2. Dez 19:05 lost+found drwxr-xr-x 3 root root 1024 2. Dez 19:06 media drwxr-xr-x 7 root root 1024 2. Dez 19:06 usr drwxr-xr-x 2 root root 1024 2. Dez 19:06 wifi drwxr-xr-x 2 root 2000 1024 2. Dez 19:06 xbin #> cp ALLESebook.de_tolino_s_root/3_adb/su /mnt/xbin/ #> ln -s /system/xbin/su /mnt/bin/su #> chmod 6755 /mnt/xbin/su #> cp ALLESebook.de_tolino_s_root/3_adb/Superuser.apk /mnt/app/ #> cp ALLESebook.de_tolino_s_root/3_adb/z_GoogleServicesFramework.apk /mnt/app/GoogleServicesFramework.apk #> cp ALLESebook.de_tolino_s_root/3_adb/z_Vending.apk /mnt/app/Vending.apk #> cp ALLESebook.de_tolino_s_root/3_adb/z_SWkey36.apk /mnt/app/SWkey36.apk #> cp ALLESebook.de_tolino_s_root/3_adb/z_LauncherPro-0.8.6.apk /mnt/app/LauncherPro-0.8.6.apk #> umount /mnt; sync
Nun kann die Karte wieder in den Tolino eingelegt und probeweise gebootet werden.
USB-Debugging und ADB aktivieren
Nach dem Start fragt Tolino nun, mit welchem Launcher die Aktion ausgeführt werden soll – hier wählt man „Launcher Pro“ und landet auf einem Standard-Arduino Bildschirm.
Unter Einstellungen -> Anwendungen -> Entwicklung kann man USB-Debugging aktivieren. Anschließend sollte man den Tolino per USB mit dem PC verbinden und prüfen, dass man über ADB eine Root-Shell starten kann.
#> adb shell $ #> id uid=2000(shell) [...] $ #> su $ #> id uid=0(root) [...]
War dies erfolgreich, kann der Tolino heruntergefahren und wieder zusammengebaut werden. Beim Zusammenbau darauf achten, dass die Nase des Ausschalters ordentlich sitzt 😉
Beim einmaligen Öffnen reicht der Kleber, um alles wieder ordentlich zusammen zu halten. Wiederholt man die Aktion mehrfach, sollte man sich noch ein paar dünne doppelseitige Klebestreifen als Ersatz bereit halten.
Weitere Einstellungen
Zunächst fällt auf, dass man sich ausschließlich beim Neustart zwischen der Tolino-App und dem LauncherPro entscheiden kann. Das liegt daran, dass der Home-Button in Wirklichkeit nur ein „zurück“-Button ist. Hier hilft die App „Button Savior“, für die das Tool-Paket auch gleich eine fertige Konfiguration mitbringt, die sich per ADB installieren lässt:
#> adb shell "am start -n com.smart.swkey/.swkey" #> adb shell "su -c 'chmod 777 /data/data/com.smart.swkey'" #> adb shell "su -c 'chmod 777 /data/data/com.smart.swkey/*'" #> adb shell "su -c 'chmod 777 /data/data/com.smart.swkey//'" #> adb push ALLESebook.de_tolino_s_root/3_adb/com.smart.swkey /data/data/ #> adb reboot
Nach dem Neustart erscheint rechts ein Mini-Menü, welches die üblichen Android-Buttons bereitstellt. Man kann nicht die Button-Position auf „20“ ändern, dann ist er oben rechts außerhalb der Lese-Fläche.
Hallo, kann man in dem Modus / Eingriff direkt die SD Karte des Tolino Shine 1 durch eine größere ersetzen? Denke dabei an eine SD Karte 16GB die ich schon habe und bisher im esxterner Slot genutz habe.
Hallo,
ich denke, das sollte ganz ohne Root gehen. Einfach die Karte ausbauen, 1:1 kopieren und dann mit einem Partitionstool die Partition vergrößern.
Hallo Michael, danke fuer diese wundervolle Anleitung!
Ich habe mir ReLaunchX als Fallback Launcher, und Cool Reader installiert, jedoch bin ich noch nicht ganz zufrieden.
Hast du vielleicht KoReader ans Laufen bekommen oder andere Apps?
Viele Gruesse
Hi,
ich habe mich nicht weiter damit befasst, da ich den Reader inzwischen weitergegeben und einen neueren Shine gekauft habe.
Hallo Michael, vielen Dank für diese tolle Anleitung. Auch ich habe einen alten Tolino Shine1 rumliegen, den ich auch gern als RSS Feedreader nutzen wollte. Leider lässt mich der veraltete Playstore nicht mehr rein, seit es die 2-Faktoridentifikation gibt. Ich wollte per ADB einen Android2.3 kompatiblen Reader installieren, scheitere aber schon beim Kopieren der apk Datei oder beim Verzeichnis-anlegen per mkdir, da das gesamte FIlesystem angeblich Readonly ist.
Ich führe die Befehle als su aus. Was mache ich falsch oder wie kann ich ein APK installieren?
Vielen Dank für die Antwort auf meine Frage.
Gruß,
Dirk
Ich habe es gelöst bekommen, nach dem remount des /system per „mount -o rw,remount /dev/block/mmcblk0p2 /system“ funktioniert der adb install befehl. Danke dennoch und frohe Ostern
Hi,
wir haben hier einen Tolino Shine mit der 10.5.0. Leider funktioniert die Anleitung nicht wie gedacht.
Ich habe das jetzt mehrfach getestet, es ändert sich aber weder an der originalen Tolino Oberfläche irgendetwas noch am ADB-Status.
Nach meinem Verständnis der Dinge würde das auch Sinn ergeben, da hier nur neue Dateien hinzugefügt werden. Um die Startabfolge irgendwie zu beeinflussen müsste man doch etwas, das sowieso aufgerufen wird, manpulieren?!
Fehlt hier eventuell ein Schritt in der Anleitung oder habe ich ggf. etwas übersehen?
Rückmeldung wäre super. Danke 🙂
Hallo Jan,
das ist leider alles schon ewig her und ich habe das Gerät auch nicht mehr. Ich denke der Mechanismus der vom Standard-Android: Wenn es mehrere Apps für eine Aktion gibt, wird eine Auswahl angezeigt. D.h. wenn man den zusätzlichen Launcher installiert, wird beim Start gefragt, welcher Launcher es denn sein soll. Wichtig ist hier, den alten Launcher nicht wieder als Standard festzulegen (falls das geht). Sollte das doch geschehen sein, könnte man den nochmal deinstallieren, erneut starten, nochmal herunterfahren und den Launcher nochmal installieren.
Da ich es nicht testen kann, weiß ich nicht, ob das weiterhilft.
Viele Grüße,
Michael.