Hallo zusammen Ich habe hier ein Diagnosegerät, das per Tablet bedient wird. Als Prozessor ist darin ein Arm Cortex A8-MX51 verbaut, das Betriebssystem ist WinCE 6.0. Das Tablet ist hauptsächlich für die GUI zuständig. Es kommuniziert dann per WLAN mit einem kleinen Adapter, der die eigentliche OBD-Verbindung mit dem Fahrzeug herstellt. Leider ist das Tablet mittlerweile in die Jahre gekommen und wird wohl nicht mehr lange durchhalten. Deshalb möchte ich es ersetzen. Am Liebsten wäre es mir, wenn ich alles in eine virtuelle Maschine packen könnte (mit einem x86 als Host). Die Sache ist allerdings, dass ich nicht sehr bewandert mit virtuellen Maschinen bin. Ich verwende zwar bereits den VMPlayer, um ein altes Win XP laufen zu lassen. Das ist aber auch nicht sonderlich kompliziert, weil man bei so einem Standard-Setup überall an die Hand genommen wird. Meine Frage: Ist es möglich, mit wenig Kenntnissen das Tablet in eine virtuelle Maschine zu bekommen? Oder sollte ich das lieber wieder vergessen und mich nach einem neuen Tablet umschauen? Grüße Steffen
Wenn überhaupt dürftest du mit qemu zum ziel kommen. Da gibt/gab es zb. Das mini2440 board als target. Dort abschauen+nachbauene
Da sehe ich schwarz. Das Teil in einen VM zu bekommen ist nur ein Teil des Problems. ABER, die Treiber für alles mögliche nach draußen zu bekommen, da sehe ich schwarz. Ich habe Virtualbox (Oracel) und musste jedesmal ein "Gastsystem" installieren. Sonst lief das "unrund". Diese "Gastsystem" liefert die Treiber für die Hardware u.w.w.i. noch alles. Das Problem ist. Win-CE ist einfach ein Handheld - OS was sich nicht wirklich durchgesetzt hat und inzwischen URALT ist. Mein letzten Mini-Laptop mit WIN-CE hat ein Arbeitskollege für 99 DM beim Aldi gekauft und ich ihm das Teil 2 Wochen später für 20 DM abgekauft als Spielzeug. ;)
Nachtrag: Was aber vielleicht machbar wäre, wäre ein Doppel-Wopper. ;) Und installierst in der VM (oder direkt) einen WIN-CE-Emulator. Die gibt es zu auf. Wie gut die die Hardware emulieren steht auf einen anderen Blatt.
Schlaumaier schrieb: > Da sehe ich schwarz. > Das Teil in einen VM zu bekommen ist nur ein Teil des Problems. > ABER, die Treiber für alles mögliche nach draußen zu bekommen, da sehe > ich schwarz. > Ich habe Virtualbox (Oracel) und musste jedesmal ein "Gastsystem" > installieren. Sonst lief das "unrund". Diese "Gastsystem" liefert die > Treiber für die Hardware u.w.w.i. noch alles. > Das Problem ist. Win-CE ist einfach ein Handheld - OS was sich nicht > wirklich durchgesetzt hat und inzwischen URALT ist. > Mein letzten Mini-Laptop mit WIN-CE hat ein Arbeitskollege für 99 DM > beim Aldi gekauft und ich ihm das Teil 2 Wochen später für 20 DM > abgekauft als Spielzeug. ;) Dann schau dir mal das qemu target mini2440 an. Nur weil dunschwarz siehst, heisst das nicht, dass das wirklich schwer wäre.
WF88 schrieb: > Wenn überhaupt dürftest du mit qemu zum ziel kommen. Ist letztlich auch das, was Android Studio zum Emulieren seiner Targets nimmt. Dort gibt's sowas schon fix und fertig vorbereitet.
Ich habe qemu installiert und schaue mir gerade die Dokumentation dazu an. Auf https://www.qemu.org/docs/master/system/target-arm.html heißt es dazu:
1 | If you already have a system image or a kernel that works on hardware and you want to boot with QEMU, check whether QEMU lists that machine in its -machine help output. If it is listed, then you can probably use that board model. If it is not listed, then unfortunately your image will almost certainly not boot on QEMU. |
Mit "machine" ist hier mein ARM Cortex A8-MX51 gemeint, oder? Der taucht nämlich leider nicht in der Liste auf :-(
:
Bearbeitet durch User
Steffen H. schrieb: > Ich habe qemu installiert und schaue mir gerade die Dokumentation > dazu an. Auf https://www.qemu.org/docs/master/system/target-arm.html > heißt es dazu: > > If you already have a system image or a kernel that works on hardware > and you want to boot with QEMU, check whether QEMU lists that machine in > its -machine help output. If it is listed, then you can probably use > that board model. If it is not listed, then unfortunately your image > will almost certainly not boot on QEMU. > > Mit "machine" ist hier mein ARM Cortex A8-MX51 gemeint, oder? Der taucht > nämlich leider nicht in der Liste auf :-( Mit machine ist die Maschine gemeint, wie z.b. ein PC. Dein cortex ist "cpu".
WF88 schrieb: > Mit machine ist die Maschine gemeint, wie z.b. ein PC. Dein cortex ist > "cpu". Verstehe. In dem Fall ist meine Maschine wohl der SoC von NXP namens iMX.51. Der wird leider ebenfalls nicht von qemu unterstützt. NXP schreibt das auch so im Forum (unterster Beitrag): https://community.nxp.com/t5/i-MX-Processors/qemu-support-for-imx/m-p/558572 Habe ich noch eine andere Chance, das mit WLAN Unterstützung zum Laufen zu bringen? In qemu oder auf andere Weise?
:
Bearbeitet durch User
Steffen H. schrieb: > In dem Fall ist meine Maschine wohl der SoC von NXP namens iMX.51 Muss es denn genau der sein?! Die Anwendung ist doch eine "normale" WinCE Anwendung, die wohl nicht direkt auf die Hardware zugreift. Dann brauchst du lediglich einen ARMv8A-kompatiblen Prozessor. Du kannst also irgendwas ab Cortex-A8 aufwärts auswählen. Hauptsache das WinCE läuft da drauf.
Programmierer schrieb: > Dann brauchst du lediglich einen ARMv8A-kompatiblen Prozessor Korrektur, ich meinte ARMv7A. Der Cortex-A8 ist ja der erste ARMv7A, daher sind alle Cortex-A dazu abwärtskompatibel. Allerdings muss es 32bit sein, weil WinCE anscheinend kein AArch64 kann.
Programmierer schrieb: > Muss es denn genau der sein?! Mein Plan war, ein Image vom Tablet zu ziehen und das dann zu booten. Wenn ich aber eine andere Maschine auswähle, wird das Image kaum booten. Also brauche ich eine frische Installation und damit die Installationsdateien für WinCE 6.0 for ARM. Ich probiere, sie aufzutreiben.
Steffen H. schrieb: > Wenn ich aber eine andere Maschine auswähle, wird das Image kaum booten Stimmt wohl. Aber ich denke dass ein "generisches" WinCE Image auf einem beliebigen Cortex-A auch gehen dürfte, falls sich so etwas auftreiben lässt. Oder die Kommunikation der Anwendung mittels Wireshark abhören und reverse engineeren und eine eigene Android App dafür schreiben...
Ich bin zurück von der Suche. Die meisten Images findet man für das hier bereits angesprochene Board mini2440 und davon wiederum den Großteil bei friendlyarm.com. Die Einträge sind aber mittlerweile fast 15 Jahre alt und die Links funktionieren leider nicht mehr. WinCE hat man damals wohl mit einem sog. Platform Builder maßgeschneidert auf die Zielplattform zusammengebaut. Leider steht auch der Platform Builder nicht mehr bei Microsoft zum Download bereit. Das scheint eine härtere Nuss zu werden. Hat jemand von Euch zufälligerweise ein WinCE 6.0 for ARM Image parat?
:
Bearbeitet durch User
Parat nicht, aber irgendwo habe ich das mal eingesammelt. Winworld, betaarchive und archive.org
Alternative: Schon mal bei Aliexpress und Co. geschaut, ob es ein neues Gerät gibt, welches Deine Anwendungsfälle abdeckt?
Johnny B. schrieb: > Alternative: Schon mal bei Aliexpress und Co. geschaut, ob es ein neues > Gerät gibt, welches Deine Anwendungsfälle abdeckt? Leider nichts dabei. Das Diagnosegerät deckt auch die herstellerspezifischen Services ab und ist dementsprechend teuer.
Okay. Es hat mich viel Zeit und Nerven gekostet, aber ich habe jetzt endlich die Toolkette ans Laufen bekommen, um mir ein Win CE 6.0 für einen mini2440 zu bauen. Aus dem Build purzelt ein "NK.bin" heraus und wenn ich es richtig verstehe, ist das das Image, welches ich nun in QEMU ausführen möchte. Leider stelle ich nun fest, dass QEMU dieses Board wohl doch nicht von Haus aus unterstützt. Wenn ich
1 | qemu-system-arm -machine help |
eingebe, wird das mini2440 jedenfalls nicht aufgeführt. Nach kurzer Suche habe ich gesehen, dass es wohl einen Fork dafür gibt. Allerdings ist er nur für Linux compiliert. Ist das richtig? Ich nutze nämlich Windows. Hoffentlich war das nun nicht alles umsonst...
Um meine Ausgangsfrage selbst zu beantworten: Nein, es ist mit wenig Kenntnissen nicht möglich. QEMU unterstützt keine Geräte, auf denen Win CE 6.0 läuft. Es gibt zwar einen Fork für den mini2440 (dort läuft Win CE 6.0). Aber um den ans Laufen zu bekommen, muss man basteln. Und vor allem sich mit der Materie auskennen, denn der mini2440 (bzw. Win CE 6.0 im Allgemeinen) war vor 10-15 Jahren aktuell, mittlerweile aber nicht mehr. Das Thema ist eingeschlafen, es gibt keine aktive Community und man kann kaum jemanden mehr fragen. Damit ist das Vorhaben leider gestorben :-(
:
Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.