Hi, kann mir jemand sagen was der hintere Chip für einer ist? Ich tippe auf Flashspeicher aber ich kann mit dem Symbol leider nichts anfangen. Und unter der Bezeichnung finde ich nichts. Wie wahrscheinlich ist es den Speicher auslesen und beschreiben zu können (bzw. den des TI)? Leider kann man nicht mal die Pins bestimmen. Ich gehe mal von <10% aus. Vielen Dank.
Das Symbol gehört zu "Micron". Flash Speicher könnte hinkommen...
da das Logo ein "M" enthält lässt sich die zugehörige Firma leicht auf dieser Seite hier ermitteln: http://www.aufzu.de/semi/gif/
Das ist der RAM.. Micron MT41K128M16JT-125 XIT Micron hat einen BGA Decoder der gibt dir die genaue Bezeichnung.
Mach Mal ordentliche Bilder. Irgendwo wird ein EMMC , Flash oder SPI NOR sitzen.. Ggf. wird auch alles von SD geladen.. Da dort mit hoher Wahrscheinlichkeit ein Win CE oder Linux läuft wird es schwer mit einfach auslesen bzw. verändern.. Fileformat, Partitionen usw. Besser die Konsole finden (UART ggf. auf der 10 pol Stiftleiste? mit dem Oszi beim booten Mal schauen..) und dann mit dem uboot oder barebox den Flash ansprechen.. Oder halt Linux , Win CE ggf gibt's ne offene telnet oder ssh..
:
Bearbeitet durch User
Ahhh, vielen Dank schon mal. Ich suche einen Flasch. Der scheint dann wohl im Controller zu sein. Auf der Unterseite ist auch nicht ms großes mehr.
Erinnert irgend wie an das hier: http://goembed.com/index.php/Products/detail/tpid/22 Mit suchen findet man sogar Schaltpläne. Ganz ausschliessen würde ich den Erfolg nicht.
Der Controller ist ein AM335 der hat kein Flash.. Nur ein minimales ROM wo der First Stage bootloader drin ist. Da muss irgendwo was sein. SPI Nor kann auch ein SO8 sein... Ordentliches Bild oben unten wo man Beschriftung sieht würde helfen...
:
Bearbeitet durch User
Die CPU ist ein TI Sitara Prozessor. Es kann gut sein, das sich das Flash direkt als Sandwitch unter der CPU befindet.
Ahhh, ich habe ihn doch noch gefunden. Das müsste er sein. Ich schaue mal nach einem Datenblatt. Mein Gedanke war einfach dass ich den Speicher eines funktionierenden Gerätes anspinne, Auslese und hierauf schreibe. Da ist der Inhalt und das Betriebssystem doch irrelevant? Bei identischen Geräten? Exakt, noy. Auf dem Gerät läuft ein Linux und es gibt sogar eine 10polige nicht bestückte Pinleiste. Die Belegung weiß ich aber nicht und kenne mich wahrscheinlich für dein Vorgehen (leider) zu wenig damit aus.
"Pop Flash" und dann noch für drunter hab ich noch nie gesehen... Erst Recht nicht für den AM335 und auf dem Bild die Chiphöhe passt nicht für Pop..
Das Foto ganz oben ist zusammen gesetzt um die Beschriftung zu zeigen, ich wollte deswegen noch 2 riesige Fotos einzeln hochladen. Der Flash sitzt auf der Rückseite unter den Kondensatoren.
Ja ist RAW Flash.. Also das anfädeln und 1:1 auslesen (weiß gerade nicht Mal ob es so einfach geht, bin aber auch kein softi...) ist deutlich mehr Arbeit / schwieriger als mal die Pins beim booten mit einem Logic analyzer oder Oszi anzuschauen und dann nen ftdi anzutüdeln und ne com aufzumachen.. Ggf. kurz Mal noch Spannung an jedem Pin messen... Nicht das da irgendwelche hohen Displayspannungen oder so anliegen... Hat ja sogar Ethernet... Hast du geschaut ob nicht ssh , telnet offen ist? Wenn du über die UART dran kommst kannst du sogar die einzelnen Partitionen über Ethernet oder auf USB sichern..
:
Bearbeitet durch User
Hier habe ich das Datenblatt: https://www.micron.com/-/media/documents/products/data-sheet/nand-flash/20-series/2gb_nand_m29b.pdf Ich würde ungern etwas dran löten. Die Pin-Abstände sind mir da etwas winzig, aber darf das Board leider auch nicht ausführen (Uni-Forschungsbereich). Also war mein Gedanke einen Controller zu nehmen, ihn zu programmieren, dass er die Blöcke ausliest und dann auf ein anderes Board 1:1 schreibt. Ich habe Pin-Werkzeug (soetwas https://www.ecu-cables.de/images/product_images/original_images/bootframe_3.jpg) zur Verfügung. noy: Meinst du einen FTDI Chip an den Flasch oder den Controller? Der wird doch sicher mehrere UARTS haben? Ja, genau, Ethernet ist onboard. Das Problem ist aber wohl, dass der Speicher verloren gegangen ist. Der Fehler liegt in fehlerhafter Software des Herstellers und ist kein Einzelfall. Es bootet bis irgendwohin, aber nicht ins Linux. Scheinbar liegen relevante Bootloader-Teile auch auf dem Flasch, denn dieser (Update über USB) funktioniert auch nicht mehr. Beide Ethernetleds sind permanent an. Und Ethernet ohne Funktion. Es reagiert nicht mal auf einen Req auf Layer 2.
Ich würde davon ausgehen, dass bei den 10 Pins RX und TX dabei sind. Lausche einfach mal auf allen beim Einschalten.
Wenn du Glück hast, meldet sich UBoot.
FTDI an den Controller. Ja hat mehrere UART aber Chancen sind doch hoch das es auf dem Stecker liegt? Ansonsten schauen ob es noch was anderes gibt was nach "Debug" ausschaut. Testpunkte? Anderer kleiner Stecker? Der AM335 bootet folgendermaßen: 1. Stage Bootloader aus dem Controller ROM läd von der eingestellten Bootquelle (bootstrap Widerstände) (bei dir wohl Flash) den 2. Stage Bootloader ins controller interne RAM (sehr klein) das geschieht soviel ich weiß sogar ohne ECC korrektur. Sofern ich mich erinnern kann sucht der ROM ganz am Anfang vom Flash nach dem 2.Stage.. Der 2. Stage Bootloader (barebox oder uboot abgespeckt) initialisiert den externen RAM und lädt die "große" Version der barebox oder uboot dort hinein ab hier wohl auch mit ECC. Und springt dann dorthin. Von da an wird dann der Kernel geladen usw. Wenn da gar nix mehr bootet kann es auch schon 2. Stage Bootloader sein... Du willst also mit den Nadeln das Flash "anfahren" und von extern mit einem entsprechend programmierten und fähigen Controller auslesen? Wie versorgst du das Flash mit Spannung ohne das der AM335 startet durch Rückspannung? Also eher ablöten also das Flash oder noch die Reset Leitung finden und den AM335 in den Reset setzten, Board direkt über den "offiziellen" Spannungsstecker versorgen und dann auslesen. Aber bzgl. Controller entsprechend zum auslesen programmieren usw. und ob dann noch was vernünftiges rauskommt muss dir eher ein Softi helfen da hab ich weniger Ahnung von... Alternativ Bootpins des AM335 finden und die Bootquelle wechseln und eine andere Bootquelle benutzen. USB ? Oder UART ggf. ETH und dann einen angepassten 2. Stage Bootloader über UART oder andere Bootquelle schicken.. Schau Mal im Datenblatt vom AM335 nach der Bootreihenfolge und Bootquellen weiß es nicht mehr auswendig...
:
Bearbeitet durch User
No Y. schrieb: > ECC Das werde ich morgen probieren, Danke. Und auch vielen Dank schon mal an dich für deine ausführliche Hilfe, noy. No Y. schrieb: > Ansonsten schauen ob es noch was anderes gibt was nach "Debug" > ausschaut. Testpunkte? Anderer kleiner Stecker? Auf dem Board ist noch ein weiterer MSP430 Controller mit 5 unbestückten Pads. Dessen Funktion kann ich mir aber nicht ausmalen. Auf alle Fälle werde ich erstmal alle Pins nach TX abklappern. Und, ja, genau das war meine Idee. Ein Eval Board (STM oder TI) genommen und darüber den Speciher angesprochen und 1:1 komplett ausgelesen. Und dann wieder gespeichert. Ob das funktioniert weiß ich nicht genau. Wahrscheinlich liegt die Seriennummer und MAC etc auf dem Flasch und vllt führt dieser sogar eine Plausabilitätsprüfung (mittels SN oder irgendwas anderem vor dem Boot durch. Es betrifft leider nicht nur dieses Board sondern mittlerweile liegt hier schon ein ganzer Stapel (Danke, Siemens). Den Flasch müsste ich dann an einer passenden Stelle (GND ist recht ausgeprät) mit einem Messer trennen oder den Controller auf Reset ziehen (war mein eigentlicher Gedanke aber BGS sei Dank wird das wohl schwierig). Aber auf alle Fälle checke ich erstmal deine nichtzerstörersichen Vorschläge ab. Deine andere Bootquelle ist natürlich auch ein genialer Vorschlag, wobei ich befürchte dass dieser zu genial für mich ist. Das wäre ja schon ein größeres Projekt. Aber wie schon gesagt, vielen Dank erstmal. :)
Die MAC Adresse ist von TI aus schon im AM335. Wegen Reset würde ich nach einem Spannungs Supervisor suchen da ist meißt auch der Reset dran. Oder aber schau bei der ethernet phy (ich hinter der Ethernet Buchse) da kannst du den Pin für Reset aus dem Datenblatt raussuchen und ggf ist es derselbe Reset wie der am335.
Der Ablauf bei den Embedded Systemen ist häufig identisch: 1st stage Loader läd sich sein Zeugs aus einem NOR-Flash (SPI) 2nd stage Loader (U-Boot) holt sich sein Zeugs aus dem NAND Flash. hier mal etwas zum "ansehen" (ca 22:00) https://www.youtube.com/watch?v=DV5S_ZSdK0s -- Ich knoble an einer ähnlichen Aufgabe wir du: Philips Glotze, QFU2.1E Board. Tut nix mehr. Gottseidank gibts ein RS232 Interface. ich hab ein PL2303 dran getüdelt, und kann mir dann die Bootlogs des Bootloaders ansehen. Das Nand scheint bei mir zermurkst zu sein, ich bekomme jede Menge Meldungen der Art UBI: fixable bit-flip detected at PEB 143 UBI: schedule PEB 143 for scrubbing und zum Schluss crasht mir das Zeugs beim Anstarten des Linux Kernel: Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(249,0) --> @dominic: Vielleicht ist es ja was ähnliches bei dir. Da wäre es zweckmäßig, nach RX-TX Leitungen Ausschau zu halten, und mal abzuschüffeln mit dem Oszi, ob oder wo da aus TX irgendwelche Meldungen rausposaunt werden. PL2303 USB Adapter (TTL-Eingang,Ausgang) kostet 3 EUR in der e-Bucht, CuteCom für Linux gibts umsonst (Ansonsten mit Hyperterm oder so unter Windows). 3 Leitungen anklemmen, fertig (RX, TX, GND). Schon bist du nicht mehr ganz so blind. wegen Flash auslesen: Irgendwo auf dem Board wirds bestimmt ein JTAG Interface geben, darüber solltest du den Speicher auslesen können. Braucht 3-4 weitere Leitungen.
Flash in der Größe wird selten über JTAG programmiert dauert viel zu lange es durch die Chain zu schieben... Auslesen willst du es doch auf einem i.O. Board und dann clonen auf die kaputten oder? Ein kaputtes auslesen bringt ja nix. Würdest ja die Fehler mitclonen. Ansonsten Debug halt suchen und schauen was dir das "kaputte" um die Ohren haut. Wenn da der Bootloader schon nicht geht musst du es neu flashen.. und dazu musst du ggf. zuerst von einer anderen Bootquelle booten. Sofern 1:1 clonen nicht geht.. Wenn der AM335 nichts bootbares findet gibt er "CCCCCCC...." Über die Boot UART aus. Im Datenblatt steht von welcher UART gebootet wird und welche Pins es sind.. Supervisor ggf. einer der sot-23 bei den schaltreglern. Einen PMIC sehr ich nicht...
Danke auch, Wegstaben. Ich bin erstmal nach Hause. Schaue dann morgen Abend weiter. Ich habe auch mal deine Typenbezeichnung gegoogelt und es scheinen wirklich einige Probleme mit diesem Flasch zu haben. Wenn man allerdings bedenkt, dass es sich bei dir um ein Consumer Produkt handelt und hierbei um ein Industrieprodukt was für ein Sehrvielvielfaches der Hardwarekosten verkauft wird, dann ist das schon echt interessant. Ich überprüfe morgen mal die Pins auf UART, mal schauen wo ich ggf die Resetleitung finde und dann mal weiter.
Bester/ einfachster Ansatz wäre: Flash von einem i.O Board sauber ablöten mit Heißluft.. Dann auf einen Universalprogrammer (elnec beeprog2 und Adapter oder ähnliches...) schnallen der das Flash unterstützt und auslesen. Danach wieder auflöten. Anschließend kaputtes ablöten, ebenfalls auf den Programmer schnallen und programmieren und wieder auflöten. TSSOP-48 geht ja noch ..
Genau, noy. Ich schaue erstmal ob ich irgendwelche Highlevel-Meldungen über einen TX bekommen (das wäre natürlich schon mal etwas), falls das nicht klappt, dann würde ich ein anderes (baugleiches) Board auslesen, vllt mal drüber schauen ob es ggf verschlüsselt ist oder irgendwo eine Checksumme steht und dann versuchen diese auf den defekten Flash zu schreiben. Dann nochmal lesen und schauen ob vllt ein ein Sektor defekt ist (dann wäre es das an dieser Stelle für mich, da noch irgendwelche jmp Befehle reinzubasteln, ist dann wohl doch etwas über das Ziel hinaus geschossen, sofern es überhaupt möglich ist (ich gehe immer noch von einer Checksumme über den gesamten Flash mit Einbeziehung der Seriennummer aus)). Und mit etwas Glück funktioniert es sogar, dann würde ich vllt versuchen das zu vertextlichen.
Auch wenn ich es ungern zugebe, aber bisher habe ich mehr kaputt gelötet, als ganz. Aber ich werde mich mal umhören wer sich hier das zutraut.
Glück hast du, dass es ein AM335 ist.. Sowas wie Secureboot usw. kann der nicht.. Und ich denke die MAC Adresse (woher sollte die Software die Seriennummer wissen, außer die steht irgendwo in einem eeprom...) wird nicht abgefragt denn dann müsste die Software ja bei jedem Board nach dem flashen irgendwie an die MAC des Controllers oder Seriennummer angepasst werden...(denke mehr Aufwand als nutzen...) Falls Seriennummer im Flash steht wird ja alles mitgeklont samt Checksumme (sofern Badblocks im Ziel Flash da nicht Probleme machen....) Und verschlüsselt denke ich auch nicht zumindest nicht der 2. Stage Bootloader.. Der interne ROM Bootloader kann keine Verschlüsselung. Wenn dann geht es erst bei Barebox/Uboot mit verschlüsselt los... Aber zumindest in den Bootloader solltest du kommen...
:
Bearbeitet durch User
:-) schrieb: > da das Logo ein "M" enthält lässt sich die zugehörige Firma leicht auf > dieser Seite hier ermitteln: > > http://www.aufzu.de/semi/gif/ M mit Kringel? Lässt sich auf dieser Seite ermitteln: https://youtu.be/Hxe0jtlSV_4?t=78
So, ich habe mir die Platine mal genauer angeschaut. Die Pinleiste scheint in der Tat für's Debugging gedacht zu sein, ist allerinds im weiteren nicht bestückt :/. ich bekomme also außer 3.3V und GND nicht viel mehr raus. Eine Resetleitung ist auch da, allerdings auch nicht vollständig bestückt, aber sie führt zum SVS. Das ist ein TPS386000 und irgendwie sind Pinleiste und SVS mit einem SOT23 Bauteil mit der aufschrift M52 vebunden. Ich dachte erst an einen Transistor, aber das macht von der Beschaltung keinne Sinn. Was mich allerdings sehr iritiert ist, dass der SVS mit 5V läuft. Ich finde aktuell echt keine Resetverbindung zum Processor. Ich wünsche mir einfach TTL-Bestückung wieder zurück. Falls du das noch liest, noy, was machst du beruflich? Entwickelst du solche Platinen? Falls ja, wie lange brauch man denn für das Schematic und das Layout eines solchen Boards? Ich gehe von 4-6 Layern aus.
Hast du dir meinen link vom 10.04.2019 21:14 angesehen? Da gibt es Schaltpläne, Datenblätter, Bootloader und Linux für den µC.
Beitrag #5806083 wurde von einem Moderator gelöscht.
Ja ich lese noch mit, will doch wissen ob du weiter kommst... Was meinst du mit "weiteren nicht bestückt"? vVerfolge mal die "unklaren" Pins im Layout ggf. sind einfach nur Serienwiderstände nicht bestückt worden um es nicht "zu einfach" zu machen. Der TPS386000 ist doch ein Supervisor IC. Schau doch mal ob wie gesagt ggf. eine der Leitungen auch an das Reset der Ethernet Phy geht bringt ggf. zusätzlich klarheit. Oder aber der MAX17075 neben dem Flash aht auch einen Reset ggf. hängt der auch an einem "globalen" Reset.. Den rest der ICs kann ich auf den Bildern nicht entziffern. Was ist da noch so an "größeren" ICs drauf? Z.B. der neben dem Goldcap? Oder die paar auf der Unterseite? M52 auf einem SOT-23-3 könnte ein ADM810RARTZ sein. Könnte also passen. 5V an SVS ist doch ok. Ist ja die Versorgung vom IC aber hat ja mehrere Sense und die Ausgänge sind Open Drain sollte also auch passen mit Reset Leitung. Ist das ein Display Anschluss das Flachbandkabel? Bekommst du die Belegung über den Display Typ / Datenblatt raus? Beim AM335 sind die RGB TTL Pins fürs Display nämlich auch die Bootstrap Pins ;-) Da kannst du rausfinden was du betüdeln musst um die Bootquelle zu ändern... Beruflich bin ich Hardware Entwickler für kundenspezifische Entwicklungen bei der Phytec ;-) Also ja, ich entwickel ähnliche Platinen. Habe aber den Vorteil, dass ich meißt keine Flatdesigns sondern unsere SOMs einsetzten kann. Aber die Beschaltung von denen kenne ich halt auch... Wenn man eine ordentliche Bauteillib (alle Bauteile bereits angelegt usw.) und etwas Erfahrung / ggf. erprobte Schaltungsteile welche wiederverwendet werden können (Schaltregler usw.) Und natürlich den Prozessor mit seinen Eigenheiten usw. gut kennt, schafft man einen Schaltplan für eine solche Platine wie du da zeigst in 1-1,5 Wochen. Schon mit etwas Puffer eingeplant aber ich weiß jetzt nicht was Siemens da noch alles vorgesehen, aber nicht bestückt hat. Das Layout dauert wohl auch 1-2 Wochen, manches auf der Platine geht schnell anderes dauert länger (DDR3 Anbindung) hängt aber auch vom genutzten Programm ab. Wir nutzen Mentor DxDesigner und Expedition PCB da kann man sehr viel einstellen (Impedanz, Differential Pairs, Längenabgleiche, Routing Reihenfolge usw.) was alles beim Layouten hilft und die Zeit verkürzt. Und unsere Layouter machen halt nichts anderes als Layouts seit zig Jahren...
:
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.