Langages, Logiciels & Outils
Logiciels & Langages
Le projet utilise Python comme langage principal sur toutes les machines. Tous les logiciels sont gratuits et open source (cout total logiciels : 0 EUR).
Langages & bibliotheques
Python 3
Langage principal — scripts ESP32 (MicroPython), Flask, OpenCV, Paho MQTT
MicroPython
Variante Python pour microcontroleurs — tourne sur les deux ESP32
Flask
Framework web Python — tableau de bord sur Pi 1, port 5000 HTTP
Paho MQTT
Bibliotheque MQTT Python — souscription Pi 1 aux topics ESP32
OpenCV
Vision par ordinateur — flux video MJPEG et reconnaissance faciale Pi 2
umqtt.simple
Bibliotheque MQTT MicroPython — publication topics depuis les ESP32
Logiciels & outils
HiveMQ Cloud
Broker MQTT public — communication pub/sub entre ESP32 et Raspberry Pi
Thonny IDE
IDE Python leger — programmation et upload MicroPython vers ESP32 via USB
VS Code + SSH Remote
Developpement direct sur les Pi sans deplacer les fichiers — Git integre
Raspberry Pi OS
Systeme d'exploitation Debian base sur Linux — installe sur les deux Pi
systemd
Gestionnaire services Linux — demarrage automatique Flask et MQTT au boot
FTP Server
Transfert photos depuis Pi 2 vers Pi 1 pour archivage centralise
Topologie reseau
| Appareil | Adresse IP | Role | Protocole & Port |
|---|---|---|---|
| ESP32-C6 XIAO | DHCP 192.168.68.x | Radar MR60BHA2 | MQTT publish — broker.hivemq.com:1883 |
| ESP32-WROVER | DHCP 192.168.68.x | MAX30102 + LM393 + Buzzer | MQTT publish — broker.hivemq.com:1883 |
| Raspberry Pi 1 | 192.168.68.120 | Dashboard Flask + MQTT client | HTTP:5000 (web), HTTP:8080 (API JSON) |
| Raspberry Pi 2 | 192.168.68.123 | Video + Reconnaissance faciale | HTTP:8080 (MJPEG), FTP:21 (photos) |
| Navigateur / Tablette | DHCP 192.168.68.x | Client web personnel | HTTP GET/POST vers Pi 1:5000 |