http://mbed.org/teams/Nordic-Pucks/code/lz/#ce4be867658b