http://developer.mbed.org/users/jwaters9/code/ShiftBrite/#466ea48e852a