Construya un indicador LED con una Raspberry Pi (para correo electrónico, clima o cualquier cosa)

Oct 30, 2025
Hardware
CONTENIDO NO CUBIERTO

La Raspberry Pi es una plataforma compacta agradable para conectar una luz indicadora para todo tipo de proyectos: notificación del clima, nuevos correos electrónicos, etc. Siga leyendo mientras le mostramos cómo conectar un módulo LED a su Pi y configurar algunas notificaciones básicas. .

¿Por qué quiero hacer esto?

Porque es divertido. A diferencia de muchos de nuestros tutoriales, en los que incluimos una pequeña propaganda en la parte superior que describe exactamente los beneficios que obtendrá del proyecto, la propaganda es bastante breve en este caso porque el beneficio es simplemente divertirse.

La Raspberry Pi es un dispositivo perfecto para jugar, experimentar con la electrónica y aprender algo de programación. Nadie necesidades un indicador de lluvia ambiental en su cocina, por ejemplo, pero construir uno es un ejercicio divertido y un gran recordatorio para llevar su paraguas con usted en los días potencialmente tormentosos.

¿Qué necesito?

Para seguir el tutorial, necesitará algunas cosas. Primero, asumimos que ya ha seguido nuestro tutorial anterior: La guía HTG para comenzar con Raspberry Pi (y así tener los conceptos básicos cubiertos para instalar Raspbian en nuestra Raspberry Pi).

Si está buscando hacer este proyecto con un presupuesto limitado, podemos decirle con confianza que el modelo más nuevo de Raspberry Pi es una exageración significativa para el trabajo y lo alentamos a que sople el polvo de una vieja Raspberry Pi que ha empujado. en el armario o comprar uno usado barato en eBay o similar. En cuanto al presupuesto, el modelo A o el modelo B de Raspberry Pi 1 adquirido en eBay por $ 10-15 es perfecto para este proyecto en lugar de comprar un nuevo Pi de generación actual de $ 35.

Además de tener una unidad Pi funcional con Raspbian instalado, necesitará lo siguiente:

Nota: El estuche Pi transparente / esmerilado es completamente opcional, pero si actualmente está usando un estuche opaco, su indicador LED estará oculto en el interior. Deberá hacer un orificio en su estuche para que se apague la luz o usar un cable de extensión GPIO con un kit de conexión, como este de Adafruit Industries —Para conectar LedBorg a su Raspberry Pi. Si bien el uso del cable de conexión agrega alrededor de $ 8 al costo del proyecto, ofrece más potencial para personalizar el producto final, ya que puede colocar más fácilmente el LED dentro de las cosas o debajo de algo que desea iluminar.

Instalación de LedBorg

Si bien ciertamente podría construir usted mismo un indicador LED completamente desde cero (y una consulta del motor de búsqueda mostrará muchas personas que lo han hecho), la organización de Piborg produce un módulo LED tan compacto y económico, el LedBorg, que no podríamos ' No se resista a usarlo como base para nuestro proyecto de indicador LED Raspberry Pi.

La instalación del módulo es muy sencilla, ya que está diseñado para encajar directamente sobre los pines GPIO del Pi. Primero, apague su Pi y abra la carcasa.

La parte más importante del proceso de instalación es que oriente el módulo de modo que el icono de LedBorg esté más cerca del módulo RCA en la placa Raspberry Pi (y, por lo tanto, el borde de LedBorg esté alineado con los bordes de la placa Pi con el saliente parte del LedBorg colgando sobre la placa Pi y no fuera del borde). Vea la fotografía de arriba.

Mientras tiene la placa Pi abierta, ahora sería un excelente momento para cubrir los indicadores LED integrados (junto a los puertos USB), especialmente si está usando un estuche transparente. No quiere que resulte confuso leer su indicador LedBorg porque las luces indicadoras de red y de alimentación son muy brillantes.

Cubrimos el nuestro con una capa de cinta aislante blanca. Esto los atenuó lo suficiente como para que pudiéramos seguir haciendo referencia a ellos, pero eran mucho más tenues que el LedBorg que ya no distraían.

Una vez que haya instalado el LedBorg y, opcionalmente, haya cubierto los indicadores LED del Pi con cinta aislante, es hora de volver a cerrar la carcasa. Arranque su Pi antes de pasar a la siguiente fase del tutorial.

Instalación del software LedBorg

PiBorg proporciona un gran paquete de software para LedBorg que incluye tanto un controlador GUI como controladores para acceder a LedBorg desde la línea de comandos.

Antes de comenzar, debe asegurarse de que está tomando el paquete correcto para su versión de Rasbian y el número de revisión de su placa Raspberry Pi.

Si su placa Raspberry Pi no tiene orificios de montaje, es la Revisión 1. Si su Raspberry Pi tiene orificios de montaje (ubicados junto a los puertos USB y entre la alimentación y el puerto HDMI), entonces es la Revisión 2. También necesita conocer la versión del kernel de su instalación Rasbian. Abra la terminal e ingrese el siguiente comando para verificar:

uname -r

Una vez que tenga el número de revisión y el número de kernel, puede visita la sección de Paquetes aquí para obtener el enlace de su paquete. En nuestro caso, estamos usando una placa de Revisión 1 con el kernel 3.6.11, por lo que tomaríamos el archivo raspbian-2013-02-09-rev1.zip.

Para instalar todas las ventajas, necesitamos abrir el terminal en la Pi. y luego ingrese los siguientes comandos para instalar el paquete LedBorg.

Nota: Debe reemplazar la URL en el tercer comando con la URL del paquete para su combinación de placa / núcleo.

mkdir ~ / ledborg-setup
cd ~ / ledborg-setup
wget -O setup.zip http://www.piborg.org/downloads/ledborg/raspbian-2013-02-09-rev1.zip
descomprimir setup.zip
chmod + x install.sh
./install.sh

En este punto, ahora tiene el contenedor GUI para los controladores de LedBorg y los propios controladores instalados. En su escritorio Raspbian verá un icono para el contenedor de GUI:

Continúe y haga clic en el icono de LedBorg para iniciar el contenedor de GUI. Se le tratará con la interfaz del selector de color así:

Ahora es el momento perfecto para asegurarse de que su módulo sea funcional. Elija cualquier color, excepto el negro, para probarlo. Vamos a probarlo eligiendo algunos colores:

¡Se ve bien! Es brillante y el plástico esmerilado del estuche que pedimos para el proyecto ofrece una difusión moderada. Si desea jugar más con el módulo LED antes de continuar, haga clic en Modo de demostración:

En el modo de demostración, puede recorrer todos los colores a varias velocidades, comprobar la salida alta / baja y, de lo contrario, poner el módulo LED a prueba.

Es aquí, en la sección Modo de demostración, donde también puede convertir su LedBorg en el primero de muchos indicadores. Al seleccionar CPU en la sección Colores, el LED comenzará a cambiar de verde a amarillo y a rojo para indicar la carga en el procesador ARM de la Raspberry Pi. Sugerimos cambiar la Velocidad a Lenta mientras lo hace: Rápido actualiza el LED demasiado rápido y hace que el indicador de la CPU sea una distracción en lugar de útil.

Además de usar la interfaz GUI para seleccionar colores, puede elegir colores del terminal usando valores RGB. Abra el terminal e ingrese el siguiente comando para apagar el LED:

echo "000"> / dev / ledborg

La forma en que LedBorg maneja los valores RGB es que 0 significa que el canal está apagado, 1 significa que el canal tiene la mitad de potencia y 2 significa que el canal está a plena potencia. Entonces, por ejemplo, 001 establecería el canal rojo en 0%, el canal verde en 0% y el canal azul en 50% de potencia.

Cambie el valor a 002 y la salida del LED permanecerá azul pero se volverá más brillante porque el canal azul ahora tiene una salida del 100%. Cambie el valor a 202 y el rojo y el azul a máxima potencia se combinan para crear un color magenta.

Ahora que sabemos cómo manipular el LED manualmente, veamos el uso de scripts para convertir nuestro LED de una luz simple a un indicador real.

Configurar su LedBorg como indicador de lluvia

Para esta parte del tutorial, combinaremos varias cosas para convertir nuestro módulo LED LedBorg en un indicador de lluvia basado en el pronóstico del tiempo para nuestra ubicación. Usaremos una secuencia de comandos de Python para llamar a una API meteorológica que, a su vez, leerá la probabilidad de lluvia para el día y luego cambiará el LED de apagado a azul brillante para indicar la lluvia pronosticada.

Primero, necesitamos obtener una clave de acceso API para Weather Underground. Para uso personal y pequeños proyectos de desarrollo, la API es gratuita. Visite la página de registro de Weather API aquí y regístrese para obtener una clave API.

Una vez que tenga su clave API, visite Weather Underground y busque la ciudad que desea monitorear. En nuestro caso, vamos a monitorear San Fransisco, CA. La URL de la página de pronóstico de San Fransisco es:

http://www.wunderground.com/US/CA/San_Francisco.html

La parte importante para nuestros propósitos es la última parte de la URL: /CA/San_Francisco.html. Lo usaremos para editar la URL de previsión de la herramienta API. La URL base es:

http://api.wunderground.com/api/YOUR API KEY / forecast / q / STATE / CITY.json

Puede generar el pronóstico para cualquier ciudad de EE. UU. Ingresando su clave API, el código de estado de dos letras y el nombre de la ciudad de la URL que obtuvo de los resultados de búsqueda de Weather Underground.

Una vez que tenga la URL de la API con su clave API y el estado / ciudad insertados, puede editar el siguiente script de Python creando un nuevo documento de texto en su Pi usando Leafpad y pegando el siguiente código en él:

desde urllib2 importar urlopen
importar json

req = urlopen ('http://api.wunderground.com/api/YOUR API KEY / forecast / q / STATE / CITY.json ')
parsed_json = json.load (req)
pop = int (parsed_json['forecast']['txt_forecast']['forecastday'][0]['pop'])

# El siguiente es un valor de depuración.
# Edita el hash y cambia
# el entero a un 0-100 para probar
# la respuesta del LED.

# pop = 0

print 'La probabilidad actual de precipitación es {}.'. formato (pop)

# La configuración predeterminada es encender el LED
# para cualquier probabilidad de lluvia superior al 20%. Puedes ajustar
# el valor en "if pop> 20:" como desee.

si pop> 20:
LedBorg = abierto ('/ dev / ledborg', 'w')
LedBorg.write ('002')
del LedBorg
print ('¡Lluvia!')
más:
LedBorg = abierto ('/ dev / ledborg', 'w')
LedBorg.write ('000')
del LedBorg
print ('¡No llueva!')

Guarde el archivo como wunderground.py en el directorio / home / pi /. Abre la terminal y escribe el siguiente comando:

python wunderground.py

Si ha ingresado su clave API y los códigos de su estado / ciudad correctamente, debería generar una respuesta similar a la siguiente:

Si se predice precipitación para su área, su salida de LedBorg debería verse así:

Ahora, esperar un día lluvioso para probar correctamente el guión sería tedioso. Si no hay posibilidad de lluvia en su área hoy y desea que se encienda el LED, edite el script wunderground.py y reemplace el valor de paso "pop = pop" en la línea 13 con un valor mayor que 20, como 60 que nuestro pronóstico regresó. Solo recuerde volver a cambiar la línea a "pop = pop" cuando haya terminado.

El último paso es configurar un trabajo cron para ejecutar automáticamente el script que acabamos de guardar en un intervalo regular para mantener actualizado el indicador LED. Dado que esta tarea es necesaria tanto para esta secuencia de comandos como para el indicador de correo electrónico que sigue, cubriremos la configuración de un trabajo cron después de haberle mostrado cómo configurar la otra secuencia de comandos.

Configuración de su LedBorg como indicador de Gmail

¿A quién no le gusta la solución de dopamina que viene con ver nuevos correos electrónicos en su bandeja de entrada? En esta parte del tutorial, le mostraremos cómo usar LedBorg como un nuevo indicador de Gmail. Al igual que la última vez, vamos a combinar una entrada externa (en este caso, una fuente Atom en lugar de una API) y un script simple para impulsar nuestro LED.

Necesitamos expandir un poco la funcionalidad de su instalación de Python instalando FeedParser , una herramienta de lectura de feeds Python RSS / Atom. Abra la terminal e ingrese el siguiente comando:

sudo easy_install feedparser

Una vez que se completa la instalación, podemos empezar a trabajar creando nuestro script de verificación de Gmail. Nuevamente, usando Leafpad, pegue el siguiente texto en el editor. Cambie el nombre de usuario y la contraseña para que coincidan con el nombre de usuario y la contraseña de la cuenta de Gmail que desea verificar.

importar feedparser

# Ingrese su nombre de usuario de Gmail
# y contraseña. No incluir
# la parte @ gmail.com de
# su nombre de usuario.

username = "nombre de usuario"
contraseña = "contraseña"

mail = int (feedparser.parse ("https: //" + nombre de usuario + ":" + contraseña + "@ mail.google.com/gmail/feed/atom")["feed"]["fullcount"])

# El siguiente es un valor de depuración.
# Edita el hash y cambia
# el entero a 0 o 1 para probar
# la respuesta del LED.

# correo = 0

si correo> 0:
LedBorg = abierto ('/ dev / ledborg', 'w')
LedBorg.write ('020')
del LedBorg
print ('¡Correo!')
más:
LedBorg = abierto ('/ dev / ledborg', 'w')
LedBorg.write ('000')
del LedBorg
print ('¡Sin correo!')

Guarde el script como gmailcheck.py. Abre la terminal y escribe el siguiente comando:

python gmailcheck.py

Si tiene un correo electrónico en su bandeja de entrada de Gmail, el LED se volverá verde y obtendrá una respuesta como esta:

Si tiene correo en su bandeja de entrada de Gmail, su LedBorg se verá así:

Al igual que el script de comprobación de lluvia, hemos incluido un valor de depuración. Si no tiene ningún correo electrónico nuevo, puede enviarse un correo electrónico para aumentar el número de su bandeja de entrada a 1 o puede editar el hash del comentario y cambiar la línea de depuración a "mail = 1" para probar el script. Recuerde revertir la línea cuando haya terminado de probar.

Vaya a la siguiente sección del tutorial para configurar su secuencia de comandos de Gmail para que se ejecute en un horario.

Configuración de un trabajo cron para ejecutar su script

Ahora que tenemos dos scripts para jugar, necesitamos configurar un trabajo cron para ejecutarlos a lo largo del día para mantener actualizado el indicador LED.

Lo primero que queremos hacer es apagar el LED si está encendido en nuestros experimentos anteriores. En el tipo de terminal:

echo "000"> / dev / ledborg

Mientras todavía estás en la línea de comandos, puedes abrir el editor cron. Si nunca antes ha configurado un trabajo cron, le recomendamos encarecidamente consulte nuestra guía para usarlo aquí . Dicho esto, lo guiaremos para configurar un horario básico aquí mismo.

En el tipo de terminal:

sudo crontab –e

Esto abrirá la tabla cron de Raspbian en el editor de texto Nano. Utilice las teclas de flecha para desplazarse hacia abajo hasta el final. Aquí es donde vamos a configurar el trabajo cron recurrente para nuestros scripts de Python.

Si desea configurar el script de lluvia, ingrese la siguiente línea en la tabla cron:

* / 5 * * * * python /home/pi/wunderground.py

Presione CTRL + X para salir; seleccione sí para guardar y sobrescribir la tabla cron existente. El valor que ingresamos en la tabla cron “* / 5 * * * *” establece que el script se ejecute cada 5 minutos, para siempre.

Cada 5 minutos es un buen lapso de tiempo para un script que verifica la lluvia pronosticada; incluso podría argumentar que es un poco demasiado agresivo, pero si está tratando de mantenerse al tanto de su correo electrónico, es un lapso demasiado largo para recibir notificaciones. . Si está configurando la programación para la secuencia de comandos de notificación de Gmail, ingrese la siguiente línea en la tabla cron:

* / 1 * * * * python /home/pi/wunderground.py

Esta entrada ejecuta el script gmailcheck.py cada minuto para una notificación de actualización mucho más rápida.


¡Eso es todo al respecto! Puede experimentar con sus propios scripts de Python sacando las declaraciones if / else de las nuestras y probándolas con nuevas variables. Si puede encontrar una fuente de entrada para los datos, puede convertirla en una variable en su secuencia de comandos de Python: promedios bursátiles, recuentos de polen, menciones de Twitter, si hay una API para ello, puede convertirla en un indicador LED ambiental.

Finalmente, quiero agradecer todos los excelentes recursos que utilicé para trabajar en este proyecto. Ha pasado un poco más de una década desde que escribí programas de manera activa y me tomó algunos golpes quitar el polvo y el óxido. Los colaboradores de / r / LearnPython me ayudó a perder el tiempo en la salida de API para Weather Underground, estudiando cómo Michael en Mitch Tech se ocupó del feed Atom de Gmail facilitó el análisis de LedBorg y estudiando los módulos de aprendizaje de Python en Code Academy fue una excelente manera de aprender la sintaxis básica y la estructura de un lenguaje que nunca había usado antes.

.entrada-contenido .entry-footer

Raspberry Pi Email Tutorial (Sending & Receiving With SendGrid)

Raspberry Pi Tutorial - Gmail LED Email Notifier

#255 Node-Red, InfluxDB, And Grafana Tutorial On A Raspberry Pi

Raspberry Pi Project: Online Weather Data Log With MySQL And PHP With Sense Hat.

Raspberry Pi: How To Turn On A Light With Your Phone

Raspberry Pi IoT Tutorial Series Part-3

Make A Raspberry Pi Gmail Notification Light

Top 5 Raspberry Pi DIY Projects Of All Time

Raspberry Pi DHT11 DHT22 Temperature And Humidity Sensor

5 Arduino Project Ideas That Could Be Used As Raspberry Pi Project Ideas


Hardware - Artículos más populares

¿Qué es el modo de cineasta en un televisor y por qué lo querrá?

Hardware Jan 25, 2025

Justin Duino Para experimentar una película de la forma en que fue diseñada, debería verla en un cine. Sin embargo, si desea reproducir esa autenticidad en..


Las empresas de cable luchan por los canales gratuitos

Hardware Jan 8, 2025

No es ningún secreto que la industria del cable se ha acercado lentamente a la muerte. Los complicados paquetes de cable, que de alguna manera se están volviendo más caros que nu..


Cómo comprobar rápidamente si su computadora puede ejecutar un juego de PC

Hardware Jul 3, 2025

Los juegos de PC no son tan simples como los juegos de consola. Si tiene una computadora portátil con hardware de gráficos débil o una PC más antigua, es importante verificar si..


¿Cuál es la diferencia entre TCP y UDP?

Hardware Jul 3, 2025

Probablemente haya visto referencias a TCP y UDP al configurar el reenvío de puertos en un enrutador o al configurar el software de firewall. Estos dos protocolos se utilizan para ..


¿Por qué crear una unidad USB de arranque es más complejo que crear CD de arranque?

Hardware Jan 31, 2025

CONTENIDO NO CUBIERTO La creación de CD y DVD de arranque tiende a ser un proceso simple y directo, pero ¿por qué es más complejo al crear unidades flash de arranque? ¿Existe..


Cómo quitar música de su Apple Watch

Hardware Dec 31, 2024

Usted puede agregue hasta 2 GB de música a su Apple Watch para que pueda escuchar música en su reloj mediante un altavoz o auriculares Bluetooth incluso cuando est�..


Cómo emparejar controladores de terceros con su Fire TV y Fire TV Stick

Hardware Jul 10, 2025

CONTENIDO NO CUBIERTO Amazon ofrece un controlador Bluetooth para emparejar con sus unidades de medios Fire TV y Fire TV Stick, pero si no eres fanático de desembolsar $ 40 por u..


¿Qué evita que todos los dispositivos Wi-Fi de mi red choquen entre sí?

Hardware Mar 5, 2025

CONTENIDO NO CUBIERTO Es probable que su red doméstica esté repleta de varios dispositivos Wi-Fi que se transmiten de regreso al nodo Wi-Fi; ¿Cómo maneja el nodo todo el tráf..


Categorías