Nombre: Jahziel Amado López Angulo
Número de Control: 22211593
Correo electrónico: l22211593@tectijuana.edu.mx
GitHub: Jahziel43
Se implementó un flujo de comunicación IoT utilizando un dispositivo físico BBC Micro:bit como nodo sensor.
El micro:bit recolecta temperatura y nivel de luz, los envía en formato JSON vía USB Serial a una PC con Windows 11, la cual reenvía los datos a una instancia EC2 (Ubuntu) alojada en AWS, usando el protocolo HTTP.
En el servidor EC2, un servicio Flask recibe la información y la reenvía de manera segura hacia el broker MQTT (Mosquitto) con autenticación y cifrado TLS.
Micro:bit → PC (Serial + HTTP) → EC2 Flask Server → Mosquitto MQTT → Telegraf → InfluxDB → Grafana
- Captura del código JavaScript de micro:bit generando JSON y enviándolo por serial.

- Captura de código
microbit_reader.pyque recibe datos desde micro:bit y los reenvía a la EC2.

- Terminal en Windows recibiendo datos desde micro:bit y reenviando a la EC2.

- Flask recibiendo los datos correctamente en el puerto 5000.

- Mosquitto mostrando la publicación del topic
iot/sensores.
✅ Cumple con: Publicación exitosa de datos IoT reales en AWS Core.
Se utilizó Telegraf para consumir los datos publicados en el broker MQTT (iot/sensores) y almacenarlos directamente en InfluxDB dentro del bucket sensores.
- temperatura (°C) → obtenida del micro:bit
- light_lvl (nivel de luz 0–255)
- Telegraf configurado con plugin
inputs.mqtt_consumer. - Bucket y token de InfluxDB definidos en
telegraf.conf. - Prometheus habilitado para métricas del servidor EC2 (CPU, RAM, Disco).
- Telegraf consumiendo topic MQTT sin errores.

- InfluxDB mostrando registros con temperatura y luz provenientes del micro:bit.

✅ Cumple con: Integración y almacenamiento de datos en InfluxDB visibles desde Grafana.
Los datos de InfluxDB se visualizaron en Grafana mediante un panel con dos gráficas en tiempo real:
- Temperatura ambiente (°C)
- Nivel de luz (Light Level)
También se añadieron métricas del sistema EC2 (CPU, Memoria y Disco) mediante Prometheus.
✅ Cumple con: Visualización funcional en Grafana.
- Se integró un dispositivo físico (BBC Micro:bit) en lugar de simulaciones, convirtiéndolo en un nodo IoT real.
- Implementación multiplataforma (microcontrolador → PC → servidor EC2).
- Doble canal de transmisión (Serial + HTTP + MQTT).
- Se muestran los valores en Grafana en un Dashboard.
✅ Cumple con: Integración de hardware real, validación de datos y flujo IoT completo.
Se logró conectar exitosamente un micro:bit físico a un entorno IoT en la nube (AWS EC2), transmitiendo datos reales de sensores hacia InfluxDB y Grafana con cifrado y autenticación segura.
El flujo fue estable, escalable y visualmente funcional.
Se cumplieron todos los criterios de la rúbrica, demostrando la comunicación IoT de extremo a extremo.
- Código del micro:bit en MakeCode (JavaScript).
- Script Python en PC (Serial → HTTP).
- Servidor Flask (HTTP → MQTT).
- Configuración Telegraf, InfluxDB y Grafana.
- Capturas de dashboard.
