Tekway MSO

Aus der Mikrocontroller.net Artikelsammlung, mit Beiträgen verschiedener Autoren (siehe Versionsgeschichte)
Wechseln zu: Navigation, Suche

For an English version of this article check http://embdev.net/articles/Tekway_MSO

von Tinhead

Im Juli 2012 hat Tekway Technologies Co.,Ltd ein neues Oszilloskop angekündigt um deren Produktpalette zu erweitern [1]

Allerdings handelte sich dabei nicht um ein komplett neues Produkt, sondern um ein Mixed Signal Oszilloskop basierend auf der DSO2.0 Platform, die besser bekannt ist als Tekway DST1000B Modelreihe. Ein Monat später hat auch Hantek, die auch Lizenznehmer von DSO2.0 Platform sind, eine eigene Version des MSOs vorgestellt [2], [3]

Ich konnte noch ein (vorserien) Testgerät von Tekway bestellen, der schon allerdings viel Versprechend war. Schnell ist mir klar geworden, dass es sich dabei um eine DSO Hauptplatinne (DST1000B) mit einem kleinen Aufsatz (MSO LA Platinne) handelt. Da die spezielle Firmware auch auch anscheinend übertragbar war kam die Idee meine vorhandene Tekway DSOs entsprechend umzubauen um die MSO Funktionalität nachrüsten.

Eine 8-Lagen Platine ist allerdings nicht günstig, ich müsste schon jede Menge davon bestellen um die bezahlbar (pro Stück) machen. So habe ich direkt beim Tekway nachgefragt, mit der Hoffnung die können ein paar Platinen aus eigener Produktion verkaufen. Die Antwort war "klar, aber nur wenn du 200stk kaufst", was allerdings 198 Stück höher war als ich benötigt hätte. Eine Sammelbestellung müsste daher organisiert werden, die Hantek/Tekway/Volcraft Benutzer fand ich hier [4], hier [5] und auch hier [6].

Dieser Artikel beschreibt alle notwendigen Änderungen (sowohl die mechanischen als auch softwareseitigen) um ein DSO 2.0 Platform Oszilloskop auf MSO umzubauen. Zu der DSO 2.0 Platform gehören folgende Modele:

* Tekway DST1000B serie - DST1062B, DST1102B, DST1202B
* Hantek B serie - DSO5062B, DSO5102B, DSO5202B
* Hantek BM/BMV serie - DSO5062BM/BMV, DSO5102BM/BMV, DSO5202BM/BMV
* Voltcraft DSO 3062B
* Voltcraft DSO 1062D
* einige der PCE Instruments (Hantek Klone) Modele[7]
* Hantek Handheld DSO1xxxB/BV serie
* Extech Handheld MS6060, MS6100, MS6200

Die beiden letzten Modele (Extech und Hantek Handhelds) kann man allerdings aus Platzgründen nicht umbauen. Auch die I/O Erweiterungsport ist anders belegt.

Auch wenn die Sammelbestellung eine einmalige Aktion war, und nicht jeder der eins haben wollte auch eins bekamm, kann dieser Artikel auch benutzt werden um dabei zu helfen eine selbstgebaute MSO-LA Platinne zu erstellen. Auch die, die nur die MSO Firmware testen möchten finden hier alles was dafür benötigt wird.

Elektronische änderungen

An der DSO Platine sind lediglich zwei änderungen notwendig:

- die I/O Stiftleiste muss eingelötet werden. 
- es muss ein 0R Widerstand bestückt werden um das nGCS4 SoC Signal mit dem 
  LA FPGA zu verbinden. Ohne den Widerstand kann die Firmware NICHT mit der 
  LA Platine kommunizieren. Es ist leicht zu finden, gleich neben den S3C2440:

 MSO Tekway R0before.jpg
 MSO Tekway R0after.jpg

Mechanische änderungen

Ein MSO besitzt auch ein paar extra Eingänge, so sind auch ein paar mechanische Änderungen notwendig um die HD50 (oder DB25) Buchse zu montieren. Ich habe ein paar Bilder, als PDF, zusammengefügt. Die sind Selbsterklärend und sollten studiert werden bevor man anfängt irgendwelche Löcher zu schneiden / bohren.

Die PDF befindet sich in der Download-Bereich weiter unten [8]


Firmware aktualisierung

  • Für Hantek BM/BMV Modelreihe Benutzer

Ich habe bis jetzt KEINE Anletiung für diese Modelreihe erstellt. Der Grund dafür ist eigentlich einfach, keiner der Sammelbestellung Teilnehmern hatte so ein Gerät. Im Prinzip benutzt die BM/BMV Modelreihe schon Linux 2.6.30.4 (genau wie die MSOs), andererseits soweit ich weiss sind ein paar änderungen im Kernel und Dateisystem notwendig um die MSO Programme auszuführen. Ich denke die einfachste Methode für BM/BMV Modelreihe Benutzer ist eine aktualiesierung über den JTAG Port:

- ein komplettes Backup erstellen, z.b. dieser Tool kann dabei helfen [9]
- ein Backup der DSO-spezifischen Dateien (siehe weiter unten welche) erstellen
- mit einem JTAG Adapter die Datei mso_ready.bin (beinhaltet in der 
  Master Image Datei aus der Download-Bereich weiter unten) ins NAND Speicher
  programmieren (Achtung: mso_ready.bin beinhaltet auch die OOB Blöcke)
- wenn fertig, den JTAG Adapter abziehen und das DSO neustarten.
- die DSO-spezifischen Dateien wieder auf das Gerät kopieren
- die Selbstkalibrierung ausführen

Eine Umwandlung zurück ist eigentlich nicht notwendig da die MSOs sowohl kompatibles (zu der BM/BMV Modelreihe) Kernel als auch passendes Dateisystem benutzen. Es ist dann nur notwndig die DSO Applikation der BM/BMV Modelreihe (/dso.exe) und die (Modelreihe und Firmware Version abhängige) Sprachdateien (/OuLanguages/* ) auf das MSO zu kopieren. Nach einem Neustart, und einer Selbstkalibrierung, wird das Gerät wieder ein BM/BMV Model sein. Umgekehrt, also MSO Applikation auf BM/BMV kopieren, wird nicht sauber funktionieren auf grund von fehlenden Dateien und Einträgen im Kernel.


  • Für alle anderen - wie oben aufgelistet - Tekway DSO 2.0 Platform Benutzer

Es gibt (mindestens) zwei Möglicheiten die Firmware zu aktualisieren

* über UART/USB
* über JTAG

über JTAG ist die einfachste Methode, allerdings braucht man dafür ein USB-basierendes JTAG Adpater. Der muss auch den Samsung SoC S3C2440 und NAND Programmierung unterstützen. Wer so ein JTAG Adapter hat (z.b. H-JTAG USB)braucht nur folgende Schritte auszuführen:

- es ist empfehlenswert mindesten die firmware version 2.06.3_121027.0 auf 
  dem DSO installiert zu haben.
- die Datei Master Image herunterladen (aus der Download-Bereich weiter unten) und entpacken.
- die Datei dst1kb_backup.up auf ein leeres USB Stick kopieren
- den USB Stick in die USB Buchse des DSOs (auf der Vorderseite) reinstecken 
  und "Firmware Update" aus der "Utility Menu" ausführen.
  Achtung: es kann bis zur 5min dauern bis alle Backups erstellt worden sind
- wenn fertig, den USB Stick rausziehen und auf dem PC den Inhalt des
  Verzeichnisses 'dump' prüfen (dies wird angelegt während des Backups).
  Folgende Dateien sollten vorhanden sein:
     chk_base_volt
     mult_adc.log
     tdc.log
     i2c.log
     tdc_edge125M
     tdc_overtime125M
     tdc_pulse125M
     chk1kb_091023
     boot.bin
     kernel.bin
     root.bin
  Sollte eine oder mehrere Dateien nicht vorhanden sein bitte nicht Fortfahen!
- JTAG Adapter an DSOs ARM JTAG Stiftleiste (J901) anschliessen
- mit einem JTAG Adapter die Datei mso_ready.bin (beinhaltet in der 
  Master Image Datei aus der Download-Bereich weiter unten) ins NAND Speicher
  programmieren (Achtung: mso_ready.bin beinhaltet auch die OOB Blöcke)
- wenn fertig, den JTAG Adapter abziehen und das DSO neustarten.
  Während des ersten Bootvorgangs sollte folgendes Bild erscheinen:
  Tekway MSO Capture9.jpg
- die Datei dst1kb_backup.up vom USB Stick löschen
- die Datei dst1kb_restore.up auf den USB Stick kopieren
- den USB Stick in die USB Buchse des DSOs (auf der Vorderseite) reinstecken 
  und "Firmware Update" aus der "Utility Menu" ausführen.
- wenn fertig, den USB Stick entfernen und ca. 15min abwarten bis das DSO auf 
  die Betriebstemperatur kommt.
- die "Selbstkalibrierung" aus dem "Utility Menu" ausführen

Das wars dann, das DSO ist jetzt ein MSO.


über UART/USB ist zwar nicht die einfachste, denoch von jedem durchführbare Methode. Dafür wird ein LVTTL UART auf USB Konverter, wie einer der vielen CP21xx basierenden und günstigen TTL UART USB converter auf ebay. Zusätzlich wird eine PC Terminal Anwendung mit Xmodem Unterstüzung (z.b. Hyperterm) und ein Windows PC, um die DNW.exe auszuführen, benötigt. Für die, die kein Windows benutzen, ehm, ich muss ehrlich sagen hat mich das wenig gekümmert. Möglicherweise gibts auch ein dnw.exe Ersatz für Linux/OSX, falls nicht verbleibt die über JTAG Methode (oder ein Temp Windows PC).

Das UART port hat folgende Belegung:

Tekway MSO uart hw1007.jpg

Nur TXD, RXD und GND werden benötigt. Die anderen Anschlüsse am besten nicht benutzen. Die +3.3V kann zwar für eigene PCBs (z.b. ein BT-UART adapter), für den Umbau hier ist es aber irrelevant. Die passende Stiftleiste muss 2.00mm Rastermaß haben, die sllte am besten auch gelötet werden. Hat man keine parat, geht auch wenn man 3 einzelne Stifte einer 2.54mm Stiftleiste nimmt. Die Isolierung muss dann etwas abgeschnitten werden.

Als allerserstes sollte die Verbindung über das UART<-> Konverter geprüft werden. Die notwendigen einstellungen sind 115200, 8n1. Am besten prüfen ob irgendwas beim Bootvorgang zu sehen ist. Falls ja, ein bitte nochmal prüfen ob die shell des DSOs erreichbar ist nach STRG+C / ENTER drücken. Falls dies alles funktioniert kann man mit folgenden Schritten fortfahren:

- es ist empfehlenswert mindesten die firmware version 2.06.3_121027.0 auf 
  dem DSO installiert zu haben.
- die Datei Master Image herunterladen (aus der Download-Bereich weiter unten) und entpacken.
- die Datei dst1kb_backup.up auf ein leeres USB Stick kopieren
- den USB Stick in die USB Buchse des DSOs (auf der Vorderseite) reinstecken 
  und "Firmware Update" aus der "Utility Menu" ausführen.
  Achtung: es kann bis zur 5min dauern bis alle Backups erstellt worden sind
- wenn fertig, den USB Stick rausziehen und auf dem PC den Inhalt des
  Verzeichnisses 'dump' prüfen (dies wird angelegt während des Backups).
  Folgende Dateien sollten vorhanden sein:
     chk_base_volt
     mult_adc.log
     tdc.log
     i2c.log
     tdc_edge125M
     tdc_overtime125M
     tdc_pulse125M
     chk1kb_091023
     boot.bin
     kernel.bin
     root.bin
  Sollte eine oder mehrere Dateien nicht vorhanden sein bitte nicht Fortfahen!
- während des Bootvorgang (direkt nach dem Einschalten) mehrmals die Leertaste
  drücken. Der Bootvorgang sollte dann unterbrochen werden und die Bootloader
  prompt sichtbar sein, etwa wie hier:
  Tekway MSO Capture0.PNG

Leider gibts keine USB Unterstützt in dem Tekway/Hantek Bootloader, daher muss ein neues (supervivi.bin) einprogrammiert werden. ACHTUNG: bitte nur die supervivi.bin aus der Master Image Datei benutzen, andere Versionen die im Imternet zu finden sind können die MTD NAND Partitionen zerstören.

- um den neuen Bootloader einprogrammieren muss man muss man folgendes auf 
  der DSO Bootloader Shell tippen:
  load flash vivi x
  und dann die Enter Taste drücken. 
- jetzt in der PC Terminal Anwendung das Xmodem Transfer auswählen und  
  die supervivi.bin rüber zum DSO senden. Im Hyperterm ist das die Menu
  "Transfer->Send file", dann supervivi.bin wählen und als Protokol Xmodem.
  Folgendes sollte jetzt zu sehen sein:
  Tekway MSO Capture1.PNG
- wenn fertig das DSO neustarten. Während des Bootvorgang (direkt nach dem
  Einschalten) mehrmals die Leertaste drücken. Der Bootvorgang sollte dann
  unterbrochen werden und die Supervivi Bootloader Prompt sichtbar sein, 
  etwa wie hier:
  Tekway MSO Capture2.PNG
- falls ja, dann menu tippen und Enter drücken. Dann sollte folgendes zu
  sehen sein:
  
  Tekway MSO Capture4.PNG
  Tekway MSO Capture5.PNG
- jetzt das DSO mit einem USB Kabel an PC anschliessen. Es sollte eine 
  "Treiber instalation" aufforderung kommen. Der passender Treiber ist in der
  Download-Bereich weiter unten. Nach dem der Treiber instaliert ist, bitte 
  die dnw.exe starten. In dem Menu oben sollte eine USB:OK Nachricht
  sichtbar sein. Falls nicht, den USB Kabeln abziehen und nochmal anschliessen.
  Eventuell auch PC / DSO Neustart ausführen.
  Tekway MSO Capture3.PNG

Sollte die USB:OK nicht sichtbar sein, ist die Fortführung unmöglich

- in dem Supervivi Menu den Punkt "r" wählen, es steht für "Restore".
  Unmittelbar danach in der dnw.exe das Menupunkt "Usb Port->Transmit/Restore" 
  anklicken und die Datei mso_ready.bin auswählen.
  Achtung: wenn dies zu langsam geschieht, wird entweder der Supervivi
  Bootloader oder die dnw.exe mit einem Zeitüberschreitungfehler sich
  verabschieden. Dann einfach das ganze wiederholen. Sollte alles rechtzeitig
  geschehen, wird folgendes zu sehen sein:
  Tekway MSO Capture6.PNG
  Tekway MSO Capture7.PNG

Nach dem Programmiervorgang wird wieder die Supervivi Menü erscheinen. Hier macht es Sinn zu hochscrollen und den Status prüfen. Sollten irgendwelche Fehler zu sehen sein, sollte man den letzten Schritt wiederholen. Bei mir gab es NAND bad block Fehler, die können allerdings meistens ignoriert werden da der Supervivi Bootloader die kaputten Bereiche überspringt.

  Tekway MSO Capture8.PNG
- wenn fertig, die USB/UART Kabeln abziehen und das DSO neustarten.
  Während des ersten Bootvorgangs sollte folgendes Bild erscheinen:
  Tekway MSO Capture9.jpg
- die Datei dst1kb_backup.up vom USB Stick löschen
- die Datei dst1kb_restore.up auf den USB Stick kopieren
- den USB Stick in die USB Buchse des DSOs (auf der Vorderseite) reinstecken 
  und "Firmware Update" aus der "Utility Menu" ausführen.
- wenn fertig, den USB Stick entfernen und ca. 15min abwarten bis das DSO auf 
  die Betriebstemperatur kommt.
- die "Selbstkalibrierung" aus dem "Utility Menu" ausführen

Das wars dann, das DSO ist jetzt ein MSO.


Eigene anpassungen

Die Master Image ist so präpariert worden das die DM9000EP Treiber (Ethernet) automatisch gestartet werden. Sollte dies nicht erwünscht sein bitte in dem Abschnitt #net der Datei /etc/init.d/rcS folgendes auskommentieren

insmod /dso/driver/dm9000.ko
ifconfig lo 127.0.0.1
net_set &
/etc/rc.d/init.d/netd start

Die Master Image ist so präpariert worden um die 192.168.100.155 als IP Adresse zu benutzen. Dies kann in der Datei /etc/net.conf geändert werden, z.b.:

IPADDR=10.1.1.10
NETMASK=255.255.255.0
GATEWAY=10.1.1.1
MAC=10:23:45:67:89:ab

Die Master Image ist so präpariert worden um telnet und ftp Dientste automatisch auszuführen. Die Benutzername lautet root, kein Passwort notwendig. Das ist auch einer der gründe warum ftp nicht voll funktionsfähig ist. Falls erwünscht kann der ftp Dienst abgeschaltet werden. Dafür muss in dem Abschnitt #net der Datei /etc/init.d/rcS folgendes auskommentiert werden:

 /etc/rc.d/init.d/netd start

Um Dateien aus das DSO zu kopieren ist das Tool von Peter Dreisiebner [10] sehr hilfreich.

Sicherung der MSO firmware

Um den frisch erstellten MSO einmal komplett zu sichern bitte die

- die MSO Backup tools (aus der Download-Bereich weiter unten) 
  herunterladen und entpacken.
- die Datei dst1kb_mso_backup_tool.up auf ein leeres USB Stick kopieren
- den USB Stick in die USB Buchse des DSOs (auf der Vorderseite) reinstecken 
  und "Firmware Update" aus der "Utility Menu" ausführen.
  Achtung: es kann bis zur 5min dauern bis alle Backups erstellt worden sind
- wenn fertig, den USB Stick rausziehen und auf dem PC den Inhalt des
  Verzeichnisses 'dump' prüfen (dies wird angelegt während des Backups).
  Folgende Dateien sollten vorhanden sein:
     boot.bin
     kernel.bin
     root.bin
  und eventuell
     root2.bin

Sollte in dem 'dump' Verzeichniss die Datei root2.bin nicht vorhanden sind, befindet sich eine in den MSO Backup tools (aus der Download-Bereich weiter unten).


Wiederherstellung der MSO firmware

Um den MSO einmal komplett wiederherzustellen muss erst eine Komplettabbildung aus den Sicherungsdateien erstellt werden. Dazu bitte folgens ausführen:

- die MSO Backup tools (aus der Download-Bereich weiter unten) 
  herunterladen und entpacken.
- die Dateien empty1.bin, empty2.bin und falls keine eigene vorhanden
  root2.bin in ein Verzeichniss mit den eigenen MSO Sicherungsdateien
  (boot.bin, kernel.bin, root.bin und falls vorhanden root2.bin)
  rüber kopieren.
- auf dem PC die Eingabeaufforderung (aus dem Verzeichniss) öffnen und 
  folgendes ausführen:

copy /B boot.bin + empty1.bin + root2.bin + kernel.bin + root.bin + empty2.bin fw_backup.bin

Die dadurch erstellte Komplettabbildung Datei fw_backup.bin kann dann

* über JTAG 
* über USB/UART 

auf das MSO einprogrammiert werden.

über JTAG ist die einfachste Methode, allerdings braucht man dafür ein USB-basierendes JTAG Adpater. Der muss auch den Samsung SoC S3C2440 und NAND Programmierung unterstützen. Wer so ein JTAG Adapter hat (z.b. H-JTAG USB)braucht nur folgende Schritte auszuführen:

- JTAG Adapter an MSOs ARM JTAG Stiftleiste (J901) anschliessen
- die jeweilige JTAG Anwendung (H-JTAG JFLASH, OpenOCD) benutzen um die Datei
  fw_backup.bin in das NAND Speicher einprogrammieren. Dabei ist zu   
  beachten das die Datei fw_backup.bin auch die NAND OOB blocks beinhaltet
- wenn fertig MSO abschalten, JTAG Adpater abziehen und MSO neu starten.

Damit ist die MSO Firmware wiederhergestellt.

über UART/USB ist zwar nicht die einfachste, denoch von jedem durchführbare Methode. Dafür wird ein LVTTL UART auf USB Konverter, wie einer der vielen CP21xx basierenden und günstigen TTL UART USB converter auf ebay. Zusätzlich wird ein Windows PC benötigt um die DNW.exe auszuführen.

Das UART port hat folgende Belegung:

Tekway MSO uart hw1007.jpg

Nur TXD, RXD und GND werden benötigt. Die anderen Anschlüsse am besten nicht benutzen. Die passende Stiftleiste muss 2.00mm Rastermaß haben, die sollte am besten auch gelötet werden. Hat man keine parat, geht auch wenn man 3 einzelne Stifte einer 2.54mm Stiftleiste nimmt. Die Isolierung muss dann etwas abgeschnitten werden.

Als allerserstes sollte die Verbindung über das UART<-> Konverter geprüft werden. Die notwendigen einstellungen sind 115200, 8n1. Am besten prüfen ob irgendwas beim Bootvorgang zu sehen ist. Falls ja, ein bitte nochmal prüfen ob die shell des MSOs erreichbar ist nach STRG+C / ENTER drücken. Falls dies alles funktioniert kann man mit folgenden Schritten fortfahren:

- während des Bootvorgang (direkt nach dem Einschalten) mehrmals die Leertaste
  drücken. Der Bootvorgang sollte dann unterbrochen werden und die u-boot
  Bootloader prompt sichtbar sein, etwa wie hier:
  Tekway MSO Capture10.PNG
- jetzt das MSO mit einem USB Kabel an PC anschliessen. Eventuell (falls nicht
  bereits installiert) wird jetzt eine "Treiber instalation" aufforderung   
  kommen. Der passender Treiber ist in der Download-Bereich weiter unten. 
  Nach dem der Treiber instaliert ist, bitte die dnw.exe starten. In dem
  Menu oben sollte eine USB:OK Nachricht sichtbar sein. Falls nicht, den
  USB Kabeln abziehen und nochmal anschliessen. 
  Eventuell auch PC / MSO Neustart ausführen.
  Tekway MSO Capture3.PNG

Sollte die USB:OK nicht sichtbar sein, ist die Fortführung unmöglich

- in der u-boot Bootloader Eigabeaufforderung menu 1 wählen
  Tekway MSO Capture12.PNG
- in der dnw.exe die supervivi.bin wählen
  Tekway MSO Capture11.PNG
  und abwarten bis die supervivi.bin einprogrammiert war. Ich empfehle
  hier das Bild hochzuscrollen und prüfen ob tatsächlich etwas übertragen
  war. Hier auf dem Bild sieht man es "RECEIVED FILE SIZE" ist grosser 0
  Tekway MSO Capture13.PNG
  Sollte die Übertragung nicht erflogreich sein, wird u-boot trotzdem den
  Bootloader Bereich und sich selbst damit auch in dem NAND löschen.
  Sollte dies der Fall sein, wird das MSO nicht mehr bootfähig sein!
  Falls also fehler beim Übertragung aufgetreten sind, einfach nochmal
  übertragen. Eventuell auch PC neustarten - NICHT das MSO - und USB Kabel
  nochmal anschliessen.
- wenn fertig das MSO neustarten. Während des Bootvorgang (direkt nach dem
  Einschalten) mehrmals die Leertaste drücken. Der Bootvorgang sollte dann
  unterbrochen werden und die Supervivi Bootloader Prompt sichtbar sein, 
  etwa wie hier:
  Tekway MSO Capture2.PNG
- falls ja, dann menu tippen und Enter drücken. Dann sollte folgendes zu
  sehen sein:
  
  Tekway MSO Capture4.PNG
  Tekway MSO Capture5.PNG


- in dem Supervivi Menu den Punkt "r" wählen, es steht für "Restore".
  Unmittelbar danach in der dnw.exe das Menupunkt "Usb Port->Transmit/Restore" 
  anklicken und die Datei fw_backup.bin auswählen.
  Achtung: wenn dies zu langsam geschieht, wird entweder der Supervivi
  Bootloader oder die dnw.exe mit einem Zeitüberschreitungfehler sich
  verabschieden. Dann einfach das ganze wiederholen. Sollte alles rechtzeitig
  geschehen, wird folgendes zu sehen sein:
  Tekway MSO Capture6.PNG
  Tekway MSO Capture7.PNG

Nach dem Programmiervorgang wird wieder die Supervivi Menü erscheinen. Hier macht es Sinn zu hochscrollen und den Status prüfen. Sollten irgendwelche Fehler zu sehen sein, sollte man den letzten Schritt wiederholen. Bei mir gab es NAND bad block Fehler, die können allerdings meistens ignoriert werden da der Supervivi Bootloader die kaputten Bereiche überspringt.

  Tekway MSO Capture8.PNG
- wenn fertig, die USB/UART Kabeln abziehen und das MSO neustarten.

Damit ist die MSO Firmware wiederhergestellt.

Wiederherstellung der DSO firmware

Sollte, aus welchen gründen auch immer, eine Notwendigkeit bestehen die originale DSO Firmware auf MSO wiederzustellen, kann dafür folgende Anleitung genutzt werden.

Um den DSO einmal komplett wiederherzustellen muss erst eine Komplettabbildung aus den Sicherungsdateien erstellt werden. Dazu bitte folgens ausführen:

- die DSO Backup tools (aus der Download-Bereich weiter unten) 
  herunterladen und entpacken.
- die Dateien blank.bin und mizi_tag.bin in ein Verzeichniss mit den
  eigenen DSO Sicherungsdateien (boot.bin, kernel.bin und root.bin)
  rüber kopieren.
- auf dem PC die Eingabeaufforderung (aus dem Verzeichniss) öffnen und 
  folgendes ausführen:

copy /B boot.bin + blank.bin + kernel.bin + root.bin + mizi_tag.bin fw_backup.bin

Die dadurch erstellte DSO Komplettabbildung Datei fw_backup.bin kann dann

* über JTAG 
* über USB/UART 

auf das MSO einprogrammiert werden um den DSO wiederherzustellen.

über JTAG ist die einfachste Methode, allerdings braucht man dafür ein USB-basierendes JTAG Adpater. Der muss auch den Samsung SoC S3C2440 und NAND Programmierung unterstützen. Wer so ein JTAG Adapter hat (z.b. H-JTAG USB)braucht nur folgende Schritte auszuführen:

- JTAG Adapter an MSOs ARM JTAG Stiftleiste (J901) anschliessen
- die jeweilige JTAG Anwendung (H-JTAG JFLASH, OpenOCD) benutzen um die Datei
  fw_backup.bin in das NAND Speicher einprogrammieren. Dabei ist zu   
  beachten das die Datei fw_backup.bin auch die NAND OOB blocks beinhaltet
- wenn fertig MSO abschalten, JTAG Adpater abziehen und MSO neu starten.

Damit ist die originale DSO Firmware wiederhergestellt und das Gerät wieder ein DSO statt MSO ist.

über UART/USB ist zwar nicht die einfachste, denoch von jedem durchführbare Methode. Dafür wird ein LVTTL UART auf USB Konverter, wie einer der vielen CP21xx basierenden und günstigen TTL UART USB converter auf ebay. Zusätzlich wird ein Windows PC benötigt um die DNW.exe auszuführen.

Das UART port hat folgende Belegung:

Tekway MSO uart hw1007.jpg

Nur TXD, RXD und GND werden benötigt. Die anderen Anschlüsse am besten nicht benutzen. Die passende Stiftleiste muss 2.00mm Rastermaß haben, die sollte am besten auch gelötet werden. Hat man keine parat, geht auch wenn man 3 einzelne Stifte einer 2.54mm Stiftleiste nimmt. Die Isolierung muss dann etwas abgeschnitten werden.

Als allerserstes sollte die Verbindung über das UART<-> Konverter geprüft werden. Die notwendigen einstellungen sind 115200, 8n1. Am besten prüfen ob irgendwas beim Bootvorgang zu sehen ist. Falls ja, ein bitte nochmal prüfen ob die shell des MSOs erreichbar ist nach STRG+C / ENTER drücken. Falls dies alles funktioniert kann man mit folgenden Schritten fortfahren:

- während des Bootvorgang (direkt nach dem Einschalten) mehrmals die Leertaste
  drücken. Der Bootvorgang sollte dann unterbrochen werden und die u-boot
  Bootloader prompt sichtbar sein, etwa wie hier:
  Tekway MSO Capture10.PNG
- jetzt das MSO mit einem USB Kabel an PC anschliessen. Eventuell (falls nicht
  bereits installiert) wird jetzt eine "Treiber instalation" aufforderung   
  kommen. Der passender Treiber ist in der Download-Bereich weiter unten. 
  Nach dem der Treiber instaliert ist, bitte die dnw.exe starten. In dem
  Menu oben sollte eine USB:OK Nachricht sichtbar sein. Falls nicht, den
  USB Kabeln abziehen und nochmal anschliessen. 
  Eventuell auch PC / MSO Neustart ausführen.
  Tekway MSO Capture3.PNG

Sollte die USB:OK nicht sichtbar sein, ist die Fortführung unmöglich

- in der u-boot Bootloader Eigabeaufforderung menu 1 wählen
  Tekway MSO Capture12.PNG
- in der dnw.exe die supervivi.bin wählen
  Tekway MSO Capture11.PNG
  und abwarten bis die supervivi.bin einprogrammiert war. Ich empfehle
  hier das Bild hochzuscrollen und prüfen ob tatsächlich etwas übertragen
  war. Hier auf dem Bild sieht man es "RECEIVED FILE SIZE" ist grosser 0
  Tekway MSO Capture13.PNG
  Sollte die Übertragung nicht erflogreich sein, wird u-boot trotzdem den
  Bootloader Bereich und sich selbst damit auch in dem NAND löschen.
  Sollte dies der Fall sein, wird das MSO nicht mehr bootfähig sein!
  Falls also fehler beim Übertragung aufgetreten sind, einfach nochmal
  übertragen. Eventuell auch PC neustarten - NICHT das MSO - und USB Kabel
  nochmal anschliessen.
- wenn fertig das MSO neustarten. Während des Bootvorgang (direkt nach dem
  Einschalten) mehrmals die Leertaste drücken. Der Bootvorgang sollte dann
  unterbrochen werden und die Supervivi Bootloader Prompt sichtbar sein, 
  etwa wie hier:
  Tekway MSO Capture2.PNG
- falls ja, dann menu tippen und Enter drücken. Dann sollte folgendes zu
  sehen sein:
  
  Tekway MSO Capture4.PNG
  Tekway MSO Capture5.PNG


- in dem Supervivi Menu den Punkt "r" wählen, es steht für "Restore".
  Unmittelbar danach in der dnw.exe das Menupunkt "Usb Port->Transmit/Restore" 
  anklicken und die Datei fw_backup.bin auswählen.
  Achtung: wenn dies zu langsam geschieht, wird entweder der Supervivi
  Bootloader oder die dnw.exe mit einem Zeitüberschreitungfehler sich
  verabschieden. Dann einfach das ganze wiederholen. Sollte alles rechtzeitig
  geschehen, wird folgendes zu sehen sein:
  Tekway MSO Capture6.PNG
  Tekway MSO Capture7.PNG

Nach dem Programmiervorgang wird wieder die Supervivi Menü erscheinen. Hier macht es Sinn zu hochscrollen und den Status prüfen. Sollten irgendwelche Fehler zu sehen sein, sollte man den letzten Schritt wiederholen. Bei mir gab es NAND bad block Fehler, die können allerdings meistens ignoriert werden da der Supervivi Bootloader die kaputten Bereiche überspringt.

  Tekway MSO Capture8.PNG
- wenn fertig, die USB/UART Kabeln abziehen und das MSO neustarten.

Damit ist die originale DSO Firmware wiederhergestellt und das Gerät wieder ein DSO statt MSO ist.


Reparatur / DIY Version

Ich habe die Zeit genutzt und ein Schaltplan der MSO LA Platine erstellt. Dieser kann nicht nur für etwaige Reparatur oder eine DIY Version benutzt werden. Es kann auch als eine Bauanleitung für die DSO 2.0 Platform Netzwerkkarte benutzt werden da dieser Bereich völlig unabhängig von der MSO-Funktion ist.


Problembehandlung

Hier ein paar F&A:

Beim booten von MSO kann ich folgenden Fehler sehen, was kann ich dagegen machen:

*** Warning - bad CRC or NAND, using default environment
 
##### EmbedSky BIOS for SKY2440/TQ2440 #####
Press Space key to Download Mode !
Booting Linux ...


Das ist kein Fehler sondern lediglich eine Warnung das die Konfiguration des Bootloaders nicht gefunden worden war und daher die standard Konfiguration genommen wird. Da dies für den DSO/MSO völlig irrelevant sei, kann diese Meldung ignoriert werden.


Habe ... gemacht, jetzt kommt nix beim booten, das Bild bleibt schwarz

Dies kann sehr schnell passieren, wenn der Bootloader kaputt, gelöscht und/oder NAND Inhalt weg sind wird natürlich nix funktionieren. Glücklicherweise reicht es den 'supervivi.bin' Bootloader wieder in den NAND Speicher (ab Adresse 0x0) einzuprogrammieren. Dann, je nach dem ob MSO oder DSO wiederhergestellt werden soll, mit jeweiligen Schritten aus diesen Artikel jeweils ab "supervivi" fortfahren.


Gut, aber welches JTAG Adapter ist geeignet

Ein ARM JTAG Adapter wird dafür benötigt, auch eine entprechende Applikation die in der lage ist den Samsung S3C2440 zu steuern um K9F1208 NAND Speicher zu beschreiben sollte man haben. Mögliche JTAG Adapter und passende Applikationen sind:

H-JTAG USB oder H-JTAG LPT Wiggler mit H-JTAG Flasher
ARM LPT Wiggler mit SJF2440 oder XJSF244x Applikation 
OpenJTAG von [11] mit Oflash Applikation [12]
OpenOCD kompatibles ARM JTAG Adapter und OpenOCD [13]

Siehe auch in der Download-Bereich weiter unten

Downloads

Links