Einen ESP-01 flashen, stellt sich etwas schwieriger heraus als bei einem normalen ESP8266, da dieser bereits einen USB to UART Chip besitzt, welcher die Informationen zwischen Computer und ESP-Chip „übersetzt“, um eine Verbindung herstellen zu können.
Um nun also mit einem ESP-01 per USB Verbindung zu kommunizieren, benötigt man beispielsweise einen PL2303 oder einen CP2102. Dafür kann man entweder einen Arduino benutzen, welcher bereits einen solchen Chip verbaut hat, oder man benutzt extra Board.
Mit USB2UART Board
Das USB-Board wird wie in der oberen Abbildung mit dem ESP-01 verbunden, sodass:
USB2UART | ESP-01 |
GND | GND |
VCCIO | VCC |
RXD | TXD |
TXD | RXD (mit Spannungsteiler) |
Ground kann einfach miteinander verbunden werden, wobei man später noch zugriff darauf haben muss, somit sollte man Ground über eine Steckplatine verbinden.
VCC darf nur verbunden werden, wenn das Board einen 3.3V Ausgang hat!
Mein Board kann beispielsweise 5V und 3.3V ausgeben.
RXD also der empfangende Anschluss am USB Board, kann einfach mit TXD am ESP verbunden werden.
TXD am USB Board, sendet die Daten zum ESP, kann aber durch den USB Anschluss bis zu 5V erreichen, was den ESP zerstören würde. Somit benötigt man dazwischen einen Spannungsteiler, welcher die Spannung halbiert. Alternativ kann man auch einen Levelshifter nehmen. Für den Spannungsteiler benötigt man unteranderem den Ground-Anschluss, welchen wir vorhin deswegen auf die Steckplatine gelegt haben.
Um jetzt ein Programm auf den ESP zu flashen, muss man bevor man die USB Verbindung herstellt, den GPIO-0 Pin des ESP’s mit Ground verbinden. Wenn das Programm starten soll, muss der GPIO-0 Pin wieder von Ground getrennt werden.
Bei einem Arduino als „Übersetzter“, werden GPIO-0 und GPIO-1 als TXD und RXD verwendet.
Falls man jetzt beispielsweise in der Arduino IDE keine Verbindung herstellen kann, fehlt vielleicht der passende Treiber für den Chip. Diesen Treiber kann man sich auf der Hersteller Website herunterladen und installieren. Ob der Treiber richtig installiert ist, kann im Geräte Manager unter Anschlüssen festgestellt werden.