Ho ripreso in mano dopo molto tempo una NodeMCU V3 cinese che avevo comprato per fare esperimenti. All'epoca avevo solo provato qualche esempio. In particolare 'BasicHttpClient' e ricordo che funzionava con la mia rete WiFi.
Attualmente ho Arduino 1.8.13 su Linux e funziona perfettamente. Ho settato la scheda 'NodeMCU 1.0 (ESP-12E Module)' e caricato un semplice programma di blink del led sulla scheda. Tutto OK.
Ho ripreso l'esempio 'BasicHttpClient', ma mi da errore in compilazione
Arduino:1.8.13 (Linux), Scheda:"NodeMCU 1.0 (ESP-12E Module), 80 MHz, Flash, Disabled (new aborts on oom), Disabled, All SSL ciphers (most compatible), 32KB cache + 32KB IRAM (balanced), Use pgm_read macros for IRAM/PROGMEM, 4MB (FS:2MB OTA:~1019KB), 2, v2 Lower Memory, Disabled, None, Only Sketch, 115200"
In file included from /home/piero/Arduino/libraries/ESP8266WiFi/src/ESP8266WiFi.h:39,
from /home/piero/.arduino15/packages/esp8266/hardware/esp8266/3.0.1/libraries/ESP8266HTTPClient/examples/BasicHttpClient/BasicHttpClient.ino:10:
/home/piero/Arduino/libraries/ESP8266WiFi/src/WiFiClient.h:89:10: error: conflicting return type specified for 'virtual size_t WiFiClient::availableForWrite()'
89 | size_t availableForWrite();
| ^~~~~~~~~~~~~~~~~
In file included from /home/piero/.arduino15/packages/esp8266/hardware/esp8266/3.0.1/cores/esp8266/Stream.h:27,
from /home/piero/.arduino15/packages/esp8266/hardware/esp8266/3.0.1/cores/esp8266/HardwareSerial.h:32,
from /home/piero/.arduino15/packages/esp8266/hardware/esp8266/3.0.1/cores/esp8266/Arduino.h:288,
from /home/piero/.arduino15/packages/esp8266/hardware/esp8266/3.0.1/libraries/ESP8266HTTPClient/examples/BasicHttpClient/BasicHttpClient.ino:8:
/home/piero/.arduino15/packages/esp8266/hardware/esp8266/3.0.1/cores/esp8266/Print.h:80:21: note: overridden function is 'virtual int Print::availableForWrite()'
80 | virtual int availableForWrite() { return 0; }
| ^~~~~~~~~~~~~~~~~
Più di una libreria trovata per "ESP8266WiFi.h"
Usata: /home/piero/Arduino/libraries/ESP8266WiFi
Non usata: /home/piero/.arduino15/packages/esp8266/hardware/esp8266/3.0.1/libraries/ESP8266WiFi
exit status 1
Errore durante la compilazione per la scheda NodeMCU 1.0 (ESP-12E Module).
Questo report potrebbe essere più ricco di informazioni abilitando l'opzione
"Mostra un output dettagliato durante la compilazione"
in "File -> Impostazioni"
C'è evidentemente un errore nella libreria ESP8266WiFi.h. Ho cercato di aggiornarla attraverso Gestione librerie dell'IDE, ma la libreria ESP8266WiFi.h non compare né fra le installate, né fra le installabili o aggiornabili.
Qualcuno sa chiarirmi il mistero, o aiutarmi a compilare l'esempio?
Grazie, ciao,
P.