Monthly Archives: August 2015

Smart powering the Raspberry Pi using batteries

I’m looking for options how to power the Raspberry Pi using batteries for my Babble Pi project. Actually, it seems that it’s not as simple as I thought to find something and many solutions are also pretty extensive for their feature sets. I’m looking for a couple of features:

  • power the Pi from battery
  • charge the battery
  • shutdown when the battery is low
  • in order to do this, monitor the battery and ideally access the data using Python
  • ideally power up the Pi using the solution (it’s a pain in the butt that you can power down the Pi but now up)
  • possibly power it up using a RTC (real time clock)

I’m not really happy with all the external batteries for smartphones. They certainly can be charged and also deliver constant voltage for the Pi, but they are usually in some enclosures and they don’t communicate.

I haven’t found any extensive list of solutions out there so I researched one myself, additions VERY welcome!
DC/DC converter (TPS5430 or TPS5430) with the ability monitor the voltage level via I2C and a python lib. It also has a shut-down button and can power up the Pi with the same button. You can add two batteries for hot swap or even a battery and a solar cell. It won’t charge the batteries, though. Price 35.50€
Can control and monitor voltage. Seems more like a UPS, not so much the concept of powering the Pi via battery (i.e. battery kicks in whenever the primary power source fails), but I’m not sure as they are not talking about the primary source. Furthermore, it can also charge batteries, but it can’t power up the Pi. It uses I2C for communication like the MoPi. Price: 29.99€
adafruit power converter is boosting your 3.7V lipo to 5.2V using a TPS61090 boost converter from TI. It also can charge your lipo which is very nice, however no level monitor and no power options for switching on/off your Pi. Price for 500mA: 13.37 Euro
PowerBoost 1000C can charge your battery while powering your Pi, pretty cool. The 500C can’t charge while powering, as far as I understand. Price for 1000mA: 17.84 Euro
DC/DC converter based on OKI78SR that turns many power sources to 5V. It’s not charging the battery and can’t monitor the voltage level. Also, it can’t shutdown the Pi. Pretty expensive for the features, esp when you consider the next solution. Price: 20.65€
A battery is loosing voltage when powering a computer. However, the Pi has a quite limited range of voltage (4.75V and 5.25V) where it runs stable compared to Arduinos (7-12V). A simple UBEC (Universal Battery Elimination Circuit) I also use for my Arduino projects to power my servos with constant voltage. Simply constant voltage, nothing else. Price: 3.28€
Using the INA219 current monitor, you can monitor your voltage via I2C on the Pi. No charging, no power supply, but possibly in combination with the UBEC from hobby king above at least the Pi can know when the battery’s gonna be empty and power down gracefully. Or I could imagine that you hook it up the PowerBoost charger to have charging, powering and monitoring. Finally, we’d need powering up again. Price: 8.90 Euro
This is an unsuccessful Kickstarter campain that wanted to combine UPS, a real time clock and monitoring. I’m not sure it would also allow for charging the battery.


In sum, I think, there is still not the perfect solution out there, I like the simple UBEC in conjunction with other parts so I can build the perfect system myself, possibly also the PiUPS (which doesn’t really seem to be a UPS but really an intelligent battery solution).

Any systems I forgot? Any other features you’re dreaming of?

absolutely fascinating organic display by ferrolic

here’s a liquid magnetic display by ferolic around a really bright guy named zelf koelman:

i was immediately fascinated by the organic movements of the drops and my brain couldn’t stop thinking about how to build one. we know magnetic particles from adaptive dampening in cars and we also know liquid displays as well as e-paper that turns pixels by a little magnetic current.

so this display is a combination of these and my feeling is that the display consists of little electro-magnets and some fluid that contains magnetic particles in oil. the trick has to be that these particles stay together.

i would guess that each pixel is one magnet that can be controlled individually, i thought this would be four seven segment digits with two mangets per line, i.e. 4x7x2 pixels = 56. then you also need some pixels to lift them from the soup at the bottom, for example 10 or so that would be 66. on the other hand you see that this is a full pixelated display, so if they are using 10×20 pixels, that would be 200.

first of all i did some research on the magnetic material called ferrofluid invented by NASA: “Ferrofluid was invented in 1963 by NASA’s Steve Papell as a liquid rocket fuel that could be drawn toward a pump inlet in a weightless environment by applying a magnetic field.” again, this interesting connection to my first association to the automotive application. it seems that these two materials are different in their properties due to their particle size though.

anyway. quick search on google yielded an article on instructables











interestingly, they also cite a project by martin frey in berlin:

next, we need some cheap and small electro-magnets, here are the cheapest & smallest, i could find on ebay:

two centimeters of diameter. i’m sure there’s something cheaper than 4.66€ because that would lead to 200×5 = 1000€ for the magnets.

finally, we need an arduino i would guess that either you use a nano with pwm per line, i.e. 10 ports, or a mega 20 pwms per column. finally, we need some shift register, for example this little guy: 74HC595, there is plenty of projects using it together with arduinos to drive LED matrix displays. for example this:


this would be a really nice project, would love to do it maybe during the christmas holidays. any further suggestions?