2 puntos por GN⁺ 2024-11-23 | 1 comentarios | Compartir por WhatsApp

Guía de hacking del dispositivo Monty Home

Guía de hacking del dispositivo Monty Home es un repositorio que explica cómo ampliar las funciones de los dispositivos BLE de Monty Home usando una Raspberry Pi. Este dispositivo fue diseñado originalmente para el monitoreo de compost y recopila datos ambientales como temperatura, humedad y más. Con esta guía, puedes aprender a consultar, mostrar y automatizar esos datos.

Resumen

  • Esta guía está diseñada para personas interesadas en dispositivos BLE, aplicaciones IoT y monitoreo ambiental.
  • El dispositivo Monty Home ofrece datos en tiempo real (temperatura, humedad, nivel de batería, etc.) a través de BLE.
  • Incluye tres proyectos para interactuar con el dispositivo Monty Home usando Python, BLE y Raspberry Pi.

Proyectos

Proyecto 1: control de LED basado en temperatura

  • Objetivo: controlar el LED de una Raspberry Pi usando los datos de temperatura del dispositivo Monty Home. Si la temperatura supera un umbral determinado, el LED muestra una alerta.
  • Habilidades adquiridas: configuración del control GPIO, consulta de datos BLE, programación básica en Python y manejo de condiciones
  • Hardware necesario: Raspberry Pi con soporte BLE, LED y resistencia de 330 ohms

Proyecto 2: mostrar temperatura y humedad en una pantalla I2C

  • Objetivo: mostrar en una pantalla OLED conectada a la Raspberry Pi los datos en tiempo real de temperatura y humedad del dispositivo Monty Home.
  • Habilidades adquiridas: trabajo con dispositivos I2C, visualización dinámica de datos con pantalla OLED SSD1306, recuperación de datos BLE e implementación de actualización en pantalla
  • Hardware necesario: Raspberry Pi con soporte BLE, pantalla OLED SSD1306

Proyecto 3: alertas de temperatura mediante IFTTT

  • Objetivo: configurar la Raspberry Pi para que envíe una notificación por medio de IFTTT cuando la temperatura del dispositivo Monty Home supere un umbral específico.
  • Habilidades adquiridas: integración de automatización IoT con IFTTT, envío de solicitudes HTTP con la biblioteca requests, combinación de datos BLE con notificaciones basadas en la nube
  • Hardware necesario: Raspberry Pi con soporte Wi‑Fi, cuenta de IFTTT

Configuración

Requisitos de hardware

  1. Raspberry Pi (Zero 2 o un modelo con soporte BLE)
  2. Dispositivo BLE Monty Home
  3. Hardware adicional necesario para cada proyecto (LED, pantalla OLED, cuenta de IFTTT, etc.)

Requisitos de software

  1. Raspberry Pi OS: instalar Raspberry Pi OS Lite (sin interfaz gráfica) o Raspberry Pi OS with Desktop (con interfaz gráfica)
  2. Python 3: instalar Python 3 y pip
  3. Bibliotecas:
    • Bleak: para comunicación BLE
    • Requests: para integración con IFTTT
    • Adafruit CircuitPython SSD1306: para control de la pantalla OLED
    • Pillow: para manipulación de imágenes en la OLED

Comandos BLE

  • Son los comandos usados para interactuar con el dispositivo Monty Home. Cada comando solicita datos específicos o ejecuta una acción.
  • Ejemplo: ;QT\r\n devuelve la lectura de temperatura del sensor NTC.

Ejecución del código

  • Cada proyecto incluye scripts en Python que establecen la conexión BLE, envían consultas y procesan los datos.
  • Cómo ejecutar los scripts:
    1. Abrir la terminal en la Raspberry Pi
    2. Ir a la carpeta del proyecto: cd /path/to/project
    3. Ejecutar el script: python3 project_script.py

Personalización

Ajuste de comandos BLE

  • Puedes modificar los comandos BLE en el código para recuperar distintos tipos de datos desde el dispositivo Monty Home.

Ampliación del controlador de notificaciones

  • Para procesar varios tipos de datos, puedes agregar condiciones dentro de la función notification_handler para decodificar y mostrar diferentes lecturas.

Integración con otras plataformas

  • También puedes considerar integrar los datos en plataformas IoT o paneles de control para visualización en tiempo real, registro o automatización adicional.

Recursos adicionales

  • Python en Raspberry Pi
  • Guía de BLE en Raspberry Pi
  • Documentación de IFTTT Webhooks
  • Guía de Adafruit CircuitPython SSD1306

Contribuciones

  • Se agradecen los pull requests, reportes de problemas, sugerencias de funciones y más. Puedes contribuir a mejorar esta guía y agregar nuevos proyectos.

1 comentarios

 
GN⁺ 2024-11-23
Comentarios de Hacker News
  • Un usuario compartió su experiencia cultivando papas y zanahorias en una pila de composta hecha con estiércol de establo; mencionó que las papas crecieron bien, pero las zanahorias no prosperaron por falta de agua

    • Explicó su plan de monitorear la temperatura de la composta usando un sensor de temperatura basado en ESP8266
    • Planea colocar el sensor de temperatura en un gabinete con clasificación IP67 e instalarlo sobre la pila de composta junto con un panel solar
  • Otro usuario se preguntó a qué escala el monitoreo electrónico podría mejorar la calidad de la composta y opinó que probablemente tendría que hacerse a gran escala

    • Mencionó que le gusta el diseño casero con apariencia de hongo
  • Otro usuario compartió su experiencia con monitoreo ambiental usando sensores baratos y mencionó problemas de repetibilidad en los sensores y de tolerancia al ruido en los sensores de CO2

    • Dijo que le gustaría llevar el proyecto usando componentes confiables
  • Un usuario celebró la posibilidad de escalar el monitoreo de composta a pequeña escala y mencionó que podría interesar a la comunidad Gathering for Open Ag Tech

  • Otro usuario dijo que prefiere un método simple para medir la temperatura de la composta y explicó que, si la temperatura supera los 45 grados, significa que las bacterias termófilas están activas

  • Otro usuario compartió que le gustaría crear un sistema de monitoreo para plantas y comentó que le gustaría recibir recomendaciones de sensores para medir composición del suelo, niveles de nutrientes, humedad y más

  • Un usuario se preguntó por la utilidad práctica de los datos de sensores obtenidos mediante el monitoreo de composta y preguntó si, además de temperatura y humedad, la composición de gases puede servir para verificar el efecto sobre la relación C/N o si la composta está entrando en estado anaeróbico

    • También preguntó si la experiencia de monitoreo cambió la forma en que maneja su composta
  • Se agregó información adicional sobre el producto Monty Monitor

  • Un usuario mencionó que había estado buscando un termopar para monitorear composta

  • Hay un usuario que pregunta si se está trabajando en una integración con HomeAssistant