gpio handler updates