TapHome

Aqara Door and Window Sensor

Packet Parser → MQTT
Trimis de
Ultima actualizare: 03. 2026

Necesită gateway extern

tasmota zigbee2tasmota-gateway — pagina produsului

Aqara Door and Window Sensor

Acest dispozitiv comunică prin Zigbee printr-un gateway Tasmota. Înainte de a continua, asigurați-vă că ați importat șablonul Zigbee2Tasmota Gateway și ați împerecheat dispozitivul.

Aqara Door and Window Sensor (MCCGQ11LM) este un senzor de contact Zigbee compact, alimentat cu baterie. Detectează dacă o ușă sau o fereastră este deschisă sau închisă, cu ajutorul unui contact reed magnetic care sesizează apropierea magnetului. TapHome comunică cu senzorul prin MQTT, printr-un gateway Zigbee2Tasmota — senzorul publică starea contactului în payloadul JSON ZbReceived la fiecare schimbare a stării.

Acest șablon creează două dispozitive dintr-un singur senzor fizic: un Senzor de ușă și un Senzor de fereastră. Ambele citesc același câmp Contact din mesajul Zigbee. Astfel puteți folosi în TapHome un dispozitiv ca contact de ușă și celălalt ca contact de fereastră sau îl puteți folosi doar pe cel care corespunde instalării reale. Dispozitivele nefolosite pot fi ascunse în setările TapHome.

Configurare

Împerecherea senzorului
  1. În TapHome, porniți comutatorul Permit Join din modulul Zigbee2Tasmota Gateway
  2. Pe senzor, țineți apăsat butonul mic până când LED-ul albastru începe să clipească, apoi eliberați-l
  3. Așteptați până când contorul Dispozitive găsite crește — Device ID-ul senzorului (de ex. 0x1234) apare în atributele de service ale gateway-ului
  4. Importați acest șablon de dispozitiv folosind Device ID-ul de la împerechere
Parametrii de import
ParametruDescriereExemplu
MQTT Broker IP AddressAdresa IP a brokerului dvs. MQTT192.168.1.10
MQTT Broker PortPortul brokerului (implicit 1883)1883
Gateway nameTopicul MQTT Tasmota (Configuration → MQTT → Topic)tasmota_XXXXX
Device IDAdresa scurtă Zigbee de la împerechere0x1234

Funcțiile dispozitivului

Detectarea contactului ușii și ferestrei

Șablonul pune la dispoziție două dispozitive de tip contact reed — Senzor de ușă și Senzor de fereastră — ambele mapate ca PacketParserReedContact cu funcția security. Fiecare dispozitiv citește câmpul Contact din ZbReceived.{DeviceID} din mesajul MQTT SENSOR:

  • Contact = true → închis (ușa/fereastra este închisă)
  • Contact = false → deschis (ușa/fereastra a fost deschisă)

Senzorul raportează starea contactului imediat la fiecare schimbare, ceea ce permite declanșarea automatizărilor în timp real (de ex. aprinderea luminilor la deschiderea ușii, trimiterea unei alerte la deschiderea neașteptată a unei ferestre).

Monitorizarea bateriei

Modulul urmărește starea bateriei prin două atribute de service:

  • Nivelul bateriei — nivelul estimat de încărcare; un avertisment de baterie descărcată se generează când nivelul scade sub 30 %
  • Tensiunea bateriei — tensiunea brută a celulei CR1632, în volți

Datele bateriei se citesc din câmpurile BatteryPercentage și BatteryVoltage din payloadul ZbReceived.

Detectarea stării offline

Șablonul monitorizează disponibilitatea dispozitivului cu ajutorul marcajului de timp LastSeenEpoch din interogarea ZbInfo (la fiecare oră):

  • Avertisment — dispozitivul nu a mai trimis niciun mesaj de mai mult de 12 ore
  • Eroare — dispozitivul nu a mai trimis niciun mesaj de mai mult de 24 de ore

Astfel se pot detecta situațiile în care senzorul a pierdut conectivitatea Zigbee sau bateria este complet descărcată.

Atribute de service pentru diagnosticare

Modulul pune la dispoziție metadate Zigbee suplimentare, obținute prin interogarea ZbInfo:

AtributDescriere
IEEEAddrIdentificator hardware unic de 64 de biți
ModelIdID-ul modelului Zigbee (lumi.sensor_magnet.aq2)
ProducătorȘirul cu numele producătorului raportat de dispozitiv
EndpointuriEndpointuri Zigbee active
ConfigConfigurația Zigbee a dispozitivului
Calitatea legăturiiPuterea semnalului, scalată la 0–100 %
Funcții suplimentare

Aqara MCCGQ11LM raportează prin Zigbee și temperatura internă a dispozitivului. Calitatea legăturii pentru fiecare mesaj (LQI) este disponibilă în fiecare payload SENSOR, dar în prezent este pusă la dispoziție doar la nivel de modul, prin interogarea ZbInfo la fiecare oră. Aceste funcții pot fi adăugate într-o actualizare viitoare a șablonului.

Rezolvarea problemelor

Senzorul nu raportează starea contactului
  1. Verificați dacă senzorul este împerecheat cu gateway-ul Zigbee2Tasmota — verificați ZbStatus în consola Tasmota
  2. Verificați dacă Device ID-ul din șablon corespunde adresei scurte de la împerechere (de ex. 0x1234)
  3. Deschideți și închideți ușa/fereastra pentru a declanșa o schimbare a stării — senzorul publică doar la schimbare, nu continuu
  4. Folosiți un client MQTT (de ex. MQTT Explorer) pentru a vă abona la tele/{GWname}/SENSOR și verificați dacă senzorul publică mesaje ZbReceived cu câmpul Contact
Avertisment offline deși senzorul funcționează
  1. Detectarea stării offline se bazează pe interogarea ZbInfo (la fiecare oră). Dacă senzorul nu a trimis niciun mesaj timp de 12 ore, apare un avertisment
  2. Dispozitivele Zigbee alimentate cu baterie intră în repaus între evenimente — acesta este un comportament normal. Avertismentul dispare de obicei după următoarea schimbare a stării contactului sau după următoarea interogare ZbInfo
  3. Dacă avertismentul persistă mai mult de 24 de ore, verificați bateria (CR1632) și, dacă este necesar, împerecheați din nou dispozitivul
Senzorul de ușă și Senzorul de fereastră afișează aceeași stare

Acest lucru este normal — ambele dispozitive citesc câmpul Contact al aceluiași senzor fizic. Ascundeți dispozitivul nefolosit în TapHome (Setări → Dispozitive → selectați dispozitivul → Ascundeți).

Aqara MCCGQ11LM folosește o baterie tip monedă CR1632. Durata de viață a bateriei este de obicei de peste 2 ani la utilizare normală. Schimbările frecvente ale stării (de ex. uși care se deschid foarte des) sau un semnal Zigbee slab (care necesită retransmiterea mesajelor) pot reduce durata de viață a bateriei.

Cum se instalează în TapHome

Cerințe preliminare

  • Gateway Zigbee cu firmware Tasmota (de ex. Sonoff ZBBridge, eWeLink ZB-GW03)
  • Broker MQTT care rulează în rețeaua dvs. locală (brokerul integrat TapHome sau unul extern)
  • TapHome CCU în aceeași rețea

TapHome are un broker MQTT integrat — activați-l în Setări → Hardware → MQTT Broker. Nu este necesar niciun software suplimentar.

Pasul 1 — Configurați gateway-ul Zigbee Tasmota

  1. Încărcați firmware-ul Tasmota pe un coordonator Zigbee acceptat (de ex. Sonoff ZBBridge, eWeLink ZB-GW03)
  2. Conectați gateway-ul la rețeaua dvs. Wi-Fi prin interfața web Tasmota
  3. Accesați Configuration → Configure MQTT și setați:
    • Host: adresa IP a brokerului dvs. MQTT (de ex. 192.168.1.10)
    • Port: 1883
    • Topic: notați numele topicului (de ex. tasmota_XXXXX) — veți avea nevoie de el la importul șablonului

Pentru instrucțiuni detaliate, consultați documentația Tasmota Zigbee.

Pasul 2 — Importați șablonul gateway-ului în TapHome

  1. Descărcați șablonul gateway-ului de pe pagina de compatibilitate Zigbee2Tasmota Gateway
  2. În TapHome, accesați Setări → Hardware → Packet Parser → Import
  3. Importați șablonul cu acești parametri:
    • MQTT Broker IP Address: adresa IP a brokerului dvs. (de ex. 192.168.1.10)
    • MQTT Broker Port: 1883
    • Gateway name: topicul MQTT Tasmota de la pasul 1 (de ex. tasmota_XXXXX)

După import veți vedea două dispozitive: Permit Join (comutator) și Dispozitive găsite (contor).

Pasul 3 — Împerecheați un dispozitiv Zigbee

  1. În TapHome, porniți comutatorul Permit Join — se deschide o fereastră de împerechere de 60 de secunde
  2. Pe dispozitivul Zigbee, porniți procedura de împerechere (de obicei țineți apăsat butonul de resetare 5 secunde, până când LED-ul clipește)
  3. Urmăriți contorul Dispozitive găsite — crește când se conectează un dispozitiv nou
  4. Verificați atributele de service ale gateway-ului pentru a vedea ID-ul noului dispozitiv (de ex. 0x1234), producătorul și modelul
  5. Modul de împerechere se dezactivează automat după expirarea timpului

Pasul 4 — Importați șablonul dispozitivului

  1. Descărcați șablonul specific dispozitivului de pe pagina de compatibilitate corespunzătoare
  2. Importați șablonul cu acești parametri:
    • MQTT Broker IP Address: aceeași ca la gateway
    • MQTT Broker Port: 1883
    • Gateway name: același topic MQTT Tasmota ca mai sus
    • Device ID: adresa scurtă de la împerechere (de ex. 0x1234)

Dispozitive disponibile

Aqara Door and Window Sensor Modul
Atribute de service
IEEEAddrAdresa IEEE Zigbee — identificatorul hardware unic de 64 de biți al senzorului
ModelId
Producător
Endpointuri
Config
Calitatea legăturiiPuterea semnalului Zigbee — de la 0 % (fără semnal) la 100 % (cel mai bun)
Tensiunea baterieiTensiunea bateriei tip monedă CR1632, în volți
Nivelul baterieiNivelul estimat al bateriei — avertisment sub 30 %
Variabile personalizate
GWname (string)Numele topicului MQTT Tasmota al gateway-ului Zigbee (se găsește în Configuration → MQTT → Topic)
ID (string)Adresa scurtă Zigbee a senzorului (atribuită la împerechere)
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

Aqara - Door and Window Sensor

Citire (modul)
MQTTPUBLISH("cmnd/" + GWname+ "/ZbInfo", ID)
Ascultător
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
Atribute de service
IEEEAddr
MQTTPUBLISH("cmnd/" + GWname+ "/ZbInfo", ID)
ModelId
Manufacturer
Endpoints
Config
Link Quality
Battery Voltage
BatteryVoltage + " V"
Battery Percentage
BatteryPercentage + "%"
Senzor de ușă Contact reed Doar citire

Contact reed pentru detectarea deschiderii/închiderii ușii — citește câmpul Contact din mesajul Zigbee al senzorului

boolean

Senzor de ușă

Ascultător
if INDEXOF(RECEIVEDMSG.Topic, "SENSOR") > 0
    var val := PARSEJSON(RECEIVEDMSG.Payload, "ZbReceived." + ID + ".Contact", true);
    if(!ISNULL(val), Rc := val);
end
Senzor de fereastră Contact reed Doar citire

Contact reed pentru detectarea deschiderii/închiderii ferestrei — citește câmpul Contact din mesajul Zigbee al senzorului

boolean

Senzor de fereastră

Ascultător
if INDEXOF(RECEIVEDMSG.Topic, "SENSOR") > 0
    var val := PARSEJSON(RECEIVEDMSG.Payload, "ZbReceived." + ID + ".Contact", true);
    if(!ISNULL(val), Rc := val);
end
Conexiune: Packet Parser → MQTT
Îmbunătățiri posibile (3)
  • Device Temperature — Blakadder lists device temperature measurement as an exposed feature. The Aqara MCCGQ11LM reports internal temperature via Zigbee, but the TapHome template does not parse it.
  • Link Quality (device-level) — LinkQuality is available per SENSOR message but only exposed as a module-level service attribute via ZbInfo polling.
  • Sensor Calibration — Some Zigbee platforms support per-sensor calibration offsets. Not configurable in TapHome template.

Surse

Ați găsit o problemă la acest șablon de dispozitiv?

Spuneți-ne ce nu funcționează, ce lipsește sau cum ar trebui să se comporte șablonul. Feedbackul dvs. ne ajută să păstrăm catalogul corect.

Verificat de TapHome

Doriți să folosiți acest șablon în TapHome Core?

Deschideți acest șablon în Customer Portal pentru a-l aplica într-una dintre locuințele dvs. sau pentru a propune o îmbunătățire și a o trimite înapoi în catalog.

Deschideți în portal