Salve, ho un errore quando cerco di compilare il codice che contiene le info del wifi e del serve mqtt:
Arduino:1.8.8 (Windows 7), Scheda:"NodeMCU 1.0 (ESP-12E Module), 80 MHz, Flash, Enabled, 4M (no SPIFFS), v2 Lower Memory, Disabled, None, Only Sketch, 115200"
Opzioni di compilazione cambiate, ricompilo tutto
Temperature_sensor_mqtt:38:4: error: 'WiFi' does not name a type
WiFi.begin(ssid, password); //begin WiFi connection
^
Temperature_sensor_mqtt:41:3: error: expected unqualified-id before 'while'
while (WiFi.status() != WL_CONNECTED) {
^
Temperature_sensor_mqtt:46:2: error: 'Serial' does not name a type
Serial.println("");
^
Temperature_sensor_mqtt:47:2: error: 'Serial' does not name a type
Serial.print("Connected to ");
^
Temperature_sensor_mqtt:48:2: error: 'Serial' does not name a type
Serial.println(ssid);
^
Temperature_sensor_mqtt:49:2: error: 'Serial' does not name a type
Serial.print("IP address: ");
^
Temperature_sensor_mqtt:50:2: error: 'Serial' does not name a type
Serial.println(WiFi.localIP());
^
Temperature_sensor_mqtt:51:2: error: 'Serial' does not name a type
Serial.print("connecting to MQTT broker...");
^
Temperature_sensor_mqtt:52:2: error: 'client' does not name a type
client.begin("192.168.0.107", WiFiclient);
^
Temperature_sensor_mqtt:53:11: error: expected constructor, destructor, or type conversion before ';' token
connect();
^
Temperature_sensor_mqtt:55:1: error: expected declaration before '}' token
}
^
exit status 1
'WiFi' does not name a type
Questo report potrebbe essere più ricco di informazioni abilitando l'opzione
"Mostra un output dettagliato durante la compilazione"
in "File -> Impostazioni"
Considerato che sono abbastanza nuovo nel mondo, non riesco a capire dove e come metterci mano. Le librerie incluse sono correttamente installate, così come è installato l'esp8266
Qualche aiuto o qualche "consiglio"?
Buongiorno,
essendo il tuo primo post, nel rispetto del regolamento della sezione Italiana del forum (… punto 13, primo capoverso), ti chiedo cortesemente di presentarti IN QUESTO THREAD (spiegando bene quali conoscenze hai di elettronica e di programmazione ... possibilmente evitando di scrivere solo una riga di saluto) e di leggere con MOLTA attenzione il su citato REGOLAMENTO ... Grazie. 
P.S.: Ti ricordo che, fino a quando non sarà fatta la presentazione, nessuno ti potrà rispondere, quindi ti consiglio di farla al più presto. 
gpb01:
Due cose ...
-
Nell'IDE, nelle preferenze, metti il segno di spunta per "Mostra un output dettagliato" sia per la compilazione che per il caricamento (... così avrai maggiori dettagli sull'errore).
-
Metti il codice che stai utilizzando (...mi raccomando, in conformità al regolamento, punto 7, il codice va racchiuso tra i tag CODE che, in fase di edit, ti inserisce il bottone </> ... primo a sinistra).
Guglielmo
Salve, grazie delle dritte!
Allora l'errore dettagliato è questo:
Arduino:1.8.8 (Windows 7), Scheda:"NodeMCU 1.0 (ESP-12E Module), 80 MHz, Flash, Enabled, 4M (no SPIFFS), v2 Lower Memory, Disabled, None, Only Sketch, 115200"
Temperature_sensor_mqtt:38:4: error: 'WiFi' does not name a type
WiFi.begin(ssid, password); //begin WiFi connection
^
Temperature_sensor_mqtt:41:3: error: expected unqualified-id before 'while'
while (WiFi.status() != WL_CONNECTED) {
^
Temperature_sensor_mqtt:46:2: error: 'Serial' does not name a type
Serial.println("");
^
Temperature_sensor_mqtt:47:2: error: 'Serial' does not name a type
Serial.print("Connected to ");
^
Temperature_sensor_mqtt:48:2: error: 'Serial' does not name a type
Serial.println(ssid);
^
Temperature_sensor_mqtt:49:2: error: 'Serial' does not name a type
Serial.print("IP address: ");
^
Temperature_sensor_mqtt:50:2: error: 'Serial' does not name a type
Serial.println(WiFi.localIP());
^
Temperature_sensor_mqtt:51:2: error: 'Serial' does not name a type
Serial.print("connecting to MQTT broker...");
^
Temperature_sensor_mqtt:52:2: error: 'client' does not name a type
client.begin("192.168.0.107", WiFiclient);
^
Temperature_sensor_mqtt:53:11: error: expected constructor, destructor, or type conversion before ';' token
connect();
^
Temperature_sensor_mqtt:55:1: error: expected declaration before '}' token
}
^
Uso la libreria ESP8266WiFi alla versione 1.0 nella cartella: C:\Users\SPR\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0-beta2\libraries\ESP8266WiFi
Uso la libreria arduino-mqtt-master alla versione 2.4.1 nella cartella: C:\Users\SPR\Documents\Arduino\libraries\arduino-mqtt-master
Uso la libreria SHT1x-master nella cartella: C:\Users\SPR\Documents\Arduino\libraries\SHT1x-master (legacy)
Uso la libreria Wire alla versione 1.0 nella cartella: C:\Users\SPR\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0-beta2\libraries\Wire
exit status 1
'WiFi' does not name a type
Ho dovuto eliminare una parte dell'errore che racchiudeva tutti i percorsi perchè superava enormemente il numero di caratteri.
Mentre il codice scritto (o almeno copiato in buona parte) è il seguente, ovviamente adattato alle mie esigenze:
/*NodeMCU temperature and umidity
*
* by LF
*/
#include <ESP8266WiFi.h>
#include <MQTT.h>
#include <MQTTClient.h>
#include <SHT1x.h>
#include <Wire.h>
const char* ssid = "ToF-SIMS2";
const char* password = "ruthenium2016";
WiFiClient WiFiclient;
MQTTClient client;
unsigned long lastMillis = 0;
String page = "";
String text = "";
String data;
// Specify data and clock connections and instantiate SHT1x object
#define dataPin 2 //D4
#define clockPin 0 //D3
SHT1x sht1x(dataPin, clockPin);
float temp_c;
float humidity;
void setup()
{
Serial.begin(115200); // Open serial connection to report values to host
Serial.println("Starting up");
}
WiFi.begin(ssid, password); //begin WiFi connection
// Wait for connection
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.print("Connected to ");
Serial.println(ssid);
Serial.print("IP address: ");
Serial.println(WiFi.localIP());
Serial.print("connecting to MQTT broker...");
client.begin("192.168.0.107", WiFiclient);
connect();
}
void connect() {
while (!client.connect("Temperature_sensor1", "sensors_mqtt", "sensors_mqtt")) {
Serial.print(".");
delay(1000);
}
Serial.println("\nconnected!");
client.subscribe("Temperature and humidity data");
}
void loop()
{
// Read values from the sensor
temp_c = sht1x.readTemperatureC();
humidity = sht1x.readHumidity();
client.loop();
if(!client.connected()) {
connect();
}
if(millis() - lastMillis > 2000) {
lastMillis = millis();
client.publish("Temperature_sensor1/temperature", (String)temp_c);
client.publish("Temperature_sensor1/humidity", (String)humidity);
}
}
Spero possiate darmi una mano =)
Grazie in anticipo
comunque, ho risolto, una parentesi mancante ahah
mmmm hai provato a premere ctrl+t dentro all'ide?
ti accorgeresti che ci sono un sacco di parentesi graffe chiuse a sproposito e conseguentemente pezzi di programma che si trovano orfani di setup
inoltre...
WiFi non è mai stato definito (a meno che non sia interno alle librerie MQTT...) 
WiFiClient WiFiclient;
MQTTClient client;
p.s. scrivevo prima dell'ultimo commento...
ancora una ne hai aggiunta!!

Patrick_M:
mmmm hai provato a premere ctrl+t dentro all'ide?
ti accorgeresti che ci sono un sacco di parentesi graffe chiuse a sproposito e conseguentemente pezzi di programma che si trovano orfani di setup
inoltre...
WiFi non è mai stato definito (a meno che non sia interno alle librerie MQTT...) 
p.s. scrivevo prima dell'ultimo commento...
ancora una ne hai aggiunta!!

SISI le ho sistemate. wifi dovrebbe essere dentro la libreria esp.
Ora sto tribolando tra publisher e subscribe per far comunicare il node e il raspberry. ma questa è un'altra storia