Transcription
[Música] La detección de presencia es fundamental para cualquier hogar inteligente, ya sea que tu hogar inteligente tenga ruedas o no. Uno de los principales beneficios de un hogar inteligente es poder automatizar cosas cuando no hay nadie en casa o cuando hay alguien en casa. Y en nuestra furgoneta, nos gusta que las cosas se apaguen, como el inversor, la bomba de agua y las luces cuando nos vamos, y que esas cosas se enciendan bajo ciertas circunstancias cuando regresamos a casa. Hay un montón de técnicas para determinar la detección de presencia, pero ¿cuál es mejor? Si estás en una furgoneta inteligente o en un vehículo de aventura como nosotros, entonces usar soluciones que no dependan de Internet es fundamental. Por lo tanto, algo como la aplicación nativa de Home Assistant queda descartado. El Wi-Fi es excelente para la detección de presencia, y he hecho un video sobre eso aquí mismo. No requiere una conexión a Internet, pero sí requiere que puedas acceder a una lista de los clientes activos en tu router Wi-Fi. Pero, ¿qué pasa si no tienes un router que te permita acceder a una lista de los nombres de los clientes actualmente activos, o si quieres rastrear un dispositivo que no tiene Wi-Fi? Bueno, hay otro gran método que no depende de una conexión a Internet, y ese es Bluetooth. Casi todos nosotros llevamos dispositivos que tienen Bluetooth, como nuestros teléfonos y nuestros relojes o rastreadores de actividad física. Pero, ¿es Bluetooth realmente mejor? En este video, responderemos a esa pregunta. Y si te quedas hasta el final, te mostraré cómo puedes combinar Bluetooth y Wi-Fi para una detección de presencia inquebrantable en tu hogar inteligente móvil. Muy bien, pongámonos a trabajar. [Música] La presencia Bluetooth requiere dos ingredientes básicos. Primero, necesitas un dispositivo con una radio Bluetooth que quieras rastrear. Y segundo, necesitas un dispositivo con una radio Bluetooth para hacer el rastreo. La primera parte es fácil. Podemos usar el Bluetooth de tu teléfono o tu reloj o tu rastreador de actividad física. O incluso puedes conseguir un llavero Bluetooth de bajo consumo para tu llavero. Para la segunda parte, vamos a usar un proyecto de software llamado ES Presence. Si miras el logo, ESP está en mayúsculas, y eso es una referencia al microcontrolador ESP. Quizás estés familiarizado con los microcontroladores ESP para proyectos como ESP Home u otros proyectos de automatización del hogar personalizados que hayas construido. He hecho muchos videos usando microcontroladores ESP para cosas como ESP Home, y pondré algunos enlaces a ellos en la descripción. Si no estás familiarizado con los dispositivos ESP, necesitarás un ESP32. Estoy usando este ESP32, y dejaré un enlace en la descripción a algunos dispositivos ESP32 que puedes comprar. Solo ten en cuenta que los dispositivos ESP 8266 no funcionarán con ES Presence. Antes de profundizar, echemos un vistazo súper simplificado a cómo funciona todo esto. Dispositivos como tu teléfono envían paquetes de publicidad regulares, y ESP Presence utiliza dispositivos ESP32 baratos con Bluetooth para detectar esas señales y enviar esa información a través de Wi-Fi a un servidor MQTT. Y si estás usando Home Assistant, podemos importar esa información y usar esos sensores en automatizaciones. Si usas múltiples ESP32 con ES Presence instalado, podrías distribuirlos por tu casa o por tu vehículo. Y ESP presence usará la intensidad de la señal de dispositivos como tu teléfono, tu reloj o tu rastreador de actividad física para determinar tu distancia relativa a uno de estos dispositivos. Luego, ES presence puede determinar en qué habitación de la casa o vehículo te encuentras. En el caso de Smarty Van, solo estamos usando un nodo y, por lo tanto, una habitación. Así que realmente solo estoy tratando de detectar si alguno de nuestros dispositivos está en casa o no. Como mencioné, ES Presence usa MQTT para entregar sus mensajes. Estaré usando el Mosquito Broker en Home Assistant instalado como un complemento, pero esto no es obligatorio. Si no usas Home Assistant y usas un broker MQTT diferente, está bien. Tengo un video que enlazaré abajo que te guía a través de la configuración del broker Mosquito MQTT en Home Assistant como un complemento. Entonces, realmente solo necesitas dos cosas simples para empezar. Necesitarás un ESP32 y quizás una carcasa impresa en 3D para mantenerlo seguro. Y necesitarás un broker MQTT. Como mencioné, usaré el Mosquito Broker ejecutándose en Home Assistant como un complemento, y eso es lo que usaré en nuestra demostración de hoy. Muy bien, profundicemos. [Música] ES Presence se refiere a cada dispositivo ESP como un nodo. Y para instalar el firmware en un nodo, navegaremos a espress.com y haremos clic en nodos y luego en instalar firmware. Debes usar un navegador como Chrome o Microsoft Edge para instalar esto directamente desde un navegador. Así que he conectado mi dispositivo a mi computadora con USBC y dejaré el sabor configurado en estándar y la última versión de ES Presence. Haré clic en conectar y elegiré el dispositivo que conecté a mi portátil y haré clic en conectar. Y luego haremos clic en instalar ES Presence. Haré clic en borrar dispositivo para asegurarme de que esté completamente borrado e instalar. Mientras se instala el firmware de ES Presence, aprovecharé esta oportunidad para agradecer rápidamente a todos los miembros de Smarty Van, especialmente a nuestros miembros de nivel superior. Si quieres apoyar el canal directamente, haz clic en el botón de unirse abajo y mira las ventajas disponibles. O simplemente haz clic en el botón de suscribirse. Es gratis y realmente ayuda al canal. Y si buscas una comunidad para profundizar en todo lo relacionado con la automatización del hogar, especialmente en un vehículo, consulta el servidor de Discord. También está enlazado abajo. Muy bien, parece que nuestro firmware está instalado. Cuando termine la instalación del firmware, es posible que veas una indicación para ingresar las credenciales de Wi-Fi. Puedes ingresarlas aquí, pero haré clic en omitir y conectarme directamente al dispositivo para que podamos hacer más configuración antes de continuar. Así que haré clic en omitir y cerraré eso. Luego, me conectaré directamente a este dispositivo. Actualmente está transmitiendo un SSID y miraré mi menú de Wi-Fi aquí y buscaré algo que comience con ES Presence. Elegiré este dispositivo ES Presence aquí. Y deberías ver que aparece un portal cautivo. Esta es la interfaz web para ES Presence. Solo haré un par de opciones de configuración aquí, y luego nos conectaremos a este dispositivo a través de nuestro navegador web normal. Primero, podemos configurar el Wi-Fi para conectarnos a la misma red Wi-Fi a la que está conectado nuestro servidor Home Assistant. Así que, en mi caso, elegiré van link e ingresaré la contraseña. Y luego, le daremos a nuestro dispositivo un nombre de habitación. En nuestro caso, simplemente lo llamaremos van porque no tenemos varias habitaciones, pero podrías nombrarlo algo como cocina o baño o dormitorio. Luego, lo último que haré aquí es agregar algunas credenciales MQTT. Este dispositivo quiere conectarse al servidor MQTT y necesito agregar la dirección IP del servidor aquí. Si estás ejecutando el broker Mosquito MQTT en Home Assistant, usarás la misma dirección IP que tu servidor Home Assistant. De lo contrario, usa la dirección IP de tu broker MQTT. Lo más probable es que dejes el puerto como el predeterminado 1883. Luego, agregaremos las credenciales de nombre de usuario y contraseña que se requieren para acceder a nuestro servidor MQTT. En mi caso, las he configurado en Home Assistant. Y si no sabes cómo hacerlo, de nuevo, dejaré un enlace en la descripción. Una vez que hayas realizado estos cambios, podemos hacer clic en guardar y luego en enviar. Luego haremos clic en reiniciar dispositivo. Esto nos desconectará del punto de acceso del dispositivo ESP. Y ahora el dispositivo se conectará a nuestra red Wi-Fi en la furgoneta. [Música] De acuerdo, hagamos un resumen rápido. Hasta ahora, hemos flasheado ES Presence a un dispositivo ESP32, y hemos iniciado sesión en ese dispositivo para darle credenciales de Wi-Fi y credenciales de broker MQTT, y hemos reiniciado el dispositivo. Ahora podemos echar un vistazo a nuestro broker MQTT y ver si hay alguna información que se esté publicando. Así que ahora me dirigiré a MQTT Explorer, que es mi aplicación favorita para navegar y explorar brokers MQTT. Crearé una nueva conexión, le daré un nombre y agregaremos el host. Esta es la dirección IP de tu broker MQTT. En mi caso, esto se está ejecutando en Home Assistant, así que usaré la dirección IP de mi Home Assistant. Dejaremos el puerto 1883. Y agregaremos un nombre de usuario y contraseña. Este es el mismo nombre de usuario y contraseña que configuramos en el dispositivo ESP. Y esto está configurado en tu broker MQTT. Y luego haré clic en conectar. Y ahí vemos los temas de ES presence. Y si me desplazo hacia abajo a dispositivos, verás una lista de un montón de dispositivos. Estos son todos los dispositivos Bluetooth que están enviando sus señales Bluetooth dentro y alrededor de la furgoneta. Pero realmente no sabemos cuáles son estos dispositivos. Así que necesitamos hacer algo para que esto sea un poco más claro e identificar un dispositivo específico que queremos rastrear. Para hacer eso, necesitamos conectarnos a la interfaz web de nuestro dispositivo ES presence. Así que iré a nuestra instalación de Home Assistant. Haré clic en configuración y luego en dispositivos y servicios y verás que tenemos un dispositivo MQTT descubierto. MQTT tiene funciones de autodescubrimiento en Home Assistant y, por lo tanto, este dispositivo fue descubierto y agregado automáticamente a nuestros dispositivos. Y si hago clic en el botón visitar aquí, esto abrirá la dirección IP de nuestro dispositivo ES presence. Si no estás usando Home Assistant, puedes mirar tu router y descubrir la dirección IP de tu dispositivo ESP presence y simplemente escribirla en tu navegador web. Y aquí verás todas las cosas que ya hemos configurado, como el nombre de la habitación y las credenciales MQTT. Y si te desplazas hasta el final, hay un botón que dice haz clic aquí para editar otras configuraciones. Y si haces clic allí, se abre otra interfaz web. Y puedes ver algunas configuraciones más para ES Presence. Muy bien. Luego haré clic en dispositivos y luego en inscribir. Seleccionaré un teléfono porque estoy inscribiendo mi iPhone. Y le daré un nombre. Lo estoy llamando mi teléfono Bluetooth. Y luego haré clic en inscribir. Y verás algunas instrucciones aquí. Pero para inscribir tu dispositivo, necesitas navegar a configuración y luego a la configuración de Bluetooth y buscar otros dispositivos en la parte inferior. Haré clic en ES presence y emparejar. Genial. Y puedes ver en la interfaz web que este dispositivo ha sido inscrito. Después de que esto termine, puedes hacer clic en la "i" aquí en el iPhone y olvidar este dispositivo. Ya no necesitamos este emparejamiento. Muy bien. Ahora vemos que nuestro dispositivo está inscrito. Micrófono Bluetooth está aquí mismo y está usando un IRK. Esa es una clave de resolución de identidad, que es una característica de seguridad de Bluetooth. Con esta clave, ES presence puede resolver la dirección privada de tu dispositivo y siempre hacer un seguimiento de Bluetooth. Ahora, si volvemos a nuestro explorador MQTT, puedes ver que el micrófono del teléfono Bluetooth está listado entre los dispositivos, pero todavía vemos todos esos otros dispositivos aleatorios. Así que podemos hacer una cosa más para ayudar a limpiar esto. Volveré a la interfaz web de ESP presence, y copiaré el alias de mi teléfono y me iré a configuración. Y luego nos desplazaremos hacia abajo hasta filtrado. Si pego esta ID aquí, esto incluirá solo el envío de estas IDs a MQTT. Y haré clic en guardar y reiniciar. Luego, si vamos a los dispositivos en MQTT Explorer, puedo eliminarlos. La próxima vez que se complete, verás que solo se está completando mi teléfono en la lista de dispositivos. Mucho más limpio, y es realmente lo único que quiero rastrear con ES presence. Y si nos desplazamos hacia abajo en este dispositivo, verás cada nodo al que está conectado este dispositivo. En mi caso, solo tengo un nodo, y ese es Van. Y si hago clic en VAN, puedes ver un montón de estadísticas sobre este dispositivo, incluyendo el RSSI y la distancia desde este nodo. Si estás usando Home Assistant como nosotros, a continuación te mostraré cómo crear algunos sensores útiles usando estos datos. Si estás usando Home Assistant, configuremos algunos sensores para rastrear dispositivos individuales. Estoy usando Studio Code Server, pero puedes usar cualquier editor de texto para agregar algo de configuración. También estoy usando paquetes, sobre los que hice un video aquí mismo, y así es como mantengo organizados proyectos como este. Así que navegaré a mi carpeta de presencia, y haré clic en presence.yml. He agregado un sensor a esta configuración usando la plataforma de habitación MQTT. Le daremos un nombre, micrófono, Bluetooth, y el ID del dispositivo. Este es el mismo ID que acabamos de configurar en ES Presence, y que vimos en MQTT Explorer. El tiempo de espera de ausencia es simplemente cuánto tiempo esperar para considerar este dispositivo ausente. El valor predeterminado es cinco y lo he dejado aquí en cinco. Luego necesitamos configurar el tema de estado. Y si volvemos a MQTT explorer y resaltamos nuestro dispositivo, puedes ver la ruta en la parte superior. Puedes hacer clic en este botón para copiar la ruta y puedes pegarla aquí. En mi caso, es ES presence devices phone: microphone Bluetooth. Luego le daremos a este sensor un ID único. Si esta es la primera vez que usas la integración de habitación MQTT, entonces necesitamos ir a las herramientas del desarrollador y hacer clic en reiniciar. Y reiniciaremos Home Assistant. Una vez que Home Assistant se haya reiniciado, podemos cambiar a la pestaña de estados en las herramientas del desarrollador y filtrar por el nombre de nuestro dispositivo. Y puedes ver que el estado de mi dispositivo es van. Esta es la única habitación que configuramos. Es el único nodo que configuramos con ES presence. Y mi teléfono está conectado al Bluetooth de ese dispositivo. Incluso puedes ver la distancia en los atributos aquí. Esta es una estimación en metros basada en el RSSI del Bluetooth de mi teléfono al nodo ES presence. Y si navego a la configuración de mi teléfono y deshabilito Bluetooth por completo, veremos que el estado de este sensor cambia a no en casa. Por lo tanto, podemos usar este sensor y su estado para automatizar cosas en Home Assistant. Muy bien, has llegado hasta el final, hasta la última parte. Gracias por quedarte conmigo y felicidades. Como agradecimiento, te mostraré un truco realmente genial. Cómo combinar Wi-Fi y Bluetooth para lo último en detección de presencia en tu hogar inteligente móvil. Me gusta usar una combinación de ambos porque encuentro que Bluetooth registra la presencia muy rápidamente. Mientras que el Wi-Fi es muy bueno para extender nuestro alcance cuando estamos afuera deambulando por la furgoneta, nuestros teléfonos permanecen conectados a la red Wi-Fi gracias a la antena en el techo que está conectada a nuestro router Peplink. Mientras que Bluetooth a veces tiene problemas dentro de la furgoneta metálica para conectarse a este pequeño dispositivo enterrado en nuestro banco. Usar ambos juntos ha hecho que nuestra detección de presencia sea realmente sólida. Así que, déjame mostrarte cómo. Voy a volver a Studio Code server y mirar nuestro archivo YAML de presence.yml de nuevo. Y si me desplazo hacia abajo en este sensor binario, este es el sensor que configuramos en mi video anterior, al que puedes echar un vistazo aquí mismo. Y todo trata sobre usar Wi-Fi para la detección de presencia. Así que puedes ver en este código aquí que estoy buscando el término microphone entre una lista de clientes Wi-Fi que estoy obteniendo de nuestro router Peplink. Y al final aquí, básicamente digo que si ese término de búsqueda coincide en la lista de clientes Wi-Fi, estableceremos este sensor binario en encendido y de lo contrario lo apagaremos. Pero si agrego este fragmento aquí, estoy modificando este sensor binario para que busque en la lista de clientes Wi-Fi en nuestro router Peplink este término de búsqueda o para verificar el estado del sensor que definimos abajo de nuestro ES presence y ver en qué habitación se encuentra este dispositivo. Entonces, si sensor domicone Bluetooth está en la habitación van, entonces también podemos encender este sensor. De lo contrario, lo apagaremos. Básicamente, estamos utilizando lo mejor de la detección de presencia Wi-Fi y Bluetooth. Y, por supuesto, podrías expandir esta plantilla con más o declaraciones para incluir más sensores si tienes más personas o como quieras crearlo, pero básicamente ahora tenemos un sensor binario que combina la detección de presencia Wi-Fi y Bluetooth. Muy bien, iré a nuestro panel para que podamos ver cómo funciona esto en la práctica. En la parte superior, ves que tenemos un sensor de alguien en casa y el estado es detectado. Frente a eso, podemos ver el número de clientes Wi-Fi de Peplink actualmente en la red y puedes ver que mi teléfono está entre ellos y puedes ver los dos sensores de los que acabamos de hablar en Studio Code server. Micrófono Bluetooth está en la habitación van y micrófono Wi-Fi está en casa. Así que si voy al menú de configuración de mi dispositivo y desactivo el Wi-Fi, verás que el sensor de micrófono Wi-Fi eventualmente cambia a ausente, pero alguien en casa todavía dice detectado porque el micrófono Bluetooth todavía está en la furgoneta. Si cambio a Bluetooth y deshabilito Bluetooth por completo, en un par de segundos, el sensor de micrófono Bluetooth dirá no en casa y nuestro sensor de alguien en casa cambiará a despejado. Y si vuelvo a Wi-Fi y lo enciendo de nuevo, verás que mi dispositivo se reconecta al Wi-Fi y se detecta como en casa. Y, por lo tanto, alguien en casa ahora está detectado. Así que puedes ver cómo esto está combinando Bluetooth y Wi-Fi en un solo sensor binario para detectar si alguien está en casa. Y así es como puedes tener una detección de presencia sólida como una roca combinando Wi-Fi y Bluetooth. Haz clic en suscribirse y hasta la próxima, ¡buenos viajes! [Música] [Aplausos] [Música]