---
title: "Aqara Vibration Sensor"
description: "Rileva vibrazione, inclinazione e caduta via Zigbee con gateway Tasmota. Angolo in gradi, modalità vibrazione con monitoraggio batteria e stato offline."
url: "https://taphome.com/it/compatibility/zigbee2tasmota-aqara-vibration-sensor/"
language: it
lastmod: 2026-03-29
generator: hugo
ai:
  topics: ["mqtt","sensor","zigbee","battery-powered","vibration-detection"]
  questions: ["Come integrare il sensore di vibrazione Aqara DJT11LM con TapHome?","Cosa rileva il template del sensore di vibrazione Aqara in TapHome?","Come collegare un sensore di vibrazione Aqara a TapHome tramite Tasmota?","Perché il mio sensore di vibrazione Aqara risulta offline in TapHome?","Come associare un Aqara DJT11LM con un gateway Zigbee2Tasmota?","TapHome mostra l'angolo di inclinazione del sensore di vibrazione Aqara?"]
---

# Aqara Vibration Sensor

Comunicazione: Packet Parser → MQTT

- [Pagina prodotto Aqara](https://www.aqara.com/eu/product/vibration-sensor)

> Indirizzo di rete
> 
> Con il broker MQTT integrato in TapHome, inserisci `127.0.0.1` come indirizzo del broker in TapHome. Nel dispositivo inserisci l’indirizzo IP del TapHome Core e assegna al Core una prenotazione IP nel router.
> 
> [Preparazione della rete](https://taphome.com/it/docs/setup/network-preparation/)

## Guida all'integrazione

> [!IMPORTANT]
> Questo dispositivo comunica tramite **Zigbee** attraverso un gateway Tasmota. Assicurati di aver
> importato il template [Zigbee2Tasmota Gateway](https://taphome.com/it/compatibility/zigbee2tasmota-gateway/)
> e di aver associato il dispositivo.

L'Aqara DJT11LM è un sensore di vibrazione Zigbee compatto alimentato a batteria che rileva tre tipi di movimento: vibrazione, inclinazione e caduta. Comunica con TapHome tramite MQTT attraverso un gateway Zigbee2Tasmota — il sensore invia i dati degli eventi tramite il topic `tele/{gateway}/SENSOR` e il template analizza i campi proprietari `AqaraVibrationsOrAngle` e `AqaraVibrationMode` dal payload JSON `ZbReceived`.

Il sensore è alimentato da una batteria a bottone CR2032 (durata approssimativa di 2 anni). Il template monitora il livello e la tensione della batteria tramite attributi di servizio, avvisa quando il livello scende sotto il 30% e rileva gli stati offline del dispositivo (avviso dopo 12 ore, errore dopo 24 ore).

## Configurazione

### Associazione del sensore

1. Sul gateway Zigbee2Tasmota, abilita il **Permit Join** (tramite l'interruttore del template gateway in TapHome o il comando della console Tasmota `ZbPermitJoin 1`)
2. Tieni premuto il pulsante sul sensore di vibrazione Aqara finché il LED blu non inizia a lampeggiare, poi rilascia
3. Il sensore dovrebbe associarsi entro 60 secondi
4. Annota il Device ID assegnato (es. `0xC9A9`) dagli attributi di servizio del gateway o dalla console Tasmota

### Parametri di importazione

Dopo l'associazione, importa il template del dispositivo con questi parametri:

| Parametro | Descrizione | Esempio |
|-----------|-------------|---------|
| MQTT Broker IP Address | IP del broker MQTT | `192.168.1.10` |
| MQTT Broker Port | Porta del broker (predefinita 1883) | `1883` |
| Gateway name | Topic MQTT di Tasmota (Configuration → MQTT → Topic) | `tasmota_XXXXX` |
| Device ID | Indirizzo Zigbee breve dall'associazione | `0xC9A9` |

> [!WARNING]
> I dispositivi Zigbee Aqara/Xiaomi non sono pienamente conformi allo standard Zigbee e possono presentare problemi di connettività con determinati router Zigbee. I router incompatibili noti includono Centralite, General Electric, OSRAM, Sylvania, SmartThings e Securifi. Utilizza router confermati come compatibili con i dispositivi Xiaomi (es. IKEA TRADFRI).

## Funzionalità del dispositivo

### Angolo di inclinazione

Il dispositivo Tilt Angle legge il campo `AqaraVibrationsOrAngle` dal payload JSON `ZbReceived`. Il valore viene riportato in gradi tramite assegnazione diretta — lo script listener analizza l'angolo da ogni messaggio `SENSOR` e aggiorna immediatamente il valore del sensore.

L'angolo di inclinazione riflette l'orientamento attuale del sensore rispetto alla superficie a cui è fissato. Si aggiorna ogni volta che il sensore rileva un evento di inclinazione e trasmette un messaggio `SENSOR`.

### Modalità vibrazione

Il dispositivo Vibration Mode legge il campo `AqaraVibrationMode` dal payload JSON `ZbReceived`. Mappa i valori stringa su stati numerici tramite un'espressione SWITCH:

| Stato | Valore | Descrizione |
|-------|--------|-------------|
| Drop | 0 | Caduta libera o evento di caduta rilevato |
| Tilt | 1 | Inclinazione o variazione angolare rilevata |
| Vibrate | 2 | Vibrazione o tocco rilevato |

La modalità si aggiorna ad ogni evento di movimento. Gli stati 3–9 sono definiti nel template come segnaposto ma non sono attivamente mappati dallo script listener — il valore 4 viene usato come fallback predefinito per modalità non riconosciute.

### Batteria e stato del dispositivo

Il modulo espone diversi attributi di servizio popolati dal meccanismo di polling `ZbInfo` (intervallo di 1 ora tramite ReadScript):

- **Battery Percentage** — livello stimato della batteria CR2032. Un avviso viene attivato quando il livello scende sotto il 30%.
- **Battery Voltage** — tensione attuale della batteria in volt.
- **Link Quality** — intensità del segnale Zigbee scalata da 0–254 a 0–100%.
- **IEEEAddr**, **ModelId**, **Manufacturer**, **Endpoints**, **Config** — identificazione del dispositivo e metadati di configurazione Zigbee.

Il template traccia anche `LastSeenEpoch` dalle risposte ZbInfo. Se il sensore non è stato visto per più di 12 ore, viene attivato un avviso. Dopo 24 ore viene attivato un errore — indicando che il sensore potrebbe essere offline, fuori portata o con la batteria esaurita.

> [!TIP]
> Gli aggiornamenti della batteria CR2032 dai dispositivi Zigbee possono richiedere fino a 24 ore. Un calo improvviso non significa necessariamente che la batteria sia in esaurimento — attendi il prossimo ciclo di reporting.

### Funzionalità aggiuntive

Il DJT11LM supporta anche 3 livelli di sensibilità (basso, medio, alto) configurabili tramite comandi Zigbee specifici del produttore (`ZbSend` con `Manuf: 0x115F`). Alcune piattaforme Zigbee espongono inoltre un valore separato di intensità/conteggio delle vibrazioni accanto all'angolo di inclinazione. Queste funzionalità potranno essere aggiunte in un futuro aggiornamento del template.

## Risoluzione dei problemi

### Il sensore non riporta dati

1. Verifica che il gateway Zigbee2Tasmota sia connesso al broker MQTT e riceva messaggi (controlla `tele/{GWname}/SENSOR` in un client MQTT)
2. Conferma che il Device ID nel template corrisponda all'indirizzo breve assegnato durante l'associazione (es. `0xC9A9`)
3. Controlla l'attributo di servizio Link Quality — valori sotto il 20% indicano un segnale Zigbee debole. Sposta il sensore più vicino al gateway o aggiungi un dispositivo router Zigbee compatibile
4. Premi il pulsante del sensore una volta per forzare una trasmissione e verifica che il gateway riceva il messaggio

### Modalità vibrazione bloccata sul valore fallback

1. Verifica la versione del firmware Zigbee2Tasmota — il campo `AqaraVibrationMode` utilizza attributi Zigbee proprietari Aqara che richiedono firmware aggiornato
2. Verifica che il payload `ZbReceived` contenga il campo `AqaraVibrationMode` (usa un client MQTT per ispezionare i messaggi grezzi `tele/{GWname}/SENSOR`)
3. Se la modalità riporta sempre il valore 4 (fallback), il dispositivo potrebbe inviare un tipo di evento non riconosciuto — controlla la console Tasmota per il payload JSON completo

### Il dispositivo mostra avviso offline

1. Controlla il livello della batteria — una CR2032 esaurita farà smettere di trasmettere il sensore
2. Il sensore di vibrazione Aqara è un dispositivo Zigbee terminale (non un router) e comunica attraverso dispositivi router Zigbee nelle vicinanze. Se un router va offline, il sensore potrebbe diventare irraggiungibile
3. Prova a premere il pulsante del sensore per riattivarlo e forzare una riassociazione con la rete Zigbee
4. Se il problema persiste, riassocia il dispositivo tenendo premuto il pulsante finché il LED blu non lampeggia

### Regolazione manuale della sensibilità

Il template TapHome non include la configurazione della sensibilità. Per modificare la sensibilità, usa direttamente la console Tasmota:

- **Sensibilità bassa:** `ZbSend {"Device":"0xC9A9","Manuf":"0x115F","Write":{"0000/FF0D%20":21}}`
- **Sensibilità media:** `ZbSend {"Device":"0xC9A9","Manuf":"0x115F","Write":{"0000/FF0D%20":11}}`
- **Sensibilità alta (predefinita):** `ZbSend {"Device":"0xC9A9","Manuf":"0x115F","Write":{"0000/FF0D%20":1}}`

Sostituisci `0xC9A9` con il Device ID effettivo del sensore.

## 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

> [!TIP]
> TapHome ha un broker MQTT integrato — attivalo in **Impostazioni** → **Hardware** → **MQTT Broker**. Non è necessario alcun software aggiuntivo.

### Passaggio 1 — Configurare il gateway Tasmota Zigbee

1. Installa il [firmware Tasmota](https://tasmota.github.io/docs/Getting-Started/) 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 **Configuration** → **Configure MQTT** e imposta:
   - **Host:** per il broker integrato, l'indirizzo IP del TapHome Core (con una prenotazione IP nel router → [Preparazione della rete](https://taphome.com/it/docs/setup/network-preparation/)), altrimenti l'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](https://tasmota.github.io/docs/Zigbee/).

### Passaggio 2 — Importare il template del gateway in TapHome

1. Scarica il template del gateway dalla pagina di compatibilità [Zigbee2Tasmota Gateway](https://taphome.com/it/compatibility/zigbee2tasmota-gateway/)
2. In TapHome, vai su **Impostazioni** → **Hardware** → **Packet Parser** → **Import**
3. Importa il template con questi parametri:
   - **MQTT Broker IP Address:** `127.0.0.1` per il broker integrato di TapHome, altrimenti l'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 2

Questi dispositivi compaiono in TapHome dopo l'importazione.

Aqara Vibration Sensor Modulo

Attributi di servizio

|                     |                                                                        |
|---------------------|------------------------------------------------------------------------|
| IEEEAddr            |                                                                        |
| ModelId             |                                                                        |
| Produttore          |                                                                        |
| Endpoints           |                                                                        |
| Config              |                                                                        |
| Qualità del segnale | Intensità del segnale Zigbee — 0% (nessun segnale) a 100% (eccellente) |
| Tensione batteria   |                                                                        |
| Livello batteria    | Livello stimato della batteria CR2032 — avviso sotto il 30%            |

Variabili personalizzate

`GWname` (string) Nome del topic MQTT Tasmota del gateway Zigbee (in Configuration → MQTT → Topic) 

`ID` (string) = 0xC9A9 Indirizzo breve Zigbee del sensore (assegnato durante l'accoppiamento)

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

Lettura (modulo)

```taphome
MQTTPUBLISH("cmnd/" + GWname+ "/ZbInfo", ID)
```

Listener

```taphome
if INDEXOF(RECEIVEDMSG.Topic, "SENSOR") > 0
	var ZbReceived := PARSEJSON(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(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

```taphome
MQTTPUBLISH("cmnd/" + GWname+ "/ZbInfo", ID)
```

ModelId

```

```

Manufacturer

```

```

Endpoints

```

```

Config

```

```

Link Quality

```

```

Battery Voltage

```taphome
BatteryVoltage + " V"
```

Battery Percentage

```taphome
BatteryPercentage + "%"
```

Angolo di inclinazione Variabile Solo lettura

Angolo di inclinazione attuale in gradi — legge AqaraVibrationsOrAngle dal payload del sensore Zigbee

numeric Unità: °

Listener

```taphome
if INDEXOF(RECEIVEDMSG.Topic, "SENSOR") > 0
    var val := PARSEJSON(RECEIVEDMSG.Payload, "ZbReceived." + ID + ".AqaraVibrationsOrAngle", true);
    if(!ISNULL(val), Va := val);
end
```

Modalità vibrazione Interruttore multivalore Solo lettura

Tipo di movimento rilevato — Drop (0), Tilt (1) o Vibrate (2) dal campo AqaraVibrationMode

string → enum SWITCH mapping

Valori / Stati: Drop · Tilt · Vibrate · ???

Listener

```taphome
if INDEXOF(RECEIVEDMSG.Topic, "SENSOR") > 0
    var val := PARSEJSON(RECEIVEDMSG.Payload, "ZbReceived." + ID + ".AqaraVibrationMode", true);
    if (!ISNULL(val), SWITCH(val,
    "drop", Mu := 0,
    "tilt", Mu := 1,
    "vibrate", Mu := 2,
    Mu := 4));
end
```

**Connessione:** Packet Parser → MQTT

Possibili miglioramenti (3)

- Vibration Sensitivity — The DJT11LM supports 3 sensitivity levels (low/medium/high) via manufacturer-specific Zigbee commands (Manuf: 0x115F, cluster 0x0000, attribute 0xFF0D). Not configurable in TapHome template — requires manual ZbSend command via Tasmota console.
- Link Quality (device-level) — LinkQuality is available per SENSOR message but only exposed as a module-level service attribute via ZbInfo polling.
- Vibration Count / Intensity — Some Zigbee platforms expose a vibration intensity or count value separately from the angle. The TapHome template only parses AqaraVibrationsOrAngle (angle) and AqaraVibrationMode (event type).

## Parametri di importazione

Inserisci questi valori quando importi l'XML.

| Richiesto nell'app                                          | Predefinito     |
|-------------------------------------------------------------|-----------------|
| Mqtt Broker Indirizzo IP                                    | `192.168.0.1`   |
| Mqtt Broker port                                            | `1883`          |
| Gateway name (Tasmota-&gt;Configuration-&gt;MQTT-&gt;Topic) | `tasmota_XXXXX` |
| Device ID                                                   | `0xFFFF`        |

## Fonti

- Tasmota Zigbee Documentation
  
  [tasmota.github.io](https://tasmota.github.io/docs/Zigbee/)
- Zigbee Compatible Devices Database
- Blakadder Device Entry — Aqara DJT11LM
  
  [zigbee.blakadder.com](https://zigbee.blakadder.com/Aqara_DJT11LM.html) 2026-03-29
- Aqara Product Page — Vibration Sensor
  
  [www.aqara.com](https://www.aqara.com/eu/product/vibration-sensor) 2026-03-29

## Documentazione correlata

- [MQTT Integration](https://taphome.com/it/compatibility/mqtt-guide/)
- [Packet Parser (HTTP, TCP, UDP, FTP, MQTT)](https://taphome.com/it/docs/integration/packet-parser/)
- [Funzioni Packet parser](https://taphome.com/it/docs/script/packet-parser/)
- [Funzioni di parsing](https://taphome.com/it/docs/script/parsing-functions/)
- [Broker MQTT](https://taphome.com/it/docs/integration/packet-parser/mqtt-broker/)
- [Script listener](https://taphome.com/it/docs/script/listener-scripts/)

