Attention:

Cette carte doit impérativement être alimentée en 3V3, sous peine d’être détruite (pas forcément entièrement).

Mrd_Temp_Salon

Ce programme sert à envoyer à ThingSpeak les données collectées dans un DHT22

Emplacement: C:\Users\MrdTosh\Documents\Arduino\Mrd_Temp_Salon

Le code (dans Arduino.ide)
//#include <WiFi.h> // Librairie wifi du ESP32
#include <ESP8266WiFi.h> // Librairie wifi du ESP8266
#include « ThingSpeak.h »
#include <Adafruit_Sensor.h>
//#include « DHT.h » //DHT22 & ESP32 NodeMCU (la grande carte)
#include « DHTesp.h » //essai DHT22 & ESP32 01S (la mini carte)

 

#define DHT_TYPE    DHT22     // DHT 22 (AM2302)
const int DHT_PIN = 2;

 

//const int LED_PIN = 13; // Led bleue du ESP32
//const int LED_PIN = 1; // Led bleue du ESP8266

 

const char* WIFI_NAME = « FreeCat »;
const char* WIFI_PASSWORD = « bonjouratousdelapartdepatrick »;

 

const int myChannelNumber = 2264941;
const char* myApiKey = « C69IPHU8T6VCCW0J »;
const char* server = « api.thingspeak.com »;

 

// DHT dht(DHT_PIN, DHT_TYPE); //DHT22 & ESP32 NodeMCU (la grande carte)

 

DHTesp dht;

 

WiFiClient client;

 

void setup() {
  dht.setup(DHT_PIN, DHTesp::DHT22); //essai DHT22 & ESP32 01S (la mini carte)
  Serial.begin(115200);
  Serial.println(«  »);

 

  WiFi.begin(WIFI_NAME, WIFI_PASSWORD);
  while (WiFi.status() != WL_CONNECTED){
    Serial.println(« Tentative de connexion au Wifi »);
    delay(2000);
  }
  Serial.println(« Wifi connecté ! »);
  Serial.println(« Adresse IP:  » + WiFi.localIP().toString());
  WiFi.mode(WIFI_STA);
  ThingSpeak.begin(client);
}

 

void loop() {
  // float t = dht.readTemperature(); //DHT22 & ESP32 NodeMCU (la grande carte)
  float t = dht.getTemperature(); //essai DHT22 & ESP32 01S (la mini carte)
  ThingSpeak.setField(1,t);

 

  int x = ThingSpeak.writeFields(myChannelNumber,myApiKey);
 
  Serial.println(« Temp:  » + String(t, 2) + « °C »);
 
  if(x == 200){
    Serial.println(« Température envoyée à ThingSpeak »);
    // esp_sleep_enable_timer_wakeup(60* 1000000); //Mise en sommeil pendant 60 secondes  
    // int ret = esp_deep_sleep_start();  
    // ESP.deepSleep(60* 1000000);
  }else{
    Serial.println(« Erreur d’envoi à ThingSpeak –  » + String(x));
  }
  Serial.println(« —« );
  delay(60000);
}