DHT11 con ESP01...help sketch

250 views
Skip to first unread message

Francesco Biancardi

unread,
Jan 19, 2017, 9:46:00 AM1/19/17
to souliss-it
Salve,
sto cercando di collegare un sensore DHT11 all'esp01 in mio possesso. Carico lo sketch riportato di seguito e nulla funge, nel senso che su soulissApp i valori reading sono NaN.
Ance se a dire il vero non comprendo questo stralcio dello sketch DHT dht(DHTPIN, DHTTYPE, 11);...l'11 per che sta?
Ho provato a sostituire il pin 1 con il pin 0 ma il risultato non cambia

/ Let the IDE point to the Souliss framework
#include "SoulissFramework.h"

// Configure the framework
#include "bconf/MCU_ESP8266.h"              // Load the code directly on the ESP8266
#include "conf/Gateway.h"                   // The main node is the Gateway, we have just one node
#include "conf/IPBroadcast.h"

// **** Define the WiFi name and password ****
#define WIFICONF_INSKETCH
#define WiFi_SSID               "xxxxxxx"
#define WiFi_Password           "xxxxxxxxxxx"    

// Include framework code and libraries
#include <ESP8266WiFi.h>
#include <EEPROM.h>

/*** All configuration includes should be above this line ***/ 
#include "Souliss.h"

// Include framework code and libraries
#include <SPI.h>
#include <DHT.h>

// Include sensor libraries (from Adafruit) Uncomment whatever type you're using!
#define DHTTYPE DHT11   // DHT 11
//#define DHTTYPE DHT22     // DHT 22 (AM2302), AM2321
//#define DHTTYPE DHT21   // DHT 21 (AM2301)

#define DHTPIN  1        // what digital pin we're connected to

/*** All configuration includes should be above this line ***/ 
#include "Souliss.h"

#define HUMIDITY              0               // Leave 2 slots for T58
#define TEMP0                 2               // Leave 2 slots for T52

// DHT sensor DHT dht(DHTPIN, DHTTYPE); // for ESP8266 use
DHT dht(DHTPIN, DHTTYPE, 11);

void setup()
{   
    Initialize();

    // Get the IP address from DHCP
    GetIPAddress();                          
    SetAsGateway(myvNet_dhcp);                  // Set this node as gateway for SoulissApp

    dht.begin();                                // initialize temperature sensor

    Set_Humidity(HUMIDITY);
    Set_Temperature(TEMP0);
}

void loop()
    // Here we start to play
    EXECUTEFAST() {                     
        UPDATEFAST();   

        // Execute the code every 1 time_base_fast      
        FAST_10ms() {
          
            // Just process communication as fast as the logics
            ProcessCommunication();
        } 

        // Process the other Gateway stuffs
        FAST_GatewayComms();          
    }
    EXECUTESLOW()
    {   
        UPDATESLOW();

        SLOW_10s()  {

            Logic_Humidity(HUMIDITY);
            Logic_Temperature(TEMP0);
                     
        }
        
        SLOW_50s()  {
          float humidity = dht.readHumidity();
          float temperature = dht.readTemperature();
          if (!isnan(humidity) || !isnan(temperature)) {
            ImportAnalog(HUMIDITY, &humidity);
            ImportAnalog(TEMP0, &temperature);
          }
        }   
    }       

Andrea Pic

unread,
Jan 20, 2017, 4:47:52 PM1/20/17
to souliss-it
ciao 
a me non risulta 

DHT dht(DHTPIN, DHTTYPE, 11);


piuttosto cosi  dopo aver dichiarato DHTPIN con il pin di ingresso sensore e DHTTYPE il tipo di dht che hai

DHT dht(DHTPIN, DHTTYPE);

saluti 
andrea

Francesco Biancardi

unread,
Jan 20, 2017, 5:03:38 PM1/20/17
to souli...@googlegroups.com
Allora vanno sistemati i code nelle wiki da dove ho preso questo sketch..di sicuro sono errati i typical per temperatura e umidità. Ad ogni modo è riportato che per esp8266 va messa quella riga. 
Che ne dici

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "souliss-it" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/souliss-it/LU2PQ-bobzA/unsubscribe.
Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a souliss-it+unsubscribe@googlegroups.com.
Per postare in questo gruppo, invia un'email a souli...@googlegroups.com.
Per visualizzare questa discussione sul Web, visita https://groups.google.com/d/msgid/souliss-it/2f026ec5-32eb-405f-b4ca-ca79fd021abc%40googlegroups.com.
Per altre opzioni visita https://groups.google.com/d/optout.

Andrea Pic

unread,
Jan 21, 2017, 3:32:07 AM1/21/17
to souliss-it
io ho cosi e funziona

#include <DHT.h>



#define DHTTYPE DHT11   // DHT 11 il tu tipo di dht


#define DHTPIN  14         // il tuo pin connesso a dht



#define HUMIDITY             14             // Leave 2 slots for T58 -----i tuoi slot
#define TEMP0                16             // Leave 2 slots for T52

DHT dht(DHTPIN, DHTTYPE);

nel setup

dht.begin(); 

Set_Humidity(HUMIDITY);
Set_Temperature(TEMP0);


nella loop


 SLOW_10s(){
    Logic_Humidity(HUMIDITY);
            Logic_Temperature(TEMP0);
 
  }
  SLOW_10s()  {
          float humidity = dht.readHumidity();
          float temperature = dht.readTemperature(false);
          if (!isnan(humidity) || !isnan(temperature)) {
            ImportAnalog(HUMIDITY, &humidity);
            ImportAnalog(TEMP0, &temperature);
          }

non mi sembra molto differente dal tuo
io ho una nodemcu, i tuoi pin non li so
rivedrei anche le connessioni e alimnetazioni al sensore
ciao
Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a souliss-it+...@googlegroups.com.

Domenico Carvetta

unread,
Jan 21, 2017, 5:50:41 AM1/21/17
to souliss-it
#include "DHT.h"                   // include la libreria del sensore di temp e umidità
#define DHTPIN 2                   // definisce il pin dell'ESP8266 dove è connesso il DHT
#define DHTTYPE DHT11              // definisce il tipo di DHT; per esempio DHT 11 
DHT dht(DHTPIN, DHTTYPE, 15);      // inizializzazione del DHT, "15" sta per configurazione micro veloci 

Questo, di seguito, è il corretto Setup.
Cmq, i typical per temperatura e umidità sono corretti, a differenza di quella che dici !!!

Francesco Biancardi

unread,
Mar 18, 2017, 11:02:48 AM3/18/17
to souliss-it
Anche se in ritardo di parecchio tempo, vi voglio ringraziare della mano che mi avete fornito.
Oggi solo ho provato e va tutto alla grande grazie alle vostre dritte. Solo una cosa non comprendo, lo stato "ok" dei tipici ogni tanto va su "ok-rosso". Come mai??
Reply all
Reply to author
Forward
0 new messages