Forum: Mikrocontroller und Digitale Elektronik Embedded Linux Modul startet nicht mehr - Diagnose & Rep.


von Christian S. (chris02)


Lesenswert?

Hallo zusammen,

aus einem Wechselrichter habe ich eine defekte und eine i.O. Platine mit 
einem embedded Linux drauf. Es ist eine kleine, extra aufgesteckte µC 
Platine verbaut, welche von der Firma Phytec kommt.

Sobald ich diese µC Platine aus dem lauffähigen Gerät ausbaue und in das 
defekte Gerät stecke, läuft dieser dann auch. Ansonsten sind bei dem 
defekten Gerät nur die Error LED an und es passiert nichts auf dem 
Bildschirm.
Nun würde ich gerne diese Embedded Platine diagnostizieren und 
reparieren.

Zuerst habe ich nun die Dokumentation zu dem Modul rausgesucht:
https://www.phytec.de/support/downloads/phycore-mpc5200b-tiny/

bzw. direkt zum Manual:
https://www.phytec.de/fileadmin/legacy/downloads/Manuals/L-678e_4.pdf

Es ist ein U Boot Bootloader auf der Platine, das konnte ich dem 
externen EEPROM schon entlocken.
Daher wollte ich nun, wie in diesem Video
https://www.youtube.com/watch?v=006ROXEYSeI
erstmal angucken, was der Bootloader so erzählt.

Auf PDF Seite 39, U-Boot, dritter Absatz steht drauf, dass der U-Boot 
den PSC3 verwendet. Dieser wird auf den Connector X1D16 und X1D17 
rausgeführt (PDF S. 17, RS232 / TTL Transreceiver ist unbestückt). Dort 
hänge ich nun mit einem CP2102 Uart Adapter und Putty dran. Leider sehe 
ich nichts, nachdem ich 3,3V an die i.O. Platine, Pin 1C anlege. RX/TX 
habe ich schon getauscht, ohne Erfolg.

Im Kapitel 1.3 (PDF S.16) steht auch, dass für Basic Operations nur die 
3,3V benötigt werden.

Habt ihr noch eine Idee oder einen anderen Ansatz? Finde das Thema ganz 
spannend per UART und UBoot das Flash zu dumpen und würde damit gerne 
ein wenig weiter experimentieren.

Vielen Dank und viele Grüße
Chris

von Dergute W. (derguteweka)


Lesenswert?

Moin,

Ich wuerd' mal nur an deinem UART-Adapter (ohne das Board) Rx und Tx 
bruecken und gucken, ob du dann im Putty "was schreiben" kannst.
Wenn das geht, dann wieder mit dem Board verbinden und mal gucken, ob 
was kommt, wenn bei anliegender Betriebsspannung du einen Reset (10D) 
ausloest.

Gruss
WK

von Motopick (motopick)


Lesenswert?

U-Boote kommen auch gerne mit krummen Baudraten daher.
Also: Oszi dran und messen.

von Andreas B. (bitverdreher)


Lesenswert?

Motopick schrieb:
> Also: Oszi dran und messen.
+1

Ausserdem wuerde ich erst einmal an dem funktionierenden Board 
versuchen, die Verbindung aufzubauen. Evtl. ist der uC ja ganz hin.

von Motopick (motopick)


Lesenswert?

Andreas B. schrieb:
> Motopick schrieb:
>> Also: Oszi dran und messen.
> +1
>
> Ausserdem wuerde ich erst einmal an dem funktionierenden Board
> versuchen, die Verbindung aufzubauen. Evtl. ist der uC ja ganz hin.

+++

Die Baudrate am funktionierenden Modul zu ermitteln, habe ich als
fakultativ obligatorisch angesehen. :)
Eventuell kann man mit dem U-Boot auch funktionierende Flashbereiche
per TFTP auf einen TFTP-Server schreiben.

von Dergute W. (derguteweka)


Lesenswert?

Moin,

Motopick schrieb:
> U-Boote kommen auch gerne mit krummen Baudraten daher.
> Also: Oszi dran und messen.

Ich hab' bisher schon ein paar "Boards" mit u-boot, etc. auf'm Tisch 
gehabt, aber noch nie eines mit krummer Baudrate.
Hoechsten mit unbekannter - wenn's keine Doku dazu gab ;-))
Was waren das denn fuer Boards, bei denen du das gesehen hast?

Gruss
WK

von Frank K. (fchk)


Lesenswert?

Christian S. schrieb:

> Auf PDF Seite 39, U-Boot, dritter Absatz steht drauf, dass der U-Boot
> den PSC3 verwendet. Dieser wird auf den Connector X1D16 und X1D17
> rausgeführt (PDF S. 17, RS232 / TTL Transreceiver ist unbestückt). Dort
> hänge ich nun mit einem CP2102 Uart Adapter und Putty dran. Leider sehe
> ich nichts, nachdem ich 3,3V an die i.O. Platine, Pin 1C anlege. RX/TX
> habe ich schon getauscht, ohne Erfolg.

Übliches Vorgehen:
1. Versorgungsspannungen überprüfen
2. Takte und Reset überprüfen
3. UART überprüfen, und zwar mit Oszi oder Logic Analyzer. Damit siehst 
Du dann auch leicht die Bitrate.
4. Wenn dann nichts zu finden ist, per JTAG auf den Prozessor gehen und 
schauen, ob der lebt.


fchk

von Motopick (motopick)


Lesenswert?

Dergute W. schrieb:
> Moin,
moin!

> Ich hab' bisher schon ein paar "Boards" mit u-boot, etc. auf'm Tisch
> gehabt, aber noch nie eines mit krummer Baudrate.
> Hoechsten mit unbekannter - wenn's keine Doku dazu gab ;-))

Von doppelter Miditaktrate (62.5) ueber 50 kBaud ... und sicher
noch ein paar mehr.
Vor allem die Japaner sind da sehr flexibel.

von Dieter S. (ds1)


Lesenswert?

Aus "phyCORE-MPC5200B tiny - Hardware Manual" (L-678e_4.pdf) Seite 39:

"The serial interface is used to communicate with U-Boot on the target 
system. The U-Boot for phyCORE-MPC5200B tiny uses PSC3 with
115200 Baud, 8, N, 1. The U-Boot boot messages can be viewed
within a terminal program running on a host PC using the above
mentioned communication settings."

von Daniel G. (denial)


Lesenswert?

Frank K. schrieb:
> 4. Wenn dann nichts zu finden ist, per JTAG auf den Prozessor gehen und
> schauen, ob der lebt.

Beim PowerPC ist der Zugriff auf die CPU über JTAG nicht öffentlich 
dokumentiert. Da braucht man €€€-€€€€ für Hard- und Software die das 
kann.

Anderes was man mal probieren könnte:
 - Kommt auf PSC6 etwas raus?
 - Wird das I2C EEPROM angesprochen?
 - Passiert etwas auf dem Bus zwischen Flash und CPU?

von Dieter S. (ds1)


Lesenswert?

Daniel G. schrieb:
>
> Beim PowerPC ist der Zugriff auf die CPU über JTAG nicht öffentlich
> dokumentiert. Da braucht man €€€-€€€€ für Hard- und Software die das
> kann.

Um nur die JTAG ID zu lesen braucht man nicht viel. Das wäre zumindest 
ein Hinweis ob der MPC5200B noch in Ordnung ist. Das Ganze aber erst 
nachdem sicher ist dass von U-Boot keine Ausgaben kommen.

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.