Este tutorial explica cómo enviar correo electrónico desde Beaglebone black utilizando el protocolo SMTP. SMTP significa Protocolo simple de transferencia de correo. El principal objetivo de este tutorial es obtener notificación por correo sobre determinada actividad. BBB enviará un correo electrónico con un mensaje predefinido a la dirección de correo electrónico registrada cuando ocurra cualquier actividad. Se requiere conectividad de red (Internet) para este tutorial. También puedes adjuntar algún archivo al correo. El programa está escrito en script Python con biblioteca SMTP y biblioteca GPIO adafruit.
Herramientas necesarias :
- Hueso de beagle negro
- presionar el botón
- CONDUJO
- resistencia de 1 kΩ
- resistencia de 330Ω
tablero de prueba
- Conectores hembra a hembra
Configuración del entorno de software
Instale la última versión de Python en BBB como se explica en el tutorial Cómo crear el primer programa de Python con Beaglebone Black. La biblioteca Adafruit python –GPIO ya está instalada, pero también puede instalar manualmente la biblioteca llamada adafruit_BBIO. La biblioteca SMTP se instala con Python, pero verifíquela una vez antes de aplicarla.
Laboral
En este tutorial, se envía una notificación de alerta simple a una ID de correo electrónico específica. Antes de ejecutar la aplicación, es necesario establecer una conexión a Internet con el Beaglebone black. Puede elegir una conexión Ethernet o un dispositivo WI-FI. Este tutorial utiliza un cable Ethernet para proporcionar conexión a Internet. Cuando se presiona el botón, el correo electrónico se envía a una ID de correo electrónico específica con un mensaje predefinido. Cuando el script se está ejecutando, el programa entra en un bucle continuo. El LED se enciende cuando se presiona el botón y se apaga después de enviar el correo electrónico BBB.
Cuando se envía el correo electrónico, aparece el siguiente mensaje en el símbolo del sistema:
El correo electrónico ha sido enviado
Presione Ctrl+C para detener la ejecución del programa en la terminal de comando SSH.
Abra el buzón del destinatario y verifique si el mensaje fue recibido o no.

Fig. 1: Captura de pantalla de la correspondencia enviada desde Beaglebone Black
Descripción
Primero preparemos la conexión del circuito. Tome una placa de pruebas y suministre VCC y tierra desde BBB a la línea de la placa de pruebas. Conecte la alimentación de 3,3 V desde el pin número 3, tercio del cabezal P9 y tierra desde el pin número 2 y el cabezal P8. Conecte el terminal negativo del LED a tierra y el positivo a la resistencia de 330 ohmios. Conecte el otro extremo de la resistencia al pin número 10 del cabezal P8. El pulsador tiene dos terminales. Cualquiera de ellos se conecta a tierra. Suministre una resistencia VCC de 3,3 V a 1 k ohm a otro terminal de botón. Conecte el extremo común de la resistencia y el botón con el pin número 11 del encabezado P8. Suministre energía al Beaglebone negro conectándolo a la PC mediante un cable USB. Ahora tu circuito está preparado.
Abra la terminal de comando y acceda a Beaglebone black a través de SSH como se explica en Introducción a Beaglebone black. Cree un nuevo archivo usando el comando reproducir con extensión .py (es decir, led.py). Abra el archivo con cualquier editor de texto (es decir, nano, vim, etc.) y escriba el código en lenguaje Python.
Configuración SMTP
Puede enviar correo electrónico mediante SMTP a través de Internet, que administra el servicio a través de la red TCP/IP. Se requieren dos cosas para establecer una conexión con el servidor de correo electrónico:
- dirección del servidor de correo
- Número de puerto
La biblioteca SMTP tiene una función incorporada para configurar la configuración de envío de correo electrónico. Configure la dirección de correo electrónico y el número de puerto según la siguiente función:
smtplib.SMTP (“smtp.gmail.com”, 587)
Aquí utilicé el servidor de Gmail con el número de puerto apropiado para enviar correo electrónico. El primer argumento es la dirección del servidor de correo y el segundo argumento es el número de puerto.
Después de conectarse al servidor de correo electrónico, BBB (actuando como cliente) identifica y establece una conexión segura siguiendo las funciones respectivamente.
ehlo: habilita e identifica la conexión a un servidor de correo electrónico
starttls: proporciona una conexión segura para la transferencia de datos
Configure el ID de correo electrónico del remitente, la contraseña, el ID de correo electrónico del destinatario y el mensaje que desea enviar al destinatario.
Para = "ID de correo electrónico del destinatario"
De = "ID de correo electrónico del remitente"
Contraseña = “Contraseña de ID de correo electrónico del remitente”
mensaje = “¡¡¡Alerta!!! El botón está presionado”
Puede escribir un mensaje según su deseo.
Inicie sesión en el servidor con una identificación y contraseña específicas. Envíe el mensaje en el ID de correo electrónico del destinatario y cierre la conexión.
Configuración GPIO
Ya os expliqué la configuración GPIO en Switch Interface con Beaglebone negro.
Ejecute el script en la terminal:
Ingrese el siguiente comando con el nombre del archivo en el símbolo del sistema:
nombre del archivo python.py
es decir, python sendmail.py
Código fuente del proyecto
###
importar smtplib
###
Diagramas de circuito
| Diagrama de circuito-Beaglebone-Negro | ![]() |
