Moin zusammen, weil jemand anders bei der Entwicklung etwas geschlampt hat, möchte ich jetzt versuchen was zu retten... auf nem Gebiet, wo ich noch nicht so viel Ahnung habe. Ich habe hier eine Steuerung mit einem S9S08DZ96 der sich öfters selber das Programm zerschiesst, wenn die Versorgungsspannung abfällt (z.B. im Auto wenn Licht an und Batterie wird langsam leer). Ich habe mir das mal angesehen und ein BDM Interface auf der Platine gefunden. Gestern kam der USBDM Clone aus CN und ich hab mich da sofort mal dran gesetzt (Bin ja neugierig). Interface wird erkannt, Prozessor wird erkannt... ergo: BDM Interface läuft. Wenn ich mit dem Flash-Programmer versuche den Flash zu lesen, bekomme ich aber nichts raus. Frage: wie kann ich den Prozessor auslesen? Ich vermute der ist gesichert, aber oft gibt es ja bekannte workarounds. Hat jemand einen Tipp für mich? VG Ralf
:
Bearbeitet durch User
Ralf G. schrieb: > Ich habe hier eine Steuerung mit einem S9S08DZ96 der sich öfters selber > das Programm zerschiesst Vielleicht muß man nur das Unterspannungsreset enablen. Bei manchen MCs gibt es dafür Fusebits. Kann aber auch ein buggy Custom-Bootloader sein, der versehentlich in die Löschsequenz geht. Ralf G. schrieb: > Wenn ich mit dem Flash-Programmer versuche den Flash zu lesen, bekomme > ich aber nichts raus. Ja, Auftragsentwickler setzen gerne die Lockbits, weil sie sich schämen, wie grottenschlecht ihr Programm aufgebaut ist. Wenn man nicht festlegt, daß der Quelltext Bestandteil des Auftrags ist, hat man schlechte Karten. Ralf G. schrieb: > Frage: wie kann ich den Prozessor auslesen? Ich vermute der ist > gesichert, aber oft gibt es ja bekannte workarounds. Welche MCs sollen das denn sein? Bekannt ist mir da nichts. Gegen Geld soll wohl einiges möglich sein.
....gegen Geld scheidet aus. Wenn, dann möchte ich das irgendwie selber hin bekommen. Nennen wir es sportlichen Ehrgeiz. Außerdem ist hier derartig viel geniale Intelligenz und Erfahrung vertreten, das ich da gewisse Hoffnungen habe, das jemand helfen kann & vllt mag. Ich hab hier z.B. einen ebenso gesperrten Motorola MC68HC05B16 allerdings hab ich den ausgelötet und in nem XProg-M Programmer... der umgeht die Security Fuses ganz automatisch, wenn er sie sieht. VG Ralf
Sicherheitssperren sind dafür gedacht, dass man sie nicht umgehen kann. Ansonsten könnte man sich die ganzen Entwicklungskosten dafür sparen. Ralf G. schrieb: > ....gegen Geld scheidet aus. Für Geld musst Du dir aber die benötigten Komponenten besorgen um die Fuses wieder aktivieren zu können. Diese kosten wahrscheinlich noch viel mehr, als den Spezialisten zu bezahlen. Der kann die Anschaffungskosten ja auch mehrere Auftraggeber verteilen.
Man könnte auch einen externen Reset-IC anschließen, ob es dann stabiler läuft.
:
Bearbeitet durch User
Christian H. schrieb: > Sicherheitssperren sind dafür gedacht, dass man sie nicht umgehen kann. > Ansonsten könnte man sich die ganzen Entwicklungskosten dafür sparen. > Nun, hier gibt es weder einen noch existierenden Entwickler, noch irgend einen anderen, der hier noch Ansprüche geltend machen könne. Die Entwicklung liegt sicher 15 Jahre zurück und das Produkt gibt es auch nicht mehr. Daher gibt es hier höchstens was zu gewinnen, aber nichts zu verlieren...
Peter D. schrieb: > Man könnte auch einen externen Reset-IC anschließen, ob es dann > stabiler > läuft. Würde es vermutlich. Aber hier geht es darum, das WENN eine solche Steuerung ausfällt, ist sie quasi tot. Es sei denn, man könnte das Programm wieder restaurieren. Dafür müsste ich es aber erst mal sehen. ;-) Hätte ich über das SPI Interface eventuell bessere Chancen als über das BDM?
:
Bearbeitet durch User
> Ja, Auftragsentwickler setzen gerne die Lockbits, weil sie sich > schämen, wie grottenschlecht ihr Programm aufgebaut ist. Was ist das denn für ein blöder Kommentar? Normalerweise haben die Auftragsgeber von sowas überhaupt keine Ahnung, können den Quellcode daher gar nicht bewerten und es ist ihnen auch völlig egal solange das Produkt das tut was es soll. > Wenn man nicht festlegt, daß der Quelltext Bestandteil des > Auftrags ist, hat man schlechte Karten. Wenn ich z.B. für mein Auto vier Reifen bestelle, werden auch nicht fünf geliefert. Wundert Dich das etwa auch? > Gegen Geld soll wohl einiges möglich sein. Die Chinesen ätzen den Chip aus der Plastik, finden raus was das für einer ist und löschen anschließend die Lockbits. Danach lässt sich das Programm einfach über das Programmierinterface auslesen. Es erfordert aber einiges an Technik um das hinzukriegen, die technische Hürde ist für einen Heimbastler ziemlich hoch. Deswegen kostet's halt auch Geld wenn man sowas möchte.
...wie gesagt: bei einigen Prozessoren scheint es bekannt, das sie durch Glitches der Versorgungsspannung oder der Taktfrequenz dazu gebracht werden können, ihr gesperrtes Inneres doch frei zu geben. Der aktuelle Kandidat hat 96k Flash und 2k EEPROM... ich bräuchte vermutlich beides.
Bin mir nicht ganz sicher, wie das "Bewertungsschema" bei Beiträgen hier funktioniert oder funktionieren soll. :-/ Ist meine Frage zu trivial, zu abwegig oder einfach uninteressant? Frage mich, woher dafür negative Bewertungen kommen. Nicht das mich das sonderlich tangiert, aber ich dachte ich hab nett (genug) gefragt. VG Ralf
Ralf G. schrieb: > Ist meine Frage zu trivial, zu abwegig oder einfach uninteressant? Du hättest auch fragen können, wie du am besten in die Wohnung deines Nachbarn einbrechen kannst. Dabei machen auch nur sehr wenige Leute positiv begeistert mit.
...dieser Vergleich hinkt nun wirklich an allen Ecken und Enden. Was mit mit diesem Forum passiert?
Ralf G. schrieb: > ...dieser Vergleich hinkt nun wirklich an allen Ecken und Enden. Das sehe ich anders. Die meisten hier verdienen ihr tägliches Brot mit seriöser Elektronik und/oder Softwareentwicklung. Stell dir mal vor, mein Chef oder Kunde bekommt mit, dass ich hier Ratschläge zum Hacken geben würde. Das Vertrauen wäre dann im Eimer.
...ah, jetzt versteh ich. Du hat den Thread gar nicht gelesen... dann sei dir verziehen. Ansonsten, um dein Beispiel zu bedienen: Das Haus des Nachbaren ist seit 15 Jahren verlassen und verfällt, weil der Architekt damals schlecht gebaut hat. Der Nachbar ist tot und hat keine Erben. Niemand erhebt Anspruch auf das Haus und ich würde es gerne reparieren, damit wieder jemand drin wohnen kann. So besser?
:
Bearbeitet durch User
Ralf G. schrieb: > So besser? Man kann natürlich viele rührende Stories erzählen. Ich empfange alle paar Wochen welche von Nigerianischen Beamten und Wohltätigen Prinzen per Email. Die reichen mir schon. Lass mal, nein Danke.
Ralf G. schrieb: > ...und wen haben deine Kommentare jetzt weiter gebracht? Ich hoffe, dich, denn du hattest um eine Erklärung gebeten: Ralf G. schrieb: > Ist meine Frage zu trivial, zu abwegig oder einfach uninteressant? Wenn dich die Antwort nicht interessiert, dann erlaube mir die Gegenfrage: Warum hast du dann gefragt?
Beitrag #6517412 wurde von einem Moderator gelöscht.
Beitrag #6517418 wurde von einem Moderator gelöscht.
Beitrag #6517519 wurde von einem Moderator gelöscht.
Ralf G. schrieb: > ...ach, ich komm schon klar ;-) Zumindest die gezeigten 2 Zeilen sehen nach gesperrtem Flash aus.
Nope... Flash wird (komischerweise) erst ab 0x00004000 verwendet. Konnte es auslesen, modifizieren und auch wieder schreiben. Funktioniert! ;-) PS: der hat tatsächlich selbst Teile seines EEproms überschrieben.
:
Bearbeitet durch User
Ralf G. schrieb: > PS: der hat tatsächlich selbst Teile seines EEproms überschrieben. Ja, das ist auch von anderen MCs bekannt, wenn das Unterspannungsreset nicht aktiviert ist. Z.B. die ersten AVRs hatten überhaupt kein Unterspannungsreset. Da war der EEPROM wie Lotterie spielen.
Was für ne Katastrophe! Wie/wo ich die FuseBits setzen kann, hab ich noch nicht gefunden, aber zumindest kann ich jetzt das EEprom restaurieren und die wichtigen Codes auslesen.
Tja unter dem Namen Fusebits wirst du bei den ehemaligen Freescales nichts finden. Haben die in solcher Form nämlich nicht. Mal so ein kleiner Tipp, schau dir mal dieses Dokument (https://www.nxp.com/docs/en/application-note/AN3305.pdf) an und wirst sehen, dass deine Vermutung, dass die fallende Versorgungsspannung dir den Speicher verhaut erstmal nichts mit dem Controller allein zu tun hat "By default, the LVD is enabled after a power-on-reset". Wenn, dann versucht die Software auf den letzten Drücker noch was im EEPROM zu schreiben, was immer eine schlechte Idee ist. Aus Hardwaresicht, sofern das auf den letzten Drücker schreiben ein Use-Case ist/war, würde ich mal vorhandene Elkos auf die noch vorhandene Kapazität prüfen. Aus meiner langjährigen Erfahrung raus sind Fehler aufgrund von Alterung ein extrem großes Problem. Wer lernt im Studium schon, dass Elkos altern und Kapazität verlieren. Und dass das Flash erst bei 4000hex beginnt ist normal, ab der Adresse 0 liegen erstmal diverse Portregister. Aber das steht alles in den Datenblättern.
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.