Forum: Platinen Stecker/Compiler gesucht


von Christian (christianundalex_w)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,
ich habe hier ein Mainboard aus einem Wechselrichter, den ich gerade 
repariere.
Ich möchte allerdings auch ein paar features 
umprogrammieren/implementieren (Lastkurve,... etc.) und frage deshalb: 
kennt jemand den Stecker oben links am Board? Und evtl. einen dazu 
kompatiblen Programmer? Ich weiß, dass er etwas mit Jtag zu tun hat, 
finde allerdings nur 10- bzw. 20Pin Stecker. Die CPU ist der 
TMS320LC2406A PZ von TI, der eben mit Jtag programmiert wird.
Danke im voraus
Spezidrohne

von DerEinzigeBernd (Gast)


Lesenswert?

Das ist eine ROM-Version, die kannst Du gar nicht programmieren.

Siehe Datenblatt:

https://www.ti.com/lit/ds/symlink/tms320lf2402a.pdf

von Christian (christianundalex_w)


Lesenswert?

Und auslesen?
Spezidrohne

von DerEinzigeBernd (Gast)


Lesenswert?

Auf der ersten Seite des Datenblatts steht
> Programmable "Code-Security" Feature for the On-Chip Flash/ROM

Auf Seite 43 des Datenblattes wird näher darauf eingegangen.

Warum sollte ein Hersteller, der schon den (teuren) Aufwand betreibt, 
sich eine ROM-Version anfertigen zu lassen, keine Ausleseschutz 
verwenden?

Das ist eher unwahrscheinlich.


Aber bitte, probieren kann mans. Und dafür braucht man noch nicht mal 
einen JTAG-Adapter (auch wenn man den bei Olimex bekommen könnte: 
https://www.olimex.com/Products/DSP/Emulators/TMS320-XDS100-V2/), 
sondern kann den Bootloader verwenden, der auf der gleichen Seite des 
Datenblatts beschrieben wird.

von Christian (christianundalex_w)


Lesenswert?

Ok danke ich probiers!

ps: den Code für den Ausleseschutz weiß ich ;)

: Bearbeitet durch User
von Frank (Gast)


Lesenswert?

TI hat(te) mal diesen 14-Pin-Stecker im Einsatz, das passt also schon 
ganz gut (siehe auch Beitrag von Bernd). Hier gibt's noch ein paar 
Infos: 
https://software-dl.ti.com/ccs/esd/documents/xdsdebugprobes/emu_jtag_connectors.html 
(ist aber auch sonst recht verbreitet, da sollte sich also was finden 
lassen).

von 666 (Gast)


Lesenswert?

Christian schrieb:
> kennt jemand den Stecker oben links am Board? Und evtl. einen dazu
> kompatiblen Programmer?

14-polige Pfostenleiste, zweireihig, im 2,54mm Raster.

Das ist universell einsetzbar. Du wirst vmtl. Nicht darum kommen, dir 
ein Kabel zu bauen. Wenn du Glück hast passt das des original 
Programmers des uCs, bzw. Ist dieser Anschluss in einer Appnote des uC 
Herstellers beschrieben.

Gegenstück kann eine IDC Buchsenleiste sein zB.:

https://de.farnell.com/en-DE/amphenol/t812114a101ceu/socket-idc-s-relief-2-54mm-14way/dp/2215249

Christian schrieb:
> Ok danke ich probiers!
> ps: den Code für den Ausleseschutz weiß ich ;)

Selbst wenn du es schaffst den uC  auszulesen, erhältst du keine 
c-Datei, sondern das Kompilat. Ein geeigneter Decompiler (wenn du 
überhaupt einen kostenlos verwendbaren für deine uC Architektur findest) 
in Kombination mit sehr guten Assembler-Kenntnissen hilft dir dann dabei 
das Programm nachzuvollziehen. Die Zeit die du dafür investieren musst 
ist vmtl.  deutlich länger, als wenn du alles komplett neu 
programmierst.

von Wolfgang (Gast)


Lesenswert?

Christian schrieb:
> kennt jemand den Stecker oben links am Board?

Auf welches Bild beziehst du dich?
Auf keinem Bild ist oben links ein Stecker zu sehen, der nach 
Programmierung aussieht.
Mach einfach einen Kringel drum.
Die Pin-Belegung bekommst du mit einem Durchgangsprüfer und dem 
Datenblatt heraus.

von DerEinzigeBernd (Gast)


Lesenswert?

Wolfgang schrieb:
> Auf keinem Bild ist oben links ein Stecker zu sehen

Wenn man die Bilder um 90° nach links dreht, schon.

Auf die Idee könnte man alleine schon durch die Ausrichtung der 
Beschriftung kommen, und merkwürdigerweise haben das alle anderen hier 
im Thread auch mental auf die Reihe bekommen. Was machst Du jetzt besser 
als all' diese anderen?

Möglicherweise sind die Bilder sogar im korrekten Querformat aufgenommen 
worden, aber die Rotationsinformation ist beim Verkleinern vor dem 
Hochladen irgendwie abhandengekommen.

von Christian (christianundalex_w)


Lesenswert?

Zuerst einmal danke für die vielen Antworten, und ja die Bilder waren im 
querformat aufgenommen, ich weiß nicht warum sie gedreht wurden.
Nun zu der auslesegeschichte! Mir geht es weniger um das umprogrammieren 
und mehr darum, dass ich den code in irgendeiner form gespeichert habe, 
da es diese WR nicht mehr gibt/nicht mehr als Windwechselrichter 
verkauft werden. Daher der Plan den quellcode irgendwie zu speichern, 
falls der mal den geist aufgibt - und und dann später irgendwann mal auf 
andere WR der gleichen reihe mit den gleichen Innereien  dass Programm 
übertragen, da es bei den PV Wechselrichtern die einstellbare Lastkurve 
nicht gibt, welche bei Windwechselrichtern quasi ein muss ist! Aber 
das zurückübertragen ist etwas für Zukunfts-ich. Mehr als einen  Adapter 
wollte ich (eigentlich) gar nicht wissen.
MFG Spezidrohne

: Bearbeitet durch User
von DerEinzigeBernd (Gast)


Lesenswert?

Christian schrieb:
> Daher der Plan den quellcode irgendwie zu speichern,

Du hast keinen Quellcode, und Du kannst aus dem Controller auch keinen 
Quellcode erzeugen. Selbst wenn der Controller keinen Ausleseschutz 
haben sollte, könntest Du nur den Binärcode auslesen.

> und und dann später irgendwann mal auf
> andere WR der gleichen reihe mit den gleichen Innereien

Der nur hypothetisch auslesbare Binärcode würde nur in einer exakt 
baugleichen Platine, die exakt den gleichen Controller verwendet, 
überhaupt funktionieren.

Da aber der Controller NICHT BESCHREIBBAR ist, kannst Du kein Programm 
darauf übertragen, d.h. Du kannst eine andere Platine NICHT mit dem 
Programm aus Deiner Platine versorgen.

Dein Vorhaben, offenbar einen PV-Wechselrichter zum Wind-Wechselrichter 
umzubiegen, ist damit ausgeschlossen.

Ein JTAG-Adapter hilft Dir hierbei nicht weiter.

Eine winzigkleine theoretische Chance gibt es, aber die setzt zwingend 
voraus, daß der vorhandene Controller keinen aktivierten Ausleseschutz 
hat.

Betrachte das von mir verlinkte Datenblatt, da wird ein TMS320LF2406A 
beschrieben. Das ist die mit Flash-ROM statt maskenprogrammiertem ROM 
ausgestattete Schwestervariante.

Ersetzt man auf der identischen Platine den TMS320LC2604A durch eben 
jenen LF2406A aus, hat man einen beschreibbaren Controller, in den man 
das Binärprogramm des anderen Controllers übertragen kann.

Ob das passt - vergleiche die Diagramme auf Seite 25 des Datenblatts mit 
denen auf Seite 22. Wenn da alles an gleichen Adressen liegt, kann das 
Übertragen funktionieren.

Dreh- und Angelpunkt ist hier aber das Auslesen des alten Controllers, 
das mit großer Wahrscheinlichkeit nicht möglich ist, weil der Hersteller 
die Auslesesicherung aktiviert haben wird.

Die ist genau dafür da, derartige Aktionen zu verhindern.

Desweiteren muss dazu die Platine absolut identisch sein, nicht ähnlich, 
nicht abweichend bestückt, sondern identisch.

Und Du musst über die Fähigkeiten verfügen, ein Bauteil im 100poligen 
Gehäuse zerstörungsfrei aus- und wieder einzulöten.

Beitrag #7242533 wurde von einem Moderator gelöscht.
Beitrag #7242567 wurde von einem Moderator gelöscht.
von Christian (christianundalex_w)


Lesenswert?

DerEinzigeBernd schrieb:
> Du hast keinen Quellcode, und Du kannst aus dem Controller auch keinen
> Quellcode erzeugen. Selbst wenn der Controller keinen Ausleseschutz
> haben sollte, könntest Du nur den Binärcode auslesen.
Sorry, da hab ich wohl noch ein bisschen geschlafen, aber ich meinte den 
Binärcode.

> Dreh- und Angelpunkt ist hier aber das Auslesen des alten Controllers,
> das mit großer Wahrscheinlichkeit nicht möglich ist, weil der Hersteller
> die Auslesesicherung aktiviert haben wird.
>
> Die ist genau dafür da, derartige Aktionen zu verhindern.
Den Code für die Auslesesicherung hab ich ja!

> Desweiteren muss dazu die Platine absolut identisch sein, nicht ähnlich,
> nicht abweichend bestückt, sondern identisch.

Entschuldigung, ich hab wohl noch nicht erwähnt, dass ich 5 dieser 
identischen Platienen hier bei mir rumliegen hab..... Außerdem geht es 
jetzt gerade erst mal darum, einfach den Binärcode irgendwo anders als 
auf der Platine selbst gespeichert zu haben. Eigentlich wäre ich jetzt 
mit dem Thread am Ende..

MFG
Spezidrohne

von DerEinzigeBernd (Gast)


Lesenswert?

Christian schrieb:
> Den Code für die Auslesesicherung hab ich ja!

Wenn das so ist, dann solltest Du mit dem von mir weiter oben verlinkten 
JTAG-Adapter von Olimex (und der auf der Olimex-Seite beschriebenen 
Software) ja zu Potte kommen.

Mir ist zwar schleierhaft, warum ein Hersteller den Code für die 
Auslesesicherung rausrücken sollte, aber bitte.

Na, dann viel Erfolg.

von Cyblord -. (cyblord)


Lesenswert?

Christian schrieb:
> Mir geht es weniger um das umprogrammieren

Achso, deshalb schreibst du direkt im Eingangspost:

> Ich möchte allerdings auch ein paar features
> umprogrammieren/implementieren (Lastkurve,... etc.)

von Christian (christianundalex_w)


Lesenswert?

@DerEinzigeBernd es ist mit sehr hoher wahrscheinlichkeit der gleiche 
vierstellige Code, der zum Aufrufen / Speicher der Lastkurve gebraucht 
wird (welche sich im Passwortgeschützen Advanced settings Menü 
befindet), aber ja der Adapter von Olimex ist genau das, was ich gesucht 
habe!
Danke für alles
Spezidrohne

von Cyblord -. (cyblord)


Lesenswert?

Christian schrieb:
> es ist mit sehr hoher wahrscheinlichkeit der gleiche
> vierstellige Code, der zum Aufrufen / Speicher der Lastkurve gebraucht
> wird (welche sich im Passwortgeschützen Advanced settings Menü
> befindet)

Eher unwahrscheinlich.

von Christian (christianundalex_w)


Lesenswert?

Ich probiers einfach aus. Melde mich evtl. Wieder wenn es Neuigkeiten 
gibt.
Spezidrohne

von Micha (Gast)


Lesenswert?

DerEinzigeBernd schrieb im Beitrag #7242567:
> Willhelm schrieb:
>> Du hast leider verschlafen dass es diesen Controller auch mit Flash
>> gibt.
>
> Und Du kannst nicht lesen, denn geanau das habe ich beschrieben.

Es hat aber wohl niemand interessiert! Also hast du verschlafen das es 
wohl niemand interessieren könnte ;)

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
Noch kein Account? Hier anmelden.