Configuración del Arduino IDE e integración de los ESPs y configuración de Thonny bajo macOS
An Apple a day keeps Windows away :-)
Parte 2: Establecer los ESPs
1. Un breve comentario preliminar
Los microcontroladores de Espressif, ESP8266 y ESP32, son muy populares entre los aficionados porque son rápidos, tienen mucho espacio de almacenamiento, WLAN e incluso, dependiendo de la variante, Bluetooth incorporado. Además, hay numerosas placas baratas de varios fabricantes. También se pueden programar con el Arduino IDE. Sin embargo, se necesitan algunos pasos adicionales para que el IDE hable con los ESP.
Además, la versión 1.8.13 del Arduino IDE para MacOS aún no es "Big Sur", lo que requiere algunos pasos adicionales. ¡Hagámoslo!
2. Provisión de placas para ESP8266 y ESP32
Primero, se debe indicar al Arduino IDE de dónde obtener los archivos para manejar los ESP. Para hacer esto, llamamos a la configuración predeterminada en /File. »Preferences« e introduzca las "URLs" de administrador:
Para el ESP8266, esto es:
https://arduino.esp8266.com/stable/package_esp8266com_index.json
y para el ESP32:
https://dl.espressif.com/dl/package_esp32_index.json
Después de hacer clic en el ícono a la derecha de la línea »Additional Board Administrator URLs«, se abrirá una pequeña ventana donde se introducen las dos URLS mencionadas anteriormente, una en cada una de sus propias líneas.
b) Descargar los archivos en el »Boardmanager/Boardmanager«
Para esto lo llamamos: / Tools / Board / Board Administrator ...
c) Cargar los archivos para el ESP8266: Ingrese en el campo de búsqueda »esp82« y haga clic en »Install« (tarda unos segundos en encontrar el paquete deseado)
después cierre la ventana.
3. El primer programa con un ESP6266
Nuevamente utilizo el ejemplo de programa "Blink" de la colección de muestras.
Como objetos de prueba estaban disponibles para mí:
- D1 Mini NodeMCU con el módulo WLAN ESP8266-12F para Arduino
- NodeMCU Lua Lolin V3 Módulo ESP8266 ESP-12F WIFI Placa de desarrollo con CH340
- D1 Placa NodeMCU ESP8266MOD-12F Módulo WiFi Wlan
Las tres placas de AZ-Delivery.
El programa "Blink" (todos los comentarios eliminados):
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on
delay(200); // wait for a second
digitalWrite(LED_BUILTIN, LOW); // turn the LED off
delay(200); // wait for a second
}
Para que el programa sea compatible con ESP, tenemos que seleccionar la placa y el puerto adecuados. Escoger la placa correcta puede ser un poco un juego de adivinanzas, a veces no sabe cuál está disponible. Elegí la placa "WeMos D1 R1", que funcionó con las tres de mis ESP8266s.
Tools - > Board: - > ESP8266 Boards (2.7.4) - > WeMos D1 R1
Y el puerto: Tools - > Port > / dev /cu.usbserial-1420
El nombre exacto del puerto depende, por supuesto, del hardware.
Ahora traduce felizmente el programa y cargarlo en la placa.
Aquí hubo un serio problema esto se debe probablemente al hecho de que el entorno ESP8266 aún no es totalmente compatible con »Big Sur«.
Siempre hubo un mensaje de error »pyserial or esptool directories...«:
Después de algunas búsquedas en la red, encontré algo y pude resolver el problema:
a) Descargar el archivo: https://github.com/espressif/esptool/archive/v3.0.zip
b) Descargar el archivo: https://github.com/pyserial/pyserial/archive/v3.4.zip
c) Desempaquetar los archivos en la carpeta de descargas »esptool-3.0.zip« y »pyserial-3.4.Postal«
d) Cambiar el nombre de la carpeta »esptool-3.0« a »esptool« y de »pyserial-3.4« a »pyserial«
e) Estas dos carpetas ahora se agregan al directorio
~/Library/Arduino15/paquetes/esp8266/hardware/esp8266/2.7.4/tools/
Copiar y reemplazar las carpetas que están ubicadas allí.
¿Cómo entrar a esta carpeta? La carpeta ~/Library suele estar oculta en el Finder. Entonces, ¿qué hacer?
Muy simple: la línea
~/Library/Arduino15/packages/esp8266/hardware/esp8266/2.7.4/tools/
Copie al portapapeles y luego abra el elemento de menú en el Finder: »Go to -> Go to the folder...« y luego pegue el portapapeles en la pequeña ventana y haga clic en »Open».
Después de este procedimiento, la compilación y transmisión de las tres placas funcionaron y hubo un parpadeo potente del LED incorporado.
¡Hecho!
4. El primer programa con un ESP32
Hubo un problema aquí. Las tres placas de la serie "Placa de desarrollo ESP32 D1 R32 con CH340G y WiFi + Bluetooth( Placa de Desarrollo de Internet compatible con Arduino)" de AZ-Delivery inicialmente se negaron a incluir un programa. Dos no pudieron establecer conexión y la otra placa informó: »A fatal error occurred: Timed out waiting for packet content«. Esta placa podría cobrar vida reduciendo la »velocidad de carga« a 115200 baudios.
Los otros dos no pudieron ser persuadidos de hacer contacto con el Arduino IDE incluso con la más baja »velocidad de carga« de 460800 baudios.
Esto definitivamente no se debió al MacOS, porque tuve el mismo resultado con el Arduino IDE bajo WIN 7 y LINUX Mint.
Después de consultar con Gerald Lechner, al menos una de las placas podría cobrar vida.
El mensaje: »Conectando........_____....._____....._____....._____....._____.....« significa que la placa no se puede poner en modo flash.
Si conecta el pin OO a GND y luego presiona el botón »rest«, la placa se cambia manualmente al modo Flash. Con uno de los dos rechazadores esto llevó al éxito, con el segundo fue un esfuerzo inútil.
Así que tres tablas funcionaron:
- ESP32 NodeMCU Módulo WLAN WiFi Placa de desarrollo con CP2102 de AZ-Delivery
- Placa de desarrollo ESP32 D1 R32 con CH340G y WiFi + Bluetooth (Placa de desarrollo de Internet compatible con Arduino) de AZ-Delivery
- Heltec HTIT-WB32 de HELTEC
Como placa, primero elegí el "ESP32 Dev module" de la categoría "ESP32 Arduino", el puerto se llamaba /dev/cu.usbserial-0001. (Todos los controladores necesarios fueron preinstalados!)
5. El Programa
De nuevo el programa probado "Blink", que tuvo que ser cambiado un poco. Porque es el pin 1 o el pin 2 el que está conectado al LED interno y la constante predefinida LED_BUILDIN es desconocida para este módulo.
int LED = 1;
// 1 für ESP32 NodeMCU; 2 für für ESP32 D1 R32
void setup() {
pinMode(LED, OUTPUT);
}
void loop() {
digitalWrite(LED, HIGH);
delay(200);
digitalWrite(LED, LOW);
delay(200);
}
Para la placa Heltec tuve que ajustar:
Board: Heltec WiFi Kit 32
Port: /dev/cu.usbserial-0001
El programa tuvo que ser cambiado :
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
digitalWrite(LED_BUILTIN, HIGH);
delay(200);
digitalWrite(LED_BUILTIN, LOW);
delay(200);
}
¡Hecho! La próxima vez instalaremos Thonny como un entorno de desarrollo para Micro Python.
6 comentarios
Marco
Hallo,
ich nochmal hab den Fehler gefunden.
Anscheinend gibt es Unterschiede bei den Kabels.
Habe drei Stück ausprobiert und erst beim dritten wurde der ESP8266 vom Mac erkannt.
Bei den anderen beiden war nur die Stromversorgung von ESP gegeben.
Gruß Marco
Marco
Hallo zusammen,
der Beitrag ist echt spitze.
Leider wird bei mir der serielle USB-Port nicht angezeigt sondern nur kabellose Verbindungen.
Weiß jemand woran das liegt?
Beste Grüße
Marco
Rudolf Reiber
Das Problem von Julia konnte gelöst werden. Es fehlte das neueste esptool an der entsprechenden Stelle. Ob das nun an Big Sur lag oder daran, dass die Arduino IDE nicht korrekt upgedatet wird? Ich weiß es nicht. Auf jeden Fall tut bei Julia nun alles.
Rudolf Reiber
Hallo Julia,
kannst Du die Probleme bitte genauer schildern.
Bei mir ist die ESP32 Umgebung völlig „Big Sur“ kompatibel.
Viele Grüße
R. Reiber
Julia
vielen Dank für diesen Artikel, die Problembehandlung für den ESP 8266 hat gut geklappt,
aber was ist mit der ESP32 Umgebung, auch sie ist noch nicht völlig »Big Sur« kompatibel,
beste Grüße von Julia
Rudolf Reiber
Hinweis: bei dem dritten ESP32 Board, das nicht tat, befand sich ein Lötbatzen zwischen zwei Pins, dem TXT- und RXT-Pin. Das ist bei der Endkontrolle des Boards offensichtlich nicht aufgefallen. Mithin konnte das Board nicht mit der tion mit der ARDUINO-IDE erfolgen. Nach dem Entfernen der Lötbrücke funktionierte auch das dritte Board einwandfrei.