projects
Centrale météo Pico 2W + Raspberry Pi 3
Une centrale météo personnelle qui combine un nœud MicroPython sur Raspberry Pi Pico 2W, plusieurs capteurs environnementaux, une diffusion MQTT et un tableau de bord local sur Raspberry Pi 3.
Statut: En développement actif
Dépôt: GitHub
Documentation: Lien
Présentation
Cette centrale météo personnelle repose sur deux dépôts complémentaires.
Le premier, weather_web_sensors, exécute l’acquisition sur un Raspberry Pi Pico 2W avec MicroPython. Le second, rpi3-meteo, reçoit les mesures sur un Raspberry Pi 3, les historise, les affiche sur une interface locale et les enrichit avec des pages de prévision.
L’ensemble forme une petite chaîne d’observation autonome, pensée pour un usage domestique ou de proximité, avec une architecture simple, réparable et facile à faire évoluer.

Vue du prototype d’acquisition sur Pico 2W avec les capteurs de température, d’humidité et de pression, ainsi qu’un affichage sur écran OLED.

Vue de l’affichage sur l’écran du Raspberry Pi 3, avec les données brutes et les données réduites.
Architecture du projet
La chaîne actuelle se décompose en quatre blocs:
- acquisition locale sur le Pico 2W
- publication des mesures en
MQTT - ingestion et stockage sur le Raspberry Pi 3
- visualisation locale sur écran ou navigateur
Le nœud MicroPython lit plusieurs capteurs en parallèle, calcule une mesure agrégée de référence, met à jour un petit affichage OLED et expose aussi une interface web locale légère. Les données utiles sont ensuite publiées vers un broker Mosquitto, puis consommées par l’application FastAPI, qui les stocke dans PostgreSQL et les restitue sous forme de tableau de bord.
Partie weather_web_sensors
Le dépôt weather_web_sensors constitue la couche embarquée du projet. Il s’appuie sur:
- un
Raspberry Pi Pico 2W - un
BME680pour la température, l’humidité, la pression et les gaz - un
DHT22 - un couple
AHT20+BMP280 - un écran
SSD1306 - un module
DS3231pour l’horloge temps réel
Le logiciel gère:
- deux bus
I2Cdistincts - une acquisition autonome au démarrage
- une synchronisation
NTPavec recopie vers laRTC - une page web locale avec comparaison inter-capteurs
- une exportation
UDPouMQTT
Cette partie est particulièrement intéressante pour comparer plusieurs sondes de température, d’humidité et de pression sur un même montage, afin de mieux suivre les écarts ou de choisir une référence de travail.

Vue de l’affichage du serveur web embarqué sur le Pico 2W, avec les données brutes, les données réduites, les statistiques et les comparaisons entre capteurs.
Partie rpi3-meteo
Le dépôt rpi3-meteo constitue la couche serveur locale et l’interface de visualisation de la centrale météo.
Il repose sur:
- un backend
FastAPI - un broker
Mosquitto - un stockage
PostgreSQL - une interface adaptée à un écran tactile
- des pages de prévision alimentées notamment par
Open-Meteo
L’application consomme deux flux MQTT publiés par le Pico:
- un flux brut pour les acquisitions détaillées
- un flux agrégé pour l’affichage synthétique
Elle peut ensuite:
- historiser les messages et les mesures individuelles
- exposer les dernières valeurs utiles
- calculer un indicateur local de qualité de l’air à partir du
BME680 - afficher des pages de prévision immédiate, horaire et journalière
- produire des graphiques à distance depuis
WSLvia interrogation du serveurPostgreSQLen Python
Ci-dessous, quelques exemples de captures d’écran des pages disponibles sur l’interface utilisateur:

Vue de la page d’accueil du Raspberry Pi 3 avec les données en temps réel et les données réduites.

Vue de la page temps réel du Raspberry Pi 3 avec les données brutes transmises chaque minute via le broker MQTT.

Vue de la page de synthèse du Raspberry Pi 3 avec les données réduites, ici regroupées par heure.

Vue de la page des informations actuelles provenant du site Open-Meteo.

Vue de la page des prévisions à court terme provenant du site Open-Meteo.

Vue de la page des prévisions à 4 jours provenant du site Open-Meteo.
Intérêt du projet
L’intérêt principal de cette centrale météo est de relier proprement l’électronique légère et le logiciel applicatif:
- acquisition embarquée compacte avec
MicroPython - transport des mesures par
MQTT - persistance et requêtes avec
PostgreSQL - interface locale moderne avec
FastAPI - possibilité de faire évoluer séparément la partie capteurs et la partie tableau de bord
Le projet garde aussi une dimension expérimentale utile: ajout futur d’un anémomètre, d’un pluviomètre, amélioration des heuristiques de qualité de l’air, comparaison entre capteurs et enrichissement des visualisations historiques.
On peut aussi envisager la fabrication d’un abri météo en PETG avec une imprimante 3D, ainsi que le remplacement de la transmission des données en Wi-Fi par deux transmetteurs série HC-12 à 433 MHz.
Public visé
Cette centrale météo s’adresse aux personnes qui veulent:
- construire une station météo personnelle ouverte et modifiable
- conserver la maîtrise locale des données
- comparer plusieurs capteurs environnementaux
- disposer d’un tableau de bord autonome sur
Raspberry Pi - réutiliser des briques simples fondées sur
Python,MicroPythonetMQTT
Liens
- nœud capteurs
MicroPython: weather_web_sensors - tableau de bord et stockage
Raspberry Pi 3: rpi3-meteo