Port de OpenHaystack como un componente de ESPHome. Compatible con todos los dispositivos con BLE de Espressif.
OpenHaystack es una aplicación que te permite crear tus propios accesorios que son rastreados por la red Find My network de Apple. Han hecho ingeniería inversa al protocolo de Apple y lo han documentado, un proyecto bastante impresionante.
Quería rastrear un scooter eléctrico mío en caso de que me lo robaran. Aunque la manera “oficial” de construir tus accesorios era “aceptable”, resulta ser bastante problemática y con varios problemas de compatibilidad en distintas placas de Espressif.
Así que lo porté como un componente de ESPHome, un software que ya utilizo para las necesidades de mis dispositivos embebidos.
Estoy un poco obsesionado con mantener mis dispositivos IoT/Embebidos lo más actualizados posible (y, por supuesto, fuera de cualquier nube si es posible), así que ESPHome es una solución atractiva para mantener tus dispositivos actualizados con los frameworks de Arduino y Espressif. A través de ESPHome, puedo “actualizar” mi scooter cuando quiera.
¡Lo intenté! Abrí Add support for OpenHaystack #3584, y su documentación de soporte, pero comprensiblemente no quisieron mezclarlo.
external_components:
- source:
type: git
url: https://github.com/barrenechea/esphome-config-files
ref: main
components: [openhaystack]
esphome:
name: openhaystack-demo
esp32:
board: wemos_d1_mini32
wifi:
ssid: <tu-ssid-wifi>
password: <tu-contraseña-wifi>
# Habilitar logs
logger:
# Habilitar API de Home Assistant
api:
ota:
password: !secret ota_password
openhaystack:
# Aquí va la clave codificada en Base64 de OpenHaystack
# Te sugiero encarecidamente que la manejes como un secreto
key: !secret openhaystack_key
external_components:
- source:
type: git
url: https://github.com/barrenechea/esphome-config-files
ref: main
components: [openhaystack]
esphome:
name: openhaystack-demo
platformio_options:
board_build.flash_mode: dio
esp32:
board: esp32-c3-devkitm-1
variant: ESP32C3
framework:
type: esp-idf
version: latest
sdkconfig_options:
CONFIG_FREERTOS_UNICORE: y
CONFIG_COMPILER_OPTIMIZATION_SIZE: y
# Habilitar soporte WPA3 solo porque podemos
CONFIG_WPA_SUITE_B_192: y
# Específico para el uso de Bluetooth
CONFIG_BT_BLE_50_FEATURES_SUPPORTED: y
CONFIG_BT_BLE_42_FEATURES_SUPPORTED: y
# Corrección de "Payload size error" - Extender tiempo de espera del Watchdog
CONFIG_ESP_TASK_WDT_TIMEOUT_S: '10'
wifi:
ssid: <tu-ssid-wifi>
password: <tu-contraseña-wifi>
# Habilitar logs
logger:
# Habilitar API de Home Assistant
api:
ota:
password: !secret ota_password
openhaystack:
# Aquí va la clave codificada en Base64 de OpenHaystack
# Te sugiero encarecidamente que la manejes como un secreto
key: !secret openhaystack_key
©2022-2024 Sebastián Barrenechea. Todos los derechos reservados.
Construido con Astro v4.16.13.