Différences entre les versions de « ESP8266-Diminuer la consommation »

De MediaWiki UOF
Aller à la navigation Aller à la recherche
Ligne 53 : Ligne 53 :
</pre>
</pre>


==Test 3 : Interdiction Wifi lors du révil==
==Test 3 : Interdiction Wifi lors du réveil==
Sur les courbes précédentes, on constate un pic de consommation lors du boot (jusqu'à 175 mA). Bien que cette phase soit très courte, il sera quand même intéressant de la limiter.  
Sur les courbes précédentes, on constate un pic de consommation lors du boot (jusqu'à 175 mA). Bien que cette phase soit très courte, il sera quand même intéressant de la limiter.  
Ceci est possible en interdisant l'activation de la fonction Wifi '''avant''' d'endormir l'ESP.
Ceci est possible en interdisant l'activation de la fonction Wifi '''avant''' d'endormir l'ESP.
<pre>
ESP.deepSleep( SLEEPTIME, WAKE_RF_DISABLED );
</pre>
===Programme utilisé===


===




Ligne 65 : Ligne 69 :
Au réveil si le Wifi est activé (même s'il n'est pas utilisé : consommation '''77 mA'''
Au réveil si le Wifi est activé (même s'il n'est pas utilisé : consommation '''77 mA'''
Wifi désactivé après le réveil : '''21 mA'''
Wifi désactivé après le réveil : '''21 mA'''
==Liens Wiki==
[[Les cartes programmables]]

Version du 17 février 2022 à 09:47

Cette page présente différents moyens de diminuer la consommation d'un ESP8266 afin d'augmenter la durée de vie d'un module équipé de ce microcontrôleur lorsqu'il est alimenté sur une baterie.

Les informations présentées dans cette page ont été largement inspirées par celle ci : Reducing WiFi power consumption on ESP8266, part 2

Introduction

Au réveil et par défaut, le Wifi est activé. Ceci implique une consommation minimum de l’ESP de 70 mA même si le Wifi n’est pas utilisé. Or, dans les IOT qui mesurent des données, envoient ces données par Wifi puis se rendorment, la consommation est un paramètre essentiel. Il pourrait être intéressant de réduire celle-ci autant que faire se peut.

Ainsi, pendant la phase de setup et de mesure il n’est nul besoin de laisser le Wifi en fonctionnement.

Lors des essais suivants, les mesures de courant ont été enregistrées à l'aide de l'Analyseur de courant simplifié.

Test 1 : démarrage simple (wifi activé par défaut)

Montage utilisé

ESP8266 consommation minimale en deepsleep.png

Programme utilisé

void setup() {
}
void loop() {
}

Mesure de courant

ESP8266-reduction de la consommation programme vide.png

Pour mémoire, les durées sont estimées, a précision de l'analyseur de courant n'étant pas suffisamment précise.

Test 2 : démarrage avec arrêt du Wifi

Montage utilisé

Identique au précédent test

Programme utilisé

#include <ESP8266WiFi.h>
void setup() {
  WiFi.mode( WIFI_OFF );
  WiFi.forceSleepBegin();
  delay( 1 );
}
void loop() {
}

Mesure de courant

ESP8266-reduction de la consommation wifi desactive a l init.png

Pour mémoire, les durées sont estimées, a précision de l'analyseur de courant n'étant pas suffisamment précise.

La réduction de consommation est notable : 21 mA au lieu de 77mA soit 27,3% de la consommation du premier test.

Avant de pouvoir utiliser la connection Wifi à nouveau, il sera nécessaire de réveiller la fonction Wifi de l'ESP :

WiFi.forceSleepWake();
delay( 1 );

Test 3 : Interdiction Wifi lors du réveil

Sur les courbes précédentes, on constate un pic de consommation lors du boot (jusqu'à 175 mA). Bien que cette phase soit très courte, il sera quand même intéressant de la limiter. Ceci est possible en interdisant l'activation de la fonction Wifi avant d'endormir l'ESP.

ESP.deepSleep( SLEEPTIME, WAKE_RF_DISABLED );

Programme utilisé

Conclusion

Au réveil si le Wifi est activé (même s'il n'est pas utilisé : consommation 77 mA Wifi désactivé après le réveil : 21 mA



Liens Wiki

Les cartes programmables