ESP8266

Aus TippvomTibb
Zur Navigation springen Zur Suche springen

Allgemeines

Zum Einstieg verweise ich auf die Wiki-Seite und die Homepage des Herstellers.

Modelle

Eigentlich ist der ESP8266 erst einmal nur der Chip, besser gesagt ein SoC (SystemonChip) mit WLAN, UART und SPI. Viele haben aber wenn sie von einem ESP8266 sprechen ein Modul vor Augen. Die Module kann man grob in zwei Kategorien teilen. Die einen haben einen USB-Anschluss und die anderen eben nicht. Das verhält sich wie beim Arduino. Der ATmega wird um einen USB-TTL Wandler ergänzt und schon hat man fast einen Arduino. Beim ESP8266 ist es genauso. Für den normalen Betrieb benötigt man den USB-Port eher nicht, sondern eben nur zum Programmieren. Hat man also ein Modul ohne USB schließt man einen USB-TTL-Wandler an und schon hat man das gleiche wie bei einem ESP8266-Modul mit USB.

Programmieradapter

Spezialadapter

ESP Programmieradapter.png

Beim Ali wird Dir geholfen. Dieser Programmer beherrscht nicht nur den Chip in der Bauform, sondern hat auch direkt einen Steckplatz für das ESP01S-Modul. Ob er auch das ESP01-Modul verträgt muss ich noch testen.

ESP01 S Vergleich.jpg

Die Angaben im Netz zu den Unterschieden sind nicht eindeutig, Den Unterschied mit der EEPROM-Speichergröße kann ich bei meinen Modulen nicht feststellen. Vielleicht kann jemand in den Kommentaren helfen.

Adapter mit einem CP2102

Mit dem Wissen der CP2102-Wikiseite bewaffnet kann man hier schnell ans Werk gehen.

CP2102 PCB.jpg

Bevor man die Verdrahtung von Wandler und ESP01-Modul in Angriff nimmt muss man sich natürlich erst ein Bild der Pinbelegung machen und dann schauen ob das alles so ohne weiteres zusammenpasst.

ESP01-Modul von oben/Pins links/Antenne rechts
1 TX 2 GND
3 EN (CHPD) 4 IO2 (GPIO2)
5 RST 6 IO0 (GPIO0)
7 3V3 8 RX
CP2102-Modul von oben/Pins links/USB rechts
1 +5V vom USB
2 GND
3 RXD
4 TXD
5 RST
6 3V3 vom CP2102

Die Aussage nach der RX und TX immer über Kreuz angeschlossen werden ist so nicht haltbar. Wie ein Anwalt sagen würde: Es kommt drauf an. Nämlich mit welcher Logik der PCB-Layouter die Beschriftung angebracht hat. Im Zweifel muss man nachschauen/nachmessen an welchen Pin am Chip TX und RX verbunden sind. Auf Chipebene stimmt dann die Aussage mit dem Kreuzen. Dann sind nur noch, wie übrigens bei allen Pins die Spannungslevel und Strombelastbarkeiten zu überprüfen.

Screenshot 20210215 154806.png

Ein recht gut gemachtes Video zeigt keinerlei Zusatzbeschaltung. Der Programmieradapter ist direkt mit dem zu flashenden Gerät verbunden.

Es gibt einige Anleitungen, die als Programmieradapter einen Arduino oder eine NodeMCU, ... nutzen. Das geht natürlich. Wie schon weiter oben erwähnt sind diese Boards ja im Prinzip nix anderes als ein Mikrocontroller mit Programmieradapter on Board. Was bei diesen Varianten gemacht wird ist einfach den Onboard-Mikrocontroller "tot legen" und an dessen Stelle einen externen Controller anhängen, der dann den Onboard-Wandler für sich nutzt.

Adapter mit einem CH340G

Den Adapter zum Programmieren des ESP-01 gibt es fix und fertig beim Ali.

[1]

Ohne einen Schaltplan geht bei mir jedes mal das Raetselraten um die Anschlussbelegung und die Funktion von Schaltern und Tastern los.

Eine Seite, die sich sehr schoen diesem Problem stellt ist z. B. [2].

Mit dem passenden Schaltplan wird die Bedienung und evtl. auch Einschraenkungen, oft direkt deutlich.

Einfach-Relais

ESP01 Relais PCB Oberseite.jpg
ESP01 Relais PCB Unterseite.jpg

worker:~ # iwlist wlan0 scanning

       Cell 03 - Address: 3E:71:BF:2A:B6:E0
                   Channel:1
                   Frequency:2.412 GHz (Channel 1)
                   Quality=47/70  Signal level=-63 dBm  
                   Encryption key:off
                   ESSID:"FaryLink_2AB6E0"
                   Bit Rates:5.5 Mb/s; 11 Mb/s; 1 Mb/s; 2 Mb/s; 6 Mb/s
                             12 Mb/s; 24 Mb/s; 48 Mb/s
                   Bit Rates:54 Mb/s; 9 Mb/s; 18 Mb/s; 36 Mb/s
                   Mode:Master
                   Extra:tsf=0000000000bd1a5c
                   Extra: Last beacon: 56ms ago
                   IE: Unknown: 000F466172794C696E6B5F324142364530
                   IE: Unknown: 01088B9682840C183060
                   IE: Unknown: 030101
                   IE: Unknown: 32046C122448
                   IE: Unknown: DD0918FE34030100000000

worker:~ # ip a

   wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1280 qdisc mq state UP group default qlen 1000
   link/ether 00:30:f1:ed:f2:de brd ff:ff:ff:ff:ff:ff
   inet 192.168.4.2/24 brd 192.168.4.255 scope global dynamic noprefixroute wlan0
      valid_lft 7187sec preferred_lft 7187sec
   inet6 fe80::c17c:4c72:cef4:26f2/64 scope link noprefixroute 
      valid_lft forever preferred_lft forever

worker:~ # nmap -v -sn 192.168.4.0/24

Nmap scan report for 192.168.4.0 [host down]
Nmap scan report for 192.168.4.1
Host is up (0.0014s latency).
MAC Address: 3E:71:BF:2A:B6:E0 (Unknown)
Nmap scan report for 192.168.4.3 [host down]


worker:~ # nmap -v -A 192.168.4.1

Starting Nmap 7.70 ( https://nmap.org ) at 2021-02-15 17:22 CET
NSE: Loaded 148 scripts for scanning.
NSE: Script Pre-scanning.
Initiating NSE at 17:22
Completed NSE at 17:22, 0.00s elapsed
Initiating NSE at 17:22
Completed NSE at 17:22, 0.00s elapsed
Initiating ARP Ping Scan at 17:22
Scanning 192.168.4.1 [1 port]
Completed ARP Ping Scan at 17:22, 0.24s elapsed (1 total hosts)
Initiating Parallel DNS resolution of 1 host. at 17:22
Completed Parallel DNS resolution of 1 host. at 17:22, 0.00s elapsed
Initiating SYN Stealth Scan at 17:22
Scanning 192.168.4.1 [1000 ports]
Completed SYN Stealth Scan at 17:22, 9.65s elapsed (1000 total ports)
Initiating Service scan at 17:22
Initiating OS detection (try #1) against 192.168.4.1
Retrying OS detection (try #2) against 192.168.4.1
NSE: Script scanning 192.168.4.1.
Initiating NSE at 17:22
Completed NSE at 17:22, 0.00s elapsed
Initiating NSE at 17:22
Completed NSE at 17:22, 0.00s elapsed
Nmap scan report for 192.168.4.1
Host is up (0.020s latency).
All 1000 scanned ports on 192.168.4.1 are closed
MAC Address: 3E:71:BF:2A:B6:E0 (Unknown)
Warning: OSScan results may be unreliable because we could not find at least 1 open and 1 closed port
Device type: specialized|general purpose
Running (JUST GUESSING): DTE embedded (95%), lwIP 1.4.X (95%), Enlogic embedded (95%), Espressif embedded (95%), Philips  embedded (95%), Ocean Signal embedded (95%), 2N embedded (91%), Advanced Illumination embedded (91%)
OS CPE: cpe:/a:lwip_project:lwip cpe:/h:philips:hue_bridge cpe:/a:lwip_project:lwip:1.4 cpe:/h:2n:helios  cpe:/h:advanced_illumination:dcs-100e
Aggressive OS guesses: DTE Energy Bridge (lwIP stack) (95%), Enlogic PDU (FreeRTOS/lwIP) (95%), Espressif esp8266 firmware  (lwIP stack) (95%), Philips Hue Bridge (lwIP stack v1.4.0) (95%), Ocean Signal E101V emergency beacon (FreeRTOS/lwIP) (95%),  ESPEasy OS (lwIP stack) (95%), 2N Helios IP VoIP doorbell (91%), Advanced Illumination DCS-100E lighting controller (91%),  AudioControl D3400 network amplifier (91%), British Gas GS-Z3 data logger (91%)
No exact OS matches for host (test conditions non-ideal).
Network Distance: 1 hop
TRACEROUTE
HOP RTT      ADDRESS
1   20.24 ms 192.168.4.1 

NSE: Script Post-scanning.
Initiating NSE at 17:22
Completed NSE at 17:22, 0.00s elapsed
Initiating NSE at 17:22
Completed NSE at 17:22, 0.00s elapsed
Read data files from: /usr/bin/../share/nmap
OS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 12.39 seconds
           Raw packets sent: 1193 (53.616KB) | Rcvd: 1191 (48.152KB) 

AT Kommandouebersicht

Mehrfach Relaiskarte

nuvoton n76E003

Quellen

https://www.heise.de/make/artikel/ESP8266-flashen-3042776.html

https://www.kollino.de/arduino/esp8266-01-wlan-modul-flashen/

https://www.instructables.com/3-Simple-Ways-of-Programming-an-ESP8266-12X-Module/

http://stefanfrings.de/esp8266/

Request for Comments


Chris T. Ludwig

vor 39 Monaten
Punktzahl 0++
Testkommentar ESP8266
Kommentar hinzufügen
TippvomTibb freut sich über alle Kommentare. Sofern du nicht anonym bleiben möchtest, registriere dich bitte oder melde dich an.