GPIO with debounce