http://mbed.org/users/aberk/code/HMC6352/#83c0cb554099