Thomson IP1101 Hacking
So, da das mit dem OpenVPN auf der TeraStation in ziemlich vielen frustlosen erfolglosen (Freudscher?) Versuchen endete, einen passenden Kernel zu übersetzen (für TAP/TUN Module), mache ich erstmal an der Thomson IP1101 STB Front weiter.
Ich habe mir mittlerweile einen Multi-Card-Reader von SkyMaster besorgt und eine 512MB CF Karte von Hama (64MB Teile gab es keine mehr.. ausserdem hoffe ich, da drauf später ein gepimptes Windows CE 6.0 oder Windows XP Embedded zu bekommen und das braucht halt Platz). Einiges habe ich ausserdem schon durch herumgoogeln herausgefunden.
Die Thomson STB läuft unter Windows CE 5.0. Anscheinend basiert sie auf dem INTeL 854DSTB (Digital Set Top Box) Design mit Anpassungen für/von Thomson (dazu später mehr).
Auf dem CF, welches im Innern steckt, findet man folgende Files:
1834916 Bytes BdyClip.wmv (komischer Sample Video) 0 Byte Cookies (Ordner mit Cookies drin) 3072 Bytes LifeTest.exe (keine Ahnung) 16136259 Bytes NK.bin (Image mit dem Windows CE 5.0 drin) 24064 Bytes PKFClient.exe (Bootloader für das Image?Engine) 5024 Bytes devcert.dat (Developer Zertifikat im XML Format) 135168 Bytes drmstore.dat (Abgespeicherte DRM Schlüssel?) 1048576 Bytes fwh.bin (Firmware Image?ROM Image) 138 Bytes ip1100boot.cfg (Textdatei mit Geräteinformationen) 401 Bytes wifi.ini (Konfigurationsdatei des beigelegten WiFi Adapters)
Die Cookies sind recht interessant; drin stehen Informationen, die darauf hindeuten, dass die Dienste von Entriq benutzt werden, um das mit dem Bezahlen zu handlen.
Das Windows CE Image ist nicht verschlüsselt, so dass man sich mit dem strings Kommando einen ersten Überblick verschaffen kann. Anscheinend hatte der Entwickler ClearCase benutzt. Ich habe dann mal nach disen Begriff gegrept und folgendes kam dabei heraus (jeweils um C:\ClearCase_Storage\views\rt_snp_val_1n1\lyon_stb_wince_dev\wince500\ gekürzt):
platform\854dstb\target\x86\retail\kern.pdb ... PBWorkspaces\IP1101PC\wince500\854dstb_x86\cesysgen\ oak\target\x86\retail\winsock.pdb ... Thomson\ThomsonLibrary\obj\x86\retail\ ThomsonLibrary.pdb ... Thomson\Mamba_Startup\obj\x86\retail\ Mamba_Startup.pdb
Meine nächsten Schritte werden sein:
- Windows XP aufsetzen als Host für das Development Kit
- Microsoft Platform Builder installieren
- INTel 854 DSTB Anpassung im Platform Builder installieren
- Eigenes Image bauen, auf CF kopieren und Booten
Update:
Habe mir mal ein bisschen die Hauptplatine angeschaut, weil (unter Aufklebern verdeckt) hinten ja Aussparungen im Blech sind und auch die INTeL Doku erwähnt, dass das Development System PS/2 Anschlüsse hat. Ich habe folgendes gefunden: 2x PS/2, 1x IDE.
Weiterhin existieren noch 4 weitere Aussparungen im Blech, aber diese lassen sich nur schwer deuten. Vermutlich handelt es sich dabei um 1x 9pol seriell, 1x Reset, 1x USB (dabei hat das Teil doch schon 3 andere) und einen viereckigen, der eventuell ein weiterer S/PDIF Anschluss sein könnte (Audio Input?).
Update:
Habe herausgefunden, dass ich gut daran tat, einen 512MB CF zu kaufen. Grössere Karten bzw. Partitionen werden nicht unterstützt! Hat man also z.B. ein 1GB Teil, muss man es partitionieren.
Das Übersetzen eines eigenen NK.bins zieht sich leider schon über den ganzen Tag hinweg. So ein G5 mit 1.8GHz und VirtualPC ist nicht gerade die Waffe, wenn es um die Emulation des Windows XP samt des Windows CE Platform Builders geht.
Achja.. ich habe noch ein paar Sachen gefunden, wie z.B. den Windows CE 5.0 Device Emulator, oder eine Anleitung mit Bildern, wie man den Platform Builder bedient. Zum Schluss noch ein Forum, welches sich um ein ähnliches Gerät dreht.
Update:
So, nun reichts, nachdem nach fast 10 Stunden immer noch kein NK.bin durchkompiliert ist, lasse ich das mit dem Windows CE bleiben (oder greife es wieder auf, wenn ich mir den iMac 24” geholt habe und Windows nativ im Parallels fahren kann %-) ). Nächste Baustelle ist also INTeLs Linux PDK für den 854 unter FedoraCore 3 auszuprobieren.
Update:
Es gibt nun auch ein Wiki zum Thema Thomson IP1101 Hacking.