A solar supercap powered Moteino (15Farad charged by BQ25504)

Started by WhiteHare, February 07, 2017, 05:31:03 PM

perky

Do Not Fit. Basically I added a capacitor just in case it needs it for opamp stability, but there's sufficient capacitance in the circuit anyway so wasn't needed. You can miss it out.

Mark.

WhiteHare

Thanks!

By the way, I notice Digikey sells a notionally similar idealized diode, all packaged up onto an single integrated circuit:  https://www.digikey.com/product-detail/en/texas-instruments/SM74611KTTR/296-35688-1-ND/3911155

Lastly, the 10F drain test finished.  After charging it to 2.7v (reported by the Moteino as a loaded voltage of 2.66v at the start of the test), and draining it down to 1.8v (to the point where it was starting to display 1.79v), it transmitted 168,402 packets.  So, not bad for the price.


perky

Quote from: WhiteHare on February 25, 2017, 04:34:56 PM
By the way, I notice Digikey sells a notionally similar idealized diode, all packaged up onto an single integrated circuit:  https://www.digikey.com/product-detail/en/texas-instruments/SM74611KTTR/296-35688-1-ND/3911155

I tried to find an ideal or smart diode to do what I needed (which was a battery system where the battery voltage drops over time). There are versions of ideal diodes that require a supply and I wanted it to work down to 1.6V and couldn't find any that went that low, so hence the discrete version.

That smart diode you linked to is interesting. It works by energizing the charge pump using the 0.6V drop across the bypass diode, then turns on the FET to reduce that drop to 28mV and the charge pumps stops. Once the charge pump capacitor is discharged it turns off the FET, and the process repeats. That behaviour wouldn't work in my application, but in yours it may well do because the solar panel voltage will usually be sufficient when it gets light.

Quote from: WhiteHare on February 25, 2017, 04:34:56 PM
After charging it to 2.7v (reported by the Moteino as a loaded voltage of 2.66v at the start of the test), and draining it down to 1.8v (to the point where it was starting to display 1.79v), it transmitted 168,402 packets.  So, not bad for the price.

Doing the same analysis as before you should have got 280k * (0.87/1.95) * (10/7.5) = 166k. Well blow me if that isn't what you got :)
Mark.

WhiteHare

A bit of humorous history: I had made a quick breakout board for the SM74611, only to later find out after actually receiving the chip that its middle pin is a ridiculous, stubby, truncated pin that more or less just floats in the air.  Of course, I knew it was stubby in advance, but I had assumed it was co-planar with the ends of the pins on either side of it.  It's not.   :o  Of course, with 20/20 hindsight I should have made the breakout board connect to the "DAP" on the back of the chip instead.  >>>facepalm<<<

[Edit: The BQ25504 doesn't require an additional blocking diode, so I haven't actually tried the SM74611 out yet.  The manufacturer designed it (and, I think, priced it) for use in much larger (say, 100 watt) solar panels. However, I'll give it a try soon and post the results as to how well (or not) it works as an ideal diode in more of a barebones "mini" solar charger. ]

WhiteHare

I just now put the SM74611 in series with a 3v battery and a resistor.  To check the voltage drop, I put my o-scope across the SM74611.  As you can see from the attached scope shots, it mostly shows very little voltage drop, but about every 260ms or so it does spike briefly (about 4ms) up to around 570mv. 

Any other tests anyone here would like me to try on it?

perky

That shows the the charge pump turning off, using the bypass diode, then turning back on, so if the solar panel put out a constant voltage the output voltage would drop by ~570mV before the FET would turn back on. I wonder what will happen when the FET is on and the input voltage drops, presumably for about 260ms current could flow the other way. I suspect it wouldn't have that much effect though.

You need to now charge a supercap with a PV panel with this in series and see! ;)

Mark.

WhiteHare

Quote from: perky on February 26, 2017, 10:18:13 AM
You need to now charge a supercap with a PV panel with this in series and see! ;)

Roger that.  I hope to try that soon.

Probably the lowest cost arrangement would be to take a 4v panel, find a blocking diode that drops 400mv, and then use that combo to charge a capacitor to 3.6v.  It's great that the smart diode, on average, drops so little voltage, but it also means I'm stuck charging to just 3.5v (using a 3.5v panel) rather than all the way to 3.6v.  Of course, I suppose I could use a 4v or greater panel with the smart diode, provided the Moteino monitors the voltage and turns off the charging with a load switch or something when the capacitor voltage gets to 3.6v.  Maybe that would be optimal?  Or, same idea, if I were charging a supercap that topped out at 2.7v.

[Edit: or, another way to do it, would be to have the Moteino monitor the voltages, and as they approached the charge limit, start turning on extra loads like: 1. sleeping less or not at all, and 2. if that's not enough, turn on other loads, like LED's or resistors or the like, or even 3. do more transmissions, maybe even at higher power levels.  The aim being: dissipate any surplus energy that might arise by just burning it off, as needed.  ]

WhiteHare

Quote from: perky on February 26, 2017, 10:18:13 AM
You need to now charge a supercap with a PV panel with this in series and see! ;)

I hooked it up.  It works!  Right now it's roughly noon here on an overcast day.  I'd estimate the rate of charge is roughly comparable to my fancy pants charger. 

perky

Quote from: WhiteHare on February 26, 2017, 01:22:54 PM
I hooked it up.  It works!  Right now it's roughly noon here on an overcast day.  I'd estimate the rate of charge is roughly comparable to my fancy pants charger.
Cool, another piece of the jigsaw puzzle done ;-)
Mark.

WhiteHare

I agree.  I think for now, rather than getting sidetracked with all the different ways this might be simplified or cost optimized, I'm going to instead press ahead using my BQ25504 charger (since it handles charge termination automatically) and the Perky cap (since it can be charged to the 3.6v that the charger currently terminates at) and instead  switch focus to getting the proof of concept working as a self-sustaining low latency remote.

WhiteHare

As a quick sanity check, I programmed the Moteino to use Listen-Mode to do an Rx every 10 milliseconds and report the voltage once every 5 minutes.  If outfitted with a Perky cap, in round numbers it drops 1 centivolt about every 10 minutes.  So, going from 3.6v to 1.8v would take about 30 hours.  Since charging the perky cap from 1.8v to 3.6v from ambient light has so far been easy to do during the day, even when it's overcast, this fairly aggressive approach to getting a low latency remote seems like it should be entirely doable.   8)

WhiteHare

I have a new target: if I can get Listen-Mode period down to 5ms or less on the self-sustaining solar mote, then sending a stream of packets to the mote from the gateway over a 10ms period should be received every time.  If it misses because of interference or the like, the gateway can repeat after waiting 100ms.  The advantage of that is that it would allow a near maximum transmit power of 18.9dbM from an RFM69HW gateway, and I wouldn't need to worry about synchronizing the timing of the transmission (which, although Joe has proven it's achievable, is a more complicated solution).  Why all these tight restrictions?  Well, this protocol should be FCC compliant, (https://lowpowerlab.com/forum/rf-range-antennas-rfm69-library/might-the-rfm69w-be-(effectively)-fcc-compliant-but-not-an-unimpaired-rfm69hw/msg10506/#msg10506)--assuming, of course, that my FCC analysis is correct (disclaimer: which it may not be, but it's all I have to go on at the moment).

[Edit: A 5ms Listen-Mode period means that the atmega328p is woken up 60,000 times over a 5 minute period just to decrement a counter.   That adds up, so I think I'll be wiring DIO4 to the atmega328p's asynchronous counter, and then it can wake up less frequently.  Of course, the bigger load is coming from the Rx period on the radio itself, so maybe that's relatively unimportant.  Anyhow, at this drain rate, I may need to add another mini solar panel....]

[Edit2: Meh, the clock sync is going to be the better way I think.  Much more power efficient.  Well, at least now I have a better feel for where the Pareto frontier is.  ]

WhiteHare

Because of the relative simplicity of implementation, though, I decided to take another look at the 5ms periods for Listen-Mode, as no clock-syncing is required for that.

The first scope shot below just shows the current surges as they occur every 5ms.  The second scope shot zooms in, and this is where we find the detail.  Basically, it's a roughly 16ma current draw for a period of 200uSec.

So, that means the average current draw is 16ma/25=0.64ma.

That's 0.64*24= 15.36mah per day
or
460.8mah per month.

So, from a charging point of view, the base case target becomes:  can the system harvest, store, and retrieve at least 461mah over any given 30 day window of time, all from only ambient indoor light? 




Felix

I think it should be able to. I got the same 7.5F cap and added a tiny 1"x1.5" cell, left it on window sills and in my lab for a few days and it's at 4.1v now. Indoor ambient will charge less I assume, but I wanted to see how fast it would charge and it surprised me, it took longer to get above 1v then it got close to 3v quickly, now 4.1 and still charging. I'll start experimenting with it when I get some time :)

WhiteHare

Cool.  So, are you using a charger or the blocking-diode/smart-diode approach?

In the case of the BQ25504, until the supercap's voltage reaches 1.8v, the BQ25504 is said to be in "cold start" mode, where the MPPT is turned off and the charging is being done by a *much* more inefficient method.  So, in the case of the BQ25504, you never want the supercap voltage to drop below 1.8v.