Untitled

 avatar
unknown
plain_text
a year ago
837 B
4
Indexable
import asyncio
import websockets
import RPi.GPIO as GPIO

# Set up the GPIO pins
GPIO.setmode(GPIO.BCM)
led_pins = [17, 27, 22]
for pin in led_pins:
    GPIO.setup(pin, GPIO.OUT)

async def server(websocket, path):
    while True:
        # Receive message from WebSocket
        message = await websocket.recv()

        # Check if the message corresponds to one of the LEDs
        if message in ['LED1', 'LED2', 'LED3']:
            led_index = ['LED1', 'LED2', 'LED3'].index(message)
            led_state = GPIO.input(led_pins[led_index])
            
            # Toggle the LED state
            GPIO.output(led_pins[led_index], not led_state)

start_server = websockets.serve(server, 'localhost', 8765)

asyncio.get_event_loop().run_until_complete(start_server)
asyncio.get_event_loop().run_forever()
Editor is loading...
Leave a Comment