lol, I was just watching this video since I'm trying to sleep the ESP8266... then I saw my face!
@AndreasSpiess7 жыл бұрын
Yea, you are a famous person... I learned a lot from your videos!
@damny0utoobe7 жыл бұрын
Thanks for posting this and going into so much HW detail in your videos. Awesome work for the community.
@AndreasSpiess7 жыл бұрын
You're welcome!
@HariWiguna8 жыл бұрын
Andreas, another awesome video! Interesting AND useful! Thank you for sharing your research and discoveries.
@AndreasSpiess8 жыл бұрын
+Hari Wiguna Thank you for your supporting comment. You as a youtuber know, how much work is in a video. And comments like yours help to keep on!
@billcodey143010 ай бұрын
Thanks Andreas. Even though its 7 years old, your information here was exactly what I needed for a project I am resurrecting.
@AndreasSpiess10 ай бұрын
Glad it helped!
@northshorepx8 жыл бұрын
Thank you. A very interesting breakdown. I'm still new to arduino but it's deep dives like this make me appreciate what goes into hardware design. You video was simple and very easy to follow.
@AndreasSpiess8 жыл бұрын
+northshorepx Thank you for your comment. This is exactly what I want. Not trivial things made easy.
@grankeee5 жыл бұрын
I love your english, I can understand most you say while somoone with british accent is hard to understand. Helpfull tutorial
@AndreasSpiess5 жыл бұрын
Thank you!
@norm11248 жыл бұрын
Danke für die solide Faktenerhebung und natürlich schauen wir bis zum Ende (oder springen mind. schrittweise dorthin). Merci Andi
@AndreasSpiess8 жыл бұрын
+norm1124 Danke für deinen Kommentar betreffend "Ende". Ich kriege ja eine Statistik und die sagt, dass meine Videos durchschnittlich während 3 Minuten angesehen werden. Diese Zahl ist sehr konstant seit Beginn. Das war der Grund für meinen Kommentar ;-)
@andrewakrause2 жыл бұрын
This was gold. My project needs both lower power consumption and offline storage. It had completely slipped my mind that EEPROMs have a write cycle limit, and I was going to treat it like a cache.
@AndreasSpiess2 жыл бұрын
With the ESP chips I often transfer the data over the internet and do not save them on the chip...
@andrewakrause2 жыл бұрын
@@AndreasSpiess That is my plan as well. I have a sql server with a php script that receives data via POST. My thought was to have onboard storage in case the server went offline.
@AndreasSpiess2 жыл бұрын
I use MQTT. It should keep the messages if it cannot deliver. But I never tried how many...
@venkateshe75068 жыл бұрын
As usual, you are rock star. Thank you. One suggestion, always connect GPIO2 and GPIO 0 to Vcc with 4.7K resistor. Because sometimes the ESP won't wake-up properly from deep sleep and it is termed as zoomie mode (deep sleep wakeup)
@AndreasSpiess8 жыл бұрын
+Venkatesh E Thank you for your comment. There are many different opinions concerning how to to connect the different pins to Vcc and whether it is necessary. Pin 2 definitively has to be high according to the datasheet, but so far, I never pulled it up and had no problems. Just a remark: During boot, pin 2 also sends some information on 75000 baud...
@venkateshe75068 жыл бұрын
+Andreas Spiess thank you. Even I heard that there is something goes out on Pin 2 (TX1). Some guy connected LED to Pin-2 and keeps blinking at startup which he is not expecting that. From that I found there is something is going on, but I am not sure what it is. The 75000 is the super hint here. Thank you once again. Waiting for next video. Good Luck.
@venkateshe75068 жыл бұрын
+Andreas Spiess So regarding pulling GPIO-0 (zero) high, do you think a bad power supply can cause the ESP stuck in zombie mode. Your's seems to work without that one. Please let me know if you have any information on this. Thank you once again.
@LucSmall8 жыл бұрын
Great video. I keep coming back to this to improve my understanding of esp8266 power modes. My thought here is to build a neat GPS data logger. Boot into the low current 15mA mode when recording a track out in the field. Use some of the flash or an sd card to log. Then flick a switch and reboot into wifi mode when at home and download the nmea or kml data from a http server running on the esp8226. Would be a neat project I think. Now to find the time to make it a reality... Keep up the great work with the videos Andreas.
@AndreasSpiess8 жыл бұрын
+Luc Small I think, this should be possible. You can record a long trip on the SPIFFS file system in on the module itself if you set it to 3GByte. Then you do not need an SD card. And if you do not move fast, you might set it to sleep for 70-80% of the time to save even more "juice". I am not sure if you lose the content (or the pointer to the content) if you reboot, because I never worked with SPIFFS so far.
@MacEllie37 жыл бұрын
Hello Andreas, Thanks for all your work and sharing. I'm going to program my Google Home so it will fire up my soldering station as soon as it hears English with a Swiss accent :) Thank you so much. Your video's are of high quality and you have excellent skills. Also didactical. Keep up the good work! Regards,
@AndreasSpiess7 жыл бұрын
Sounds like an interesting project ;-) Thanks for your nice words!
@martintatak88518 жыл бұрын
Thank you for this and all your videos. I love your channel, your videos are great and full of needed information!
@AndreasSpiess8 жыл бұрын
+Martin Taťák You are welcome. A new video about the sleeping ESP is in the works...
@fahrvergnuugen8 жыл бұрын
I could not for the life of me figure out why my Adafruit Feather Huzzah would not wake up. The key piece of information I was missing was at 7:35 - you have to jumper RST pin to GPIO16. Thank's for the great video!
@AndreasSpiess8 жыл бұрын
You are welcome. Glad it helped.
@MarkSMays6 жыл бұрын
Great explanation. I’ll implement it as soon as I get the WiFi working. Thanks for your clear and detailed explanations.
@AndreasSpiess6 жыл бұрын
You are welcome!
@mc_frag86437 жыл бұрын
Danke für Ihre professionellen Videos!
@AndreasSpiess7 жыл бұрын
Bitte, gern geschehen!
@ravishanker90146 жыл бұрын
I always enhance my knowledge through your video. You people are real guru for me. God bless you...
@AndreasSpiess6 жыл бұрын
Thank you!
@rubenfernandez96038 жыл бұрын
Awesome videos Andreas. Thanks for sharing your knowledge.
@AndreasSpiess8 жыл бұрын
You're welcome!
@gazzacroy Жыл бұрын
what a brilliant video. than you so much, ive been having trouble with one of my projects and your video showed me how to sort it out so thank you from me and my brain(which was really hurting lol). :)
@AndreasSpiess Жыл бұрын
Glad it helped!
@wildinthejardin8 жыл бұрын
2200uF is the best ESP8266 trick ever !
@AndreasSpiess8 жыл бұрын
+Wild in the jardin Thanks! By the way: I used a 10mH inductor andgot the same effect.
@topper51338 жыл бұрын
Thank you for your very informative videos. Did you use the 10mH inductor in combination with a de-coupling capacitor to Vcc? If so, what was the capacitor's value? If not, how was the inductor connected?
@XalphYT8 жыл бұрын
Thanks for the deep sleep explanation. I plan to create some humidity monitors, each using a DHT22. Now I know how to save battery power draw from my ESP8266.
@AndreasSpiess8 жыл бұрын
Good luck with your project!
@LearningToFly778 жыл бұрын
I tried the same thing, but my ESP never wakes up again... can you post your code? Thanks...
@AndreasSpiess8 жыл бұрын
Did you connect D0 with the RST pin?
@LearningToFly778 жыл бұрын
What is D0? WTD0? I have a ESP03... does it work with this board?
@AndreasSpiess8 жыл бұрын
Then you have to connect pin GPIO16 with the reset pin. But only after upload (otherwise you might have problems with the upload iof the sketch). This connection is necessary to restart the module after deepsleep.
@gastarbieter8 жыл бұрын
We do get it:) You seem to really like playing with your wifey :)
@javierCi7 жыл бұрын
Great explanation! Thanks you very much!
@sandlerserj8 жыл бұрын
Really great and professional review. thank you!
@AndreasSpiess8 жыл бұрын
You are welcome!
@ismzaxxon3 жыл бұрын
Finally got it working on ESP. By the way, to fix the "Unable to load issue, It seems a resistor goes between IO16 and Reset. If you use a link(as I did) you can't program the chip unless you remove the link. I am using a 1K. Lower resistors should work as well. Thanks again for your Vids Andreas.
@AndreasSpiess3 жыл бұрын
This connection resets the chip which makes that the whole chip is disabled
@diggerydiggerydoo8 жыл бұрын
This is a fantastic video! Really helped me with a project.
@LaLaObeRoT8 жыл бұрын
This helped a lot. Thank you.
@AndreasSpiess8 жыл бұрын
+LaLaObeRoT you are welcome!
@robertkes8 жыл бұрын
Andreas, thank you for this video!
@Ziplock90006 жыл бұрын
Very informative thanks. I have a slightly different situation where I have an ESP8266 connected to an Arduino Pro mini. I use the pro mini for various reasons and can get it's power extremely low. The ESP is programmed with AT Command firmware and I can put it into SLEEP and DEEP SLEEP. I plan to have the pro mini trigger the RST or CH_DP pins
@AndreasSpiess6 жыл бұрын
You could also use the Arduino to cut the power of the ESP to save even more (with a FET transistor)
@sblantipodi4 жыл бұрын
Congrats for all your videos. Still prefer esp8266 to ESP32 for most applications. Hope that you will continue those interesting videos on this chip. Bye.
@AndreasSpiess4 жыл бұрын
Most of my videos are not chip specific.I sometimes use an ESP8266 because I still ahve lots of them laying around and they are good enough for most applications.
@josuaschmid501 Жыл бұрын
Thanks for the Video! For me, it would have been interesting to see the peaks with a common battery type.
@AndreasSpiess Жыл бұрын
They have to be the same. Otherwise the ESP would crash.
@josuaschmid501 Жыл бұрын
I highly doubt it'd look the same, but I also can not disprove it. The battery would behave more closely to a capacitor, thus smoothing the peaks ... at least that's what I think it'd look like.
@AndreasSpiess Жыл бұрын
@@josuaschmid501 The current flow is decided by the ESP (the load). If the ESP does not get the required current, the voltage will drop (ohms law), and the ESP usually crashes. A well-known problem. The best is you try. No need to believe me.
@magnets10006 жыл бұрын
One thing you missed is modem sleep. It allows wifi to stay connected. Just use wifi_fpm_set_sleep_type(MODEM_SLEEP_T); then a delay(1000) in your main loop. For me this uses between 15ma and 70ma but I don't have an accurate way to measure it
@AndreasSpiess6 жыл бұрын
I never used modem off so far, because I had no need for it. It does not save enough for battery powered devices and current consumption does not matter too much for devices connected to mains.
@jdueheue6 жыл бұрын
Interestingly many people recommend to use a low ESR type capacitor to reduce brown out risks. However I see the problem of high leakage currents with low ESR capacitors (>200 uA depending on capacity) which is really bad for battery powered applications. Normal capacitors seem to be quite ok and give the same results for me, with a leakage current of 60 minutes as leakage current drops after time)
@AndreasSpiess6 жыл бұрын
You are right. I learned about this fact after I made this video.
@envt8 жыл бұрын
Great video :) cant wait to see part 2 :)
@AndreasSpiess8 жыл бұрын
+Ejal Nvt You have to wait a few days. It is right now in the video editor...
@envt8 жыл бұрын
+Andreas Spiess I think I can speak for everyone, we are just very grateful for the time and effort you put in all your videos. Video editing is a lot of, sometimes frustrating, work. So thanks again and keep up the good work!! Kudos!
@chriswesley5948 жыл бұрын
Andreas another great video. Thank you. Have you ever considered or tried using a MOSFET to bypass the regulator under ESP control? The idea wouldl be that when the battery voltage was low enough the regulator could be shorted out by applying a GPIO signal to a FET. Then the full battery voltage would be available to the system, and the regulator losses would be eliminated. In a deep sleeping system, the fact that the battery voltage was low enough to allow regulator bypass could be saved so that it woke up that way. Just an idea.
@AndreasSpiess8 жыл бұрын
This is possible, but quite complicated. And you lose your only ADC on the ESP. I did not test, but the last few mV are not very valuable because at the end, voltage drops quite fast. Also dropout voltage of a HT7333 3.3V is only 150mV. I also not tried the accuracy of the ADC of the ESP at variable Vcc. The Arduinos use Vcc as a reference. So, the ADC readings are not very stable when you change Vcc (video #10 shows that plus a trick).
@chriswesley5948 жыл бұрын
OK thanks
@PeterRetief8 жыл бұрын
Very informative, I have been using the esp8266 for some sensors and experienced exactly what you show here, I do not have an oscilloscope so it was (not) great to see those spikes. Another obvious power saver is to switch it on when needed ie pressure on a scale, external switch etc. Have you looked at the meshing the esp yet? that might be useful for larger deployments maybe?
@AndreasSpiess8 жыл бұрын
+Peter 1. Retief Swich it on and off is good if you want to use it on battery and only switch it on once a day or so. Videos about that are in the works... 2. No, I did not look into meshing it (i understand mesh as a network of many ESPs). I think, 2.4GHz is great if you have a WiFi network around. For independent sensor meshes I prefer for the moment sub GHz RF modules. Also there, a video should come in summer (it is a lot of work...)
@MrCTNalves7 жыл бұрын
Thanks. It was very well explained
@AndreasSpiess7 жыл бұрын
:-)
@thomasmittag40528 жыл бұрын
Awesome video, and well explained! It is a pleasure to watch your videos. I am currently thinking about buying a digital oscilloscope for tinkering around with ESP8266. I see that you use a SDS 2012. Do you think that 1GB sampling rate with 70 MHz gives a sufficient resolution to see the power spikes? Thanks for your great contributions!
@AndreasSpiess8 жыл бұрын
+Thomas Mittag Thanks for your comment! The spikes were not complicated to see, they are about 1 microsecond, if I remember right. Concerning the oscilloscope: I bought mine three years ago (it is actually a SDS 2102) and I bought the best I was able to get for my budget (1000$) then. Since I am a tinkerer, not a professional with a project I had no idea what I will need in the future. So, the budget was the deciding factor for me. So far, I am happy with the Siglent brand. I just bought a spectrum analyzer and a waveform generator from them.
@ThiagoRibeiroo6 жыл бұрын
Amazing! thanks for the great analysis :)
@AndreasSpiess6 жыл бұрын
You are welcome!
@MightyTechGuy6 жыл бұрын
You are the best on youtube..:)
@AndreasSpiess6 жыл бұрын
Thank you!
@bartdacaveman7 жыл бұрын
Thanks! That was awesome!
@AndreasSpiess7 жыл бұрын
:-)
@PeterLeder8 жыл бұрын
sehr schön erklärt, vielen Dank!
@AndreasSpiess8 жыл бұрын
+Peter Leder Bitte. Gern geschehen.
@alexron52608 жыл бұрын
Great work! have you decided on a specific regulator to use in conjunction with the 1000-2200uF caps?
@riskydigital6 жыл бұрын
Great video!!! 👍✨
@AndreasSpiess6 жыл бұрын
Thank you!
@topper51338 жыл бұрын
Thank you for the very informative videos Andreas. You mention below that you used a 10mH inductor with the same effect of the 1000-2200uF cap. How did you connect the inductor (in addition to a cap or from supply+ to Vcc alone)?
@AndreasSpiess8 жыл бұрын
If I remember right, I used the inductor instead of the capacitor. The inductor has to be connected in series in the power line either in the plus or the minus cable. It does not matter which. Maybe a combination of both would be the best solution, but I did not check.
@DavidVincentSSM6 жыл бұрын
It would be interesting to see the esp8266 used in old weather applications. I wonder how - 20 Celsius would affect it's performance
@AndreasSpiess6 жыл бұрын
I once planned to test the ESP in cold and warm conditions. Winter is coming fast here. Maybe I find once the time to do it...
@foreverallama6 жыл бұрын
Thanks for going into detail! Also, how do you put the ESP into Light Sleep?
@AndreasSpiess6 жыл бұрын
I never tried light sleep
@thomasvnl7 жыл бұрын
Keep up the good work Andreas! Just one small pronunciation thingy: wifi is pronounced more like weyefeye /ˈwaɪ.faɪ/ (like hi-fi) and rhymes with things like pie and dye :)
@AndreasSpiess7 жыл бұрын
Thanks. In the newer videos I changed it. I used the German pronunciation, but learned it now.
@thomasvnl7 жыл бұрын
Ah I see, well you sure do make great video's. Really interested in everything there is about the ESP8266 at the moment and subscribed to your channel ;)!
@AndreasSpiess7 жыл бұрын
I saw it on my subscriber counter ;-) Thanks!
@zolalab8 жыл бұрын
Mr. Andreas, first, thank you for sharing your knowledgement and I like your peculiar way of teaching, it´s very clear and understandable. Second, can you help me in a doubt ? Have you ever measured the amps consumption of an ESP8266 with a decoupling capacitor of 1000uf 6v in deep sleep mode ? And then, take the capacitor out and measure again... Can you do this test for me ? Because I did, and with the capacitor even in deep sleep it draws 150uA... With out the capacitor it draws 3uA. Can you confirm that ? is there a way to use the capacitor, but keeping the consumption in 3uA ? PS: I am powering ESP with two AAA batterys... Thank you very much !
@AndreasSpiess8 жыл бұрын
I am travelling and have no module and capacitor handy. You can do this yourself by just measuring the capacitor without a module. If it uses the difference, then it is the cause. Pay attention that you wait a long time before you measure, because the capacitor is loaded over an exponential curve and this takes long. It is possible that you just measure some loading current. If the capacitor does not take the current, write a sketch which leaves the esp in deep sleep for one hour and measure.
@AndreasSpiess8 жыл бұрын
+Eduardo Zola you decide with the calls you described in which mode the Esp will wake up. So, you know. The Esp should not chang this mode itself. I do not know of such a function. If you are in doubt if the calls really work, measure the current.
@alager1234562 жыл бұрын
That's probably the leakage current of the capacitor. Tantalum?
@stub74687 жыл бұрын
Great video. It got me going on my first ESP project. I got WiFi sleep to work. turning it off and then on again and getting 18mA average draw. I would like to get light sleep to work and half that draw again. I am polling a sensor every 10 seconds, and deep sleep isn't the best way to tackle that. WIFI sleep code: #include void setup() { wifi_set_sleep_type(MODEM_SLEEP_T); } void WifiStart(){ WiFi.forceSleepWake(); WiFi.mode(WIFI_STA); WiFi.begin(ssid, password); } void WifiStop(){ WiFi.disconnect(); WiFi.mode(WIFI_OFF); WiFi.forceSleepBegin(); }
@AndreasSpiess7 жыл бұрын
Thanks for the snipplets. Another possibility could be to use RTC memory as presented in my video #60
@hikingbootsza3 жыл бұрын
Thank you for a wonderful and informative channel. I have subscribed. One question I have on "deep sleep" - the sensors themselves also draw current, correct? I've seen a lot of focus on how to get our MCUs to behave, but what do we do about the sensors themselves? For example, a simple capacitive soil moisture sensor datasheet mentions 5mA current. Some of these sensors even have their own voltage regulators, drawing extra current. If we bully our poor ESPs into the micro-ampere sleep states, this does not help if our sensors still drain our batteries. Do you have a video on workarounds for this? I'm still starting going through all your posts, so maybe there is, but I've not found it yet. Thanks in advance, and thanks again for the great channel.
@AndreasSpiess3 жыл бұрын
You can feed a sensor with an output pin, for example. Then it should not consume a lot of power when the MCU is sleeping.
@hikingbootsza3 жыл бұрын
@@AndreasSpiess Thank you so much for your fast response. How simple! :-) Kind regards
@electron-19798 жыл бұрын
Hi. WiFi.mode(WIFI_OFF); and WiFi.forceSleepBegin(); both worked with an active connection for me. WiFi, pronounced WhyFiii (iii, as in I), not WhyFeee ;) Cheers for the informative videos!
@PavanKumar-vy7cg6 жыл бұрын
Thank you Andreas, great Video. is the current consumption same when using ESP.deepSleep(x,WAKE_RF_DISABLED) and ESP.deepSleep(x,WAKE_RF_DEFAULT).? if not please mention the current consumption for both these modes.
@AndreasSpiess6 жыл бұрын
I never used these modes. Please do not use a development board. Use a plain ESP-12 for your power experiments.
@gryzman2 жыл бұрын
They wifey module, haha :D Very funny accent! Very informative video!
@AndreasSpiess2 жыл бұрын
Thank you!
@bkhofmann7 жыл бұрын
So if you use a large capacitor to reduce the current spikes in order to be able to use a lower current regulator, how do you deal with the inrush current when the capacitor is initially charging?
@AndreasSpiess7 жыл бұрын
A small regulator usually cannot deliver a high current (because it has a high internal resistance or a protection circuit), that is the problem I want to solve with the capacitor. So, I think, the inrush current will be limited by this fact.
@bkhofmann7 жыл бұрын
It won't damage the regulator? I'd like to use a MCP1700. Datasheet shows max output current at 250mA, but output short circuit current at 408mA, which is way above the 250mA spec.
@AndreasSpiess7 жыл бұрын
bkhofmann so, you see, you could even short cut the regulator without harm, because it is protected
@bkhofmann7 жыл бұрын
Thanks for the reply, and thanks for all the great videos! I look forward to them!
@jdueheue6 жыл бұрын
be careful when using big capacitors (>1000 uf depending on your max current and wire dimensions) which leads to slow VCC rampup. It happened to me that at powerup the rampup of the 3.6V VCC voltage was so slow that the ESP startet without WIFI properly working. The reason is that when rampup is too slow due to limited inrush current, the ESP core starts running (e.g. at 2.5V or even lower) but WIFI cannot initialize correctly at that time because it needs higher voltage for calibration. It is not always "the more the better" :-)
@timonix28 жыл бұрын
When learning about the ESP8266 I keep ending up at your videos. They seem to cover everything I search for.
@AndreasSpiess8 жыл бұрын
+Tim Jadeglans Thank you for your compliment!
@theMindscapeChannel7 жыл бұрын
Andreas - Excellent Video and Loved your thorough explanations... I have tried this with an ESP8266 - 01, however, it seems I over-looked the need for access to GPIO16... Doesnt seem available.. My experiment was to place these in a wearable package for my pets to track them through the day... Using Signal Strength and several other ESP8266s thoughout the house...but, battery consumption is a problem, it seems the 12E is the only option, correct? Or do you have an idea on how to better track a pet through the house...
@AndreasSpiess7 жыл бұрын
Did you use deepsleep?
@theMindscapeChannel7 жыл бұрын
Hello Andreas, I tried the Deep Sleep, but I am not using 12E, using the ESP8266 - 01 Module, but maybe need to order a couple of the 12E versions,,, Since GPIO16 is not accessible on the Module..
@AndreasSpiess7 жыл бұрын
Yes
@darkovulin11144 жыл бұрын
You are great, thanks. I love your video about powerconsumption and bateries. I hav a project with NodeMcu 12E and in deep sleep I still use about 70mA, so my batery lasts about 4-5 months and it shoul last much more in deep sleep because I do work every 20minutes, send data tu database and then go to deep sleep 20minutes. I simpley cant have about 20 micro ampers. I connect GPIO0 to 3.3, GPIO15 to GND, RST pin and EN pin connected to Vcc, GPIO16 to RST. Can you please help. Thanks
@aneekimtiaz25617 жыл бұрын
Thanks for the deep sleep explanation. Is there any video explaining Light Sleep in detail? I am new to ESP so I have few questions. If ESP8266 does Light Sleep automatically or if we have to do it manually with WiFi.forcedSleepBegin()? If it is useful to use forced light sleep or should I go with deep sleep always?
@AndreasSpiess7 жыл бұрын
I never used the light sleep and I do not know, if it works. A few mont ago, I read, that it did not work properly. Its effect on power consumption is also not that big, similar to switching off the WiFi.
@aneekimtiaz25617 жыл бұрын
Thanks for replying. Another thing, if I use ESP.deepsleep(time,WAKE_RF_DISABLED) then on reboot, my wifi will be OFF. Right ? then how can I enable it again ? for example, 1 out of 10 times I want to enable Wifi.
@AndreasSpiess7 жыл бұрын
That is not trivial. Because the ESP boots after deepsleep, you lose all your varialbes, also your counter. In some of my videos I solved this problem using the RTC memory. But I would start first simple and add complications afterwards
@tuhinsengupta10234 жыл бұрын
In sleep mode the current drawn is shown as 60uA and not 600uA
@timo49844 жыл бұрын
Hey Andreas! Very interesting video. For my project i need a sensor to wake up the ESP from deep sleep. Is this also possible? Or is timing the only way to handle it?
@AndreasSpiess4 жыл бұрын
Maybe you look also at the EXP32. It has many more possibilities for wake-up. Here, the only possibility is using the reset pin.
@suhaimiannuar60085 жыл бұрын
thank you!
@AndreasSpiess5 жыл бұрын
:-)
@larryfostano66262 жыл бұрын
So I followed your video on deepSleep , I like your explanation but for some reason I have not seen my ESP8266 development board go into deep sleep. If I put my Fluke 87(older meter) in series with the 5v line I see .20uA , copied the sketch you posted and watched the readings. It was in Loop1 , never showed less than .20uA .So first off the math,10000000 if I reduce this number to a lower number will I see the loop2 come on sooner and then see the drop in uA ?I assume I wasn't watching the meter long enough or is there some other reason that I am missing, thanks. So I read some of your replies to others and I think I know the answer now. I am using a 12F development board and you are using a bare chip so maybe that's why I am not getting into deepSleep? Also you mentioned a cap , I did not install that either.
@AndreasSpiess2 жыл бұрын
Development boards consume much more power. This is why I use a bare ESP8266 board.
@stevietheblindcat8 жыл бұрын
Thank you for all of your video's. They explain all details very well. One question though on deepsleep. I'd like to wake my esp8266 from deepsleep from an external interrupt (button press). I thought I could just connect vcc via a resistor with a button to ground and T from between the resistor and button to the RST input to put an interrupt event on the RST input. But that does not seem to reset the device. Is the D0 - RST connection still needed in that setup? Any thoughts on that?
@AndreasSpiess8 жыл бұрын
If you pull the RST pin low and high again, the ESP boots. I just tried it with my NodeMCO board. So, you connect a 5-10k resistor from VCC to RST to keep it high and a push button between RST and GND. Then, you should get what you want. Just connect serial monitor to check. The module always have to be powered.
@stevietheblindcat8 жыл бұрын
It seems to have been a case of the syndrome that you can look at a situation for a long time, but don't spot what you've done wrong. I now see that I had the resistor connected to GND as well. Thank you very much!
@AndreasSpiess8 жыл бұрын
You only learn from errors ;-)
@somood19918 жыл бұрын
thanx ,very usefull
@AndreasSpiess8 жыл бұрын
+somood safady You are welcome!
@aldogentile2458 жыл бұрын
Hi Andreas, Interesting tutorial. I measured current comsumption in an ESP-12F and detected picks of 500mA. Have you ever tested this model? It's rather weird, because I did not find any reference about diferent current consumtion among esp8266 models.
@AndreasSpiess8 жыл бұрын
No, I do not own one. And I am also not completely sure if I measured the the real peak current of the 12E's correctly. I was satisfied with the results then. How did you test?
@aldogentile2458 жыл бұрын
I used the same method for testing that you have used. I think the higher current comsumtion is related to the improvement in the RF module of 12F.
@alager1234562 жыл бұрын
If I'm reading the meter correctly, starting at 9:31, that is only 60 micro amps, not 600.
@AndreasSpiess2 жыл бұрын
You are right!
@joseantoniodelrio80686 жыл бұрын
Hello I am measuring the current consumed by a NodeMCU (module ESP-12E), connect a resistance of 1 ohm in series with the power supply and 200mV peaks appear every 100ms that these peaks are due.
@AndreasSpiess6 жыл бұрын
With this configuration, you measured the operating current, not the deep-sleep current.
@allinthefamiliy31222 жыл бұрын
I was looking at the function of CH_PD pin, CHip select Power Down a pin that active low brings the who chip in a restart mode. It seems that this pin reduces the current till micro amps. It seems to be similar to deep sleep mode.
@AndreasSpiess2 жыл бұрын
You are right.
@greenbulletclips58355 жыл бұрын
Great great great tutorial ! Worked pretty well for me but I still have kind of 0.5mA in Deep Sleep do you have any idea from where it could come from ? Thanks again so much for what you're doing !
@AndreasSpiess5 жыл бұрын
From somewhere around the ESP8266 (LDO or other chips) ?
@greenbulletclips58355 жыл бұрын
Hi Andreas, thanks a lot for your quick answer ! Actually I use the same chip than yours, this is why I found it ackward, a classic esp8266 esp12e. I will open the metaliic case of a broken one. I just feel it's in Light Sleep when I ask a Deep Sleep. Do you have any idea on how to stop the CPU by hand ? ( by command in fact ) Thanks a lot !
@greenbulletclips58355 жыл бұрын
Oh maybe the module adapter has 3 resistances I'll check without any of those
@AndreasSpiess5 жыл бұрын
Are you sure you measure right? These are quite small currents. You can reset the chip with the rest pin to check.
@greenbulletclips58355 жыл бұрын
Hi Andreas ! I'm actually checking the amperage going out from an arduino UNO 3.3 Volt output,it was the only thing I had under my hand. I've put a capacitor and it worked fine, but when I tried withtout, I had the luck to hear a small "gritziik" which told me I had to try with another board. I'll try with a real power supply tomorrow. I definitely believe that a low power consumption timer should exist in another way ! I'll keep you informed in anyways, thanks so much for your answer
@BayOfSand7 жыл бұрын
Thank you for great videos on the ESP8266. Have you found a way to enable RF after waking up from ESP.deepSleep(microsec, WAKE_RF_DISABLED)? Seems like forceSleepWake() does not do the trick. The only way I can get wifi working again is to do another deep sleep with RF_CAL, which is not optimal.
@AndreasSpiess7 жыл бұрын
To my knowledge, you have to decide whether you want to use WiFi after your wake-up, as you described.
@DavidHouseGA7 жыл бұрын
The only way I've found to get it to use the modem after deepSleep(..., WAKE_RF_DISABLED) is these 3 commands before WiFi.begin() inside the loop() of the sketch: WiFi.forceSleepBegin(); delay(100); WiFi.forceSleepWake(); ... do something ... I have several println here WiFi.begin(... If I try just the WiFi.forceSleepWake() it does not work. Hope that helps. I found this through trial and error.
@bjornotto983 жыл бұрын
Hello Andreas, I didn't understand exactly how you connected the Capacitor. Is it between max 4.2 and ground from the battery or between VOut of the LDO and ground? Where did you solder + of the capacitor If it's between the LDO Vout and ground?
@AndreasSpiess3 жыл бұрын
The big cap is between Vcc and GND of the ESP. I solder it on the module itself
@bjornotto983 жыл бұрын
@@AndreasSpiess Thank you! My projects wouldn't have been possible without your help :)
@ahmadhassan41584 жыл бұрын
That was really helpful. Thank you alot. I am running a NodeMCU 12E from a Li-ion 3.7 battery. First I connected the battery directly to 3.3 pin and the deep sleep works and cosumes 115 micro ampere current. Then I stepped down the voltage form the battery using mcp1700 votlage regulator which has a quiescent current 1.5 micro amp but the promblem is that in deep sleep mode the consumed current rises to 1.5 mili amps. Then I tried to run the board from the Vin pin which is 5v in my board but it did not work at all. Any help or advice to reduce power cosumption during deep sleep would be appriciated. Thank again for your effort on your videos.
@AndreasSpiess4 жыл бұрын
Most development boards cannot be used with deep sleep because their power consumption is too big. This is why I used a barebone module. Some ESP32 boards are a little better. I made some test videos.
@ahmadhassan41584 жыл бұрын
@@AndreasSpiess Thank you for your response. I will take a look on the videos.
@trimmer996 жыл бұрын
Hi Andreas! I run more and more ESP's on 5V now, especially since Espressif made their comment regarding 5V tolerance. Have you ever tested what happens to the current spikes when running an ESP-12, ESP-01 or similar on 5V?
@AndreasSpiess6 жыл бұрын
I hope you mean on the input pins, not on Vcc ;-). Because the statement of Espressif was only for these pins. Input pins should not produce any current spikes.
@trimmer996 жыл бұрын
Thank you for your reply Andreas! No, running *many* devices on 5V (VCC). Even running them om 5.2V. And, yes, ESP-01, ESP-07 and ESP-12 VCC (no regulator). Guessing then that you have not tested this on your oscilloscope? Cheers, Mike!
@AndreasSpiess6 жыл бұрын
And I probably will not test it because I do not see a reason to violate manufacturers recommendation here. Vcc max for the ESP chip itself is 3.6 volt. But it is good to know that it also runs on 5.2 volts...
@shabbirali15135 жыл бұрын
can i use 1k micro farad capacitor with my ESP-32 as well?
@AndreasSpiess5 жыл бұрын
Yes
@ChrisLeeX6 жыл бұрын
"like the marmots here in Switzerland" 😂
@AndreasSpiess6 жыл бұрын
:-)
@USPUHman6 жыл бұрын
Thank you ;-) Vielen dank
@AndreasSpiess6 жыл бұрын
You are welcome.
@marekstrnad32894 жыл бұрын
Just tried the first option (was too hast to watch the whole video) and in works nicely now on Wemos D1 mini 3.0.0 - switching between 80mA and 20mA with WiFi.forceSleepBegin(); and WiFi.forceSleepWake(); both followed by delay(100), it nicely reconnects to wifi. I suppose the library and maybe something in HW was improved.
@AndreasSpiess4 жыл бұрын
This is an old video, so we can assume that thins changed since then.
@marekstrnad32894 жыл бұрын
@@AndreasSpiess Yep clear thing, please do not take my comment personally (I wan never meant as criticism), I just go to your videos for help a lot and I guess I am not the only one. So wanted to help the others if they need active MCU and WiFi only once in a time. I was searching a lot and the information was somehow mixed, because of the probable change in SW or HW.
@deangreenhough34798 жыл бұрын
Andreas, may I ask how you setup your scope to measure current. Do you require different probes? Are there any dangers to measuring current? I have recently purchased a rigid Ds1104DZ and still learning the basics. Your direction would be gratefully received. Thank you
@AndreasSpiess8 жыл бұрын
+Dean Greenhough It is quite easy: As you see in the video I put a 1 Ohm resistor in the GND line. With the oscilloscope you just measure the voltage on that resistor and calculate the current according ohm's law. Maybe you watch the video again with this explanytion you will see the explanation. There is a danger of a shortage: Your oscilloscope has usually GND connected to Earth. If your device has also a connection to earth you can create a shortcut in your device. This is why I put the resistor in the GND line. Then I can connect GND of the oscilloscope to GND of my bench power supply. No problem. You will also have no problem if you power your device from battery because then you have no connection to earth. This danger exist always, not only during measurement of current! Hope, this helps.
@deangreenhough34798 жыл бұрын
+Andreas Spiess my apologies for writing a post, before I re watched your video. Your explanation is clear and I have reached a better understanding, thank you. I do have one question: The 1ohm resistor, I assume I will need a resistor like this? I assume this will get pretty warm. Do you advise only running this for a limited amount of time? Thank you so much for your time www.ebay.co.uk/itm/like/391374624389?limghlpsr=true&hlpv=2&ops=true&viphx=1&hlpht=true&lpid=122&chn=ps&googleloc=1006959&poi=&campaignid=207297426&device=c&adgroupid=13585920426&rlsatarget=pla-142405555266&adtype=pla&crdt=0&ff3=1&ff11=ICEP3.0.0-L&ff12=67&ff13=80&ff14=122&ul_noapp=true
@AndreasSpiess8 жыл бұрын
+Dean Greenhough The power dissipation of a resistor can be calculated by the formula: P = I x I x R. If yor device draws a current of 1A the power rating for the resistor is: 1A x 1A x 1 ohm = 1 Watt. Normal resistors are 1/4 Watt and therefore should be good for 0.5A. So, yours is ok for quit big currents.
@deangreenhough34798 жыл бұрын
This video has absorbed me for the whole weekend, I have learned so much, but aware of just how much I don't know. Thank you Andreas for your guidance and patience. I am awaiting a 1ohm power resistor so I can replicate your work on the ESP.
@doggo75674 жыл бұрын
I get 0.17 mA on my multimeter when esp8266 is in deep sleep, please help!
@AndreasSpiess4 жыл бұрын
Unfortunately I cannot do remote debugging.
@doggo75674 жыл бұрын
@@AndreasSpiess I use wemos d1 mini, is that the problem? V3
@AndreasSpiess4 жыл бұрын
yes, if you want small currents you have to use an ESP-12 module alone
@doggo75674 жыл бұрын
@@AndreasSpiess Thank you!!! I was struggling so hard to find answer! I thought my wemos was faulty!
@adamg76956 жыл бұрын
Hello Andreas. Quite old topic but I followed this exercise to reduce current peaks. But having 5x1000uF (electrolitic polarised) I could reduce only to 180mA. Any tips you may have?
@AndreasSpiess6 жыл бұрын
If you connected the capacitor very close to the power pins of the ESP there are two possibilities: 1. Your measuring method or crappy capacitors. I only use one 1000uF capacitor
@shummidoo7 жыл бұрын
Good walk through. I have an odd experience with a bare ESP12E, I haven't connected RST and GPIO16 as i want it to go to sleep until it will be power cycled. but after the sleep-time ran out, it blinks the blue led and draw 8 mA?? if i use ESP.deepSleep(0); it dosn't wake up, but then you can ONLY wake it by reset. Quistion: When it wakes up, i can see it is booting @74400baud, but it doesn't run my code, so what are it doing?
@AndreasSpiess7 жыл бұрын
1. Maybe you watch my video #108. 2. The ESP always runs your code if you reset it. the messages @ 74400 are not important. It has nothing to do with deepsleep
@aladino101006 жыл бұрын
Grüß Gott Andreas, with reference to the scheme @ min 7'40", how is the switch at GPIO0 operated (to flat firmware or to upload a sketch)? I mean, when is the pulp or pull down activated? There is a bit of confusion out there, perhaps because "pin" and "GPIO" are used interchangeably. Happy and creative 2018
@AndreasSpiess6 жыл бұрын
GPIO means General purpose Input/output. These are pins which can be used for this purpose (other than Ground or Vcc pins). During power-up, GPIO0 pin has to be high (3.3 volts) if you want to run the sketch. If it is low, the ESP programs its flash memory. To be sure it really is 3.3 volt, we use pull-up resistors to 3.3 volts. A button switch shortens the pin to ground for programming.
@aladino101006 жыл бұрын
Thx
@aladino101006 жыл бұрын
Thx for the awesome series of videos, from which I learned a lot!
@bernt65005 жыл бұрын
how do you get an esp back to live, when he, for example, isnt´ programmable anymore because of the last sketch uploaded to him contained deep sleep: "warning: espcomm_sync failed error: espcomm_open failed error: espcomm_upload_mem failed error: espcomm_upload_mem failed"
@AndreasSpiess5 жыл бұрын
Maybe you google. Your ESP might be up, but not in programming mode.
@ismzaxxon3 жыл бұрын
Just as an update. It turns out a 12K resistor is insede the ESPs other than type S ESPs. Ie ESP8266 12E and 12F have a 12 K internally between enable ind Vcc. Out a meter on the two pins and you will see 12K. Undocumented. Sadly.
@AndreasSpiess3 жыл бұрын
I assume it should prevent unscheduled reset. I assume it is included in the deep-sleep current consumption because you cannot remove it.
@jailtonjr177 жыл бұрын
Than your for your video! Nice accent too =)
@AndreasSpiess7 жыл бұрын
:-)
@ismzaxxon3 жыл бұрын
Tried this using ESP now. No luck so far.
@AndreasSpiess3 жыл бұрын
One node has to be always powered on.
@envt8 жыл бұрын
Andreas (or anyone else reading), do you know how to "deep sleep" an ESP for more than one hour? I want my ESP only to wake 3 times a day.
@AndreasSpiess8 жыл бұрын
+Ejal Nvt Yes. Tomorrow you will see a video coming. And if all goes well, next week another one for exactly this topic.
@lhxperimental8 жыл бұрын
Hi, could you check with ceramic capacitors? Electrolytics have relatively high ESR when comapred to ceramics. Could make a big difference. Maybe just 300uF ceramic would be sufficient.
@AndreasSpiess8 жыл бұрын
+helloworld Unfortunately, I do not have such big ceramic capacitors. The biggest is 10uF. I just checked with Aliexpress. There, 220uF were the biggest I found. But they were very expensive (compared to the tantalums I use). I am also not sure if the charge of such a capacitor would be sufficient, because the peaks have a certain duration. But I am not a specialist in capacitors...
@lhxperimental8 жыл бұрын
+Andreas Spiess It need not be a single ceramic cap of 300uF. 100uF is available for
@AndreasSpiess8 жыл бұрын
+helloworld Ok. You convinced me. I ordered some 100uF and will try it.
@lhxperimental8 жыл бұрын
Great! :)
@larshaeuser8 жыл бұрын
Hello Andreas, thanks for the video! Will you make another video with ceramic caps? Where exactly have the caps to be in the layout? Between VCC and GND near ESP?
@FOATE5 жыл бұрын
Anyone have an idea why deep sleep would cause erratic behaviour? I'm using a Wemos D1 mini wich is based on the esp8266, and when I use deep sleep the timing at wich thingspeak receives data becomes randomised to a certain extent, without deep sleep the transmission delay is a very tight 30 seconds but with deep sleep theres suddenly a 5 second variance. It also seems after every 3-4 transmissions the data gets messed up because thingspeak receives an entry but it's not displayed on the chart. Any ideas would be greatly appreciated!
@AndreasSpiess5 жыл бұрын
1. Because the ESP boots after deep-sleep it has to connect to WiFi. Which takes sometimes longer. 2. Look at the maximum posting rate of Thingspeak. Maybe 5 seconds are not allowed in the free plan.
@RuiRex7 жыл бұрын
Does RTC RAM even exists? Because he(RainerOchs) is writing to the same memory offsets as you (65+). I think it's he's referring to RTC EEPROM when he says "RTC RAM". Am I correct?
@AndreasSpiess7 жыл бұрын
+Rui Rex There is no RTC EEPROM, only RTC RAM
@RuiRex7 жыл бұрын
Oh, ok. Thanks! Now I see... I got confused when you talked about EEPROM (emulation) on you're video #60. Then I thought that the RTC memory was in fact EEPROM. So no wear on RTC memory, great! I made a ESP clock with MAX7219 led matrix but now I want it to sleep between updates but also keep the dots blinking :) Thanks again!
@AndreasSpiess7 жыл бұрын
+Rui Rex this is how I do it with my KZbin subscribers counter
@RuiRex7 жыл бұрын
+Andreas Spiess Yes, I know. I got some parts from that project :) mainly because of the rotated display. I also use those with 4 matrix on a single PCB. I'll check it out. I didn't have some of the debug functions defined so I didn't use your code (didn't bother to fix it...). But your code architecture is good.
@AndreasSpiess7 жыл бұрын
:-)
@gogetyourverb7 жыл бұрын
Is there any way to reduce the amount of time it takes to start running a program from Flash memory after waking from deep sleep? I'm getting a delay of about 230 ms.
@AndreasSpiess7 жыл бұрын
I do not know, but I never investigated into it.
@PC-td1nb6 жыл бұрын
Maybe a silly question but how do you connect the capacitor ?
@AndreasSpiess6 жыл бұрын
Plus to Vcc of the ESP-12 module and minus to GND
@lemeuhpointbe8 жыл бұрын
Hi, thank you for the video and the relation between the supply votlage and the deep sleep current. I'm wondering if you already test deepsleep with ESP01. Because on the web i found a deep sleep current of 78µA but with your code i have a deep sleep current of 250µA @ 3.3V and 520 µA @ 4.9V and i don't know why...
@AndreasSpiess8 жыл бұрын
Which module do you use? Any voltage regulators?
@lemeuhpointbe8 жыл бұрын
ESP01 like this: tim.jagenberg.info/files/2015/01/PTIM9823.png (512Ko) from FYI here is the hack to allow deepsleep on tim.jagenberg.info/2015/01/18/low-power-esp8266/ No voltage regulator, only a DC lab supply and a capacitor of 100µF on the supply Current measurement are performed with a multimeter AMPROBE AM-510-EUR with a accuracy of ±(1.0% Rdg + 2 LSD)
@AndreasSpiess8 жыл бұрын
The hack is not for deep sleep, but for wake-up. Are you sure your ESP is in deep sleep? How do you check? I do not remember if the ESP-0 has a LED. There is a circle on one of the pictures you sent me. You have to remove the LED if it is always on. Otherwise I have no idea.
@lemeuhpointbe8 жыл бұрын
Sorry for the sentence, yes it is for the wakeup. I'm sure the esp is in deep sleep while it reboots and stay in sleep during the correct sleep time (and reduces the current). I have already remove the led. Perhaps it is the other black component (i don't know what it is) which has a higher sleep current than the esp8266.
@oOosupernicoOo5 жыл бұрын
What if I use a ESP8266 board that can take up to 20volts? Do you reckon the deep-sleep power consumption will be very high?
@AndreasSpiess5 жыл бұрын
Depends on your voltage regulator.
@oOosupernicoOo5 жыл бұрын
Andreas Spiess Tbh - The board comes with one build in. Im building a batterypack for the device, and I’d like to have a higher voltage on the batterypack. It will shorten charge time for the same amount of money. The project is for my school. I’m making 10 letters that each light up and each have 6-10 SW2812. (Along with 6x 2Ah 3,7V 18650) I’ll make it start at around 6pm and turn off at 2am. Each day with a new color. Won’t need WiFi (unless I want to turn it into a party light later haha)
@AgeAqua7 жыл бұрын
Dht22 and deep sleep does not work very well. After a few cycles, the esp can no longer read the signal from the DHT22 sensor. This also happens irregularly. Do you know the problem?
@AndreasSpiess7 жыл бұрын
Do you switch the DHT22 off druring deepsleep of the ESP? How do you power the DHT? It absolute minimum is 3.3V. Did you see this text " don't send any instruction to the sensor within one second to pass unstable status" in the data sheet of the DHT22 and is your sketch programmed like that?
@AgeAqua7 жыл бұрын
Following lines before "deepsleep" seems to help: " pinMode(DHTPIN, OUTPUT); digitalWrite(DHTPIN, LOW); ESP.deepSleep (XXX); Power is stabel. I found this in the Adafruit lib in DHT.cpp: "// Now start reading the data line to get the value from the DHT sensor. pinMode(_pin, INPUT_PULLUP); delayMicroseconds(10); // Delay a bit to let sensor pull data line low." Maybe the error is here located?
@AndreasSpiess7 жыл бұрын
If it works, it is ok. It is always hard for me to remote-diagnose tricky problems. There are many possibilities for something to go wrong.
@marcohahn23413 жыл бұрын
At 1:00 there are three resistors R1, R2, R3. Which do I have to use?
@AndreasSpiess3 жыл бұрын
Not critical. 1 - 10k or even higher.
@sedimalko2 жыл бұрын
Hello! I need some help with a project. At first is it possible or not? ESP12f and others have a deep sleep mode. That's right! I want him to wake up every minute. To be able to connect to the server and check if I have set it to stay working or if I have not set it to work the given relay switch should continue to sleep. if I set it to turn on it turns on and runs until I turn it off. just to check every minute. The goal is to have a security camera off, but have it ready. in case I had to turn it on to have a link to it. but to save energy. If there is any other way how to do it, I would be glad if someone could share. Thanks in advance!
@AndreasSpiess2 жыл бұрын
Remotely switching devices on and off is possible. You find a lot of useful information for your project on KZbin. Maybe you create a diagram and search for each part independently?
@darshanshrm5 жыл бұрын
Please help me my esp8266 going to the sleep but current consumption 7.4 miliamps please help me what to do
@AndreasSpiess5 жыл бұрын
Maybe you use a development board which has many more components which consume current.
@MPElectronique7 жыл бұрын
I got only 7 days from deepsleep getting The temperature outside each 10 minutes with a 18650 battery. Is there a way To extend battery Life ?? Thank you. Have a Nice day. Marc.
@AndreasSpiess7 жыл бұрын
Which board did you use?
@MPElectronique7 жыл бұрын
Andreas Spiess nodemcu v1
@AndreasSpiess7 жыл бұрын
This is, what I thought. These boards use a lot of energy because: 1. They have a USB to Serial chip which is only used for programming 2. They usually have an AMS1117 voltage regulator which uses way too much energy during deep sleep. You need a plain ESP-12E board with a good LDO regulator. Maybe it is good to watch my video #91. And there are some other related videos in my ESP8266 playlist.