Reverse Engineering

OP #2846510
Lesenswert?

Hallo liebe Forengemeinde,

ich habe ein etwas außergewöhnliches Problem und suche nach einer 
Lösung. Ich möchte an einem Kombiinstrument ein paar Sachen ändern um es 
für meinen Motorradumbau anzupassen. Ich habe die "Firmware" im Motorola 
S-Rec Format, diese dann nach Intel und anschließend Avr konvertiert da 
ich dachte ich könnte damit was in ATMEL Studio anfangen. Ich muss aber 
dazu sagen das ich ein absoluter "Nichtswisser" auf diesem Gebiet bin. 
Ich dachte ich könnte irgendwie die Grafiken lokalisieren und was die 
Software so "veranstaltet", glaube aber das das eine Nummer zu hoch für 
mich ist.

Hat jemand vielleicht Lust mir dabei zu helfen? Vielleicht ein Student, 
Schüler oder sonstwer..

Einen schönen Abend,

Sebastian
OP #2846563
Lesenswert?

Da hab Ihr mich schon erwischt.. wie gesagt ich habe null Ahnung.

Folgende elektronische Bauteile sind auf der Platine, außer LED`s, 
Widerständen etc.:

Infineon BTS712N1  NP739308 05  0726

PH4A8 / FSTU3384

ATMEL 708  24C16AN  8U27

PH3AF  MM74HC  14M

PCF7991AT / CG092205 /Tn607140

F JAPAN MB90F347CA  0725 K57  GS E1

PH3A8 / 24AC00

TLE 4278 G  0650L0P  VC703153K09

Da auch ein Schrittmotor angetrieben wird dachte ich das das bestimmt 
mit einem Mikrocontroller realisiert wird, und so nahm alles seinen 
Lauf..
#2846564
Lesenswert?

Sebastian B. schrieb:
> Ich habe die "Firmware" im Motorola
> S-Rec Format, diese dann nach Intel und anschließend Avr konvertiert da
> ich dachte ich könnte damit was in ATMEL Studio anfangen.

Auf Motorräder übertagen heisst das, du hast eine Kawasaki, und die 
Kennlinienfelder dafür, jetzt willst du sie tunen, und konvertierst die 
Kennlinienfelder auf einen Honda Motor, um sie dann mit einem Yamaha 
Programmiertool zu ändern und damit deine Kawasaki zu programmieren.

Wie logisch erscheint dir diese Vorgehensweise, die du gerade mit 
Software machen willst.
Achso, ausserdem hast du keine Ahnung was für Kenlinienfelder das sind, 
ob für Einspritzung, Lambda Regelung oder Zündzeitpunkt Verstellung.

So ungefähr ist dein Stand mit der Software.
OP #2846570
Lesenswert?

Udo Schmitt schrieb:
> Sebastian B. schrieb:
>> Ich habe die "Firmware" im Motorola
>> S-Rec Format, diese dann nach Intel und anschließend Avr konvertiert da
>> ich dachte ich könnte damit was in ATMEL Studio anfangen.
>
> Auf Motorräder übertagen heisst das, du hast eine Kawasaki, und die
> Kennlinienfelder dafür, jetzt willst du sie tunen, und konvertierst die
> Kennlinienfelder auf einen Honda Motor, um sie dann mit einem Yamaha
> Programmiertool zu ändern und damit deine Kawasaki zu programmieren.
>
> Wie logisch erscheint dir diese Vorgehensweise, die du gerade mit
> Software machen willst.
> Achso, ausserdem hast du keine Ahnung was für Kenlinienfelder das sind,
> ob für Einspritzung, Lambda Regelung oder Zündzeitpunkt Verstellung.
>
> So ungefähr ist dein Stand mit der Software.


Leider muss ich Dir da Recht geben, bin da etwas blauäugig rangegangen. 
Aber es muss doch möglich sein irgendwie die Bereiche des Flashspeichers 
zu identifizieren wo die Grafiken für das LCD gespeichert sind und die 
"Formel" zu finden die aus den Impulsen des Rad-Hall-Gebers die 
Geschwindigkeit errechnet. Das möchte ich gerne ändern.
OP #2846594
Lesenswert?

Ja das stimmt, aber da gibt es noch ein Problem, das Kombiinstrument 
bekommt die Drehzahl vom Motorsteuergerät, welches bei mir nicht verbaut 
wird, deswegen suche ich auch da nach einer Lösung.

Deswegen dachte ich wenn den Flash irgendwie in verständlichen Code 
wandeln könnte, man wüsste was da für ein Signal benötigt wird, so das 
man auch wie bei dem "speedohealer" ein Modul vorschalten könnte..
Persönliche Seite #2846605
Lesenswert?

Sebastian B. schrieb:
> wenn den Flash irgendwie in verständlichen Code
> wandeln könnte

Dazu müsste man aber wissen, für was für einen Microcontroller der 
Code ist. Zwar taucht in Deiner Auflistung auch tatsächlich ein Baustein 
von Atmel auf, das aber ist nur ein serielles EEPROM und ganz sicher 
nicht der Microcontroller, der hier gesucht wird.
Das dürfte der MB90F347CA sein 
(http://www.fujitsu.com/global/services/microelectronics/product/micom/support/suffix/mb90340.html)
OP #2846616
Lesenswert?

Rufus Τ. Firefly schrieb:
> Sebastian B. schrieb:
>> wenn den Flash irgendwie in verständlichen Code
>> wandeln könnte
>
> Dazu müsste man aber wissen, für was für einen Microcontroller der
> Code ist. Zwar taucht in Deiner Auflistung auch tatsächlich ein Baustein
> von Atmel auf, das aber ist nur ein serielles EEPROM und ganz sicher
> nicht der Microcontroller, der hier gesucht wird.
> Das dürfte der MB90F347CA sein
> 
(http://www.fujitsu.com/global/services/microelectronics/product/micom/support/suffix/mb90340.html)

Ist es denn möglich anhand der mhx oder 128kb Binärdatei herauszufinden 
um was für eine Programmiersprache es sích handelt? Diese dann zu 
decompilen?
Gast #2846626
Lesenswert?

klar - mit sicherheit in C geschrieben. Aber hocheffizient in 
Assemblercode übersetzt und dann in Maschinenbefehle transferiert.

Aber da jeder Programmierer seinen Code gut dokumentiert gibt es auch 
Kommentarzeilen. Du musst nur nach "/* hier steht die gesuchte Formel 
*/" suchen.
#2846627
Lesenswert?

Sebastian B. schrieb:

> Ist es denn möglich anhand der mhx oder 128kb Binärdatei herauszufinden
> um was für eine Programmiersprache es sích handelt? Diese dann zu
> decompilen?

Ob und welche High-Level Sprache verwendet wurde ist doch völlig 
irrelevant. Die ist verloren und Rückwandeln von Maschinencode bzw. 
Assembler ist nicht möglich. Und wenn dann wäre das ein völlig 
undurchschaubares wirr warr. Dann lieber direkt in Assembler arbeiten. 
Aber das ist alles wirklich völlig utopisch. Vor allem du willst ja den 
Original Chip wieder besspielen, so wie ich das verstanden habe? Wie 
soll das gehen, hast du die nötigen Programmiertools dafür überhaupt?

gruß cyblord
Persönliche Seite #2846629
Lesenswert?

Das ist zwar nicht ganz so unmöglich, wie der Versuch, aus einem 
Hamburger eine Kuh zu gewinnen, aber es ist nah dran, da i.d.R. stark 
optimierende Compiler verwendet werden und ein Rekonstruieren der 
verwendeten Hochsprachenquelltexte damit sehr, sehr unwahrscheilich ist.

Das wird man auf Assemblerebene betrachten müssen, und das ist bei der 
Aufgabenstellung (ohne Schaltplan, dem man die Funktion von I/O-Pins 
entnehmen könnte) reichlich unrealistisch.

Wenn Du jemanden dafür bezahlen willst, ist es ziemlich sicher 
günstiger, einen neuen Tacho entwickeln zu lassen.
OP #2846647
Lesenswert?

xyz schrieb:
> klar - mit sicherheit in C geschrieben. Aber hocheffizient in
> Assemblercode übersetzt und dann in Maschinenbefehle transferiert.
>
> Aber da jeder Programmierer seinen Code gut dokumentiert gibt es auch
> Kommentarzeilen. Du musst nur nach "/* hier steht die gesuchte Formel
> */" suchen.

Wenigstens bin ich in der Lage Ironie zu erkennen..


Rufus Τ. Firefly schrieb:

> Wenn Du jemanden dafür bezahlen willst, ist es ziemlich sicher
> günstiger, einen neuen Tacho entwickeln zu lassen.

Was würde sowas denn in etwa kosten? LCD mit Splash Screen, 
Geschwindigkeitsausgabe im LCD, Drehzahl per Schrittmotor. Natürlich 
"ohne Rechnung"..
OP #2847541
Lesenswert?

Rufus Τ. Firefly schrieb:
> Sebastian B. schrieb:
>> Natürlich "ohne Rechnung"
>
> Daß Du damit (auch "mit Rechnung") die Straßenzulassung Deines Mopeds
> verlierst, ist Dir klar?

Ja selbstverständlich, nur weil ich kein Mikrocontrollerfachmann bin, 
heißt das ja nicht das ich komplett doof bin..

Und bevor Fragen kommen, ich bin auch schon lange keine 16 mehr.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren