calibrate button implemented

Push and hold calibrate button > 500ms results in storing a new offset
value. Need to persist over host reboots.