Integrar reTerminal DM con AWS IoT Core
Introducción
AWS IoT Core es un servicio que ayuda a conectar y administrar dispositivos de Internet de las Cosas (IoT) de forma segura. Permite que los dispositivos se comuniquen entre sí y con la nube, facilitando la creación de aplicaciones inteligentes y conectadas. AWS IoT Core simplifica la integración de dispositivos IoT en el ecosistema de AWS, ofreciendo una plataforma confiable y escalable para desarrollar soluciones de IoT. En esta guía, explicaremos cómo conectar nuestro reTerminal DM a la nube de AWS IoT.
Comenzar
Antes de iniciar este proyecto, debes preparar tu hardware y software según lo descrito a continuación.
Preparación de hardware
reTerminal DM |
---|
![]() |
Preparación de software
Recomendamos instalar la versión Bullseye de Raspberry Pi OS 64 bits desde su sitio oficial. Si prefieres instalar un nuevo Raspbian OS, sigue los pasos descritos en esta guía
Instalar librería Mqtt
En tu terminal, teclea:
sudo pip3 install "paho-mqtt<2.0.0"
Si intentas usar Bookworm OS, la última versión al momento de redactar esta wiki, quizás debas usar un entorno virtual (virtual environment) para instalar librerías de Python. Por favor, revisa este enlace para más actualizaciones.
Crear Cuenta AWS
Si no dispones de una cuenta en AWS, puedes crearla fácilmente. Sigue este enlace para ver cómo configurarla.
Registrar el dispositivo
- Paso 1: En el buscador de servicios, busca IoT Core y entra.
- Paso 2: En la barra lateral, ve a Manage > All Devices > Things.
¿Qué es un Thing?
AWS IoT denomina "things" (cosas) a los dispositivos IoT en la plataforma AWS. Cada dispositivo IoT, como en este caso el reTerminal DM, se representa como un "thing". Es importante destacar que, una vez creado, el nombre de un "thing" no se puede cambiar.
- Paso 3: Pulsa Create things.
- Paso 4: Elegiremos crear para un único dispositivo reTerminal. Haz clic en Create Single Thing.
- Paso 5: Asigna un nombre a tu "thing".
- Paso 6: También puedes definir un "thing type" para referencia futura.
¿Qué es un Thing Type?
Los thing types permiten almacenar descripciones e información de configuración comunes para todos los "things" asociados a un mismo tipo. Facilita la gestión de cosas en el registro. Por ejemplo, puedes definir un tipo "Factory_HMI". En este demo usamos "pi" como thing type.
- Paso 7: Generar certificados.
- Paso 8: Para vincular políticas, hay que crearlas. Clic en Create policy.
Las políticas de AWS IoT Core son documentos JSON que siguen las convenciones de IAM policy. Soportan políticas con nombre, lo que permite que múltiples identidades utilicen el mismo documento. Las políticas poseen versiones para retroceder fácilmente.
Estas políticas controlan el acceso al "data plane" de AWS IoT Core, incluyendo operaciones para conectarse al message broker, enviar/recibir mensajes MQTT y acceder o actualizar el Device Shadow de un "thing".
- Paso 9: Pon un nombre apropiado a la política y configura effect, action y resource como se muestra.
La política incluye:
Effect: Indica si la acción está permitida o denegada.
Action: Acción específica que la política autoriza o deniega.
Resource: Recurso(s) donde se autoriza/deniega la acción.
- Paso 10: Adjunta la política que creaste y presiona Create thing.
- Paso 11: Podrás descargar los certificados y claves. Asegúrate de descargar Device certificate, Private y Public keys y Root CA certificate.
- Paso 12: Vincularlos al "thing" (reTerminal DM).
Ve a Security >> Certificates.
Al crear y registrar un certificado de forma independiente a un "thing" AWS IoT, no tiene políticas para las operaciones de AWS IoT ni está asociado a ningún "thing". Esto explica cómo asociar dichos objetos. El certificado autentica el dispositivo en AWS IoT para la conexión. Al vincular el certificado a un "thing" se crea la relación entre el dispositivo (vía el certificado) y el recurso "thing". Para permitir al dispositivo realizar acciones en AWS IoT (conectarse, publicar mensajes, etc.), se necesita una política adecuada en su certificado.
Tras seleccionar el "thing" que creaste en el menú Actions, presiona Attach to thing.
Paso 13: Adjunta también la política.
Probar MQTT
Descarga nuestro archivo Python de prueba. Asegúrate de que tus certificados de dispositivo, archivos de claves (pública y privada), el archivo root CA y este script Python estén en la misma carpeta en tu reTerminal. Además, debes modificar la URL de conexión.
Para ello:
Paso 01: Ve a Settings.
Paso 02: Allí verás la URL.
Paso 03: Sustituye los nombres de archivo por los tuyos y ejecuta el archivo.
Probar la Conexión
En la consola de AWS IoT, ve a la pestaña Test en el MQTT test Client. Suscríbete al tópico que uses, por ejemplo device/data
.
El output será algo así. El mensaje proveniente del reTerminal DM aparecerá en la consola.
Soporte Técnico & Discusión
¡Gracias por elegir nuestros productos! Estamos aquí para ofrecerte distintos soportes y asegurar que tu experiencia sea lo más fluida posible. Ofrecemos varios canales de comunicación para atender distintas preferencias.