import asyncio import RPi.GPIO as GPIO RELAY1 = 4 RELAY2 = 22 RELAY3 = 6 RELAY4 = 26 RELAY_ON = True RELAY_OFF = False RELAYS = [RELAY1, RELAY2, RELAY3, RELAY4] def set_relay(r, state): GPIO.output(r, state) def all_off(): for r in RELAYS: set_relay(r, RELAY_OFF) def init_relays(): GPIO.setmode(GPIO.BCM) GPIO.setwarnings(False) for r in RELAYS: GPIO.setup(r, GPIO.OUT) all_off() async def test(): for r in RELAYS: set_relay(r, RELAY_ON) await asyncio.sleep(0.5) set_relay(r, RELAY_OFF) if __name__ == '__main__': init_relays() loop = asyncio.get_event_loop() loop.run_until_complete(test()) loop.close()