Nur weil ich die ESPs bereits seit rund 2 Jahren verwende und einige Fallstricke kenne, und weil ich vermeiden will, dass hier Infos fasch verstanden u/o weitergegeben werden:
das mit den "vorgesehenen Pins" beim ESP ist evtl. missverständlich, wenn man sich auf die Arduino-IDE bezieht -
fest vorgesehen sind IMO nur D0 für Wake/Reset, D3 für die (verzichtbare) eingebaute LED, die Hardware-SPI-Pins D5-D7 und die Hardware UART Pins D9+D10 für Rx und Tx.
Code:
digital GPIO default
D0 16 WAKE
D1 5 I2C SCL
D2 4 I2C SDA
D3 0 FLASH/LED
D4 2 TX1
D5 14 SPI SCK
D6 12 SPI MISO
D7 13 SPI MOSI
D8 15 MTD0 PWM
D9 3 UART RX0
D10 1 UART TX0
(D12) 10 SPIWP intern
wenn man kein SPI braucht (z.B. für TFT-Displays oder eine SD-Card), sind auch D5-D8 frei als IOs konfigurierbar;
D8 darf beim Booten nicht auf GND gezogen sein.
D1 und D2 werden in der Arduino IDE standardmäßig als I2C Pins verwendet, aber sie können auch mit dem Befehl
Wire.begin(d,c) // d,c: Pin-Nummern für SDA und SCL
auf andere Pins umkonfiguriert werden.
WENN man also SoftSerial am ESP verwendet und auch andere eingebaute Standard-Funktionalitäten verwendet, sollte man möglichst NICHT verwenden
D0, D1,D2, D5,D6,D7, D9,D10
sondern
D3,D4 (unter Verzicht auf die eingebaute LED an D3) und ggf. auch D8 (z.B. als Output),
und wenn man kein SPI braucht, gehen auch: D5,D6,D7.
D1,D2,D4 (und mit Einschränkungen auch D3,D8 ) sind aber für den praktischen "Arduino-Gebrauch" allesamt für nichts "fest vorgesehen".
Wenn man also D1/D2 nicht für I2C braucht und sich spätere Inkompatibitäten mit Standard-Examples für I2C nicht unbedingt sicherheitshalber ersparen will, kann man ntl auch D1/D2 für SoftSerial verwenden:
Es wird funktionieren, wenn man es richtig verkabelt und richtig programmiert, nur ist es IMO nicht besonders geschickt, es so zu tun: ich persönlich würde D3+D4 dafür verwenden.
Wenn es aber beim OP nicht funktioniert und man Software-Code-Fehler ausschließen kann, liegt es nicht an SoftSerial(D1,D2) sondern an defekter Hardware oder falscher Verkabelung.
Vielleicht ist auch ein Kabel oder eine Steckboard-Klemme defekt (passiert auch schon mal).
Vielleicht ist auch wirklich der ESP inzwischen defekt an einem oder mehreren GPIOs wegen vorhergegangener Schaltungsfehler, oder vlt war er auch von vornherein defekt: da hilft dann nur ein Vergleich nach Neukauf.
Der UNO hingegen ist sehr Fehler-tolerant, dass der kaputt sein sollte ist zwar nicht unmöglich, aber deutlich unwahrscheinlicher.
Lesezeichen