My First Banana Pi

Banana-and-raspiRecently I had a post on what I have done with the 8 Raspberry Pis I have bought in the past 18 moths. Owncloud has certainly been the most important use case at the beginning. While using Owncloud on a Raspberry Pi is great for calendar and address book synchronization between devices, other things such as the browser based GUI are too slow to be much fun on the long run. This is why I upgraded my Owncloud installation to an Intel NUC a couple of months ago which leaves nothing to be desired speed wise. Unfortunately we are looking at a €200 price point for the solution. While this is o.k. for me it, might be too much for others. As a consequence I was looking for an alternative between the Raspi and a NUC that is fast enough for an Owncloud installation that is used for more than just address book and calendar synchronization while still having a price point below 100 euros.

During my summer vacation I read some more about the Banana Pi and some people were claiming that it was about 5 times faster than a Raspberry Pi. This encouraged me to get one as well to see how it would fare with Owncloud. As you can see on the picture on the left, the Banana Pi at the top is just a bit bigger than the Raspberry Pi and you can get all the technical details here. While I will write a follow up post with benchmark results of how Owncloud runs on a Raspberry Pi vs. on the Banana Pi vs. on a Celeron based Intel NUC, suffice it to say at this point that Owncloud's browser based GUI runs around 5-7 times faster on a Banana Pi than on a Raspi and about half as quick as on the NUC. In other words, log-on times and reaction times of the web based GUI are quite usable. And at a €70 price point which includes the Banana Pi at €45, a €15 casing and a €10 sd-card, it's definitely an interesting platform for Owncloud from a cost point of view.

On the other hand there are a few things that make me hesitate a bit. In one of the Banana Pi forums I have read that sometimes the Ethernet interface does not come up during the boot process. I rebooted the Banana Pi many times during my tests and it only happened to me once. However, once is already once too often, especially for remote installations that need to boot properly without exception after a power failure or software reboot. Not a total showstopper but something to keep an eye on.

The second thing that needs some attention is that hardware and software are from a so far unknown Asian company. Not that this is a bad thing per see but it's a bit difficult to trust a company one has never heard of before. On the positive side, all software is open source and I ran my Owncloud tests on a Lubuntu 14.04 image. However, the Linux kernel and the sd-card image are not from Canonical but assembled by lemaker.org. Trust can mean many things and in this regard I have to trust that there's no software bundled in their kernel and sd-card image that does 'unwanted' stuff. While Lubuntu is updated via the Canonical repository, the kernel is not. That means I have to trust that the company will still be around in the next couple of years and willing to support the hardware or that somebody else picks up kernel maintenance should they walk away from the product.

And thirdly, I am not quite sure they have a Linux kernel upgrade process in place yet. What I can see on their web page are ready-to-burn sd-card images for a number of Linux distributions but no word on how the kernel can be upgraded. And speaking about the upgrades, the kernel patch level (3.4.90) used by the current distribution seems to be somewhat outdated, the official counting is already at 3.4.105 when I looked. Let's see, it's still a young project, there's a good chance these things will resolve over time.

A final thought for this post: It's great fun to tinker around with the Banana Pi, it is significantly faster than the Raspberry Pi and I have learnt a lot about the independence of Linux distributions such as Lubuntu, Debian, etc. from the kernel. After all, taking Lubuntu 14.04 that has been designed to run with 3.13.x kernels and using it with a 3.4.x kernel shows how independent distributions are from kernels. And for the details of how to marry a kernel with a distribution, here's a very insightful description from the Banana Pi makers on how to compile the kernel and integrate it with a distribution yourself in case you are inclined to put the software together yourself.