Disk on a platter

This article on building a Raspberry Pi NAS solution has been sitting in my drafts for three years now. Recently, my Raspberry Pi had stopped working (the SD card had died), so I rebuilt it yesterday. I cursed myself for not having finishing the text back then, as I now had to retrace some steps manually. So, here goes the finished procedure for future reference.

I got a Raspberry Pi as a birthday present from my thoughtful colleagues!

Raspberry Pi

Now, as my first project I decided to connect it to my 2TB external hard drive and serve it on my local network using the Samba protocol (I tried NFS and SSH too, but Samba proved to be the most performant protocol and is also cross-platform). No more moving the disk around and hooking up USB cables :) Continue reading Disk on a platter

A no fuss Docker install on Rapberry Pi 2

During CloudFleet development, we had some problems in finding a consistent way to install Docker in Debian Jessie on ARM (Raspberry Pi 2). Debian moved us around between mirrors a bit and then eventually settled on Docker 1.7.1 which doesn’t work on ARM (Socket operation on non-socket). Luckily, we found a nice Docker .deb package that works on ARM thanks to the Hypriot community (check the link for the latest Docker version). To use it, simply do:

wget http://downloads.hypriot.com/docker-hypriot_1.8.2-1_armhf.deb
dpkg -i docker-hypriot_1.8.2-1_armhf.deb

Or if you use Ansible, use this snippet: Continue reading A no fuss Docker install on Rapberry Pi 2

Installing CyanogenMod on HTC Sensation

After using the stock Android ICS that came with my Sensation for a couple of years and getting fed up with it crashing and being slow all the time, I decided to try out the CyanogenMod (CM) everyone was talking about. When I started with this endeavour, I was a bit overwhelmed by the amount of incoherent/incomplete resources all around. In this post, I’ll try to summarise the steps necessary to install it in a more human way to help others achieve the same goal.

HTC Sensation and the material design of CM 12
HTC Sensation and the material design of CM 12

Continue reading Installing CyanogenMod on HTC Sensation

A talking Raspberry Pi using Resin.io

Just trying out resin.io which is a nice new service that enables you to deploy apps to Raspberry Pi devices in a Heroku-like workflow:

git push resin master

In this post I’ll explain how I deployed a simple app that recites “N green bottles” written in Node.js to my Raspberry Pi via Resin.io – without having to ssh to the Pi even once. Continue reading A talking Raspberry Pi using Resin.io

CPU frequency scaling in Ubuntu

Changing CPU frequencies can be interesting to measure certain energy efficiency aspects. To manually change the CPU frequency in Ubuntu, first install cpufrequtils to get the additional commands:

sudo apt-get install cpufrequtils

See the available CPU frequencies, the current frequency and governor per core.

Continue reading CPU frequency scaling in Ubuntu