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

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


WhiteHare

Zip-a-Dee-Doo-Dah!  I got lucky with the first piece of the puzzle on how to unify the two caps.  Basically, the solar panel charges the small cap while a copy of the earlier boot circuit (except with a 2.7v NCP301 insead of a 1.8v NCP301) is connected between the small cap and the big supercap.  I tested it this morning, and it works.  Essentially, the small (470uF) cap charges to 2.72v and then any extra charge current gets shunted into charging the big supercap.  This gives priority to charging the small cap, so the Moteino can be up and running almost instantly rather than having to wait for the big supercap to charge to 1.8v.  On a voltmeter, it looks as though the voltage on the small cap is a stable 2.722v, but I'm sure an oscilliscope would show the small cap's voltage bouncing between 2.7v and 2.722v.

Not bad for a first pass solution!

The next step will be working out the "hand-off" between the small cap and the big supercap, which will happen when the big supercap reaches a voltage in the range of  1.8 to 1.9v.  After the hand-off, the Moteino will be powered directly from the supercap, and charging will continue as normal.


WhiteHare

Quote from: joelucid on April 15, 2017, 02:17:03 PM
Instead of using the RFM69 init code try directly using SPI to sleep the radio first thing after boot. Do this by writing mode sleep into the mode register and read back until it sticks. That way starting up uses way less power.

Joe
Thanks!  I'll give that a try. 

WhiteHare

Quote from: WhiteHare on April 15, 2017, 02:25:28 PM
The next step will be working out the "hand-off" between the small cap and the big supercap, which will happen when the big supercap reaches a voltage in the range of  1.8 to 1.9v.  After the hand-off, the Moteino will be powered directly from the supercap, and charging will continue as normal.

I may have gotten lucky a second time.  I think a workable solution for the "hand-off" might be to have the supercap feed into the earlier 1.8v boot circuit, feed that into Perky's Smart Diode, and then feed the output of the Perky Smart Diode into the small cap.  The 0.5v voltage drop on the Perky Smart Diode won't arise, because the circuit won't kick in until the voltage is ~1.8v.  Once the circuit kicks in, though, the voltage on the small cap won't fall further than the voltage on the supercap.  Since the Moteino is already powered from the small cap, it will most likely be a seamless transition.

I have yet to test it, but it seems plausible.  And I like that it uses the breakout boards that I assembled yesterday!

[Edit: Thinking about it a bit more, I believe all I'll need is the Perky Smart Diode between the big supercap and the small cap, feeding from the big supercap into the smaller cap.  The 1.8v boot circuit should be fed by the smaller cap, and then fed into the Moteino.  There, I think that will probably do the job! ]

joelucid

QuoteZip-a-Dee-Doo-Dah!  I got lucky with the first piece of the puzzle on how to unify the two caps.  Basically, the solar panel charges the small cap while a copy of the earlier boot circuit (except with a 2.7v NCP301 insead of a 1.8v NCP301) is connected between the small cap and the big supercap.  I tested it this morning, and it works.  Essentially, the small (470uF) cap charges to 2.72v and then any extra charge current gets shunted into charging the big supercap.  This gives priority to charging the small cap, so the Moteino can be up and running almost instantly rather than having to wait for the big supercap to charge to 1.8v.  On a voltmeter, it looks as though the voltage on the small cap is a stable 2.722v, but I'm sure an oscilliscope would show the small cap's voltage bouncing between 2.7v and 2.722v.

I haven't looked at this thread in a bit - so just thinking out loud here:

1) It seems that excess voltage is a problem that can easily be solved in software - e.g. by putting the radio in RX to burn off excess energy.

2) It would be nice if the 2nd cap didn't require much additional hw. E.g. maybe you can charge the 2nd cap through a gpio pin? Add an inductor so you don't get a huge inrush current and then periodically turn the gpio pin on to charge the second cap (which would sit behind a diode) until your VCC drops below some critical value, pull gpio low and go back to sleep.

3) That leaves the problem of disabling radio & avr until critical voltage is reached. I suppose that still requires a load switch, pull-down & voltage comparator.

Joe

ChemE

Quote from: joelucid on April 15, 2017, 02:17:03 PM
Instead of using the RFM69 init code try directly using SPI to sleep the radio first thing after boot. Do this by writing mode sleep into the mode register and read back until it sticks. That way starting up uses way less power.

Joe

I feel like this code should actually become part of the current fork of the RFM69 library.  Is there a valid reason to leave the radio on longer other than the code is already written that way?

WhiteHare

Those are some good ideas.

Quote from: joelucid on April 15, 2017, 04:39:50 PM
I haven't looked at this thread in a bit - so just thinking out loud here:

1) It seems that excess voltage is a problem that can easily be solved in software - e.g. by putting the radio in RX to burn off excess energy.

Worst case, how much extra heat would that introduce into the electronics enclosure?  The big vulnerability to supercap longevity seems to be heat, which is why I've steered toward excluding it as much as possible.  However, I may have been overly cautious, as I don't know whether or not the milliwatts involved are too small to matter.


joelucid

QuoteWorst case, how much extra heat would that introduce into the electronics enclosure?

I don't think it matters much: keeping the energy in the solar cell will increase its temperature, burning it in the radio increases the radio temperature. Depending on the construction of your device one might lead to a higher cap temp over the other. But not by much.

ChemE

If you're really worried about internal heat, shunt the excess voltage to a peltier.  Win-win-win.

WhiteHare

Quote from: ChemE on April 15, 2017, 09:46:55 PM
If you're really worried about internal heat, shunt the excess voltage to a peltier.  Win-win-win.

That's clever.  I suppose with that approach one could even temperature stabilize the RFM69.  It could be like a retrofit  TCXO equivalent without having to actually build your own RFM69 module from scratch!   ;D

WhiteHare

Attached is a box diagram of the current circuit.  Since a bird in the hand is worth two in the bush, I'm planning to finalize it soon just so I can have something that works as a Version 1.0.  That isn't to say that some of the proposed design alternatives might not be better though, perhaps for a Version 2.0?  I had much fun and learned a lot doing this project. 

[Edit: I'm also attaching a revised Box Diagram, as I had forgotten that the Schottky diode was already built into the Charge Termination Circuit]

WhiteHare

I just now built the circuit from the above box diagram and found that it contains an error.  The charge termination circuit needs to sense the voltage on the supercap, not the small cap.  So, attached is a revised box diagram where this is corrected.

WhiteHare

Attached is a photo. I completed an integration test of the various parts, which I put together according to the above revised box diagram.  It works!    On the left is a  470uF cap (aka "the small cap"), and on the right is a green 5F supercap.  I made them pluggable so that I could try different caps easily.

There is some current leakage, but judging from past experience it's hard to know from this type of assembly how much of that might go away when it's all reduced to a single, proper breakout board.

I think to Joe's point there are a lot of parts in this assembly, so I would agree it's still worth looking at alternate ways of accomplishing a similar end.

WhiteHare

At the other extreme, the simplest hardware is going to be: LDO + schottky + supercap + solar panel(s), and run with BOD on.  Perhaps you use a larger supercap and/or solar panel than you otherwise might, but, meh, the hardware is simple and cheap, so that could be an acceptable trade-off if you've got the space for it.

WhiteHare

Attached is a schematic and breakout board (zipped gerber files) for the super simple solar charger just described.  It uses the LDO and Schottky diode previously described in this thread. 

Three boards from OSH PARK would cost you a total of $0.70, including shipping.

In my testing, I found that this configuration charges a supercap to 2.672 volts.  Of course, your mileage may vary.