Petite station météo avec BME280/ESP8266 et serveur web

Bonjour,
tout nouveau sur le forum je vous expose mon projet de "station méteo".
Pour cela j'utilise un BME280 et un ESP8266.
Le but serai de le mettre devant la maison et d'envoyer les données sur un serveur web qui serait sur ma box (afin d’être accessible par mon tel).
Bref un projet qui doit peut-être vous sembler simple mais qui me demande beaucoup car c'est mon premier!

Après quelques recherches et le temps de me nouer le cerveau, j'ai réussi à faire ceci:

#include <Adafruit_BME280.h>                            


#define adresseI2CduBME280                0x76            
#define delaiRafraichissementAffichage    30000            


Adafruit_BME280 bme;

// Altitude en mètres 
float altitude = 347.0;  


// ========================
// Initialisation programme
// ========================
void setup() {
  
  // Initialisation du port série 
  Serial.begin(9600);
  while(!Serial);
  Serial.println("Programme de test du BME280");
  Serial.println("===========================");
  Serial.println();

  // Initialisation du BME280
  Serial.print(F("Initialisation du BME280, à l'adresse [0x"));
  Serial.print(adresseI2CduBME280, HEX);
  Serial.println(F("]"));
  
  if(!bme.begin(adresseI2CduBME280)) {
    Serial.println(F("--> ÉCHEC…"));
    while(1);                              
  } else {
    Serial.println(F("--> RÉUSSIE !"));
  }
  Serial.println();
  
}


// ======================================
// Boucle principale 
// ======================================
void loop() {

 // Lecture des valeurs du BME280
  float temperature = bme.readTemperature();
  float pressure = bme.readPressure() / 100.0F;  // Conversion en hPa
  float humidity = bme.readHumidity();

  // Calcul de la pression corrigée au niveau de la mer
  float correctedPressure = pressure / pow((1 - (altitude / 44330.0)), 5.255);

  

  
  Serial.print(F("Température = "));
  Serial.print(bme.readTemperature());
  Serial.println(F(" °C"));
  
  
  Serial.print(F("Humidité = "));
  Serial.print(bme.readHumidity());
  Serial.println(F(" %"));

  Serial.print("Measured Pressure: ");
  Serial.print(pressure);
  Serial.println(" hPa");

  Serial.print("Corrected Pressure: ");
  Serial.print(correctedPressure);
  Serial.println(" hPa");



    delay("30");                
  Serial.println();                                     

}

Ca à l'air de fonctionner. Qu'en pensez-vous ? ai-je fais des erreurs?

Il me reste maintenant la partie serveur web et la programmation pour l'envoie de tout cela. J'avoue ne pas avoir d'idée et de compétences pour cette partie.
Je vais poursuivre mes recherches et espérer un peu d'aide :grinning:.

Merci pour votre temps.

Bienvenu sur le forum,

je crois que la station météo est la porte d'entrée pour plusieurs d'entre nous.

Afin de mieux t'aider, il faudrait m'éclairer:

  • quel appareil devrait être le serveur web ? Est-ce le ESP8266, la box, ton ordinateur ?
  • veux-tu voir les données sur ton téléphone pour savoir comment t'habiller le matin (uni serveur local peut être approprié, mais pas nécessairement HTTP) ou lorsque t'es à distance pour savoir le temps qu'il fait à la maison (un serveur externe peut être une meilleure solution) ?

Dans le cas d'un service local, tu peux opter - oui - pour une page web, mais tu peux aussi programmer un autre ESP8266 couplé à un affichage OLED pour créer un petit bidule branché sur le comptoir de la cuisine.

Dans le cas d'un service externe, il y a plusieurs services de station météo à l'international, services gratuits qui reçoivent tes données et les affichent avec géo-localisation. Il suffirait alors de demander à ESP8266 d'envoyer ses données aux dix minutes (fréquence x) pour réaliser ton projet.

Bonjour et merci pour ta réponse.
Dans mon cas j’aimerais avoir accès sur mon téléphone d’un peu partout.
Concernant la localisation du serveur dans le principe je n’étais pas fixé. Je peux réaliser cela sur la box ou sur un esp.

Le but étant vraiment d’avoir une vision de ce qui se passe dehors peu importe où je suis afin de gérer au mieux la démotique de la maison en plus de « bidouiller ».

Merci encore.

Il y a un tutoriel particulièrement bien fait ici, qui pourra te montrer une réalisation très proche de ce que tu cherches, et que tu pourras ensuite mettre à ton goût :

Bonjour,
merci pour le retour je vais regarder cela et tenter !

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.