Welcome to the Pycom forum Forum
    • \[\[global:header.categories\]\]
    • \[\[global:header.recent\]\]
    • \[\[global:header.tags\]\]
    • \[\[global:header.popular\]\]
    • Login

    Explore Pybytes | Official Documentation | Report a Firmware Bug/Issue | GitHub

    Powering WiPy in deepsleep from a capacitor?

    Scheduled Pinned Locked Moved WiPy 2&3
    solarvoltagecapacitordeepsleep
    18 Posts 3 Posters 4.6k Views 3 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • G Offline
      guyadams99
      last edited by

      As many others my application is solar powered, with a 12V battery. My current workflow is a pretty simple:

      • measure ADC input
      • convert and send out over TCP socket
      • deepsleep for a few minutes

      I'm not an expert but it looks like most 12v-15v converters, even the most efficient types a) are much less efficient at very low output currents and b) have a zero load current much higher than the WiPy2 should have in deepsleep i.e. you are loosing a lot of the benefit of deepsleep since the converter drawing more power than it technically needs.

      The converter I'm looking at has an enable input, so I was wondering about, when the WiPy goes into deepsleep, powering off the converter and just maintaining the WiPy using a capacitor for a few minutes. When the timer fires to wake up the WiPy, enable the converter so the WiPy when drawing more current is being powered directly and at the same time charge up the cap. In this way the converter is being drive to probably a few hundred mA - where it is much more efficient but only running for a few percent of the time. Has anyone tried this or can anyone point me to a good starting point to try?

      Thanks!

      robert-hhR 1 Reply Last reply Reply Quote 0
      • robert-hhR Offline
        robert-hh @guyadams99
        last edited by robert-hh

        @guyadams99 Sure. It's just a matter of capacitor size, current and acceptable voltage swing. You could also use a small LiPo battery. Example: If you use a 1F capacitor, at a current of 1 mA/100µA leakage and a voltage drop of 1V, you'll get about 900s runtime. t ~ C * dU/I. That's a charge of about 250 mAh, which is a pretty small LiPo battery. 1 F/5V Capacitors are also easily available. So you can ponder what's easier to handle.

        1 Reply Last reply Reply Quote 0
        • G Offline
          guyadams99
          last edited by

          I went the whole hog and stuck in a 3F supercap and it's running for a good 15 mins before the Brown Out kicks in - plenty of overhead for a 5 minute duty cycle.

          E 1 Reply Last reply Reply Quote 0
          • E Offline
            Eric24 @guyadams99
            last edited by

            @guyadams99 I'm curious to know what exact cap you're using. It's a creative solution, but one thing that comes to mind is that there will be some energy loss from constantly charging and discharging the cap (i.e. nothing comes for free), which might be "optimized" by choosing the smallest cap you can get away with that meets your requirements, as well as choosing a cap with very low leakage. So the question is whether the overall power usage is lower using the cap approach vs. the converter (in spite of its inefficiency at lower power levels). Have you done any tests comparing the two over time?

            G 1 Reply Last reply Reply Quote 0
            • G Offline
              guyadams99 @Eric24
              last edited by

              @Eric24 - the current cap I'm using is a PowerStor: http://uk.rs-online.com/web/p/electric-double-layer-capacitors/7637826/. I agree there will be some energy loss and inefficiencies added here. My issue is less the lower efficiency of the buck converter at low output, and more the absolute no load current it has. I have my WiPy2 'power on time' down to <1 second so will have ~299 seconds of deepsleep in every 300 where I should be needing well under 1mA (i'm measuring 615uA, but I suspect I am at the resolution limit of my multimeter!). However the no load draw of my buck converter is about 20mA (and this is on the input side, i.e. 12V), so I'd be drawing roughly 20mA at 12V for 299 seconds that I don't need. I don't actually have the buck converter with the enable pin at the moment, it's in the post, so I have mocked up simply by using a GPIO (set to 1 at the start of boot.py and set to 0 just before the deepsleep) to energise a relay on the 12V input to the buck converter i.e. the relay is only energised and and the buck converter only sees an input voltage for the ~1 second the WiPy is on and for rest of the time it's in deepsleep and powered by the cap. This is horribly inefficient (the relay takes about 75mA to energise!) but serves as a proof of concept and even with this inefficiency the ~1 second of power up time is enough to bring the cap back up to the same voltage each time i.e. it's sustainable.

              I don't have any empirical comparisons at this point and my measurement gear isn't really very good, but once I get the proper buck converter what I plan to do is run for a week each with and without the "cap plus buck input power switching" with a full battery charge at the start for each and measure the overall voltage drop for each.

              E 1 Reply Last reply Reply Quote 1
              • E Offline
                Eric24 @guyadams99
                last edited by

                @guyadams99 Very interesting. I'm curious about the buck converter you're using. Have you looked into some of the ultra-low power parts from TI? Something like a TPS62132 with an IQ of 17uA?

                G 1 Reply Last reply Reply Quote 0
                • G Offline
                  guyadams99 @Eric24
                  last edited by

                  @Eric24 - probably a bad one! I can't find the exact link, but very similar to http://www.ebay.co.uk/itm/272491103349. The TI one looks much better although - the part number you referenced is a 3.3V - have you had success with that (I was under the impression that Vin needed to be >3.4V) or were you just using this as an example? Thanks!

                  robert-hhR E 2 Replies Last reply Reply Quote 0
                  • robert-hhR Offline
                    robert-hh @guyadams99
                    last edited by

                    @guyadams99 Vin can be as low as 3V. 3.3V works well.

                    G E 2 Replies Last reply Reply Quote 0
                    • E Offline
                      Eric24 @guyadams99
                      last edited by

                      @guyadams99 OK. What you're using and the TI parts are miles apart. I now understand the problem. :) TI has (almost too many) low-IQ buck, boost, and buck/boost regulators--here's just one type (for 12V inputs): http://www.ti.com/lsds/ti/power-management/buck-converter-integrated-switch-products.page#p238max=12;42&p236typ=0.0003;100

                      The one I referenced is suitable for a pycom OEM module. If you want to use a XxPy, you will need more voltage, but there are other variants of that same part that are 5V or adjustable (the same data sheet talks about all of them). I have (and currently) do use that exact part for an L01 module, and it works very well. The bad news is that you won't likely find it on a prefab module anywhere, so you will ultimately need to build a PCB. But in the mean time, TI offers "eval modules" for most/all of their parts (pricey, but OK if you only need one or two).

                      If you need a prefab module long-term, you might check out Pololu's range of buck modules (many of them are based on TI or MAXIM low-IQ chips): https://www.pololu.com/category/131/step-down-voltage-regulators

                      robert-hhR 1 Reply Last reply Reply Quote 0
                      • G Offline
                        guyadams99 @robert-hh
                        last edited by

                        @robert-hh Good to know, thanks! I presume if Vin <3.3 V the 3V3 voltage will drop commensurately as well?

                        robert-hhR 1 Reply Last reply Reply Quote 0
                        • E Offline
                          Eric24 @robert-hh
                          last edited by

                          @robert-hh Just a note on the Vin requirements--I can only comment on my personal experience, and I have not tried to power a XxPy on anything other than 5V when using the module's on-board LDO or 3V3 when bypassing the LDO (and 3V3 when powering an L01). So lower voltages may certainly work, I just haven't tried.

                          @guyadams99 And definitely, if you power the module with less than the LDO's output rating, you are essentially passing through whatever the input is (less some small drop).

                          robert-hhR 1 Reply Last reply Reply Quote 0
                          • robert-hhR Offline
                            robert-hh @guyadams99
                            last edited by

                            @guyadams99 The regulator at Vin of xxPy switches to bypass mode if Vin is less than 3.4 V with a voltage drop of <60mV. L01 devices have no internal regulator.

                            1 Reply Last reply Reply Quote 0
                            • robert-hhR Offline
                              robert-hh @Eric24
                              last edited by

                              @Eric24 I gave it a try with a LoPy, which worked fine down to 3V, at which point I stopped. The ESP32 data sheet gives a range of 2.3V - 3.6V for VDD.

                              1 Reply Last reply Reply Quote 0
                              • robert-hhR Offline
                                robert-hh @Eric24
                                last edited by

                                @Eric24 The Pololu devices are nice and I like to use them. But there is a special aspect regarding it /SHDN input. It is connected by a 100k resistor to Vin. At 12V, when shut down, this resistor alone will cause a current of 120 µA. For this special application, that may not be an issue. But if you are fighting for every µA, that may be a surprise.
                                (Sorry @guyadams99 for taking away the discussion a little bit)

                                E 1 Reply Last reply Reply Quote 0
                                • E Offline
                                  Eric24 @robert-hh
                                  last edited by

                                  @robert-hh Agreed. I only see the Pololu modules as prototyping parts (I have dozens of them for that purpose), not as anything that would go to production, so I'm less concerned about those details. However, I realize that some projects are small enough that using these kinds of modules in production is appropriate, so that's where the details--like you mention--start to matter.

                                  G 1 Reply Last reply Reply Quote 0
                                  • G Offline
                                    guyadams99 @Eric24
                                    last edited by

                                    @Eric24 I have discovered an interesting artefact of my shoddy design. If the cap is discharged, there is no way to turn the whole system on - the buck is only turned on by the wipy, but this can't be powered up because the buck is off and the cap is empty. I ended up adding a momentary button from the battery +ve to the buck enable which you have to hold for a second or two to prime the capacitor to a high enough voltage to bring the wipy on to hold the buck enable pin high - but not really a good design. Perhaps I will look more at these low power bucks and try and find one in a form factor I can use (i.e. no surface mount soldering!)

                                    robert-hhR 1 Reply Last reply Reply Quote 0
                                    • robert-hhR Offline
                                      robert-hh @guyadams99
                                      last edited by

                                      @guyadams99 About the form factor: The Pololu devices @Eric24 mentioned come in on a pretty small PCB, about to220 package sized, with part only on one side.

                                      G 1 Reply Last reply Reply Quote 0
                                      • G Offline
                                        guyadams99 @robert-hh
                                        last edited by

                                        @robert-hh - Thanks - I'll get a couple and take a look. Since I only do this stuff for my own use, my volume scale is usually 1!

                                        1 Reply Last reply Reply Quote 0

                                        Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                        Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                        With your input, this post could be even better 💗

                                        Register Login
                                        • 1 / 1
                                        • First post
                                          Last post

                                        Pycom on Twitter

                                        Pycom