
En binôme, nous avons conçu SBMail, une boîte aux lettres connectée permettant de recevoir une notification avec photo à chaque nouvelle livraison. L'objectif : proposer une solution simple, sécurisée et accessible pour suivre son courrier en temps réel, où que l'on soit.
Architecture du système
Le système repose sur une ESP32-CAM associée à un capteur infrarouge (IR). Lorsqu'un mouvement est détecté (insertion de courrier), l'ESP32-CAM capture une photo, l'envoie vers Firebase Storage et met à jour une base de données en temps réel.
Côté mobile, une application Flutter permet aux utilisateurs de :
- Se connecter via e-mail/mot de passe ou Google (Firebase Auth)
- Recevoir des notifications en direct (Firebase Cloud Messaging)
- Consulter l'historique des livraisons
- Gérer leurs boîtes aux lettres liées
- Déverrouiller la boîte à distance
Association des boîtes aux lettres via QR code
Chaque boîte possède un QR code unique généré à partir de son identifiant. Lors de la première utilisation, l'utilisateur peut scanner ce QR code avec l'app mobile pour lier automatiquement la boîte à son compte. Cela évite toute saisie manuelle et garantit une liaison rapide et sécurisée entre l'utilisateur et son matériel.
Connexion à Firebase
Le projet utilise de manière combinée plusieurs services Firebase :
- Realtime Database : associe les utilisateurs à leurs boîtes et détecte l'action de déverrouillage
- Storage : héberge les photos capturées
- Cloud Messaging : envoie la notification à l'utilisateur
- Authentication : gestion sécurisée des comptes (utilisateurs vs ESP anonyme)
Serrure électromagnétique
Pour ouvrir la boîte, une serrure électromagnétique 12V (modèle S0837DL-B) est actionnée via un relais connecté à l'ESP32. L'ESP observe une variable dans la Realtime DB, et déclenche l'ouverture en conséquence.

Défis rencontrés
Le projet n'a pas été sans difficulté :
- L'envoi de notifications demandait une configuration fine de FCM (jetons, topics...)
- L'upload du code sur l'ESP32-CAM était particulièrement délicat. Sans le shield USB-série adapté, le flashage était instable ou échouait. Une fois le shield ajouté, la procédure s'est stabilisée
- La gestion du timing pour la capture, l'upload de la photo vers Firebase Storage et la mise à jour en temps réel de la DB a nécessité plusieurs tests
Résultat
SBMail est désormais fonctionnel et fiable. Chaque livraison est documentée et consultable depuis une interface simple, et la boîte peut être déverrouillée depuis n'importe où. Ce projet nous a permis de maîtriser l'écosystème Firebase, d'approfondir Flutter et d'expérimenter l'IoT en conditions réelles.
Présentation du système en images
Voici un aperçu de notre montage :