Welcome to the LED Controller repository!
This project enables you to control a LED strip connected to a Raspberry Pi GPIO using a Python Flask API, WebSocket server, and an Ionic Vue-based GUI.
- This implementation is only meant for local deployment!
- There are basically no security checks added, so there is no rate-limiting or much input validation or anything else!!
- If you want to add those implementations, feel free to create a fork of this repository.
- Python Flask API for handling API requests.
- WebSocket server for real-time communication.
- User-friendly interface for controlling the LED strip.
- Interacts with the server through the API and WebSocket.
- Connects to the WebSocket server.
- Controls the LED strip through GPIO pins.
- Python 3.x
- Flask
- Raspberry Pi with GPIO pins
- Ionic Vue
- Clone the repository:
git clone https://github.com/LetsGaming/LED-Controller-Websocket.git
cd LED-Controller- Install the required dependencies:
pip install -r Client/requirements.txt
pip install -r Server/requirements.txt- For the GUI, follow the installation instructions for Ionic Vue on their official website.
- Start the Server:
cd server
python app.pyThis will start the Flask API and WebSocket server.
- Launch the GUI:
cd gui
ionic serveAccess the GUI through your web browser at http://localhost:8100.
Run the Client on Raspberry Pi:
cd client
python client.py --name NAME_OF_THE_CONTROLLER_TO_BE_SHOWNEnsure that the Raspberry Pi is connected to the LED strip via GPIO pins set in the config.json.
Now you can control the LED strip using the GUI and observe real-time updates!
We welcome contributions! If you find any issues or have suggestions for improvements, please open an issue or create a pull request.
This project is licensed under the MIT License. Feel free to use, modify, and distribute it as per the terms of the license.