Forum: Mikrocontroller und Digitale Elektronik Probleme beim Firmwareupdate


von Ithamar G. (antimon)


Lesenswert?

Hallo,

ich wollte eben die Firmware unserer Telefonanlage (Telnet Willi)
updaten, leider ist das Programm nur bis 60% oder so gekommen und dann
war Sense...
Seitdem kann ich die Telefonanlage nicht mehr per serieller
Schnittstelle ansprechen, telefonieren geht aber nach wie vor.

Aufgrund schlechter Erfahrungen wollte ich den Netzstecker nicht
einfach rausziehen um die Anlage zu rebooten... und die Hotline ist
natürlich auch nicht mehr zu erreichen.

So, meine erste Frage: Kann ich irgendwie rausfinden, ob der EEPROM
direkt beschrieben wird oder ob es einen Zwischenspeicher gibt, der die
Firmware beim Update aufnimmt und bei korrekter Checksum in den EEPROM
schreibt? Bei manchen Geräten macht es nix, wenn die Firmware nicht
ganz draufgeladen werden konnte, die Änderungen sind nach nem Reboot
weg - aber im Handbuch kann ich dazu leider nix finden, und mal einfach
so zu testen traue ich mich auch nicht...

Habt Ihr Tips, die mir weiterhelfen könnten? Per Fernupdate übers
Telefon gehts leider auch nicht, da ich die Anlage auch nicht per
Telefon im Programmiermodus ansprechen kann :-/

von Wegstabenverbuchsler (Gast)


Lesenswert?

Der Name deiner Telefonanlage sagt mir gar nix. Wenn ich "Telnet
Willi" in Google eingebe, dann gibt es 14500 weiterführnden Links.

Beim ersten Überfliegen der ersten 3 Seiten von Google scheint es mir,
daß die produktbezeichnung auf mehrwere Modellvarianten zutrifft.

Bist du dir sicher, daß alle Modellvarianten gleich aufgebaut sind?
Wenn nicht, dann wäre es für einen potentiellen Helfer sicherlich
wertvoll, den genauen Anlagentyp genannt zu bekommen ...

von Ithamar G. (antimon)


Lesenswert?

Sorry, ich dachte dass die Telefonanlage eh keiner kennt und die Infos
der Webseite evtl. auch nicht weiterhelfen.

Hier auf jeden Fall der Link:
http://213.160.66.220/isdn/iswilli.html

Wie funktioniert das generell? Auf dem Chip mit der Firmware ist ja
quasi das "Betriebssystem" gespeichert - wird das beim Starten der
Anlage in einen RAM geschrieben um damit arbeiten zu können oder wie
kann ich mir das vorstellen?

Früher, als Mainboards nicht noch nen Backup-Bios Chip besaßen konnte
man sich das System ja durch ein falsches Beschreiben des Chips
ruinieren - aber es gab auch die Möglichkeit den falsch beschriebenen
Chip in ein laufendes System mit gleichem Board zu setzen und neu zu
flashen - ginge das bei der Telefonanlage evtl. auch? Okay, vergleichen
kann man beides nicht unbedingt gut, aber vielleicht geht das Prinzip
auch?

von Wegstabenverbuchsler (Gast)


Lesenswert?

"ich dachte dass die Telefonanlage eh keiner kennt und die Infos
der Webseite evtl. auch nicht weiterhelfen."

Hm ... und du vermutest also nun das zig andere Telefonanlagen und
irgendwelche flashbaren Komponenten dieser Welt alle nach einem
ähnlichen Konstruntionsprinzip aufgebaut sind, und du deswegen da
theoretische Ableitungen machen kannst?

Na ja, dein "Betreff" dieses Threads läßt das auch vermuten:

>> Problem beim Firmwareupdate <<

Firmware-Updates können viele Komponenten. Das kann ein Fernseher sein,
oder ein Mobiltelefon, oder ein Bios im Rechner, oder möglicherweise
auch eine Telefonanlage.


Nun, jemand der all diese Themen beherrscht, und sich von deiner
theoretischen Fragestellung / Hilferuf "Probleme beim Firmwareupdate"
herausgefordert wird, wird sich (sofern er Lust hat und diesen Thread
kennt) möglicherweise zu deiner Frage äußern wollen und können.

Alle anderen werden da wohl geflissentlich drüber hinweg lesen.



PS: Selbst der Betreff "Probleme vom Firmwareupdate von Telnet Willi"
hätte eine gewisse Neugier angeregt, aber so ....

von Marko B. (Gast)


Lesenswert?

Hast Du die Binärdatei mit der Firmware? Ist der Flash-Chip gesockelt?
Dann nimm ihn raus und programmiere ihn mit einem Programmiergerät.
Oder bestell einen programmierten Chip (z.B. Segor bietet einen
Programmierservice an).

Flash-ROMs werden blockweise beschrieben. Es wird ein kleines Programm
gestartet (welches im RAM laufen muss), das sich die einzelnen Blöcke
nacheinander holt und in den Flash schreibt. Viele Flash-ROMs haben
einen sog. Boot-Block. In diesen kann man das Updateprogramm schreiben
und den Block dann schreibschützen. Somit kann man die Updatefunktion
auch nach einem Fehlgeschlagenen Update noch benutzen. Das muß aber
alles vom Entwickler auch implementiert worden sein.

Ob das System vom Flash-ROM oder vom RAM läuft (oder von beidem), läßt
sich nicht generell sagen. Dazu müßte man sich die Schaltung etwas
genauer ansehen.

von Sven (Gast)


Lesenswert?

>>Flash-ROMs werden blockweise beschrieben.

Vorsicht! Eventuell ist die "Binärdatei" noch verschlüsselt, und die
Blocks werden in zufälliger Reihenfolge übertragen, dann nützt Dir ein
einfaches "programmiere ihn mit einem Programmiergerät"c überhaupt
nix. Siehe AN AVR230 DES Bootlaoder von Atmel oder ähnliche.

Sven

von Ithamar G. (antimon)


Lesenswert?

@Wechstabenverbuchsler: Ja genau, das war zumindest eine Möglichkeit,
die ich in Betracht gezogen habe - dass es vielleicht doch nicht so
einfach ist, war mir schon klar...

Einen sinnvollen Betreff anzugeben, finde ich generell schwierig - klar
hätte ich reinschreiben können um welche Telefonanlage es sich handelt,
aber dann hätten viele wahrscheinlich gesagt: Okay kenn ich eh ned...
Dass es sich um eine Telefonanlage handelt, hätte ich reinschreiben
sollen, da hast du Recht, sorry dafür.

Der Beitrag von Marko B. hat mir auf jeden Fall schon mal
weitergeholfen, indem das prinzipielle Vorgehen beim Update beschrieben
wurde. Auch wenn ich mit Firmware-Updates noch nicht viel Erfahrung
habe, kann ich mir nicht vorstellen dass von einer seriellen Leitung
direkt in den Flash programmiert wird. Erstens ist die serielle
Schnittstelle prinzipiell fehlerträchtig, da oft keine Checksum
verwendet wird. Ausserdem könnte ich mir vorstellen dass der Flash mit
einem anderen Takt beschrieben wird, als er von der seriellen
Schnittstelle vorgegeben ist.

Was ich mir vorstellen könnte: Ich habe Fehler beim Übertragen der
Firmware in einen Zwischenspeicher (RAM) bekommen und da dieser jetzt
nicht korrekt beschrieben ist, kann ich ihn nicht mehr ansprechen
(warum auch immer). Wenn ich die Telefonanlage resette (Strom weg und
wieder dran), ist der RAM gelöscht und ich kann ihn wieder
beschreiben.
Das kann aber natürlich auch total in die Hose gehen, wenn das Updaten
eben nicht nach meinem Prinzip funktioniert... und dann habe ich ein
Problem, dass ich aber ausschliessen möchte...

Gesockelt is der Speicher, der Hersteller bietet auch einen Austausch
an - allerdings zu welchen Konditionen...?
Am Montag werde ich dort auf jeden Fall mal anrufen, vielleicht können
die mir weiterhelfen.

Seltsam ist nur, dass der Firmware-Update-Vorgang zwar beschrieben ist,
aber nicht dabeisteht dass man auf keinen Fall den Netzstecker während
des Updates ziehen soll oder ähnliche Hinweise, wie andere Hersteller
sie gerne angeben - entweder denken die dass eh nur Profis die Firmware
updaten oder das ist so sicher, dass es auch wirklich jeder kann... aber
verlassen möchte ich mich da nicht drauf.

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.