Deep Sleep bei > 40 mAh auf Wemos D1 R1

Hallo zusammen

Habe gelesen, dass man mit einem Wemos D1 R1 im Deep Sleep unter 1mAh kommt. Bei mir ist er aber über 40mAh. Wo liegt der Denkfehler?

Meine Schaltung ist ganz simple:
PIR modul (HC-SR501) mit einer ganz kleinen Transistoren Schaltung für das LOW Signal für den Reset, anschliessend auf dem Wemos D1 R1 folgenden Sketch:

#include <ESP8266WiFi.h>
#include <ESP8266HTTPClient.h>

HTTPClient http;

// Zugangsdaten zum WLAN:
const char* ssid_wohnung = "xxx"; 
const char* password_wohnung = "xxx"; 

const char* deviceID = "1111111";  
int batteryLevel = 100;


/*****************************************************************
 * 
 * Send a Message to an API
 * 
 * ***************************************************************/
void sendMessage(){

}


/*****************************************************************
 * 
 * Main Application after Reset
 * 
 * ***************************************************************/ 
void setup() {
  
  
  Serial.begin(115200);

  // remove default-Mode AP (see https://www.mikrocontroller.net/topic/416329)
  WiFi.mode(WIFI_STA); 

//------------------------------------
  int start = millis();

  //connect to your local wi-fi network  
  Serial.print("Connecting to ");
  Serial.println(ssid_wohnung);
  WiFi.begin(ssid_wohnung, password_wohnung);
  Serial.println(""); Serial.print("Reason startup: ");Serial.println(ESP.getResetReason());
  
  //check wi-fi is connected to wi-fi network
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println("Connected to the WiFi network");

 
  // send Message about motion
  sendMessage();
  
  // show waking time
  Serial.print("Waking time: ");Serial.print(millis()-start);Serial.println("ms");


  // go to deep sleep with low battery comsumption
  WiFi.disconnect( true );
  delay( 1 );
  Serial.println("Go to deep sleep.");
  ESP.deepSleep(0, WAKE_RF_DEFAULT);
  delay(100);
}


/*****************************************************************
 * 
 * Loop not used for deep sleep
 * 
 * ***************************************************************/ 
void loop() {}

Wie schaut die "ganz kleine Transistorschaltung" aus?
Das PIR-Modul bleibt eingeschaltet?
Grüße Uwe

Hallo,

beziehen sich die 40mA auf die gesamte Schaltung oder nur auf den Wemos D1.

wie Uwe schon geschrieben hat zeiche mal die gesamte Schaltung als Skize , auf ein Stück Papier reicht und stell das hier rein. Sowas um die 40mA ist eigentlich der Strom für den Wemos wenn er nicht im Wan aktiv ist. ich denke das Ding wird ständig wieder aufgeweckt. Was sagt der Monitor ?

Heinz

Es gibt so einige Faktoren die auch eine Rolle spielen. Wie Versorgst du den den WEMOS wenn du auf den 5V Eingang via USB oder Pin einspeisst hast du das Problem das der Regler auch schon was im Leerlauf braucht. Power LED vorhanden?
Gruß
DerDani

Hallo zusammen

Bin begeistert, wie schnell ihr antwortet. Da fühlt man sich gut aufgehoben. Danke schon mal!

Bei der kleinen Schaltung handelt es sich um folgendes:


(Quelle:ESP8266, Deep Sleep mode test, wake up with a PIR motion detector • DIY Projects)

PIR bleibt somit eingeschaltet. Habe nun mal die ganze Schaltung inkl. PIR abgehängt und bin immer noch bei 43mAh.

Hier der Monitor Auszug:

21:48:12.941 -> SDK:2.2.2-dev(38a443e)/Core:2.6.3=20603000/lwIP:STABLE-2_1_2_RELEASE/glue:1.2-16-ge23a07e/BearSSL:89454af
21:48:12.974 -> mode : sta(2c:f4:32:12:cc:ab)
21:48:12.974 -> add if0
21:48:13.008 -> Connecting to xxx
21:48:13.074 -> 
21:48:13.074 -> Reason startup: Deep-Sleep Wake
21:48:13.580 -> .....scandone
21:48:16.861 -> state: 0 -> 2 (b0)
21:48:16.861 -> .state: 2 -> 3 (0)
21:48:16.861 -> state: 3 -> 5 (10)
21:48:16.861 -> add 0
21:48:16.861 -> aid 1
21:48:16.861 -> cnt 
21:48:16.894 -> 
21:48:16.894 -> connected with xxxx, channel 1
21:48:16.894 -> dhcp client start...
21:48:16.929 -> ip:192.168.1.141,mask:255.255.255.0,gw:192.168.1.1
21:48:17.333 -> .Connected to the WiFi network
21:48:17.570 -> Waking time: 4548ms
21:48:17.570 -> state: 5 -> 0 (0)
21:48:17.570 -> rm 0
21:48:17.603 -> del if0
21:48:17.603 -> usl
21:48:17.603 -> mode : null
21:48:17.671 -> Go to deep sleep.
21:48:17.772 -> enter deep sleep

Nachdem er im deep sleep ist, kann er nur noch geweckt werden, wenn ich Reset drücke oder vom PIR ein Event kommt.

Auf dem Board hat es 2 LED: ON und SCK, bei beiden habe ich keinen Weg gefunden, diese zu deaktivieren. Sie bleiben die ganze Zeit eingeschaltet.

Die Speisung erfolgt immer via USB. Als Attachment noch das Bild von einem Wemos D1 R1.

Irgendeine Idee?

Viele Grüsse
Martin

board.jpg

mrexperiments:
Auf dem Board hat es 2 LED: ON und SCK, bei beiden habe ich keinen Weg gefunden, diese zu deaktivieren. Sie bleiben die ganze Zeit eingeschaltet.

Runter löten.

Gruß Tommy

Runterlöten: kann man abschätzen, wie stark dies den Stromverbrauch Einfluss hat? Ist dies für die nahezu 40mAh verantwortlich oder ist es nur ein kleiner Vorteil?

Hi,

wenn du den Vorwiderstand der LEDs lesen kannst, dann kannst Du den Stromverbrauch auch messen, indem du die Spannung über genau diesem misst. (I= U/R) Das werden aber nur so um die 1,5-2.0mA pro LED sein.
Ansonsten würde ich das Ding nur zum Entwickeln nehmen, aber ein eher nachtes Modell davon verbauen ...

Gruß André

auch so:

wenn es dir um den Stromverbrauch allgemein geht, solltest du imho eher einen nackten ESP nehmen, dann hast du selber im Griff, was alles Strom verbrauchen darf.

Programmentwicklung mit dem Wemos -> Echtgerät mit ESP.

Hallo,

ich hab habe einem Wemos D1 mini seit etwa einem Jahr im Einsatz zusammen mit einem 1860 Lipo und einem Step up Regler auf 5V. Im deep sleep werden zusammen mit eimen BME280 etwa 0,7mA aus dem Aku gezogen. Auf der 5V Seite sind es dann etwa 0,4mA

Wemos D1 min

Das Ding läuft zusammen mit einer Solarzelle 6V 100mA und einem Laderegler im Aussenbereich.

ich hab damals mal eine Überschlagsrechnung Rechnung gemacht

Heinz

Berechnung Akulaufteit Aussensensor.pdf (26.6 KB)

Auch die weitere Elektronik auf deinem Board benötigt Strom, nicht nur die Leds.

Da würde ich an deiner Stelle schon dazu übergehen, einen ESP8266 zu verwenden, dann entfällt der Stromverbrauch überflüssiger Teile.

Wozu du an deiner Resetschaltung allerdings den Widerstand und die Diode dran hast, kann ich mir nicht denken.
Der Transistor mit Basiswiderstand reicht da völlig aus.

Hi

Denke, damit möchte Er den µC resetten können (was aber nicht klappen muß, da das Reset lange genug anliegen muß, damit wirklich Alles resettet wird - der zum Reset angesteuerte Pin wird nämlich ebenfalls resettet - bevor die komplette Reset-Prozedur durchlaufen wurde).

Sicherer ist der WatchDog - wenn Der beißt, lässt Der erst wieder los, wenn das Reset vollzogen wurde (durch Bug im 'Old Bootloader' im Nano allerdings bis zum echten Reset per Taste - nur als Nebeninfo).

MfG

postmaster-ino:
Hi

Denke, damit möchte Er den µC resetten können (was aber nicht klappen muß,......

Ok,evtl. kann der TO ja was dazu sagen.

In meinen Projekten reicht der Transistor und der Reset funktioniert.
Was die Länge betrifft, muss ich nachschauen, was ich eingestellt habe.

Die Länge des Reset beträgt 100ms, das sollte der PIR also auch schaffen.

Hi

Aso - wenn 'Jemand Anders' den Reset auslöst - Das bezog sich darauf, daß der µC sich selber den Reset gibt.

MfG

postmaster-ino:
Hi

Aso - wenn 'Jemand Anders' den Reset auslöst - Das bezog sich darauf, daß der µC sich selber den Reset gibt.

MfG

Ok.....dann ist klar.
Dafür soll wohl die Diode sein. Nur sehe ich im Sketch keinen Pin, der dafür definiert ist.

Vermute, der TO weiß es auch nicht. :wink:

Hallo zusammen

Sehr interessant, in welche Richtungen eure Diskussionen gehen. Hatte ursprünglich an einen Fehler im Sketch gedacht. Doch entnehme ich euren Diskussionen, dass da alles ok ist und ich eher das Board an sich oder kleine Details an der PIR Schaltung verbessern könnte. Bin nur etwas erstaunt, dass es Leute im Netz gibt, wo mit meinem Board <1mAh erreicht haben.

Habe mir unterdessen Wemos D1 mini besorgt. Mal schauen, wie da der Strombedarf aussieht.

Eure Frage, warum da eine Diode drin ist, weiss ich auch nicht. Habe euch aber die Quelle offen gelegt, könnt gerne da nachfragen :slight_smile:

Danke schon mal.
Lg Martin

mrexperiments:
......
Eure Frage, warum da eine Diode drin ist, weiss ich auch nicht. Habe euch aber die Quelle offen gelegt, könnt gerne da nachfragen :slight_smile:

Ach ja, wessen Projekt ist das ?

Quelle:

Jungs, heute ist der Wemos mini gekommen und siehe da, Deep Sleep Strom ist nun 155uAh! Cool.