Niveau batterie - Comment limiter la consommation du pont diviseur ?

YES. 10 µA sont parfaitement acceptables. De toutes façons les batteries bas de gamme ont un courant de fuite supérieur.

@+

al1fch:
Bonjour

L’ESP8266 n’a pas dit son dernier mot !!! :slight_smile:

Nul besoin d’ajouter un pont diviseur … en amont de celui qui existe déjà sur la carte D1 Mini, modifier au besoin celui ci en ajoutant une résistance en série avec R1 (100k ou 120K) pour arriver au rapport de division voulu (1 / 4,2)

Le pont diviseur en place est calculé pour ne pas dépasser 1V sur l’entrée ADC de la puce ESP8266.
pont diviseur D1 MIni.jpg

**Avec 100k en série avec R1 le courant dans le pont diviseur tombe à 10µA, ça change pas mal les choses **

Comme quoi 68tsj avait raison d’écrire

J’aime les informations positives comme cela :smiley: . Je vais tester et je verrai bien. Par contre, si je comprends bien ton schéma et pour le vulgariser, les connexions ne sont pas les même que mon pont diviseur actuel; tu connectes ton l’ADC au “+” de la batterie et le A0 est en bout et non plus au milieu, le tout avec des résistances de 100 ou 120 ohms ?

D'après la doc de l'ESP8266, le deep sleep consomme 20µA.

Quand tu parles de 8mA de quoi parles-tu ?

Parce qu'avec 8mA la batterie va peut-être durer 2 semaines, ce qui est très peu. Il faut absolument descendre très en dessous.

@+

potentiellement 3 explications :

  • La consommation de 20µA du ESP8266 est le ESP8266 tout seul, sans le CH340g (qui consomme beaucoup) et les autres composants qui compose la carte
  • Je suis sur un Wemos D1 mini “Like” (En attente de livraison from China d’un vrai Wemos/Lolin)
  • J’ai aussi un DHT22 et un BMP280 brancher sur mon alimentation. Le BMP280 va être supprimer pour limiter la consommation

'mon schéma' est un extrait du schéma fourni par Lolin/Wemos pour sa carte D1 Mini

A0 est accessible sur le connecteur, ADC non (c'est une broche de la puce ESP8266)

Le pont diviseur que je montre est [u]déjà en service dans la carte D1 Mini[/u] et permet de limiter ADC à 1 Volt quand A0 est à 3,3V . L'ajout de 100k en série avec R1, à l'extérieur de la D1 MIni, permet de transformer le pont diviseure [u]existant[/u] en 1/4,2 au lieu de 1/3,3

Je propose justede connecter une résistance de 100K en A0 et de relier l'autre extrémité au + de la batterie.

Surtout ne pas mettre de pont diviseur externe à la carte D1 Mini (c'est inutile et nuisible à l'autonomie)

CH340G. Ok je comprends mieux. Cela correspond bien.

Il faut passer sur un ESP8266 seul si tu veux faire du LOW POWER. Les cartes avec convertisseur USB / Série c'est bien pour développer / mettre au point, pas plus. J'utilise un NodeMCU pour les même raisons, ensuite la version finale embarque le module ESP8266 seul. De plus l'encombrement est bien moindre.

@+

Le CH 340 , alimenté en 3,3V consomme 50µA typiques (80µA maxi ) quand il n’est pas actif côté USB
Il y a pire comme puce UART/USB.
conso USB340G.jpg
Après avoir testé diverses solutions (y compris des ESP03) j’opte maintenant pour la solution de compromis suivante qui convient bien à mes besoins, mon confort d’utilisation … et une certaine paresse :

deepsleep 1h , activité 1,5 s
carte D1 Mini ou Mini Pro ou D1 Mini Lite
sortie du régulateur 3,3V soulevée délicatement
alimentation par batterie LiFePo4 3,2V 1500mAh

@al1fch : Je vais tester cela rapidement. @hbachetti : C'est prévu aussi, dans l'attente de la livraison de ma commande.

Je vais y arriver avec toutes ces idées à faire un ESP8266 en mode "low power".

Je vais voir pour m'équiper à l'occasion d'un NRF24L01 car la consommation est moindre, mais devoir ajouter un nouveau arduino pour faire la passerelle, sachant que j'ai déjà du RF433 + Zwave + Wifi + Bluetooth, je vais bien finir par griller mon ptit cerveau avec ça :fearful:

Bon, ça ne sera pas ce week end, je n'ai pas de résistance de plus de 10k... Je reviens dès que je peux tester ça !

Bonne nouvelle, après avoir acheté ces petites résistances, cela fonctionne correctement. Je vais tester à nouveau et j'espère bien tenir quelques semaines ;-)

J'attend la réception de mon ESP-01 afin de valider les tests finaux et je vous tiens au courant sur l'espérance de vie max sur la batterie.

Le CH 340 , alimenté en 3,3V consomme 50µA typiques (80µA maxi ) quand il n'est pas actif côté USB Il y a pire comme puce UART/USB.

Effectivement, J'ai fait l'essai avec un ARDUINO NANO. J'obtiens 90µA en veille.

@+

Alors j'étais en train de regarder concernant l'utilisation du ESP-01 à la place de mon Wemos. Mon seul problème est l'absence d'une entrée en analogique pour vérifier l'état de ma batterie. L'idée étant de mettre le circuit à l'extérieur, et je me vois mal, allez vérifier toute les semaines l'état de ma batterie avec mon multimètre.

Mise à part souder une entrée sur l'une des pattes du minuscule ESP8266EX, comment faites-vous pour vérifier une batterie sans entrée analogique ? J'ai vu qu'il existait des modules pour convertir de l'analogique en digit, mais cela perd tout son intérêt. Sans parler du Arduino mini bien entendu. Dommage que cela n'existe pas en version Wifi quand même...

Pourquoi s'orienter vers le 'vénérable' ESP-01 si c'est pour lui ajouter un convertisseur-analogique numérique ? Cet ESP-01 nécessite d'ailleurs de souder un fil sur une des broches de l'ESP8266 si on veut bénéficier de 'deep sleep'.

Pourquoi se compliquer la vie alors que le convertisseur analogique-numérique de l'ESP8266 est suffisamment bon pour une surveillance de batterie (surtout si on peut faire la mesure WiFi temporairement coupé)?

Je ne cherche pas à m'orienter particulièrement vers un ESP-01 forcement, c'est juste que je n'ai pas les GPIO accessible sur ma boxe domotique pour rajouter un NRF24L01 et je voulais limiter le nombre de protocole aussi.

Si tu optes pour une solution WiFi ESP8266 autant partir d'un ESP-12 ou ESP-07 et lui ajouter le strict minimum pour modérer la consommation en Deep-Sleep. (tua uras une entrée analogique 1V , la fonctionnalité 'deep-sleep', et quelques GPIOs.

Bonjour, je me suis fait une série de thermomètres wifi avec ESP12 et DS18B20

Je les alimente avec 3 accus AAA 1000mAh il y a une mesure toutes les 2 minutes, le temps de réveil est de plus de 100 de mS (les mystères des libs toutes faites...) alors que je ne fais que lire la t° (moins d'une mS). La conversion est lancée avant le deep sleep , le résultat est dispo au réveil. Lorsque la température a changé de plus de 0,2° la connexion au wifi et au serveur a lieu (environ 5sec). Il y a au moins une communication au serveur toutes les heures.

Avec cette config j'ai plus de 3 mois d'autonomie et pas besoin de pont diviseur : j'alimente directement depuis les batteries (environ 4V quand elles sont pleines) et ça marche jusque vers 2,5V. Peut-être qu'en compliquant l'installation avec un timer TPL5110/5111 et un régulateur TPS 737 on peut gagner en autonomie... faut tester.

Bonsoir max777

Alimenter en 4V un ESP12 ? ça peut passer avec quelques ESP12, pas tous.
Espressif , fabricant des ESP8266 donne 3,6V comme valeur maximale, il ne s’engage pas au delà
4V , ça passe ou ça casse. Pour faire des montages reproductibles sans risque j’ai opté pour une alimentation directe (sans régulateur) sous 3,2V (accu LiFePo4) qui sont à 3,6V en sortie de charge. Je profite en plus de la très faible auto décharge des LiFePo4

Les 100mS de temps de réveil ne sont pas dus à une librairie particulière.
En ‘deepsleep’ presque tout est arrêté dans l’ESP8266 (seul le compteur de’ RTC’ et un petit bout de RAM restent alimentés. Au réveil il faut, entre autres, recharger en RAM le code stocké dans la mémoire flash SPI accompagnant toujours l’ESP8266. Les 100ms sont incontournables pour un redémarrage après deep-sleep quasiment identique à une mise sous tension.
(Pour un réveil plus rapide il faudrait se rabattre vers le ‘modem sleep’ et sa consommation nettement moins intéressante)

J’ai testé une alimentation via un TPL5110 (‘breakout’ Adafruit) , petit gain d’autonomie bien sûr puis que l’ESP12 n’est plus alimenté. Un inconvénient : imprécision de la durée de sommeil définie par une résistance.
J’ai finalement laissé tomber et reste en ‘deepsleep’

Dans mon cas les sessions (1 par heure) durent 0,9s en moyenne (réveil+mesure de T°,+connection à la box+ envoi d’une donnée vers ThingSpeak). L’autonomie est bien entendu fortement impactée par la conso ‘ESP réveillé’ et par la durée de ce réveil. C’est surtout sur les phases de réveil que j’ai cherché le gain d’autonomie.
duree session.jpg

Merci pour ces retours d'expérience. Je vais tester cela rapidement. Avez-vous un test de la batterie dans votre circuit ou vous attendez qu'elle tombe d'elle même ?

a 3volts je passe en 'deep-sleep sans réveil' De plus j'envoie en permanence la tension batterie sur ThingSpeak, je peux suivre l'évolution de la décharge, voire faire déclencher une notification 'batterie Basse'

Dans mon cas la batterie LiFePo4 n'a pas de protection intégrée, pour éviter une décharge excessive a 3V je passe en deepsleep permanent et comme j'observe l'évolution de la tension sur ThingSpeak je peux intervenir.