Innescare la domotica tramite tag di prossimità NFC e Home Assistant Companion

4 minuti di lettura
SCOPI DEL PROGETTO:
  • Utilizzare le pratiche tag NFC per attivare, tramite l’avvicinamento dello smartphone/tablet, automazioni sulla propria domotica basata su Home Assistant
  • Livello di difficoltà: basso
  • Costo: basso
CONCETTI AFFRONTATI:
  • Configurazione software
  • Uso di tag NFC
COMPONENTI SOFTWARE UTILIZZATE:
COMPONENTI FISICI UTILIZZATI:
GUIDA maggiormente indicatA per:

Tutti gli ambienti

Note e disclaimer
  • qualsiasi eventuale modifica agli impianti domestici dev'essere progettata ed realizzata SOLO da personale qualificato;
  • qualsiasi modifica attuata in proprio è a propria responsabilità personale nonché a proprio rischio e pericolo (i contenuti della presenta pagina hanno puro scopo didattico);
  • qualsiasi modifica attuata in proprio a un dispositivo ne fa decadere garanzia, omologazioni e certificazioni di qualità.
Revisione progetto: 1.1

Abstract

NFC logoNegli ultimi anni molti hanno preso dimestichezza – spesso senza saperlo – con la Near Field Communication (abbreviato NFC), una tecnologia che permette di “leggere” (tramite dispositivi dotati di un’antenna adeguata, per esempio gli smartphone di nuova generazione) delle informazioni direttamente da delle “tag”, degli elementi che si attivano con il solo avvicinamento, appunto, dell’antenna compatibile.

Il caso più lampante è quello delle carte di credito contactless: ogni carta di questo tipo contiene al suo interno una “tag” NFC la quale, avvicinata al POS di pagamento si “attiva” e comunica a quest’ultimo le coordinate bancarie del cliente. Un altro esempio comune è quello dei badge lavorativi: basta avvicinarli al lettore presente sul varco d’ingresso per ottenerne (se autorizzati) l’apertura. Anche quelli, tutti basati su tecnologia NFC.

L’idea di base di questo progetto sta nell’idea di utilizzare uno smartphone/tablet dotato di antenna NFC per leggere una tag NFC (posizionata dall’utente dove meglio si crede) al fine di eseguire specifiche funzioni della propria domotica basata su Home Assistant.

Immaginiamo a mo’ d’esempio di avere un attuatore applicato al sistema di apertura di una porta d’ingresso e integrato a Home Assistant: quello che potremmo fare con le tecniche descritte in questo progetto è posizionare una tag NFC adesiva (costo: qualche euro) nelle vicinanze al varco e, per aprirla, utilizzare il solo avvicinamento del cellulare ad essa, gesto il quale attivi il meccanismo di apertura. Il tutto, ovviamente, nella massima sicurezza (il perché lo vedremo a breve).

NOTA SULLA SICUREZZA: È certamente vero che chiunque possa liberamente leggere una tag NFC; è altresì vero che in assenza di Home Assistant Companion installata sullo smartphone/tablet (autenticato con username/password sul proprio Home Assistant) la lettura sia totalmente inutile e sicura.

Assunti

Il progetto, per essere implementato, prevede:

  • la disponibilità di uno o più smartphone/tablet dotati di antenna NFC e di una o più tag NFC;
  • l’adozione dell’app Home Assistant Companion;
  • Home Assistant configurato per il controllo remoto tramite HTTPS.

Il secondo punto prevede che la propria istanza Home Assistant sia raggiungibile da remoto e tramite protocollo HTTPS: in caso si stia utilizzando Home Assistant installato su Raspberry la guida dettagliata al procedimento è questa, per gli utenti HASSIO invece è quest’altra.

Si parte

Logica di funzionamento

Per realizzare il presente progetto abbiamo scelto Home Assistant Companion, l’app ufficiale di Home Assistant per smartphone tablet (per Android e per iOS) che consente di definire dei flussi di automazione di vario genere; una delle frecce all’arco di tale app è, per l’appunto, l’antenna NFC (quando presente sullo smartphone/tablet).

Ogni tag NFC da par suo contiene al suo interno un codice identificativo (ID) (nonché molte altre informazioni, volendo) il quale può essere arbitrariamente impostato dall’utente a un valore specifico.

Quello che andremo a fare è dunque:

  • definire un tag ID su Home Assistant;
  • scrivere tale ID sulla tag NFC target;
  • definire un’automazione innescata tramite la lettura della tag NFC tramite lo smartphone/tablet.

Api

In primis, assicuriamoci che il componente API sia attivo. Per farlo, è semplicemente necessario che nel file di configurazione sia presente la riga:

api:

in caso manchi, aggiungerla e riavviare l’HUB.

Creazione ID tag

Recarsi (tramite l’app Home Assistant Companion su smartphone/tablet) presso l’interfaccia Home Assistant (versione minima 0.115!) alla voce “Impostazioni” > “Etichette” (“Tags” in inglese).

Cliccare su “+“.  Si aprirà la maschera che consentirà di di definire il nome dell’etichetta (puramente descrittivo) e l’ID della tag NFC.

Nel nostro caso, dato che realizzeremo un’automazione d’esempio che accenda/spenga una luce, chiameremo la tag  “Luce tavolo” mentre lasceremo che l’ID venga auto-generato lasciando vuoto il campo. Al termine della compilazione  cliccare su “Crea e scrivi“:

Home Assistant - tag NFC - creazione etichetta

N.b. La personalizzazione dell’ID etichetta può essere comoda laddove, successivamente, si scriva l’automazione a mano e non tramite wizard. Un nome riconoscibile (anziché una stringa caratteri auto-generata) può facilitare la lettura del proprio codice YAML.

A questo punto avvicinare lo smartphone/tablet alla tag NFC da scrivere:

Home Assistant - tag NFC - scrittura etichetta

Se tutto andrà bene, l’app fornirà conferma dell’avvenuta scrittura:

Home Assistant - tag NFC - scrittura etichetta - conferma

Automazione

A questo punto è necessario definire l’automazione (o le automazioni) che effettuino delle azioni a fronte della lettura della tag.

Per farlo, sempre sotto la voce “Configurazione” > “Etichette”, cliccare sull’icona a forma di robot:

Home Assistant - tag NFC - nuova automazione robot

A questo punto si aprirà la classica maschera per la definizione dell’automazione, la quale potrà essere compilata come meglio si crede:

Home Assistant - tag NFC - nuova automazione - editor

Una volta salvata, andando a spulciare la configurazione YAML, apparirà più o meno come segue (nell’azione abbiamo inserito l’esempio del toggle di una luce):

automation:
  - alias: "Accensione luce tavolo via tag NFC"
    trigger:
      platform: tag
      tag_id: 5d30e0b7-4d82-4676-b17a-9553af451cb4
    condition: []
    action:
      service: light.toggle
      entity_id: light.tavolo 

Ovviamente il tag_id sarà quello auto-generato in fase di creazione della tag sull’app Home Assistant Companion.

Uso

Perché il trigger d’innesco NFC funzioni è necessario che lo smartphone/tablet siano sbloccato (ma non, necessariamente, che l’app sia aperta).

Si consiglia di non posizionare le tag NFC su superfici metalliche – pena il mancato o l’errato funzionamento.

A differenza di Android (che in caso di lettura tag innesca direttamente l’automazione), nel caso di Apple iOS, alla lettura di una tag NFC appare un menu a tendina:

Home Assistant - Apple iOS - lettura tag NFC

sul quale è necessario tappare per innescare l’esecuzione dell’automazione presso Home Assistant.


Home Assistant Official Logo ATTENZIONE: ricorda che sul nostro community FORUM c'è una sezione ad hoc dedica a Home Assistant, per qualsiasi dubbio, domanda, informazione nel merito specifico di queste componenti.


Telegram News Channel