
Cheap wled controller
makespacemadrid/cheap-wled-controller
WLED controller, for practising SMD soldering

WLED controller, for practising SMD soldering
Jlcpcb panelized is an open-source printed circuit board by makespacemadrid, from the makespacemadrid/cheap-wled-controller repository on GitHub. It is a 2-layer board of 96 × 96 mm with 196 parts on 292 nets, routed with 2,560 tracks and 464 vias.
It is built around the ESP32-S3-WROOM-1-N4R2, CH224K and MX5014S, with the TPS54202DDC, AMS1117-3.3 and USBLC6-2SC6 among its other parts. Its parts include 60 resistors, 52 capacitors, 24 ICs, 24 connectors and 16 diodes. It belongs with the ESP32 boards of this library.
Este proyecto nace de una práctica con Kicad en uno de los talleres de Makespace (slides de nuestro compañero Pablo Garrido aquí),
donde se diseñó el esquemático y el enrutado de la pcb para posterior fabricación de la misma en JLCPCB.
Continuando con el proceso lógico de aprendizaje, ahora este proyecto pretende servir como una primera aproximación en la práctica de soldadura SMD (componentes de montaje superficiales), así como fabricación de stencil usando una CNC (maquina de control numérico).
Junto al proyecto Kicad también se encuentran los stl de la carcasa para imprimirla en 3d.
El repositorio con el proyecto Kicad: https://github.com/makespacemadrid/cheap-wled-controller718714
Esta pcb tiene la particularidad de usar para su alimentación un usb c con PD (Power delivery), lo que permite negociar diferentes votlajes y de este modo usar tiras led que trabajen a 5v, 9v, 12v, etc.
Las tiras led compatibles con el firmware son: https://kno.wled.ge/basics/compatible-led-strips/
Usaremos el software Flatcam, en el que cargamos la capa "paste top" del gerber que generamos en Kicad para enviar a fabricar la PCB. Esta capa contiene la geometría de los pads de todos los componentes.
El proceso lo vamos a llevar a cabo con una fresa de 30 grados y 0.1 de diámetro. Asumiendo que la lata de refresco tiene un grosor de 0.2mm. Las capturas de los pasos a seguir son las siguientes:

El gcode generado finalmente lo hemos subido aquí.
En nuestro caso estamos usando un esp32 s3 con 4MB, por lo que vamos a flashear desde la web: https://wled-install.github.io/

En LED preferences:
La configuración de la tira:

La configuración del mosfet para apagar la tira:

El botón en placa permite encender y apagar la tira manualmente:

Para configurar el mando usaremos este fichero json.

En este apartado se describen los componentes principales del circuito para gestionar la alimentación y regulación del voltaje de la tira LED.
📄 UPD301A USB Power Delivery Operation
📄 A Primer on USB Type-C® and USB Power Delivery Applications and Requirements
El conector USB-C que se utiliza en la placa tiene doce patillas con una separación muy pequeña entre cada una de ellas; además, en los dos extremos se encuentran los pines de alimentación (GND y VBUS), por lo que una mala soldadura podría generar un cortocircuito.

Es importante que antes de conectar la placa se mida la resistencia entre los pines de alimentación para comprobar que no haya cortocircuito 🔥.
El CH224K es el componente encargado de gestionar el protocolo power delibery (PD).
Encapsulado: ESSOP-10
Distribución de pines:

| Pin No. | Pin name | Pin type | Pin description |
|---|---|---|---|
| 0 | GND | Power | Ground. Heat dissipation EPAD. |
| 1 | VDD | Power | Operating power input. Requires external 1uF decoupling capacitor. Connected in series with a resistor to VBUS. |
| 4, 5 | DP, DM | Input/Output | USB data line |
| 6, 7 | CC1, CC2 | Input/Output | Type-C CC data line |
| 2, 3, 9 | CFG1, CFG2, CFG3 | Analog input | Power configuration input |
| 8 | VBUS | Analog input | Voltage detection input. Connected in series with a resistor to external VBUS. |
| 10 | PG | Open-drain output | Indicates Power Good by default. Active low. Can be customized. |
Configuración de voltaje de salida:
Los pines encargados de configurar la salida del voltaje son el 2, el 3 y el 9. En este caso solo se utiliza el pin 9, por lo que en función de la resistencia que se conecte a este pin, el voltaje de salida variará entre 5 y 20 voltios.

Por ejemplo, si se conecta una resistencia de 10 kΩ del pin 9 a tierra, el voltaje de salida (VBUS_CONN) será de 5 V.
| Resistance on CFG to VDD | Request-voltage |
|---|---|
| 10KΩ | 5V |
| 20KΩ | 9V |
| 47KΩ | 12V |
| 100KΩ | 15V |
| 200KΩ | 20V |
El voltaje que sale del CH224K entra en el buck converter TPS54202, que será el encargado de generar los 5 voltios estables del circuito.
Encapsulado: SOT-23
Distribución de pines:

Configuración del circuito:
En el esquema del circuito se puede observar la configuración del componente, compuesta por resistencias, condensadores y la bobina L2, que mediante su carga (en forma de campo magnético) y descarga genera la corriente necesaria para alimentar los condensadores, que estabilizarán los 5 voltios de salida (+5V).

Una vez que se ha generado el voltaje +5V, el regulador de voltaje lineal (LDO) AMS1117 comienza a trabajar para entregar los 3,3V. Hay que tener en cuenta que la corriente máxima que puede entregar este regulador es de 1A.
Distribución de pines:

PIN 1: GND
PIN 2: VOUT
PIN 3: VDD
Configuración del circuito:

Distribución de pines:

Configuración del circuito:

La tira LED se alimenta a través del voltaje que se genera en el MOSFET Q3, que está controlado por el MX5014S, y que a su vez responde del IO47 del ESP32.
Distribución de pines:

Configuración del circuito:

| Línea | Voltaje | Componente |
|---|---|---|
| V_LED_ | 5-20V | CH224K |
| +5V | 5V | TPS54202 |
| +3.3V | 3.3V | AMS1117 |
| LED_1_VCC | 5-20V | Q3 |


| Qty | Value | Footprint | References |
|---|---|---|---|
| 24 | 10u | cheap-wled-controller:C0805 | C1, C1, C1, C1, C4, C4, C4, C4, C5, C5, C5, C5, C6, C6, C6, C6 +8 |
| 20 | 10k | cheap-wled-controller:R0805 | R4, R4, R4, R4, R10, R10, R10, R10, R11, R11, R11, R11, R14, R14, R14, R14 +4 |
| 8 | 1u | cheap-wled-controller:C0805 | C2, C2, C2, C2, C9, C9, C9, C9 |
| 8 | 27k | cheap-wled-controller:R0805 | R13, R13, R13, R13, R22, R22, R22, R22 |
| 8 | 4k | cheap-wled-controller:R0805 | R6, R6, R6, R6, R7, R7, R7, R7 |
| 8 | 50YXJ22M5X11 | cheap-wled-controller:CAP-TH_BD5.0-P2.00-D0.5-FD-1 | C10, C10, C10, C10, C11, C11, C11, C11 |
| 8 | 56k | cheap-wled-controller:R0805 | R2, R2, R2, R2, R15, R15, R15, R15 |
| 8 | ~ | MountingHole:MountingHole_3.2mm_M3 | H2, H2, H2, H2, H3, H3, H3, H3 |
| 4 | 0.1u | cheap-wled-controller:C0805 | C3, C3, C3, C3 |
| 4 | 100k | cheap-wled-controller:R0805 | R20, R20, R20, R20 |
| 4 | 100n | cheap-wled-controller:C0805 | C29, C29, C29, C29 |
| 4 | 1k | cheap-wled-controller:R0805 | R3, R3, R3, R3 |
| 4 | 24k | cheap-wled-controller:R0805 | R16, R16, R16, R16 |
| 4 | 4.7u | Inductor_SMD:L_1008_2520Metric | L2, L2, L2, L2 |
| 4 | 56p | cheap-wled-controller:C0805 | C30, C30, C30, C30 |
| 4 | 6.8k | cheap-wled-controller:R0805 | R17, R17, R17, R17 |
| 4 | AMS1117-3.3 | cheap-wled-controller:SOT-223-3_L6.5-W3.4-P2.30-LS7.0-BR | U9, U9, U9, U9 |
| 4 | CH224K | cheap-wled-controller:ESSOP-10_L4.9-W3.9-P1.0-LS6.0-TL-EP | U3, U3, U3, U3 |
| 4 | Conn_01x02_Pin | Connector_JST:JST_PH_B2B-PH-K_1x02_P2.00mm_Vertical | J7, J7, J7, J7 |
| 4 | Conn_01x05_Pin | cheap-wled-controller:CONN-TH_5P-P3.81_KF124-3.81-5P | J10, J10, J10, J10 |
| 4 | Conn_01x05_Pin | Connector_PinSocket_2.54mm:PinSocket_1x05_P2.54mm_Vertical | J6, J6, J6, J6 |
| 4 | Conn_01x07_Pin | Connector_PinSocket_2.54mm:PinSocket_1x07_P2.54mm_Vertical | J8, J8, J8, J8 |
| 4 | Conn_02x05_Odd_Even | Connector_PinHeader_2.00mm:PinHeader_2x05_P2.00mm_Vertical | J4, J4, J4, J4 |
| 4 | ESDA25W | Package_TO_SOT_SMD:SOT-323_SC-70 | D1, D1, D1, D1 |
| 4 | ESP32-S3-WROOM-1-N4R2 | cheap-wled-controller:WIRELM-SMD_ESP32-S3-WROOM-1 | U5, U5, U5, U5 |
| 4 | LED_Small | cheap-wled-controller:LED0805-R-RD | D2, D2, D2, D2 |
| 4 | MX5014S | cheap-wled-controller:SOIC-8_L4.9-W3.9-P1.27-LS6.0-BL | U4, U4, U4, U4 |
| 4 | NMOS | cheap-wled-controller:DFN-8_L5.9-W5.2-P1.27-LS6.2-BL | Q3, Q3, Q3, Q3 |
| 4 | SW_Push | cheap-wled-controller:SW-SMD_TSA245G00D-250 | SW1, SW1, SW1, SW1 |
| 4 | TPS54202DDC | Package_TO_SOT_SMD:SOT-23-6 | U7, U7, U7, U7 |
| 4 | TSOP38238 | cheap-wled-controller:SENSOR-TG_TSOP38236 | LED1, LED1, LED1, LED1 |
| 4 | USBLC6-2SC6 | Package_TO_SOT_SMD:SOT-23-6 | U1, U1, U1, U1 |
| 4 | USB_C_Receptacle | cheap-wled-controller:USB-C_SMD-TYPE-C-31-M-12 | J2, J2, J2, J2 |
| 4 | ~ | Diode_SMD:D_SMA | D3, D3, D3, D3 |

makespacemadrid/cheap-wled-controller
WLED controller, for practising SMD soldering

saschapo/smartlada
Калибровочный стенд PWM на ESP8266 для умного светильника из фонаря ВАЗ-2106 (4x D4184, low-side)

SebastianKristo/pult-forsterker
Ett kort (180 × 100 mm, 2 lag) som erstatter alle modulene, og som i tillegg har USB-delingsswitch, to AUX-innganger som digitaliseres (så alt kan mikses), «smart relé» for strømmen til forsterkerdelen…



Kilan777/HomeDeck
Jarvis HomeDeck: a Raspberry Pi CM4 carrier board and voice-assistant software for a 7-inch smart display (KiCad hardware, generated from Python, plus the Python/JS assistant)

tomrodinger/RS485_Controller
This integrates an ESP32-S3 module with an RS485 interface, so that it can be used to control Gearotons Servomotors or other RS485 devices

PaulBichl/VibePCB-bench-psu
USB-C PD (20 V) powered bench supply, 2 independent channels, 1.6-16.6 V / 3 A each, constant voltage / constant current, designed with VibePCB.

It measures 96 × 96 mm and has 2 copper layers, 1.6 mm thick.
196 parts, built around the ESP32-S3-WROOM-1-N4R2, CH224K, MX5014S and TPS54202DDC. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
From the makespacemadrid/cheap-wled-controller repository on GitHub, at the commit this page was made from: the board is cheap-wled-controller/panels/jlcpcb-panelized.kicad_pcb and its schematic cheap-wled-controller/cheap-wled-controller.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository states no licence, so its author keeps all rights: ask makespacemadrid before reusing the design.