import asyncio import asyncpio class button: def __init__(self, pi, gpio, callback): self.pi = pi self.gpio = gpio self.callback = callback async def start(self): await self.pi.set_mode(self.gpio, asyncpio.INPUT) await self.pi.set_pull_up_down(self.gpio, asyncpio.PUD_UP) self.pi.set_glitch_filter(self.gpio, 20000) self.cb = await self.pi.callback(self.gpio, asyncpio.EITHER_EDGE, self.callback)