TapHome

IKEA TRADFRI E1810

Packet Parser → MQTT
Inviato da
Ultimo aggiornamento: 03. 2026

Richiede gateway esterno

tasmota zigbee2tasmota-gateway — pagina prodotto

IKEA TRADFRI E1810

Questo dispositivo comunica via Zigbee tramite un gateway Tasmota. Assicurati di aver importato il template Zigbee2Tasmota Gateway e di aver abbinato il dispositivo.

L’IKEA TRADFRI E1810 è un telecomando Zigbee compatto a 5 tasti (noto anche come E1524 in alcune regioni). TapHome rileva la pressione dei tasti tramite il gateway Zigbee2Tasmota via MQTT e presenta ogni tasto come un dispositivo Push Button separato — permettendo di attivare scene, controllare dimmer, gestire tapparelle o eseguire qualsiasi automazione smart rule.

Il telecomando è alimentato a batteria (CR2032) e tra una pressione e l’altra entra in modalità sleep per risparmiare energia. TapHome monitora il livello della batteria e la connettività del dispositivo tramite il gateway.

Configurazione

Abbinamento del telecomando
  1. Assicurati che il Zigbee2Tasmota Gateway sia configurato e che l’interruttore Permit Join sia attivo in TapHome
  2. Apri il vano batteria sul retro del telecomando
  3. Premi il piccolo pulsante di abbinamento (accanto alla batteria CR2032) 4 volte entro 5 secondi
  4. Il LED rosso sul telecomando lampeggia alcune volte — il dispositivo si è unito alla rete Zigbee
  5. Annota il Device ID (es. 0x1234) dagli attributi di servizio del gateway
Parametri di importazione del template

Il template del dispositivo richiede 4 parametri:

ParametroDescrizioneEsempio
MQTT Broker IP AddressIP del broker MQTT192.168.1.10
MQTT Broker PortPorta del broker (predefinita 1883)1883
Gateway nameTopic MQTT Tasmota (uguale al template gateway)tasmota_XXXXX
Device IDIndirizzo breve Zigbee dall’abbinamento0x1234

Dopo l’importazione, in TapHome appaiono 5 dispositivi Push Button — uno per ogni tasto del telecomando.

Funzionalità del dispositivo

Mappatura dei tasti

Il template crea 5 dispositivi Push Button che rilevano la pressione:

Dispositivo TapHomeTasto del telecomandoEvento Zigbee
Dimmer DownInferiore (−)DimmerStepDown
Dimmer UpSuperiore (+)DimmerUp
LeftFreccia sinistra (◀)ArrowClick = 1
RightFreccia destra (▶)ArrowClick = 0
ToggleCentrale (●)Power

Ogni tasto utilizza il rilevamento a impulso — lo stato del tasto torna a 0 e passa brevemente a 1 quando viene premuto. Questo è ideale per attivare smart rule in TapHome.

L’E1810 supporta anche eventi di hold e release in Zigbee2MQTT, ma il template TapHome rileva solo eventi di clic. Per la maggior parte dei casi d’uso come il cambio scene e il controllo on/off, questo è sufficiente.

Utilizzo con smart rule

Trattandosi di un telecomando, non controlla direttamente i dispositivi TapHome. Invece, TapHome rileva ogni pressione del tasto e puoi reagire utilizzando le smart rule:

  • Toggle → accendere/spegnere le luci, cambiare scena
  • Dimmer Up / Down → regolare la luminosità, modificare il setpoint del termostato
  • Left / Right → scorrere tra le scene, controllare le tapparelle (apri/chiudi)

Configura smart rule che si attivano al cambio di stato del Push Button per ogni dispositivo tasto.

Monitoraggio batteria e connettività

Il modulo interroga il gateway ogni ora (comando ZbInfo) e monitora:

  • Battery Percentage — livello stimato della batteria. Viene generato un avviso quando scende sotto il 30%
  • Battery Voltage — tensione grezza della cella CR2032
  • Link Quality — intensità del segnale Zigbee (0–100%)
  • Rilevamento offline — un avviso appare se il dispositivo non è stato visto per più di 12 ore, e un errore dopo 24 ore

Gli attributi di servizio includono anche l’indirizzo IEEE del dispositivo, l’ID del modello Zigbee, la stringa del produttore e gli endpoint attivi.

Risoluzione dei problemi

Pressione dei tasti non rilevata
  1. Verifica che il Device ID nel template corrisponda all’indirizzo breve Zigbee assegnato durante l’abbinamento (controlla gli attributi di servizio del gateway o usa ZbStatus nella console Tasmota)
  2. Premi il pulsante di abbinamento una volta per risvegliare il telecomando — tra le pressioni va in sleep e la prima pressione dopo un lungo periodo di inattività potrebbe non essere registrata
  3. Controlla nella console Tasmota i messaggi ZbReceived quando premi i tasti — questo conferma che il gateway riceve gli eventi Zigbee
Telecomando non si abbina
  1. Ripristina le impostazioni di fabbrica del telecomando: premi il pulsante di abbinamento 4 volte velocemente, poi tienilo premuto per 10+ secondi fino a quando il LED pulsa
  2. Durante l’abbinamento tieni il telecomando a 2–3 metri dal gateway Zigbee
  3. Assicurati che Permit Join sia attivo sul gateway prima di iniziare la sequenza di abbinamento
Batteria si scarica rapidamente
  1. La batteria CR2032 dura tipicamente 1–2 anni con uso normale
  2. Se gli avvisi sulla batteria appaiono frequentemente, controlla la Link Quality — un segnale Zigbee debole causa più ritrasmissioni e un consumo più rapido della batteria
  3. Considera l’aggiunta di un dispositivo Zigbee router (qualsiasi dispositivo Zigbee alimentato dalla rete) vicino al telecomando per migliorare la qualità del segnale

Come installare in TapHome

Prerequisiti

  • Gateway Zigbee con firmware Tasmota (es. Sonoff ZBBridge, eWeLink ZB-GW03)
  • Broker MQTT in esecuzione nella rete locale (broker integrato TapHome o esterno)
  • TapHome CCU sulla stessa rete

TapHome ha un broker MQTT integrato — attivalo in ImpostazioniHardwareMQTT Broker. Non è necessario alcun software aggiuntivo.

Passaggio 1 — Configurare il gateway Tasmota Zigbee

  1. Installa il firmware Tasmota su un coordinatore Zigbee supportato (es. Sonoff ZBBridge, eWeLink ZB-GW03)
  2. Connetti il gateway alla tua rete Wi-Fi tramite l’interfaccia web Tasmota
  3. Vai su ConfigurationConfigure MQTT e imposta:
    • Host: indirizzo IP del tuo broker MQTT (es. 192.168.1.10)
    • Port: 1883
    • Topic: annota il nome del topic (es. tasmota_XXXXX) — ti servirà durante l’importazione del template

Per istruzioni dettagliate, consulta la documentazione Tasmota Zigbee.

Passaggio 2 — Importare il template del gateway in TapHome

  1. Scarica il template del gateway dalla pagina di compatibilità Zigbee2Tasmota Gateway
  2. In TapHome, vai su ImpostazioniHardwarePacket ParserImport
  3. Importa il template con questi parametri:
    • MQTT Broker IP Address: indirizzo IP del tuo broker (es. 192.168.1.10)
    • MQTT Broker Port: 1883
    • Gateway name: il topic MQTT Tasmota dal passaggio 1 (es. tasmota_XXXXX)

Dopo l’importazione vedrai due dispositivi: Permit Join (interruttore) e Devices Found (contatore).

Passaggio 3 — Associare un dispositivo Zigbee

  1. In TapHome, attiva l’interruttore Permit Join — si apre una finestra di associazione di 60 secondi
  2. Sul dispositivo Zigbee, avvia la procedura di associazione (tipicamente tieni premuto il pulsante reset per 5 secondi finché il LED non lampeggia)
  3. Osserva il contatore Devices Found — aumenta quando un nuovo dispositivo si connette
  4. Controlla i Service Attributes del gateway per vedere l’ID del nuovo dispositivo (es. 0x1234), il produttore e il modello
  5. La modalità di associazione si disattiva automaticamente allo scadere del timeout

Passaggio 4 — Importare il template del dispositivo

  1. Scarica il template specifico del dispositivo dalla pagina di compatibilità corrispondente
  2. Importa il template con questi parametri:
    • MQTT Broker IP Address: lo stesso del gateway
    • MQTT Broker Port: 1883
    • Gateway name: lo stesso topic MQTT Tasmota di cui sopra
    • Device ID: l’indirizzo breve ottenuto dall’associazione (es. 0x1234)

Dispositivi disponibili

IKEA TRADFRI E1810 Modulo
Attributi di servizio
Indirizzo IEEEIndirizzo IEEE Zigbee (identificatore univoco a 64 bit)
ID modelloIdentificatore del modello Zigbee riportato dal dispositivo
ProduttoreStringa produttore Zigbee riportata dal dispositivo
EndpointEndpoint Zigbee attivi sul dispositivo
Qualità del segnaleIndicatore di qualità del segnale Zigbee (0–100 %)
Tensione batteriaTensione della batteria CR2032
Livello batteriaLivello stimato della batteria (avviso sotto il 30 %)
Variabili personalizzate
GWname (string)Tasmota MQTT topic name of the Zigbee gateway (found in Configuration → MQTT → Topic)
ID (string)Zigbee short address of the IKEA TRADFRI E1810 remote (assigned during pairing)
After pairing the sensor via Permit Join, find the device short address in the gateway's Devices Found service attribute or via Tasmota console command ZbStatus

IKEA - TRADFRI - E1810

Lettura (modulo)
MQTTPUBLISH("cmnd/" + GWname+ "/ZbInfo", ID)
Listener
if INDEXOF(RECEIVEDMSG.Topic, "SENSOR") > 0
	var ZbReceived := PARSEJSON(TOSTRING(RECEIVEDMSG.Payload), "ZbReceived." + ID, true);
    var bat := PARSEJSON(ZbReceived, "BatteryPercentage", true);
    if(!ISNULL(bat), BatteryPercentage := bat);
    var volt := PARSEJSON(ZbReceived, "BatteryVoltage", true);
    if(!ISNULL(volt), BatteryVoltage := volt);
    
    var deviceInfo := PARSEJSON(TOSTRING(RECEIVEDMSG.Payload), "ZbInfo." + ID, true);
    if !ISNULL(deviceInfo)
    	LastSeenEpoch := PARSEJSON(deviceInfo, "LastSeenEpoch");
        COMPLETESERVICEATTRIBUTE("IEEEAddr", PARSEJSON(deviceInfo, "IEEEAddr"));
        COMPLETESERVICEATTRIBUTE("ModelId", PARSEJSON(deviceInfo, "ModelId"));
        COMPLETESERVICEATTRIBUTE("Manufacturer", PARSEJSON(deviceInfo, "Manufacturer"));
        COMPLETESERVICEATTRIBUTE("Endpoints", PARSEJSON(deviceInfo, "Endpoints"));
        #COMPLETESERVICEATTRIBUTE("Config", PARSEJSON(deviceInfo, "Config"));
        COMPLETESERVICEATTRIBUTE("Link Quality", ROUND(LINEAR(PARSEJSON(deviceInfo, "LinkQuality"), 0,0, 254, 100)) + "%");
    end
end

if BatteryPercentage < 30
	ADDWARNING("Low battery (<30%)");
end

if !ISNAN(LastSeenEpoch)
	DATETIME now := NOW();
	var secondsSeen := now.UNIXTIME - LastSeenEpoch;
	if secondsSeen > 12 * 60 * 60
		if secondsSeen > 24 * 60 * 60
			ADDERROR("Device is offline > 24H");
		else
			ADDWARNING("Device is offline > 12H");        
		end
	end
end
Attributi di servizio
IEEEAddr
MQTTPUBLISH("cmnd/" + GWname+ "/ZbInfo", ID)
ModelId
Manufacturer
Endpoints
Link Quality
Battery Voltage
BatteryVoltage + " V"
Battery Percentage
BatteryPercentage + "%"
Dimmer Down Pulsante Solo lettura

Rileva la pressione del tasto inferiore — si attiva all'evento Zigbee DimmerStepDown

boolean pulse

Dimmer Down

Listener
Bp := 0;
if INDEXOF(RECEIVEDMSG.Topic, "SENSOR") > 0
	var ZbReceived := PARSEJSON(RECEIVEDMSG.Payload, "ZbReceived." + ID, true);
    var button := PARSEJSON(ZbReceived, "DimmerStepDown", true);
    if(!ISNULL(button), Bp := 1);
end
Dimmer Up Pulsante Solo lettura

Rileva la pressione del tasto superiore — si attiva all'evento Zigbee DimmerUp

boolean pulse

Dimmer Up

Listener
Bp := 0;
if INDEXOF(RECEIVEDMSG.Topic, "SENSOR") > 0
	var ZbReceived := PARSEJSON(RECEIVEDMSG.Payload, "ZbReceived." + ID, true);
    var button := PARSEJSON(ZbReceived, "DimmerUp", true);
    if(!ISNULL(button), Bp := 1);
end
Left Pulsante Solo lettura

Rileva la pressione della freccia sinistra — si attiva all'evento Zigbee ArrowClick

boolean pulse

Left

Listener
Bp := 0;
if INDEXOF(RECEIVEDMSG.Topic, "SENSOR") > 0
	var ZbReceived := PARSEJSON(RECEIVEDMSG.Payload, "ZbReceived." + ID, true);
    var button := PARSEJSON(ZbReceived, "ArrowClick", true);
    if(!ISNULL(button) and button = 1, Bp := 1);
end
Right Pulsante Solo lettura

Rileva la pressione della freccia destra — si attiva all'evento Zigbee ArrowClick

boolean pulse

Right

Listener
Bp := 0;
if INDEXOF(RECEIVEDMSG.Topic, "SENSOR") > 0
	var ZbReceived := PARSEJSON(RECEIVEDMSG.Payload, "ZbReceived." + ID, true);
    var button := PARSEJSON(ZbReceived, "ArrowClick", true);
    if(!ISNULL(button) and button = 0, Bp := 1);
end
Toggle Pulsante Solo lettura

Rileva la pressione del tasto centrale — si attiva all'evento Zigbee Power

boolean pulse

Toggle

Listener
Bp := 0;
if INDEXOF(RECEIVEDMSG.Topic, "SENSOR") > 0
	var ZbReceived := PARSEJSON(RECEIVEDMSG.Payload, "ZbReceived." + ID, true);
    var button := PARSEJSON(ZbReceived, "Power", true);
    if(!ISNULL(button), Bp := 1);
end
Connessione: Packet Parser → MQTT
Possibili miglioramenti (3)
  • Dimmer Down Hold — brightness_down_hold event — long press detection not implemented in TapHome template
  • Dimmer Up Hold — brightness_up_hold event — long press detection not implemented
  • Arrow Left/Right Hold — arrow_left_hold / arrow_right_hold — long press events not implemented

Fonti