You may download a ready-to-use firmware yawl_controller.bin .
You can get further information on the various WLED firmware versions https://kno.wled.ge/basics/install-binary/
Also you may compile the firmware by self using Visual Studio Code and Platformio.
- Download and install Git client: https://git-scm.com/downloads.
- Download and install Visual Studio Code: https://code.visualstudio.com/download.
- Install PlatformIO extension in Visual Studio Code: https://docs.platformio.org/en/latest//integration/ide/vscode.html#installation
- Download WLED Github Master ZIP: https://github.com/Aircoookie/WLED/archive/refs/heads/master.zip
- Unpack in directory somewhere
- "Open folder" in Visual Studio Code
- Build project with Ctrl+Alt+B hotkey
- Build standard WLED.
- If the file is created successfully then you can proceed to the next step, if not please read this article for more information.
- Copy platformio_override.ini to WLED folder
- Build custom WLED firmware.
- Please find built firmwae in WLED/build_output/firmware folder
If you still have questions for more information please read a step-by-step guide at this page of the WLED Wiki
- Edit file env.cmd from yawl-controller/firmware/ESPHome/ directory.
- Set
PYTHON_PATH
to Python installed on your system. - Set
PLATFORMIO_VENV
to path to virtual environment where Platformio will be installed. - Set
PLATFORMIO_REPO
to url for Platformio repository. Default: https://github.com/platformio/platformio-core - Set
PLATFORMIO_BRANCH
to branch name or tag in Platformio repository. Default: master - Set
WLED_REPO
to url for WLED repository. Default: https://github.com/Aircoookie/WLED - Set
WLED_BRANCH
to branch name or tag in WLED repository. Default: master
- Set
- Run install_platformio.cmd. The latest version of Platformio will be installed.
- Run compile.cmd. The firmware will be compiled and copied to yawl-controller/firmware/WLED/ directory. File yawl_controller_WLED_
{WLED_VERSION}
.bin will be created, where{WLED_VERSION}
- version of WLED.
YAWL Controller | USB to Serial Adapter |
---|---|
3.3v | 3.3v |
Ground | Ground |
IO0 | Ground |
TX | RX |
RX | TX |
Download flasher https://github.com/esphome/esphome-flasher/releases Open the flasher tool.
- Serial port: select COM port where the controller is connected (there is probably only one option).
- Firmware: Browse to the location where you downloaded your compiled firmware and select your firmware.
- Click Flash ESP and wait.
The controller will be flashed now, you can follow the progress in the console window. When finished writing the firmware, switch off controller.
Pin | Function |
---|---|
GPIO0 | Push Button |
GPIO1 | LED CLK |
GPIO2 | LED DATA |
GPIO4 | IR Receiver |
GPIO12 | Relay |
GPIO14 | Temperature Sensor |
- Select 3-wire LED Strip like a WS281x
- Data GPIO: 2
- Select 4-wire LED Strip like a APA102
- GPIOs:
- Data GPIO: 2
- Clk GPIO: 1
YAWL Controller uses GPIO 14 for temperature sensor DS18B20 (DALLAS)
YAWL controller uses GPIO 4 for IR receiver.
Information about infrared receivers https://kno.wled.ge/interfaces/infrared/
YAWL controller uses GPIO 12 for controlling relay.
Installing relay https://kno.wled.ge/features/relay-control/
YAWL controller uses GPIO 0 for button.
You are able to use multiple LED outputs from one yawl-controller. Pins and LED numbers can be easily configured in LED settings, you don't need to re-compile code for your specific setup. You may use use two specific LED pins, GPIO1 (CLK) and GPIO2 (DATA) for two 3-wires strips
Pin | Function |
---|---|
GPIO1 | LED DATA #1 |
GPIO2 | LED DATA #2 |