Ding:ESP8266

Aus FabLab Nürnberg Wiki
Wechseln zu: Navigation, Suche
Foto
ESP8266 1.png
Basisdaten
Status eingeschränkt nutzbar
Schöpfer Rainer


Der ESP8266 ist ein sehr günstiger (aktuell ab ca. 2,50€ aus China) Funkchip, welcher im Auslieferungszustand eine Umwandlung von WiFi zu UART durchführt. Mit der SDK kann aber auch eigene Firmware mit anderen Funktionen dafür geschrieben werden.

Hardware

Bauformen

Den ESP8266 gibt es in verschiedenen Bauformen:

ESP8266-overview.jpg
ESP8266 Bauformen
Typ Bild PCB Eigenschaften
ESP-01
ESP8266-type01 IMG.jpg
ESP8266-type01 PCB.png
ESP-02
ESP8266-type02 IMG.jpg
ESP-03
ESP8266-type03 IMG.jpg
ESP8266-type03 PCB.png
ESP-04
ESP8266-type04 IMG.jpg
ESP8266-type04 PCB.png
ESP-05
ESP8266-type05 IMG.jpg
ESP8266-type05 PCB.png
ESP-06
ESP8266-type06 IMG.jpg
ESP8266-type06 PCB.png
ESP-07
ESP8266-type07 IMG.jpg
ESP8266-type07 PCB.png
ESP-08
ESP-09
ESP-10
ESP-11
ESP8266-type11 IMG.jpg
ESP8266-type11 PCB.png
ESP-12

Pins

Port Pin Physical Pin NodeMCU Arduino Funktion/Eigenschaften
GPIO 0 15 3 0 CS2
GPIO 1 26 10 1 TXD0, CS1
GPIO 2 14 4 2 TXD1
GPIO 3 25 9 3 RXD0
GPIO 4 16 2 4
GPIO 5 24 1 5
GPIO 6 21
GPIO 7 22
GPIO 8 23
GPIO 9 18
GPIO 10 19
GPIO 11 20
GPIO 12 10 6 12 MISO
GPIO 13 12 7 13 CTS0, RXD2, MOSI
GPIO 14 9 5 14 CLK
GPIO 15 13 8 15 RTS0, TXD2, CS
GPIO 16 8 0 16 WAKE
ADC 6 A0
Reset 32
CHIP_EN 7

Schutzbeschaltung

ESP8266 2.png

Zum besseren Handling habe ich das Modul auf eine Platine gesetzt.

Darauf ist:

  • das ESP8266 Modul
  • ein Pegelwandler 5V <-> 3,3 V für die Signalleitungen
  • ein Powermodul das aus 5 V die 3,3V Versorgung macht
  • ein Schalter um schnell und einfach Power ON/OFF zu machen
  • Anschlus mit Standard FTDI Belegung (GND/GND/VCC/RX/TX/NC)

Das Modul kann dann über einen "normalen" Seriell-USB Wandler wie ich ihn z.B. für die pro minis verwende mit einem PC Verbunden werden


Vom Modul sind folgende Pins genutzt:

  • GND
  • VCC 3,3 V
  • RX (max 3,3 V => pegelwandler)
  • TX
  • CH_PD verbunden mit VCC ... sonst geht nix


Bedienung

ESP HTERM.PNG

Zur Bedienung nutze ich HTerm http://www.der-hammer.info/terminal/


Dieses lässt die Definitionen von Sequenzen zu die dann per Mausklick geschickt werden.


Für die wichtigen AT-Kommandos habe ich solche Sequenzen definiert

Datei:HTERM ESP8266.zip

Auch das Senden von Sonderzeichen etc. ist leicht möglich.

Für die derzeit (11.2014) bei uns vorhanden Module (Danke an Schimmi!) sind folgende Einstellungen richtig

  • 9600 Baud 8-N-1 (andere/ältere FW Stände brauchen hier 115200 Baud)
  • Send On Enter [CR-LF]


AT-Kommandos

Übersicht

Beispiele

Access Point

Erstellt ein WLAN mit dem Namen "dingens" und ohne Verschlüsselung auf dem Kanal 3

AT+CWMODE=2
AT+CWSAP="dingens","",3,0

Firmware

Flash-Tool

Theoretisch ist ein Online-Update mit dem Befehl `AT+CIUPDATE` möglich. Bisher sehen die Ergebnisse damit aber meist so aus, dass das Modul anschließend nur noch Müll überträgt. Die Ursache konnte noch nicht ermittelt werden.

Wenn man nun nach dem Online-Update feststeckt, oder die Firmware vorsorglich lieber vom Rechner aus Updaten will, benötigt man den entsprechenden Flasher:

Flash Utility (leider win only)

Anschließend muss man den Update-Pin (aktuell GPIO0) auf LOW (Ground) ziehen und das Modul kurz vom Strom trennen (Neustarten). Anschließend kann mit dem Flasher über die Serielle Schnittstelle die Firmware übertragen werden. Der Flasher zeigt entsprechend den Verlauf an.

Firmware-Files

Stock

Links in den Weiten des Internet

Die Module sind noch recht neu und kommen wie die Chips selber aus China.

Leider ist die Doku des Herstellers in weiten Teilen in Chinesisch. Die Community ist aber recht rege und so gibt es eine Vielzahl von Beschreibungen / Wikis / Tutorials ... im Netz. Hier mal ein Versuch einer Sammlung zum besseren Einstieg: