ESP32-S3-RS485-WLED
The ESP32-S3-RS485-WLED is an ESP32-S3 industrial LED strip control development board designed by Waveshare. It features the onboard ESP32-S3-WROOM-1-N16R8 module, equipped with 16MB Flash and 8MB PSRAM, supporting 2.4GHz Wi-Fi and Bluetooth 5 (LE). It integrates dual-channel WLED LED strip outputs, isolated RS485 communication, and audio capture and playback circuits, and uses a DIN-rail protective enclosure, making it suitable for applications such as smart lighting, industrial communication, AI voice interaction, and IoT control.
If you are looking for:
- Coding with AI tools: Click Ask AI and select an AI tool to ask questions about this page, or choose Copy page to copy its content and paste it into an AI tool for coding assistance.
- Resources: See Resources
- WLED usage: See Usage Instructions
- Arduino development: See Working with Arduino
- ESP-IDF development: See Working with ESP-IDF
- Firmware Flashing: See Flash Firmware Flashing and Erasing
- Troubleshooting: Contact Technical Support
| SKU | Product |
|---|---|
| 35580 | ESP32-S3-RS485-WLED |
Onboard Resources

- ESP32-S3-WROOM-1-N16R8 Integrates 2.4GHz Wi-Fi and Bluetooth 5, dual-core with a maximum clock speed of 240MHz, built-in 16MB Flash and 8MB PSRAM
- ES8389 Audio codec
- ES7210 Multi-channel audio ADC
- RS485 Transceiver Supports hardware automatic transmit/receive direction control
- NS4150B Audio power amplifier
- Blade Fuse Used for LED strip output loop protection
- 5 - 24V Power Input Terminal Powers the controller and external LED strip
- Isolated RS485 Terminal Block Used to connect external devices such as sensors, PLCs, and Modbus devices
- GPIO Terminal Exposes the LED strip control signals and expansion GPIOs
- LED Strip Power Output Terminal The output voltage follows the external input power supply
- Dual-Microphone Array Used for audio capture and voice recognition
- PWR, TXD, RXD Indicators Display power and RS485 transmit/receive status
- PH2.0 4PIN Speaker Connector For connecting an external speaker
- 3.5mm Audio Jack For audio output
- USB Type-C Port For program download, communication, and 5V power supply
- 120R Matching Resistor Jumper Can be enabled as required by the RS485 bus
- BOOT Button Used to enter download mode
- RESET button for resetting the development board
- Digital Isolation Circuit Isolates the main controller from the RS485 bus signals
- Isolated Power Module Powers the RS485 isolated side
Peripheral Quick Reference
| Module | Device / Function | Interface | Address / Parameters | GPIO / Signals |
|---|---|---|---|---|
| Main Controller | ESP32-S3-WROOM-1-N16R8 | Wi-Fi / Bluetooth | Dual-core LX7, up to 240MHz, 16MB Flash, 8MB PSRAM | - |
| LED Strip Output | Dual-channel 5V level data output | GPIO | Maximum load current 8A; ensure adequate heat dissipation | GPIO2, GPIO16 |
| RS485 | Isolated RS485 transceiver | UART | Hardware automatic direction control; reserved 120R termination resistor | TX=GPIO17, RX=GPIO18 |
| Audio Capture | ES7210 + dual array microphones | I2S / I2C | Multi-channel audio ADC | Refer to the schematic and example programs |
| Audio Codec | ES8389 | I2S / I2C | Audio codec | Refer to the schematic and example programs |
| Audio Amplifier | NS4150B | Analog audio | PH2.0 4PIN speaker connector | - |
| USB Type-C | ESP32-S3 native USB | USB | Download, communication, 5V power supply | USB_N=GPIO19, USB_P=GPIO20 |
| Expansion Terminal | GPIO3, GPIO4, 3V3, GND | GPIO / Power | 3.3V logic level | GPIO3, GPIO4 |
| Power Input | 5 - 24V terminal block | Power | VOUT follows the input voltage | VIN+, GND |
| Buttons | BOOT / RESET | GPIO / Reset | BOOT is low when pressed | BOOT=GPIO0, RESET=CHIP_PU |
WLED and LED Strip Output
- The two LED strip data signals are controlled by
GPIO2andGPIO16respectively. After onboard level shifting, they output 5V logic levels fromGPIO2'andGPIO16'. - Supports common LED strips such as WS2812B, WS2811, SK6812, TM1814, SM16704, APA102, SK9822, and single-color LED strips.
- WLED firmware can be configured via the web page for LED strip type, GPIO, LED count, color, brightness, dynamic effects, segments, and scenes.
- For DATA + CLK two-wire LED strips, the two LED strip outputs can be configured as data and clock signals respectively; the actual configuration is subject to the LED strip used and the support of the WLED firmware.
The VOUT voltage follows the external input power supply. 5V, 12V, or 24V LED strips must use a power supply with a voltage matching their rated voltage. Select a power supply and wires with sufficient current based on the LED strip power; when approaching an 8A load, ensure reliable terminal connections and take adequate heat dissipation measures.
Pin Definitions
Before using the terminal blocks and expansion interfaces, verify the onboard silkscreen, schematic, and peripheral rated voltages. GPIO2' and GPIO16' are level-shifted 5V LED strip signals and should not be confused with the original 3.3V GPIOs.
Interface Quick Reference
| Type | Signals |
|---|---|
| LED Strip Output | GPIO2' / GPIO16' / VOUT+ / VOUT- |
| RS485 | A+ / B-, with optional 120R termination resistor |
| GPIO Expansion | GPIO3 / GPIO4 / 3V3 / GND |
| Audio | Dual array microphones / 3.5mm audio jack / PH2.0 4PIN speaker connector |
| USB | Type-C, supports USB communication, firmware download, and 5V power supply |
| Power | VIN+ / GND, input range 5 - 24V |
GPIO Allocation
The following table lists the onboard GPIO allocations clearly defined in the product documentation. For the I2C and I2S signals of the audio interface, refer to the schematic and the corresponding example programs.
| GPIO | Signal Name | Connected To | Remarks |
|---|---|---|---|
| GPIO0 | BOOT | BOOT button | Strapping pin; press and hold BOOT, then reset to enter download mode |
| GPIO2 | LED1 | LED strip output channel 1 | After level shifting, outputs 5V logic level from GPIO2' |
| GPIO3 | GPIO3 | GPIO expansion terminal | 3.3V logic level |
| GPIO4 | GPIO4 | GPIO expansion terminal | 3.3V logic level |
| GPIO16 | LED2 | LED strip output channel 2 | After level shifting, outputs 5V logic level from GPIO16' |
| GPIO17 | RS485_TX | RS485 isolated transceiver circuit | UART transmit; direction is automatically controlled by hardware |
| GPIO18 | RS485_RX | RS485 isolated transceiver circuit | UART receive |
| GPIO19 | USB_N | USB Type-C D- | ESP32-S3 native USB |
| GPIO20 | USB_P | USB Type-C D+ | ESP32-S3 native USB |
LED Strip and RS485 Interfaces
| Signal | GPIO / Terminal | Description |
|---|---|---|
LED1 | GPIO2 / GPIO2' | Channel 1; the board-side output is a 5V logic level |
LED2 | GPIO16 / GPIO16' | Channel 2; the board-side output is a 5V logic level |
RS485_TX | GPIO17 | UART transmit signal |
RS485_RX | GPIO18 | UART receive signal |
A+ | RS485 terminal | RS485 differential bus A |
B- | RS485 terminal | RS485 differential bus B |
120R | Jumper | Enable the termination resistor when used at the end of the bus |
Power and Buttons
| Signal / Button | GPIO / Signal | Description |
|---|---|---|
VIN+ | 5 - 24V | External power supply positive |
GND | Power supply negative | External power supply negative |
VOUT+ / VOUT- | LED strip power output | The output voltage follows the terminal input voltage |
BOOT | GPIO0 | Pulled low when pressed, used to enter download mode |
RESET | CHIP_PU | Reset signal |
Precautions
- The external power supply voltage must match the rated voltage of the LED strip. Confirm the polarity again before wiring.
- The maximum total current of the LED strip output is 8A; the actual usable current is limited by the power supply, wires, terminal contact, and heat dissipation conditions.
GPIO2'andGPIO16'are 5V LED strip output signals;GPIO3andGPIO4are 3.3V GPIOs.- For long-distance RS485 communication or communication at the end of the bus, the onboard 120R termination resistor can be connected using the jumper; non-end nodes usually do not connect it.
GPIO19/GPIO20are already connected to USB Type-C and are not recommended for use as general-purpose GPIO.- Before powering from USB and the terminal simultaneously or connecting a high-power LED strip, confirm that the power path and ground connection meet the project design requirements.
Dimensions

Product dimensions: 81.9 × 54.0 × 32.0mm.
Development Methods
The ESP32-S3-RS485-WLED supports both the Arduino IDE and ESP-IDF development frameworks, offering developers flexible options. You can choose the appropriate development tool based on your project requirements and personal preferences.
Arduino is generally easier to get started with and more beginner‑friendly for hobbyists. ESP‑IDF offers a more complete development toolchain and finer‑grained system control, making it suitable for complex projects or applications with higher performance requirements.
-
Arduino IDE is a convenient, flexible, and easy-to-use open-source electronics prototyping platform. It requires minimal foundational knowledge, allowing for rapid development after a short learning period. Arduino has a huge global user community, providing a vast amount of open-source code, project examples, and tutorials, as well as a rich library ecosystem that encapsulates complex functions, enabling developers to implement various features rapidly. You can refer to the Working with Arduino to complete the initial setup, and the tutorial also provides related example programs for reference.
-
ESP-IDF, short for Espressif IoT Development Framework, is a professional development framework launched by Espressif Systems for its ESP series of chips. It is based on C language development and includes compilers, debuggers, flashing tools, etc. It supports development via command line or integrated development environments (such as Visual Studio Code with the Espressif IDF plugin), which provides features like code navigation, project management, and debugging. We recommend using VS Code for development. For the specific configuration process, please refer to the Working with ESP-IDF. The tutorial also provides relevant example programs for reference.
