🠔 Retour

C/C++ - Éco-conception & Green Coding IoT

Le langage C/C++ est le langage de référence pour les systèmes embarqués et l'IoT. Sur des plateformes comme le M5Stack (ESP32), chaque milliampère compte : une mauvaise gestion des ressources réduit l'autonomie, augmente les coûts d'infrastructure et accroît l'empreinte écologique des déploiements.

Cette page présente 10 règles d'éco-conception C/C++ adaptées à l'ESP32/M5Stack, mesurées à l'ampèremètre, avec des équivalences CO₂ concrètes calculées sur la base du mix énergétique de La Réunion (~573 g CO₂/kWh).

Métriques de référence Green IT

1 km voiture thermique
112 g eq CO₂ (source ADEME)
La Réunion — mix énergétique
~573 g CO₂/kWh (thermique fossile)
Batterie IoT 700 mAh (3,7V)
Durée de vie × consommation moy.
1 arbre mature
Absorbe ~22 kg CO₂/an

Ces références permettent de contextualiser l'impact du firmware dans des termes concrets du quotidien.

Exemple de 10 Éco-Rules C/C++ IoT

1

Gestion progressive de la luminosité & Deep Sleep

#énergie #écran #deep-sleep Intermédiaire
−94%
Consommation
~23 km
voiture/an
⭐⭐⭐⭐⭐
2

Optimiser les boucles et éviter les calculs redondants

#cpu #performance Débutant
+35%
Cycles économisés
~1,5 km
voiture/an
⭐⭐⭐
3

Utiliser les interruptions plutôt que le polling actif

#interruptions #veille #énergie Avancé
×20
Réduction conso.
~16 km
voiture/an
⭐⭐⭐⭐⭐
4

Limiter les impressions série et désactiver les logs en production

#serial #logging #cpu Intermédiaire
−57%
Consommation
~13 km
voiture/an
⭐⭐⭐⭐
5

Gestion fine de la mémoire — Stack & Heap

#mémoire #heap #stabilité Avancé
−33%
Consommation RAM
~7 km
voiture/an
⭐⭐⭐
6

Désactiver les modules et périphériques non utilisés

#wifi #bluetooth #périphériques Intermédiaire
−72%
Consommation
~22 km
voiture/an
⭐⭐⭐⭐⭐
7

Privilégier constexpr et const pour les valeurs fixes

#rom #compilateur #optimisation Intermédiaire
−2 Ko
RAM économisée
+10%
Performance
⭐⭐⭐
8

Adapter dynamiquement la fréquence CPU aux besoins

#dvfs #cpu-freq #énergie Avancé
−44%
Consommation CPU
~12 km
voiture/an
⭐⭐⭐⭐
9

Minimiser les accès à la mémoire Flash — cache en RAM

#flash #cache #spiffs Avancé
−65%
Consommation Flash
~22 km
voiture/an
⭐⭐⭐⭐⭐
10

Choisir les types de données les plus petits adaptés au cas d'usage

#types #mémoire #cache Débutant
−60%
Mémoire
~2,5 km
voiture/an
⭐⭐⭐

Bibliographie & Références

Retour aux langages Accueil Ateliers pratiques