Helper Home Assistant: quale usare e quando

Foto di Massimo Di Vona

Massimo Di Vona

21 settembre 2026

Animazione Quale helper per quale problema: le icone degli helper di Home Assistant

Gli helper di Home Assistant in quaranta secondi: cosa sono e quale scegliere

Introduzione

Hai usato un helper nella tua configurazione e non lo sapevi? Tutti noi che usiamo Home Assistant e creiamo automazioni, script e dashboard abbiamo avuto bisogno di un helper, e forse lo abbiamo usato anche involontariamente, per esempio nell’articolo sulle automazioni per il riscaldamento.

La domanda che ci facciamo oggi, però, non è cos’è un helper, ma: quale mi serve adesso?

La tab Helper nella mia installazione: 30 helper, raggruppati per categoria

Cos’è un helper e perché ti serve

La documentazione ufficiale filtrata sugli helper

Un helper è un’entità che non esiste e non deriva da nessun dispositivo che abbiamo configurato e integrato in Home Assistant: la creiamo noi. L’helper Gruppo, per esempio, serve a unire in un solo comando più luci che altrimenti andrebbero comandate singolarmente. Creiamo una nuova entità che racchiude tutte le luci della cucina, per esempio Luci Cucina Gruppo.

L’helper crea un’entità vera e propria: come vedi dagli screenshot qui sopra, ne esistono diverse a seconda della necessità. Trovi l’elenco completo nella documentazione ufficiale degli helper.

Dove si crea un helper

Per trovare e creare le tue entità helper vai su Impostazioni → Dispositivi e servizi → Helper (tab in alto). Per creare una nuova entità, in basso a destra trovi il pulsante Crea helper.

La finestra Crea helper: si cerca il tipo per nome

Gli otto tipi che usi davvero, uno per problema

Ovviamente ne esistono molti: te ne elenco 8 che, a mio avviso, userai più spesso degli altri.

Attivare o disattivare una modalità

HelperToggle (input_boolean)
EsempioModalità Sanremo, Modalità Vacanza

Un valore regolabile

HelperNumber (input_number)
Esempioinput_number.kelvin (Tuya Smart Knob)

Scegliere tra opzioni fisse

HelperDropdown (input_select)
Esempiomodalita-dimmer (Tuya Smart Knob)

Un conto alla rovescia

HelperTimer

Un contatore che sale

HelperCounter

Una data o un orario

HelperDate and/or time (input_datetime)

Azzerare un consumo su base periodica

HelperUtility Meter

Unire più entità in una

HelperGruppo (Group)

Utility Meter

L’Utility Meter merita qualche parola in più: è probabilmente il più importante, perché serve a creare un contatore energetico che si costruisce sopra un sensore già esistente, per esempio quello delle prese smart che rilevano i consumi, e che si azzera da solo secondo l’intervallo scelto: giornaliero, mensile o annuale. È utilissimo per tenere traccia dei consumi, da usare nelle dashboard personalizzate e nella Energy Dashboard.

Template

Sono gli helper forse più potenti e personalizzabili: con un template puoi ricavare qualsiasi valore calcolato. Un esempio che ho usato spesso è il calcolo della temperatura percepita con una formula matematica, partendo da un semplice sensore di temperatura e umidità: ne avevo già parlato nella guida ai sensori template per temperatura percepita, VPD e punto di rugiada, se vuoi approfondire la formula.

Un esempio di template sensor che uso si chiama Confort Termico:

JINJATemplate dello stato: Confort Termico
{% set T = states('sensor.temperatura_n_2_aqara_temperature') | float(0) %}
{% set RH = states('sensor.temperatura_n_2_aqara_humidity') | float(0) %}
{% if T > 0 and RH > 0 %}
  {% if T < 18 %}
    Freddo
  {% elif T < 21 %}
    {% if RH < 40 %}
      Fresco e Secco
    {% elif RH > 70 %}
      Fresco e Umido
    {% else %}
      Fresco
    {% endif %}
  {% elif T < 26 %}
    {% if RH < 30 %}
      Confortevole e Secco
    {% elif RH > 70 %}
      Confortevole e Umido
    {% else %}
      Ottimale
    {% endif %}
  {% elif T < 30 %}
    {% if RH > 60 %}
      Caldo e Umido
    {% else %}
      Caldo
    {% endif %}
  {% else %}
    Molto Caldo
  {% endif %}
{% else %}
  Non Disponibile
{% endif %}
Lo storico di Confort Termico: 17 secondi di Non Disponibile, poi di nuovo Caldo e Umido

Il template mette semplicemente a confronto i due valori di temperatura e umidità e restituisce un testo leggibile: Caldo, Caldo e Umido, Confortevole e così via.

Helper da UI o da YAML: due strade diverse

Gli helper si possono costruire anche dal file configuration.yaml: compaiono nella lista, ma non sono modificabili dall’interfaccia. Infatti hanno la matita barrata e si possono modificare solo dal file. Nel mio caso sono Allarme Casa, il pannello dell’allarme senza centrale configurato in YAML, e Bubble Card Modules, il sensore che conserva i moduli di Bubble Card.

La matita barrata nella colonna Editable: questi due helper arrivano dal YAML

La seconda strada, quella ormai di default e che useremo quasi sempre, è la creazione da UI nel percorso che ti ho indicato sopra.

Aggiungo che tutto il sistema sta andando nella direzione delle configurazioni via UI, anche se trovo ancora molto utile il codice YAML, per esempio nelle automazioni e negli script, dove puoi passare dall’editor visuale a quello YAML. Non tutto è stato ancora portato in UI, ma la strada è quella.

Un Utility Meter creato da UI: ogni opzione resta modificabile dall'interfaccia

I tre errori che si fanno

float(0) mancante nei template

Guarda lo screenshot di Confort Termico qui sopra: il 14 settembre alle 4:38 il sensore Aqara ha avuto un micro-dropout, e per 17 secondi l’entità è passata a “Non Disponibile” prima di tornare a “Caldo e Umido”.

È float(0) che ha fatto il suo lavoro: quando il sensore non risponde, states() restituisce una stringa non numerica, float(0) la converte in 0, e il controllo T > 0 and RH > 0 intercetta il caso e mostra “Non Disponibile” invece di un valore inventato.

Funziona bene qui perché è un sensore interno: 0°C in camera da letto non capitano mai davvero. Ma per un sensore esterno, dove 0°C è un valore reale e frequente in inverno, lo stesso trucco sarebbe sbagliato: un sensore offline e una vera gelata produrrebbero lo stesso “0”, e il template non li distinguerebbe più.

È per questo che nell’esempio della temperatura percepita più sotto uso float(none) invece di float(0): con none il sensore offline viene trattato per quello che è, cioè assenza di dato, mentre 0°C reali passano regolarmente al calcolo.

availability dimenticato

Lo stesso editor di Home Assistant te lo ricorda: se apri un template sensor da UI, sotto il campo del codice trovi la nota “An availability template may be defined to suppress rendering of the state template”, cioè che si può definire un template di disponibilità per sopprimere la visualizzazione dello stato (la vedi nello screenshot più sotto).

È un campo separato, dentro Additional options, pensato apposta per dire “questo sensore non è raggiungibile” senza dover intrecciare quella logica dentro il template dello stato, come ho fatto io con {{ none }}. Il risultato pratico è lo stesso, l’entità va in stato sconosciuto, ma tenerli separati rende il template più corto e più facile da rileggere tra sei mesi, quando avrai dimenticato perché avevi scritto tre if in fila.

restore dimenticato sui timer

Il parametro restore di un helper Timer di default è false: se non lo attivi esplicitamente, ogni volta che Home Assistant riparte (e con gli aggiornamenti mensili capita spesso) i timer attivi si azzerano e ripartono dalla durata di default, perdendo il conto alla rovescia in corso.

Da UI è un interruttore nelle opzioni avanzate del Timer; da YAML basta aggiungere restore: true:

YAMLEsempio configurazione
timer:
  lavatrice:
    duration: "01:30:00"
    restore: true

Come creare un helper di esempio: la temperatura percepita

Come detto, gli helper sono tanti: ti faccio vedere come creare un helper template per la temperatura percepita del soggiorno, sullo stesso principio dei sensori template di cui ti parlavo sopra.

La creazione dell'helper Template Temperatura percepita, passo dopo passo

Andiamo nella tab Helper, poi clicchiamo su Crea helper. Cerchiamo Template e poi Sensor Template. In Template state incolliamo il codice che trovi sotto.

Immettiamo il nome, l’unità di misura °C, il Device class Temperature e lo State class Measurement.

JINJATemplate dello stato: temperatura percepita
{% set temperature = states('sensor.0x84ba20fffed47cfc_temperature') | float(none) %}
{% set humidity = states('sensor.0x84ba20fffed47cfc_humidity') | float(none) %}
{% if states('sensor.0x84ba20fffed47cfc_temperature') in ['unavailable', 'unknown'] or
     states('sensor.0x84ba20fffed47cfc_humidity') in ['unavailable', 'unknown'] %}
  {{ none }}
{% elif temperature is none or humidity is none %}
  {{ none }}
{% elif temperature < 27 %}
  {# Per temperature sotto i 27°C, l'heat index non è significativo #}
  {{ temperature | round(1) }}
{% else %}
  {# Converti temperatura in Fahrenheit #}
  {% set tempF = (temperature * 9/5) + 32 %}

  {# Formula Heat Index in Fahrenheit (Rothfusz regression - NOAA) #}
  {% set c1 = -42.379 %}
  {% set c2 = 2.04901523 %}
  {% set c3 = 10.14333127 %}
  {% set c4 = -0.22475541 %}
  {% set c5 = -0.00683783 %}
  {% set c6 = -0.05481717 %}
  {% set c7 = 0.00122874 %}
  {% set c8 = 0.00085282 %}
  {% set c9 = -0.00000199 %}

  {% set HI = c1 + (c2 * tempF) + (c3 * humidity) + (c4 * tempF * humidity) + (c5 * tempF * tempF) + (c6 * humidity * humidity) + (c7 * tempF * tempF * humidity) + (c8 * tempF * humidity * humidity) + (c9 * tempF * tempF * humidity * humidity) %}

  {# Riconverti in Celsius #}
  {% set heat_index = (HI - 32) * 5/9 %}
  {{ heat_index | round(1) }}
{% endif %}

Sotto il 40% di umidità il valore è indicativo: la regressione di Rothfusz usata dalla NOAA non è calibrata per l’aria secca.

L'anteprima prima del salvataggio: 26,7°C calcolati, e sopra la nota sul template di disponibilità

Gli helper che uso davvero in casa

Gli helper, in una configurazione come Home Assistant, sono molto importanti, e ne userai tanti: è quindi importante imparare a costruirli, ma soprattutto trovare quello giusto quando serve.

Io ne ho tanti: i più utili e più semplici sono quelli dei gruppi luce, per comandare e creare automazioni su interi gruppi di luci personalizzabili.

Poi ci sono gli Utility Meter, che mi permettono di stimare e tenere traccia dei consumi.

Mi piacciono molto il sensore di temperatura percepita e il Confort Termico, per non avere una lettura della temperatura senza contesto.

Altri helper sono più di utilità, pensati per l’uso nelle automazioni, come gli input boolean che servono a verificare se una condizione è vera o falsa.

Input number, invece, serve per usare in un’automazione o in uno script un valore che modifichiamo noi dalla dashboard, come input_number.kelvin che uso insieme al Tuya Smart Knob per cambiare la temperatura colore di alcune luci.

L'helper kelvin: da 1700 a 6500 K, a passi di 1000

Gli helper sono utili, comodi, e prima o poi rientrano in tutte le automazioni che dobbiamo creare. Ne puoi costruire tantissimi: coprono praticamente ogni scopo e risolvono molti problemi.

Foto di Massimo Di Vona

Massimo Di Vona

Esperto di Smart Home e domotica, fondatore di WeAreSmart.it.

Massimo si occupa di tendenze tecnologiche da oltre un decennio, con un'attenzione particolare alle automazioni domestiche e alla smart home, ambiti che ha approfondito in particolare con Home Assistant. Si interessa anche di intelligenza artificiale e delle sue applicazioni nella tecnologia consumer.

HelperUtility MeterTemplate SensorInput BooleanHome AssistantDomotica