[Guide] CH341A USB Programmer | Mainboard UEFI/BIOS wiederherstellen (Windows)

Reous

Mr AMD
Thread Starter
Mitglied seit
14.01.2007
Beiträge
9.900
Titel.png



Anwendung:
Ein UEFI Update kann auch heutzutage noch fehlschlagen, sei es ein Stromausfall, ein unerwarteter Freeze oder ein versehentliches drücken der Reset Taste. Viele aktuelle Mainboards besitzen heutzutage zwar eine "Flashback" Funktion aber selbst dies kann mal versagen.
Mit einem USB Programmer kann man über einen zweit PC oder Laptop wieder ein UEFI auf den Chip aufspielen und ein tot geglaubtes Board wieder zum Leben erwecken. Dies kann nützlich sein, wenn die Garantie für das gekaufte Board bereits abgelaufen ist. Mutige Nutzer können damit ebenfalls gemoddete UEFI Versionen aufspielen und testen.

Jegliche Anwendung auf eigene Gefahr. Ich bin nicht verantwortlich für entstandene Schäden.
Keine Garantie auf Aktuallität der Internet Links.
Using on your own risk. I'm not responsible for any damage that can accur.



Was wird benötigt:
Je nach verwendetem Mainboard und UEFI Chip werden auch unterschiedliche Hilfsmittel benötigt.
  • CH341A USB Programmer inkl. 1.8V Adapter
    Variante 1: UEFI Chip (SOP Test Clip)
    Variante 2: SPI/TPM Header (Verbindungskabel 2.5mm zu 2.0mm)
    Variante 3: LPC Debug (FFC Flachbandkabel/Adapter)​
  • Name vom UEFI Chip
  • Software
  • UEFI Datei
Wer günstigere oder einfachere Methoden findet, darf diese gerne im Thread teilen.

Der CH341A USB Programmer ist ein günstiger und sehr beliebter USB Programmer. Beim Kauf sollte man darauf achten die schwarze Version zu erwerben, es gibt nämlich auch noch eine Version mit grünen PCB. Ebenfalls sollte im Bundle ein 1.8V Adapter dabei sein. Aktuelle Chips haben meist eine Betriebsspannung von 1.8V haben, der CH341A kann aber nur eine minimale Spannung von 5V und 3.3V ausgeben.

Amazon: EEPROM Flash BIOS USB +1.8V Adapter + Soic8 Adapter Programmer Module Kit Set for EEPROM 25CXX / 24CXX
Aliexpress: CH341A Programmer


  • Variante 1: SOP8 Test Clip
    Voraussetzung ist dafür ein SOP8 UEFI Chip, bei dem man den Test Clip ohne Probleme anbringen kann. Je nach Mainboard befinden sich in der nähe vom Chip auch andere Beiteile und versperren damit den benötigten Platz für den Test Clip.
    Neuere Mainboards besitzen inzwischen keine SOP8 Chip mehr, sondern einen WSON8 Chip. Diese sind flacher als die SOP8 Chips, weshalb ein befestigen des Test Clips hier nicht mehr möglich ist. In diesem Fall sollte man auf Variante 2 ausweichen. Sollte Variante 2 nicht vorhanden sein, dann besteht noch die Möglichkeit sich im Internet selbst gebaute WSON8 Test Clips zu bestellen (Z.B.: Aliexpress). Je nach Version kosten diese aber bis zu 20 Euro.
    Aliexpress: Test Clips für WSON8 Chips

    5_1.jpg 6.JPG

  • Variante 2: SPI/TPM Header
    Bei einigen Mainboards befindet sich in der nähe vom UEFI Chip ein SPI Header, je nachdem ist dieser auch kombiniert mit dem TPM Header. Besonderheit hier, der SPI/TPM Header ist kleiner als die sonst üblichen 2.54mm Pitch Stecker. Man benötigt also Kabel von 2.54mm (USB Programmer) zu 2.00mm (SPI/TPM) Pitch Steckern.
    Diese sind aktuell schwer in deutschen Online Shops zu finden, selbst wenn, dann zu höheren Preisen. Es schadet sicherlich auch nicht beim Händler vor Ort nachzufragen, ob er solche Kabel anbietet.
    Leider wird nicht von allen Herstellern der UEFI Chip auch an den SPI/TPM Header angebunden. Ob es angebunden ist oder nicht müsste man mit einem Multimeter testen. Bisher funktionierende Modelle sind von ASUS, MSI und Biostar bekannt.

    Amazon Beispiel 1: 2.54mm to 2.00mm Kabel
    Amazon Beispiel 2: 2.54mm to 2.00mm Kabel
    Aliexpress: 2.54mm to 2.00mm Kabel

    10_1.jpg 11.jpg 9_1.jpg 12_1.jpg

  • Variante 3: LPC Debug
    Bei Mainboards mit weniger Platz ist der UEFI Chip auch an den LPC Debug Port angeschlossen (Bisher nur auf Asus ITX Mainboards gesichtet).
    Für die Verbindung mit dem USB Programmer benötigt man hier ein FFC Flachbandkabel (in gesichteten Fällen 12 polig / 0.5mm Pitch), ein FFC Adapter, 2.54mm Steckerleisten und etwas handwerkliches Geschick. Die Steckerleisten müssen in gezeigtem Beispiel an den Adapter angelötet werden.

    Ebay: FFC Flachbandkabel
    Ebay: FFC Adapter Platine
    Ebay: 2.54mm Steckerleiste

    1.JPG 2.jpg 3_1.jpg 4.jpg



Verbauter UEFI Chip
Bevor man beginnen kann, benötigt man natürlich noch die genaue Bezeichnung von dem UEFI Chip. Diese ist immer direkt in den Chip eingraviert.
Im folgenden Beispiel bei einem ASUS Prime A320M-K Mainboard: MXIC MX25U12873F

MXIC ist der Hersteller (Macronix)
MX25U12873F ist die Chipbezeichnung

Produktseite: https://www.macronix.com/en-us/prod...spx?p=MX25U12873F&m=Serial NOR Flash&n=PM2348
Datenblatt: https://www.macronix.com/Lists/Datasheet/Attachments/7446/MX25U12873F, 1.8V, 128Mb, v1.2.pdf

Anhand der Infos kann man nun auch feststellen, ob es sich um ein 3.3V oder 1.8V Chip handelt. Handelt es sich um ein 3.3V Chip, so ist der 1.8V Adapter nicht notwendig.

Die Pinbelegung des SPI/TPM Headers kann sich je nach Mainboard unterscheiden, deshalb ist es ratsam diese vorher mit einem Mulitmeter auf Durchgang zu prüfen. Bei verwendetem Mainboard/UEFI Chip sieht die Belegung wie folgt aus:

CHIP Board3.png
A320.jpg

Pinbelegung des CH341A USB Programmers:
7_3.jpg 8_2.jpg



Programme
Für den CH341A USB Programmer gibt es folgende Software zur Auswahl:



Flashen
Nachfolgend wird anhand des NeoProgrammers auf Windows 10 Ebene gezeigt wie der Flash Ablauf funktioniert.
Wichtig, das zu flashende Mainboard muss stromlos sein!

Über die oben verlinkte Website laden wir den NeoProgrammer herunter und extrahieren die Datei.
neo.png

CH341A USB Programmer in einen freien USB Port stecken. Auf dem USB Programmer leuchtet nun eine Rote LED. Diese gibt an, dass Spannung anliegt.
Im Geräte-Manager sollte nun ein unbekanntes Gerät erscheinen. In meinem Fall "USB UART-LPT".
Ein passender Treiber befindet sich in einem Unterordner vom NeoProgrammer (Drivers -> CH341A).
Dort die Setup.exe öffnen und im erscheinenden Fenster auf "INSTALL" klicken.
100.png 200.png

Daraufhin sollte das unbekannte Gerät nicht mehr vorhanden sein und unter Interface erscheint der USB Programmer (USB-EPP/I2C...CH341A).
Bezeichnungen können abweichen.
300.png

Als nächstes öffnen wir den NeoProgrammer.
Das Hauptfenster sieht wie folgt aus.
401.png

Um den passenden UEFI Chip auszuwählen haben wir nun zwei Möglichkeiten.
Durch anklicken auf "Detect" erkennt das Programm automatisch den verbauten UEFI Chip. Wir markieren den Chip und bestätigen diesen mit "Select".
500.png

Sollte der Chip nicht automatisch erkannt worden sein, dann kann man diesen auch manuell auswählen. Vorausgesetzt dieser ist im Programm überhaupt vorhanden.
Dazu in der Menüleiste auf "IC", "SPI_NOR", den passenden Hersteller auswählen (Macronix in unserem Fall) und dann nach dem Chip Namen suchen.
501.png

Wenn alles funktioniert hat, dann sollte der passende Chip links vom Programmer stehen
600.png

Zur Sicherheit ist es zu empfehlen eine Sicherheitskopie vom aktuellen UEFI Image anzulegen.
Dazu klicken wir auf "Read" (Chip mit grünem Pfeil).
Das Auslesen kann je Größe und Schnittstelle mehrere Minuten dauern.
Den aktuellen Stand wird auch immer unten im Statusfeld angezeigt. Im folgenden Bild zum Beispiel "Reading memory... Main Memory".
700.png

Wurde die Aktion erfolgreich durchgeführt wird im Statusfeld entsprechende grün hinterlegte Meldung "Success" angezeigt.
Um das Backup zu speichern klicken wir auf "File", "Save" und speichern die Datei an einem beliebigen Ort und Namen ab.
800.png


Jetzt kommt der spannende Teil. Wir laden das zu flashende UEFI in den NeoProgrammer.
Hinweis:
Eine UEFI muss immer 16.384 KB (128 Mb Flash / 16MB UEFI) oder 32.768 KB (256 Mb Flash / 32MB UEFI) groß sein.
Je nach Hersteller enthält die UEFI Datei noch eine Signatur und ist dementsprechend größer. ASUS UEFI Dateien haben jeweils noch eine 2KB bzw. 4KB große Signatur. Diese muss zuvor entfernt werden.

Im folgenden Beispiel ist die Originaldatei 16.386 KB anstatt 16.384 KB groß.
Bios1.png

Um die Signatur zu entfernen öffnen wir das Tool "UEFITool" (Donwload UEFITool auf Github) und laden unser UEFI.
Wir klappen die UEFI Datei auf, indem wir links auf den Pfeil vor "AMI Aptio capsule" klicken.
Auf das nun erscheinende "UEFI image" machen wir einen Rechtsklick, wählen "Extract as is..." aus und wählen einen beliebigen Namen und Speicherort aus.
Ebenfalls wichtig: Die Datei muss auf .bin enden. Deshalb geben wir direkt beim abspeichern die richtige Dateiendung gleich mit an. In meinem Beispiel "5862.bin"
Bios2.png

Die extrahierte UEFI Datei sollte nun 16.384 KB groß sein.
Bios3.png

Jetzt können wir die Datei laden. Dazu klicken wir auf "File", "Load" und wählen das zuvor auf der Support Seite heruntergeladene UEFI bzw. die extrahierte UEFI Datei aus.
900.png

Bei dem NeoProgrammer ist Standardmäßig nur "Write" aktiviert. Ich empfehle aber den UEFI Chip erst zu löschen, dann zu beschreiben und zum schluss zu kontrollieren.
Damit dies automatisch gemacht wird klicken wir auf das Drop-Down Menü nebem dem Chip mit blauem Pfeil und wählen neben "Write" auch "Erase" und "Verify" aus.
1000.png

Den Flash Vorgang starten wir nun, indem wir auf den Chip mit blauem Pfeil klicken.
Die nachfolgende Warnung bestätigen wir mit "Yes".
Auf dem USB Programmer sollte nun zusätzlich zu der roten auch eine orangene LED leuchten.
1100.png


Der nun folgende Lösch-, Schreib- und Kontrollvorgang dauert nun mehrere Minuten.
Im unteren Statusfeld kann der aktuelle Status abgelesen werden (Erasing memory..., Programming memory(verifying)...)
1401.png


Wenn der Prozess beendet ist schließen wir den NeoProgrammer, entfernen den CH341A USB Programmer wieder aus dem USB Port und entfernen die Kabel vom SPI/TPM Header.
Das UEFI sollte nun erfolgreich geflasht worden sein.




Der Vorgang mit dem AsProgrammer ist sehr ähnlich, da die Oberfläche ziemlich identisch aufgebaut ist.

as.png 0.png
01.png 1.png
2.png 3.png
4.png
5.png 6.png


Wer Fragen, Anregungen oder Verbesserungsvorschläge hat, darf diese gerne im Thread teilen.
Je nach Beteiligung wird der Thread gepflegt und nach bestem Gewissen aktuell gehalten.
 
Zuletzt bearbeitet:
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Woher weißt du, dass ich mir letztens diesen Programmer gekauft habe? Danke für den Thread! ;)
 
Für welchen Zweck hast du dir einen Programmer gekauft? Bios zerschossen oder einfach nur zum testen? @FM4E
 
Danke Reous! Hab den Guide auch mal für eine News auf der Hauptseite vorgeschlagen.
 
Btw. wenn es jemanden mit Asrock oder Gigabyte Board gibt, kann er dann mal testen, ob bei ihm der SPI/TPM Header auch an den Bios Chip angebunden ist.
 
Bei meinem Gigabyte B450I ist der Chip nicht an den TPM Header angeschlossen. Ist jetzt halt die Frage, ob das ein Einzelfall ist.
 
Möglicherweise dem Formfaktor/Layout geschuldet?

Das ist aber etwas, wonach man bei Gigabyte Deutschland auch mal ganz direkt nachfragen könnte.
 
Meine Erfahrungen zeigen dass viele der angebotenen SOIP Clips absolut minderwertig sind und bereits nach einmaliger Nutzung Verschleißerscheinungen erkennbar sind.

Habe gute Erfahrungen mit einem Clip von Amazon für 7,99€ gemacht. Ggf. poste ich nochmal einen Link.

Habe bereits mehrere Mainboards geflasht um das UEFI zu ersetzen bzw. Intel ME zu deaktivieren. Funktioniert problemlos.

Hatte bei einem AsRock Z370i Fatality das Problem dass ich es weder per Flashpins/SPI noch direkt am BIOS auslesen konnte. Habe dafür bis heute keine Erklärung.

Bei mehreren Asus, Gigabyte, MSI Mainboards bisher hingegen keine Probleme.

Zur Software kann ich noch sagen dass bestimmte Winbond Chips mittels der "mitgelieferten" Software bei mir nicht auslesbar waren bzw falsch erkannt wurden und dementsprechend das gedumpte BIOS fehlerhaft war.

An der Stelle kann ich - AsProgrammer - empfehlen was bei mir bisher super funktioniert hat.
 
Zuletzt bearbeitet:
Guter Guide! Ich hatte vor nem Jahr mal die Gelegenheit mir das beizubringen nachdem das Bios-Update bei nem Freund schief gegangen ist (später hat sich herausgestellt das das Bios-Update selbst schuld war, es hat auch bei korrektem Flashen den HDMI-Ausgang des Mainboards deaktiviert). Da hatte ich aber das Glück das der Bios-Chip gesockelt war, den konnte ich direkt in den USB-Adapter stecken ohne mit ner Zange rumhantieren zu müssen.

Allerdings habe ich es ums verrecken nicht geschafft den Chip unter Windows korrekt zu flashen, nach jedem Flashvorgang ist die Verifizierung fehlgeschlagen (welche Software ich da verwendet habe weiß ich nicht mehr, könnte aber auch der Neoprogrammer gewesen sein), selbst das Löschen war nicht immer erfolgreich. Ich habe es dann unter Linux (irgendeine Live-Version) mit Flashrom probiert, das hat sofort funktioniert. War aber eingewaltiges Abenteuer, besonders wenn man sonst kein Linux verwendet...
 
Btw. wenn es jemanden mit Asrock oder Gigabyte Board gibt, kann er dann mal testen, ob bei ihm der SPI/TPM Header auch an den Bios Chip angebunden ist.
Das ist bei vielen Boards echt unterschiedlich. Das Motherboard Comparison Sheet hat da aber ne schöne Übersicht, auch wenn sicherlich nicht alle boards vorhanden sind
 
Puh, also wenn die Liste stimmt, dann ist bei keinem der dort gelisteten Gigabyte Boards der Chip an den SPI/TPM Header angeschlossen.
 
Servus Reous!

Erstmal vielen Dank für den Thread! Lustigerweise habe ich mir auch so ein Teil bestellt und suche jetzt den Fehler, warum ich einen 1.8V Chip nicht in den Griff bekomme (Micron N25Q064A).
Mit einem 3.3V Chip konnte ich ohne Probleme Verbindung aufbauen und den Chip lesen als auch schreiben (direkt mit der SOIC8 Klammer)

Hast du schon einen Chip (auf dem PCB) mit 1.8V unter Nutzung des Adapters auslesen können?

Danke und Grüße
Frannie
 
Mein Beispiel im Startbeitrag war auch ein 1.8V Chip.
Ich weiß jetzt nicht was für ein Programm du verwendest hast aber beim NeoProgrammer gibt es den N25Q064A zwei mal. Einmal mit 1.8V und einmal mit 3.3V. Inwiefern das jetzt einen Unterschied macht weiß ich auch nicht. Hatte aber auch schon Chips, welche er zwar lesen aber nicht schreiben konnte. Als Lösung hatte ich im Programm dann welche mit ähnlicher Bezeichnung ausgewählt und schon ging es.
 
Danke Dir! Evtl. bin ich komplett auf der falschen Spur. Ich hab nen 25Q064A 13E40. Ich finde das Datenblatt nur ohne die 13E40 Endung. Am Ende hast du gerade den komplett richtigen Hinweise gegeben und das ist ein 3.3V IC. Da komm ich mit 1.8V natürlich nicht weit :d
Ich muss mal weiter suchen, weil direkt mit 3.3V drum will ich nicht, am Ende ärgert sich der kleine schwarz..

Grüße
Frannie
Beitrag automatisch zusammengeführt:

Ok. Wenn meine Datenblattinterpretation nicht ganz daneben liegt, steht sie 3 bei der 13e40 fuer 3.3 Volt 😖
Dann nochmals Danke! Darauf waere ich jetzt nicht mehr gekommen.

Viele Gruesse
Frannie
 
Zuletzt bearbeitet:
Hi Reous,

mega coole Anleitung, vielen Dank schon Mal. Ich möchte gerne mein uralt Netbook Lenovo S205 retten, das ich ziemlich analog zu diesem Kollegen beim Aufsetzen eines Dual-Boots gebrickt habe. Das Mainboard hat - wie dort beschrieben - einen 8-SOP Macronix MX25L1606E BIOS/UEFI Chip mit 2 MiB Speicher, der mit 3,3 V läuft und im NeoProgrammer bekannt ist:
Screenshot 2022-03-08 215236.jpg

Ich möchte den Chip gerne ohne Auslöten flashen, da ich weder die Werkzeuge noch das Können dazu habe.... und dafür käme so wie ich es verstehe Variante 1 mit Test Clip in Frage.

Bevor ich allerdings anfange und mir die Teile bestelle, habe ich noch ein paar (wahrscheinlich dämliche) Fragen:
  • Unterstützt der von Dir verlinkte Programmer nun 3,3 V oder nicht? Die oberste Bewertung bei Amazon (und auch einige Beschreibungen gebrauchter Programmer bei Kleinanzeigen) sagt klar nein, aber laut Deiner Beschreibung ist das kein Problem. Was stimmt nun (und wie stellt man es richtig ein?)?
  • Wie schließt man den Test Clip auf dem Programmer an, wenn man mehr als 1,8 V benötigt? Der 1,8 V-Adapter hat ja eine Pin-Leiste, wo man den Stecker des Test-Clips anbringen könnte, der Klemmblock für die (ausgelöteten) Chips aber nicht. Ist dafür dieser kleine Adapter gedacht?
    Screenshot 2022-03-08 220013.jpg
  • Du sagst eine UEFI muss immer 16.384 KB (128 Mb Flash / 16MB UEFI) oder 32.768 KB (256 Mb Flash / 32MB UEFI) groß sein. Das zu flashende UEFI des S205 ist aber de facto kleiner (2048 KB). Ich war auf dem Teil auch mal in der UEFI-Shell (so habe ich ihn gebrickt), das ist definitiv ein (total verkrüppeltes) UEFI, aber eben kleiner. Sollte ich dieses UEFI trotz der geringeren Größe flashen können (der Typ aus Link hat's gemacht, nur halt nicht mit der Kombination aus verlinktem Programmer und NeoProgrammer sondern im Eigenbau)?
    1646773429978.png
Danke vielmals für die Hilfe vorab und viele Grüße.
 
Zuletzt bearbeitet:
@blablubb1234
Die schwarze Version kann 5V und 3.3V liefern. Auf der Seite sitzt ein Jumper zum umschalten. Ohne Jumper 5V, mit Jumper 3.3V.
Wenn ich das richtig verstanden habe liegen die 3.3V aber nur bei der Spannungsversorgung an. Die Datenleitungen haben immer noch 5V. Mit etwas Lötarbeit kann man das wohl fixen aber das habe ich jetzt nicht weiter verfolgt.
Ja, für den Test Clip ist der von dir abgebildete Adapter gedacht. Das farbige Kabel muss dann Pin 1 belegen. Anschluss vom Adapter an den Programmer dann wie im Schaubild vom NeoProgrammer.
Die UEFI Größe hat sich auf aktuell gängige Desktop UEFI Versionen bezogen. Die 2048KB in deinem Fall sind aber auch korrekt.

Zwecks dem Umlöten der 5V Leitung müsstest du dich selber mal im Netz schlau machen. Hatte das so selbst auch gar nicht mehr auf dem Schirm. Muss da meinen Beitrag ggf. auch noch umändern.
 
Es gibt mittlerweile auch CH341A (Version 1.5) varianten in China, welche einen Voltage Switch haben mit 4 verschiedenen Stellungen: 5.0v, 3.3v, 2.5v und 1.8v. Ob die Datenleitungen damit ebenso switchen konnte ich bisher nicht rausfinden.

Ich hab mir mal so ein Teil zum testen bestellt und werde berichten.

1646842289260.png

Hier ein Video wie die Datenleitungen auf 3.3v umgebaut werden können:
Volt-modding the CH341a Mini Programmer - LFC#278
 
Eine generelle Frage noch vorab: Sollte es mit dem Programmer denn theoretisch möglich sein, den BIOS-Chip eines (Laptop-)Mainboards im Schaltkreis zu flashen oder nicht? Wonach richtet sich das, gibt's da eine Faustregel? Und falls es möglich ist: Mainboard am Netz oder nicht? Ich habe in einem Video gesehen, dass bei manchen Modellen bspw. irgendwie ein Controller-Chip noch auf Reset gezogen werden muss.... ganz klar ist es mir leider noch nicht.
@blablubb1234
Die schwarze Version kann 5V und 3.3V liefern. Auf der Seite sitzt ein Jumper zum umschalten. Ohne Jumper 5V, mit Jumper 3.3V.
Wenn ich das richtig verstanden habe liegen die 3.3V aber nur bei der Spannungsversorgung an. Die Datenleitungen haben immer noch 5V. Mit etwas Lötarbeit kann man das wohl fixen aber das habe ich jetzt nicht weiter verfolgt.
Genau, das hatte ich eben auch herausgefunden. Es haben wohl dennoch schon genügend Leute mit den anliegenden 5V 3.3V Chips geflasht, aber wie riskant das ist, kann ich nicht abschätzen.
Ja, für den Test Clip ist der von dir abgebildete Adapter gedacht. Das farbige Kabel muss dann Pin 1 belegen. Anschluss vom Adapter an den Programmer dann wie im Schaubild vom NeoProgrammer.
Check.
Die UEFI Größe hat sich auf aktuell gängige Desktop UEFI Versionen bezogen. Die 2048KB in deinem Fall sind aber auch korrekt.
Check.
Zwecks dem Umlöten der 5V Leitung müsstest du dich selber mal im Netz schlau machen. Hatte das so selbst auch gar nicht mehr auf dem Schirm. Muss da meinen Beitrag ggf. auch noch umändern.
Hatte das gleiche Video wie unten verlinkt auch schon gefunden. Schwierig ist es nicht, habe aber keine Ausrüstung hier.
Es gibt mittlerweile auch CH341A (Version 1.5) varianten in China, welche einen Voltage Switch haben mit 4 verschiedenen Stellungen: 5.0v, 3.3v, 2.5v und 1.8v. Ob die Datenleitungen damit ebenso switchen konnte ich bisher nicht rausfinden.

Ich hab mir mal so ein Teil zum testen bestellt und werde berichten.

Anhang anzeigen 737350
Laut CH341a v1.6 Review, No More Volt Mods! - LFC#297 werden auch die Datenleitungen auf die korrekten Spannungswerte runtergezogen, somit können damit die 3.3V-Chips (ohne Mod) programmiert werden.
Hier ein Video wie die Datenleitungen auf 3.3v umgebaut werden können:
Volt-modding the CH341a Mini Programmer - LFC#278
Genau das Video habe ich auch angeschaut. Leider fehlt mir wie gesagt aktuell die Ausrüstung, um den Mod selber zu machen. Hättest nicht Lust, das Teil 2 Mal zu bestellen und - falls überhaupt nögig - den Mod ein 2. Mal zu machen und mir gegen zwei Tafeln Schweizer Schokolade (o.ä.) zukommen zu lassen? :geek:
 
Zuletzt bearbeitet:
Danke für den Thread! Ich habe mir auch einen CH341A-Programmer mit 1,8V-Adapter besorgt. Leider habe ich einen nicht funktionierenden 1,8V-Adapter erwischt mit TXS0108E Level Shifter statt dem üblichen(?) ALVC164245.
Der TXS0108E sollte, so die Theorie, von sich aus die richtige Übertragungsrichtung ermitteln (3.3V/5V CH341A <-> 1.8V SPI Flash), ohne dass sie über einen extra Pin angegeben wird. Das hat in meinem Fall aber nicht geklappt - stattdessen hat er anscheinend versucht, den CH341A zu übertönen, statt die Signale an den Flash zu übergeben.
Letztendlich habe ich dann die Platine "ein bisschen" modifiziert und den Level Shifter selber aus MOSFETs gebaut. Jetzt sieht die Platine zwar nicht mehr schön aus, funktioniert dafür aber, und ich hatte etwas zum Basteln.

Also ein Tipp: Schauen, ob ALVC164245 als Aufschrift auf dem Chip im Artikelbild erkennbar ist - der eBay-Händler hatte in meinem Fall sogar ALVC164245 in der Beschreibung stehen, obwohl das offensichtlich nicht zutraf. Oder einfach über den Link aus dem Post bestellen ^^

Und noch ein Tipp: Bei meinem Prime X370 Pro (Winbond W25Q128FW) konnte ich den Speicher nur auslesen und nicht löschen/beschreiben, obwohl ich es mit AsProgrammer, NeoProgrammer und flashrom mit den jeweiligen Unprotect-Funktionen probiert habe.
Schuld war das gesetzte Complement Protect (CMP) Bit in SREG2 (#14). Auf 0 gesetzt funktioniert alles. Man kann es in AsProgrammer und NeoProgrammer editieren - aber aufpassen, einige benachbarte Bits kann man, wenn man sie ausversehen gesetzt hat, nicht mehr zurücksetzen! Daher lieber nochmal extra im Datenblatt nachschauen.
 
Mein CH341a ist angekommen und es handelt sich ebenfalls um die Platine mit dem Aufdruck V1.7 wie im Link von @blablubb1234 .
funktoniert perfekt. Auch die Datenleitungen laufen von Werk aus mit der eingestellten Spannung
 
Hat hier zufällig wer ein Schaubild oder eine Pinbelegung vom alten MSI JSPI1 (9Pin) auf den CH341A?
 
Ich würde hierüber die Pinbezeichnungen für den Header (Spalte Flash ROM Header) raussuchen und dann über die SOIC-8/SOP-8 Pinbelegung eines Flash-Speichers (z.B. 3.1 in https://www.winbond.com/resource-files/w25q128fw revk 05182017.pdf) die zugehörigen Nummern nachschlagen, die auch denen vom CH341A und 1.8V-Adapter entsprechen. Die Pins werden je nach Hersteller etwas unterschiedlich benannt:
  1. /CS oder CS#
  2. DO oder SO (alt. IO1)
  3. /WP oder WP# (je nach Modus IO2)
  4. GND
  5. DI oder SI
  6. CLK oder SCLK
  7. /HOLD oder HOLD# bzw. /RESET oder RESET# (je nach Modus IO3)
  8. VCC
Am Ende lieber nochmal mit dem Multimeter nachmessen, dass die endgültige Belegung wirklich analog zu den Beinchen vom Flash-Chip ist (wenn vorhanden). Besonders GND und VCC sollten sitzen und nicht vertauscht sein, um den Chip nicht gleich zu grillen. Dreht man das Kabel am CH341A um 180°, passiert nämlich genau das.
 
Jop, danke, man findet im Netz leider allerlei Quatsch zum MSI JSPI1.

Dein Sheet ist sehr interessant, aber leider nutzlos, weil MSI bei den AM4-Platinen zum neuen 11-Pin JSPI1 gewechselt ist.

Deswegen fragte ich nach dem alten JSPI1 mit 9Pin.

Der Chip ist hier ein W25Q128BVEG - 3V, aber Dank der Wahl von MSI im WSON8-Package. :rolleyes:
 
Was du bestimmt auch schon gesehen hast: https://www.flashrom.org/MSI_JSPI1
Ich konnte auf Anhieb auch ein paar Schaltpläne für MSI-Boards auf einer nicht besonders seriös wirkenden blogspot-Seite finden (Titel MSI Schematics), vielleicht gibt's ja die für dein Board. Zumindest bei zwei Stichproben haben die Pinbelegungen vom flashrom-Wiki gepasst.

Sonst bleibt wohl nur noch Leiterbahnen verfolgen (sofern sie nicht alle in Zwischen-Layers verschwinden), mit dem Oszilloskop die Pins erraten, ... bis hin zu Chip entlöten.
 
Jupp, die hatte ich auch schon gesehen, danke.

Aufgrund der Fülle war ich unsicher und wollte fragen, ob hier schon jemand Erfolge mit dem alten MSI JSPI1 hatte - und wenn ja, mit welchem Schaltbild.

So versuche ich es mal auf "altmodische" Art...
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh