Controla LEDs y LEDs RGB desde EspHome y Home Assistant
ฝัง
- เผยแพร่เมื่อ 25 ก.ค. 2024
- En este vídeo tutorial veremos como conectar distintos tipos de LEDs a EspHome y desde este a Home Assistant.
En la primera parte conectaremos un LED normal y usaremos una luz binaria (binary light), posterioremente controlaremos la intensidad usando PWM (y explicaré que es y porqué se usa).
Finalmente, conectaremos un LED RGB de 4 pines.
Tutorial básico de ESPHome: • ¿Que son ESP8266, ESP3...
Encender luces dando palmaldas: • Enciende la luz dando ...
Capítulos:
00:00 Presentación
00:25 ¿Qué son los GPIO? Leer y escribir
01:05 Material necesario
01:22 ¿Cómo conectar un LED?
01:42 Montaje de LED, ESP32 y resistencia
02:42 Configurar un LED binario (binary light) en EspHome
04:13 Demostración LED binario.
04:50 ¿Cómo controlar el brillo de un LED?
05:25 PWM (modulación de ancho de pulsos)
06:10 Configurar luz monocromática en EspHome
07:23 Demostración LED Monocromático
07:55 ¿Cómo funcionan los LEDs RGB?
08:45 Montaje LED RGB
09:32 Configurar un LED RGB en EspHome
10:32 Demostración de LED RGB
11:25 Despedida - วิทยาศาสตร์และเทคโนโลยี
Gracias, no solo por el video sino por los detalles de las explicaciones que nos ayudan mucho a entender y aprender con cada video. Saludos
Me alegro que gusten. Me dan más trabajo, pero creo que quedan bastante más completos ;)
Genial. Me has aclarado mucho. Muchísimas gracias
excelentes videos, aprendo mucho y queda todo muy prolijo con los esquemas, solo faltaria un raw.gith para tener a la mano los comandos eso estaria super copado para no estar parando y rebobinando el video
Estoy flipando! Yo no entiendo nada de esto, pero lo veo muy interesante. Lo que no acabo de entender, es cómo eliges los pines donde va a ir cada conexión... A ver si puedes explicar este punto. Gracias por compartir!
Elegir los pines se basa en un sistema altamente complejo denominado «estos mismamente».
En general, la mayoría de los pines sirven para todo, aunque es cierto que para determinadas tareas hay que usar alguno específico. En la documentación del ESPHome te lo indicará.
Aún así, si intentases usar alguno que no fuese válido, el propio ESPHome te lo indicaría.
Gracias no se puede explicar mejor me suscribo
Interesante. Me he suscrito hace poco a tu canal y me gusta la manera de explicar las cosas. Muy bien.
Bienvenido al canal ;)
Me alegro de que te guste el canal 😊
Enhorabuena, he descubierto tú canal y me estoy enganchando a enredar con home Assistant y los ESP. Esperando el siguiente video.
Menos mal que esta «droja» requiere largas esperas de paquetes de Aliexpress, sino acabaríamos todos arruinados :)
Echándole imaginación se pueden hacer cosas bastantes apañadas.
En primer lugar enhorabuena por tus videos muy bien explicados.
En el video has comentado de un maletín de ESP con el cual usas los componentes para tus videos. ¿Cual recomendarias comprar para seguir tus proyectos?
Buenas. El maletín es el que menciono en el vídeo del Zumbador: th-cam.com/video/fUxrPyXQD3w/w-d-xo.html , el 38in1 sensor kit, lo puedes encontrar fácil en Amazon. Pero casi todos los maletines son muy parecidos. En este solo vienen sensores y actuadores (ni protoboard, ni cables, ni si quiera LED's normales), así que tendrías que hacerte acopio por tu cuenta o buscar algún otro tipo de maletines más completos que suelen traer de todo un poco.
Muchas gracias por el contenido, pero estoy colgado utilizando una placa STM32 AVR V1.0, me podrías ayudar con eso? necesito controlar una tira analógica RGB de 12V
Entiendo que te refieres a una placa de estas: t.ly/xfVDJ
Estas placas transforman señales digitales en analógicas, además de subir la tensión.
Tienes que usar el componente FastLED SPI y configurarlo con el modo P9813 y un solo LED (aunque la tira sea de muchos, para FastLED cada LED es una placa).
Después conectar los GPIO que selecciones como clock a CIN y data a DIN.
Si tuvieras varias tiras y varias placas, podrías conectarlas en serie (desde los OUT de una placa los IN de la otra) y aumentar el número de LEDs en FastLED.
Hola, muchas gracias por tu excelente explicación. Quería preguntarte si en las rgb NO hace falta resistencia y se puede conectar a la esp32 directamente. He visto esa parte varias veces y no me a parecido ver que las pusieras. Yo lo voy a usar en home assistant para saber el estado de la alarma de casa ya que alguna vez abrimos las puertas y salta porque no nos acordábamos. En plan semáforo. Muchas gracias
Los dispositivos que vienen en un pequeño módulo con los pines traen las resistencias incluidas en la placa. Si compras uno sin placa deberías ponerla, si va con la placa no suele hacer falta.
@@lachozadigital ahh perfecto. Más sencillo así. No tendrás un link de compra para saber qué buscar exactamente? Muy agradecido
@@Kukufatoa mí me venía junto a otros sensores en un pack que compré, Pero bueno, si buscas «modulo rgb arduino» te salen cientos Aliexpress.
@@lachozadigital perfecto. Voy a buscar por ahí. Muchas gracias
Buenas noches, llevo poco tiempo siguiendote pero el contenido y las explicaciones que das me resultan muy interesantas. Tengo una consulta sobre el video.
Se podria usar el esp32 para conectarlo a una tira led blanca de 12v y asi poder regularla? Como seria la conexión eléctrica?
Gracias de antemano, saludos.
Si es una tira LED blanca, supongo que tendrá solo dos cables (12V y GND). Lógicamente no podrás conectarle 12V a un GPIO, no solo por el voltaje sino por el consumo (un GPIO puede alimentar un LED y poco más). La solución es usar un transistor. Tengo pendiente hacer un vídeo sobre como funcionan dado que me hace falta para otros vídeos, pero te lo resumo aquí un poco por si no puedes esperar ;)
Conectas los 12V de un transformador a la tira, el GND de la tira al colector del transistor y el emisor de este a tierra.
El conectas ESP por un USB para alimentarlo. Uno de sus GPIO a la base del transistor (poniéndole una pequeña resistencia en medio) y finalmente del GND del ESP sacas un cable y lo conectas al GND del transformador también (cuando tienes dos alimentaciones distintas, debes unir las tierras).
Una vez hecho esto, debería funcionarte como un LED simple, pudiendo subir y bajar intensidad usando la configuración monocromática.
@@lachozadigital de que valor tiene que ser la resistencia entre el GPIO y la base del transistor? Que transistor me recomiendas para el proyecto? Gracias por tu respuesta anterior.
@@Carlos52 El 2N2222 suele ir bien para casi cualquier proyecto sencillote. Para calcular el valor óptimo de la resistencia debes saber el consumo tu tira (tendrás que buscarlo en las especificaciones) y aplicar una fórmula algo «rara» pero fácil de encontrar en internet junto a calculadoras que introduciendo los datos te lo calculan. Pero a ojo, entre 150-250ohm debería ser suficiente para una tira de unos 15-30w.
@@lachozadigital muchas gracias por la respuesta
Hola, Lo primero enhorabuena me encantan tus videos.
Ahora me gustaría pedirte un consejo, viendo este video y el de las luces de navidad chinorris he pensado en ponerle leds a una estrella para el árbol de navidad.
Y aquí la duda a ver si lo sabes ¿si pongo 5 leds en paralelo podría conectarlos a un pin del esp32 ? porque la idea es hacer tres o cuatro líneas desde el exterior de la estrella al interior para que haga efectos y si no ¿alguna idea para controlarlos con esp32?
Gracias 😉
P.D. estaría guapo un video para controlar con esphome tiras de led RGB de las de toda la vida, no redirecciónales vamos jejje...
La de la tira LEDs cutres está en pendientes ;)
Para tu caso, el problema es que los pines de ESP32 están limitados a 20mA. Los LEDs rondan los 10mA, por lo que dos podrías encenderlos, pero 5... seguramentes irían bastantes faltos de corriente alimentándose solo con los GPIO, además de hacer trabajar de más al ESP32.
La solución buena sería usar un transistor. Conectas los LEDs a la salida de 3.3V del ESP, después al transistor y una pequeña resistencia (30O ohmios por ejemplo) y que el GPIO simplemente active dicho transistor.
@@lachozadigital Pero la idea es hacer una tira para el exterior, una para el interior y otra para el centro por ejemplo, entonces.. ¿todos los puedo conectar a la salida de 3.3v? ¿lo ves bien lo de conectar los 5 leds en serie? tengo algun 2N 2222 no se si serviran el problema es que tampoco tengo mucha idea de como seria la conexion al transistor
Perdon 🙏😅
@@juancarlossomoza5372 No no, ¡una tira no! Pensaba que te referías a los 5 LEDs... Para usar tiras de LEDs, dependiendo del consumo podrás usar el 2N2222 (hasta unos 700mA cada uno) o puedes quitarte problemas usando un Mofset (el IRLZ44N versión 3.3V por ejemplo) y conectándolo a una alimentación externa. Si son de 5V puedes «romper» un cargador USB para usarlo como fuente de alimentación.
@@lachozadigital Jajjaja... no me he explicado, cuando he dicho tira me refería a poner una fila de 5 leds (uno en cada punta de la estrella) otra "tira" de 5 leds en cada ángulo de la estrella y una ultima en el centro. Espero haberme explicado mejor, que razón el refrán ese que una imagen vale mas que mil palabras jijji
@@juancarlossomoza5372 en ese caso, serían 15 LEDs en total por lo cual no debería ser problema en alimentarlos directamente desde los 3V del ESP32 y el transistor por cada tira.
Hola Gracias por el video.
Tengo un led rgb con ánodo común, no es el que había pedido, pero es el que me enviaron concretamente 50. Yo quería que me enviaran el cátodo común.
Al ser ánodo común, he puesto el ánodo al positivo, y los led rgb con sus resistencias directos a las patilla 16, 17 y 18 del ESP32DEV y no me enciede ninguno. ¿Como puedo poner en negativo las salidas del ESP32DEV en el código para que me funcione?
Nunca he usado unos de ánodo común las verdad, pero debería funcionar si revés, que cuando enciendes se apaga y cuando apagas se enciende.
Prueba a configurar el GPIO con inverted: true.
PD: Podrías hacer puesto simplemente una resistencia en el común en vez de una por color.
Ya lo tengo funcionando. No se si me había equivocado al probar los led o el que probé era diferente. Pero al final tengo el de cátodo común, y por eso no me funcionaba. Ahora va bien.
Lo que no me queda claro, es lo que me has comentado que con una resistencia en el común sería suficiente.
Yo todos los esquemas que he visto, le ponen la resistencia a cada diodo. Y tu me has comentado que con una en el común funcionaría.
@@carlosgallego1076 me refería a si tenías el ánodo común. La resistencia se aplicaría a todos puesto que el positivo entraría «con resistencia».
Pero bueno, si tienes el cátodo pues 1 por LED y fuera.
Me alegro de que te funcione.
ok. gracias, aclarado.
Estoy intentando controlar una tira de Leds RGB a diferencia del led RGB tengo los 3 pines de cada color y un Positivo, que lo conecto a 5v como indica pero no consigo que me cuandren los colores que selecciono y el control de intensidad 0 es 100% y 100 apagado total. Alguna ayuda por favor
Claro, si conectas la alimentación, los otros pines tienen que hacer de «tierra». La solución es configurar el GPIO en modo invertido.
- platform: ledc
pin:
number: GPIOXX
inverted: true
Ole 🎉 yo pensando que me tocaría soldar algo ?!! GRACIAS !