Automatizaciones dinámicas con NFC

En esta entrada voy a tratar de crear automatizaciones dinámicas con NFC, para potenciar el uso de esta tecnología.

NFC, ¿a estas alturas?

Si, ya sé que hace tiempo que hablamos de cómo integrar etiquetas NFC en Home Assistant y utilizarlas como desencadenantes para nuestras automatizaciones. No obstante, siempre he tenido la sensación de que es de esas cosas que te parecen lo mejor cuando lo descubres, pero por algún motivo no acabas utilizándolos.

Y es que estoy convencido de que es una tecnología totalmente infravalorada, a pesar de su bajísimo coste, su reducido tamaño y no requerir alimentación externa alguna. Si hasta ahora, como a mí, lo mejor que se te había ocurrido era pegarlas en algún sitio para que “hagan algo” al pasar el móvil, esta entrada te interesa.

*Algún precio puede haber cambiado desde la última revisión

Automatizaciones dinámicas con NFC

Esta idea surgió en mi cabeza mientras hacía experimentos con relojes baratos para controlar Home Assistant. La cuestión es que yo creía que los smartwatches tenían la capacidad de “leer” etiquetas NFC, pero para mi sorpresa estos sólo funcionan como elementos pasivos. Es decir, como si ellos mismos fueran una etiqueta que debe ser leida por otro dispositivo.

Inicialmente fué una decepción, ya que tenía grandes expectativas puestas en estos dispositivos. Sin embargo, a raíz de este “chasco” empecé a pensar en un nuevo enfoque para multiplicar sus posibilidades: las automatizaciones dinámicas con NFC. En esencia, este planteamiento se basa en combinar los dispositivos NFC con las siguientes variables para hacerlos mucho más “inteligentes”.

Dispositivos pasivos

Probablemente, si piensas en una automatización con NFC te imagines una etiqueta pegada en la despensa que añade aguacates a tu lista de la compra cuando pasas el móvil por encima. Este es el ejemplo básico de un “dispositivo pasivo”, ya que tiene una acción grabada que se activa al pasar un lector (en este caso, el móvil).

No le quito valor a la utilidad de tener distintas etiquetas repartidas por distintos sitios para desencadenar distintas automatizaciones. Sin embargo, existen otros dispositivos con tecnología NFC:

  • Relojes inteligentes y pulseras de actividad. Puesto que fueron los que me dieron la idea, no puedo dejar de mencionarlos. La ventaja que aportan es que la tecnología NFC es sólo una característica, pero ya los llevas siempre encima por otros motivos y están listos para ser usados. Ojo! no todos los modelos lo incluyen, por lo que es un aspecto que debes verificar antes de hacerte con uno.
  • Pulseras NFC. Es muy posible que ya las hayas utilizado en el gimnasio o la piscina, ya que muchos centros las reparten entre sus socios para darles acceso rápido a sus instalaciones. Puedes adquirir estas mismas pulseras en Aliexpress por unos pocos euros. Perfectas para todos aquellos que no usan relojes inteligentes.
  • Anillos NFC. Si eres más de anillos que de pulseras, también existen (personalmente no lo sabía hasta hace un par de semanas). Funcionan exactamente igual que las anteriores, pero el chip se encuentra incrustado en el anillo.
  • Crea tus propios dispositivos. Esta es una opción que he empezado a explorar y me encanta. Las etiquetas NFC son tan finas con una hoja de papel, por lo que puedes meterlas dentro de otros dispositivos (siempre que se puedan leer desde la superficie). Esto te permite incorporar la tecnología NFC a tus objetos y mejorarlos. Por ejemplo, yo he introducido una etiqueta NFC en un itag bluetooth, y ahora este llavero no sólo sirve para localizar mis objetos, también abre puertas y lanza automatizaciones (lo llamo el “aguacatec mágico” 😅 y se lo regalo a los Patreon de Aguacatec cuando consiguen un aguacoin).

Como puedes ver hay muchas opciones para desencadenar automatizaciones, por lo que si llevas varios de estos objetos encima acabas de introducir la primera variable. Por ejemplo, puedes utilizar el ‘aguacatec mágico’ para automatizaciones relacionadas con el acceso (abrir puertas, desactivar la alarma, etc) y tu reloj para rutinas personalizadas (reproducir playlist, poner la temperatura que te gusta, etc).

Dispositivos lectores

Como ya hemos comentado, los dispositivos pasivos requieren de otro dispositivo “lector” (por ejemplo, tu dispositivo móvil) que será el que interprete y genere la acción en cuestión.

Si revisas la documentación oficial de HA podrás comprobar que cuando una etiqueta cualquiera es escaneada se dispara el evento ‘tag_scanned’, que contiene entre otros el valor ‘device_id’. Este último valor identifica el dispositivo “lector” que ha escaneado la etiqueta. Déjame que te lo demuestre con un ejemplo.

Una vez que hayas configurado una etiqueta NFC en HA, ve a Herramientas para desarrolladores > Eventos. En el campo de “Evento al que suscribirse”, incluye el siguiente ‘tag_scanned’ y pulsa en “Empezar a escuchar”. Después escanea tu etiqueta y observarás algo como lo siguiente:

event_type: tag_scanned
data:
  tag_id: 8d39dj52-4ad0-49cf-8dj4-a52aea29ec60
  name: Aguactec
  device_id: 6e264c903nr746a69ddaeehc0d93n578e1
[...]

En consecuencia, puedes utilizar esta información como desencadenante de tus automatizaciones de la siguiente manera:

alias: Automatización NFC
description: ""
trigger:
  - platform: event
    event_type: tag_scanned
    event_data:
      tag_id: 8d39dj52-4ad0-49cf-8dj4-a52aea29ec60
      name: Aguactec
      device_id: 6e264c903nr746a69ddaeehc0d93n578e1
condition: []
action:
  - service: notify.mobile_app_dispositivo
    data:
      message: Funciona!
mode: single

Lo interesante a la hora de crear automatizaciones dinámicas con NFC viene cuando tienes distintos dispositivos lectores a tu disposición. Por ejemplo, ya sabes que en mi caso me encanta reutilizar tablets y teléfonos viejos para darles una segunda vida, por lo que es normal que los tenga repartidos por mi casa. Incluso podrías crear tus propios lectores NFC integrables con HA.

Digamos que, además de mi dispositivo móvil, tengo otros dos dispositivos lectores (haciendo un total de 3). Creando una automatización con distintos ‘trigger id’ puedo hacer que una misma etiqueta NFC genere distintas acciones, en función del dispositivo que la lee. Como resultado si antes tenía 2 dispositivos NFC (mi reloj y mi “aguacatec mágico”) con los que podía lanzar 2 automatizaciones, ahora puedo lanzar 6 (2 dispositivos pasivos * 3 lectores).

Por ejemplo, si paso mi reloj por el teléfono envía un mensaje por Telegram al grupo familiar indicando que llego tarde, pero si lo paso por la tablet del salón enciende la calefacción. De la misma forma, una misma etiqueta NFC colocada en la despensa puede añadir a la lista de la compra “Leche entera” o “Leche de avena” en función del usuario que la escanee.

Variables externas

Teniendo en cuenta otras variables es cuando realmente vamos a crear automatizaciones dinámicas con NFC. Para tener en cuenta estas variables, lo único que tenemos que hacer es añadir una condición adicional en la automatización que evalúe el estado de la variable. Veamos a qué me refiero con unos cuántos ejemplos.

Supongamos que he situado una etiqueta NFC en mi escritorio, bajo la alfombrilla del teclado, en el sitio donde de forma natural dejo siempre mi teléfono móvil. Como puedes imaginar, este es el lugar donde trabajo y utilizo el ordenador, por lo que tengo muchas variables con las que interactuar. Cuando dejo el dispositivo sobre la etiqueta NFC sucede los siguiente:

  • Si el ordenador está apagado, lo enciende con la integración Wake on Lan.
  • Si el ordenador está encendido, realiza las siguientes acciones:
    • Si el robot aspirador está limpiando, lo pausa.
    • Si la temperatura en el estudio es inferior a 18º, enciende la calefacción.
    • Si la temperatura en el estudio es superior a 26º, enciende el aire acondicionado.
    • Si es de noche y la luz está apagada, la enciende.

Estos son sólo unos ejemplos para que veas como puedes lanzar 5 automatizaciones distintas, con una única etiqueta NFC y un único dispositivo lector. Lógicamente, la magia surge cuando lo adaptas a tus hábitos y costumbres, y colocas etiquetas en los sitios que habitualmente dejas tu teléfono (por ejemplo, la mesilla de noche o el soporte del coche).

De igual forma puedes multiplicar las automatizaciones que lanzas con tus ‘weareables’ (ya sean relojes, pulseras o anillos). Por ejemplo, cuando paso mi reloj por mi dispositivo móvil sucede lo siguiente:

  • Si estoy en la zona geográfica del trabajo, envía una notificación al grupo familiar indicando que voy a llegar tarde.
  • Si mi mochila de viaje está fuera de casa (usando mi aguacate mágico con Espresense), activa la rutina de simulación de presencia humana.
  • Si estoy en el dormitorio, entre las 21h y las 6h, apaga las luces y baja las persianas.
  • Si estoy en el dormitorio, entre las 6h y las 11h, sube las persianas.

Creo que con estos ejemplos te haces una idea, pero el resumen es que ahora puedes multiplicar exponencionalmente tus automatizaciones. Por ejemplo, con 2 etiquetas, 3 lectores y 6 variables externas podrías generar 36 automatizaciones distintas (2*3*6).

nfc dinamica

¿Dudas?¿necesitas ayuda? entra aquí
Y si te ha gustado, compártelo! 🙂
Send this to a friend