TapHome

Aqara Door and Window Sensor

Packet Parser → MQTT
Přidal
Poslední aktualizace: 03. 2026

Vyžaduje externí bránu

tasmota zigbee2tasmota-gateway — stránka produktu

Aqara Door and Window Sensor

Toto zařízení komunikuje přes Zigbee prostřednictvím Tasmota gateway. Ujistěte se, že máte importovanou šablonu Zigbee2Tasmota Gateway a vaše zařízení je spárované.

Aqara Door and Window Sensor (MCCGQ11LM) je kompaktní, bateriově napájený Zigbee kontaktní senzor. Detekuje, zda jsou dveře nebo okno otevřené nebo zavřené pomocí magnetického jazýčkového kontaktu. TapHome komunikuje se senzorem přes MQTT prostřednictvím Zigbee2Tasmota gateway — senzor publikuje svůj kontaktní stav v JSON zprávě ZbReceived při každé změně stavu.

Tato šablona vytváří dvě zařízení z jednoho fyzického senzoru: Dveřní senzor a Okenní senzor. Obě čtou stejné pole Contact ze Zigbee zprávy. Uživatel tak může jedno zařízení přiřadit jako dveřní kontakt a druhé jako okenní kontakt v TapHome, nebo použít pouze to, které odpovídá skutečné instalaci. Nepoužívaná zařízení lze skrýt v nastavení TapHome.

Konfigurace

Spárování senzoru
  1. V TapHome zapněte přepínač Permit Join v modulu Zigbee2Tasmota Gateway
  2. Na senzoru stiskněte a podržte malé tlačítko, dokud nezačne blikat modrá LED, pak uvolněte
  3. Počkejte, až se zvýší počítadlo Devices Found — Device ID senzoru (např. 0x1234) se zobrazí v servisních atributech gateway
  4. Importujte tuto šablonu zařízení s Device ID z párování
Parametry importu
ParametrPopisPříklad
MQTT Broker IP AddressIP adresa vašeho MQTT brokeru192.168.1.10
MQTT Broker PortPort brokeru (výchozí 1883)1883
Gateway nameTasmota MQTT topic (Configuration → MQTT → Topic)tasmota_XXXXX
Device IDZigbee krátká adresa z párování0x1234

Schopnosti zařízení

Detekce kontaktu dveří a oken

Šablona poskytuje dvě zařízení s jazýčkovým kontaktem — Dveřní senzor a Okenní senzor — obě mapované jako PacketParserReedContact s bezpečnostní funkcí. Každé zařízení parsuje pole Contact z ZbReceived.{DeviceID} v MQTT SENSOR zprávě:

  • Contact = true → zavřeno (dveře/okno jsou zavřené)
  • Contact = false → otevřeno (dveře/okno jsou otevřené)

Senzor hlásí kontaktní stav okamžitě při každé změně, což umožňuje automatizační triggery v reálném čase (např. zapnutí světla při otevření dveří, odeslání upozornění při neočekávaném otevření okna).

Monitoring baterie

Modul sleduje stav baterie prostřednictvím dvou servisních atributů:

  • Battery Percentage — odhadovaná úroveň nabití; upozornění na nízkou baterii se aktivuje, když úroveň klesne pod 30 %
  • Battery Voltage — nezpracované napětí článku CR1632 ve voltech

Údaje o baterii se parsují z polí BatteryPercentage a BatteryVoltage ve zprávě ZbReceived.

Detekce offline stavu

Šablona monitoruje dostupnost zařízení pomocí časového razítka LastSeenEpoch z pravidelného dotazování ZbInfo (každou 1 hodinu):

  • Varování — zařízení nebylo viděno déle než 12 hodin
  • Chyba — zařízení nebylo viděno déle než 24 hodin

Pomáhá to odhalit situace, kdy senzor ztratil Zigbee připojení nebo je baterie zcela vybitá.

Diagnostické servisní atributy

Modul poskytuje další Zigbee metadata získaná přes pravidelné dotazování ZbInfo:

AtributPopis
IEEEAddrUnikátní 64bitový hardwarový identifikátor
ModelIdZigbee model ID (lumi.sensor_magnet.aq2)
ManufacturerŘetězec výrobce hlášený zařízením
EndpointsAktivní Zigbee endpointy
ConfigZigbee konfigurace zařízení
Link QualitySíla signálu v rozsahu 0–100 %
Další schopnosti

Aqara MCCGQ11LM také hlásí interní teplotu zařízení přes Zigbee. Kvalita spojení (LQI) pro jednotlivé zprávy je dostupná v každém SENSOR payloadu, ale momentálně je zpřístupněna pouze na úrovni modulu přes hodinové dotazování ZbInfo. Tyto schopnosti mohou být přidány v budoucí aktualizaci šablony.

Řešení problémů

Senzor nehlásí kontaktní stav
  1. Ověřte, že senzor je spárovaný se Zigbee2Tasmota gateway — zkontrolujte ZbStatus v Tasmota konzoli
  2. Potvrďte, že Device ID v šabloně odpovídá krátké adrese z párování (např. 0x1234)
  3. Otevřete a zavřete dveře/okno pro vyvolání změny stavu — senzor publikuje pouze při změně, ne průběžně
  4. Použijte MQTT klienta (např. MQTT Explorer) pro přihlášení k topicu tele/{GWname}/SENSOR a ověřte, že senzor publikuje zprávy ZbReceived s polem Contact
Upozornění na offline stav navzdory funkčnímu senzoru
  1. Detekce offline stavu se opírá o dotazování ZbInfo (hodinové). Pokud senzor neodeslal žádnou zprávu za 12 hodin, zobrazí se varování
  2. Bateriová Zigbee zařízení spí mezi událostmi — jde o normální chování. Varování se obvykle vymaže po další změně kontaktního stavu nebo ZbInfo dotazu
  3. Pokud varování přetrvává déle než 24 hodin, zkontrolujte baterii (CR1632) a v případě potřeby zařízení znovu spárujte
Dveřní senzor i okenní senzor zobrazují stejný stav

Toto je očekávané — obě zařízení čtou pole Contact ze stejného fyzického senzoru. Skryjte nepoužívané zařízení v TapHome (SettingsDevices → vyberte zařízení → Hide).

Aqara MCCGQ11LM používá knoflíkovou baterii CR1632. Životnost baterie je obvykle 2+ roky při běžném používání. Časté změny stavu (např. frekventované dveře) nebo slabý Zigbee signál (vyžadující opakované přenosy zpráv) mohou životnost baterie zkrátit.

Jak nainstalovat v TapHome

Předpoklady

  • Zigbee brána s firmwarem Tasmota (např. Sonoff ZBBridge, eWeLink ZB-GW03)
  • MQTT broker běžící ve vaší lokální síti (vestavěný TapHome broker nebo externí)
  • TapHome CCU ve stejné síti

TapHome má vestavěný MQTT broker — aktivujte ho v NastaveníHardwareMQTT Broker. Není potřeba žádný další software.

Krok 1 — Nastavte Tasmota Zigbee bránu

  1. Nahrajte firmware Tasmota na podporovaný Zigbee koordinátor (např. Sonoff ZBBridge, eWeLink ZB-GW03)
  2. Připojte bránu k vaší Wi-Fi síti přes webové rozhraní Tasmota
  3. Přejděte na ConfigurationConfigure MQTT a nastavte:
    • Host: IP adresa vašeho MQTT brokeru (např. 192.168.1.10)
    • Port: 1883
    • Topic: zapište si název topicu (např. tasmota_XXXXX) — budete ho potřebovat při importu šablony

Podrobné pokyny naleznete v dokumentaci Tasmota Zigbee.

Krok 2 — Importujte šablonu brány v TapHome

  1. Stáhněte si šablonu brány ze stránky kompatibility Zigbee2Tasmota Gateway
  2. V TapHome přejděte na NastaveníHardwarePacket ParserImport
  3. Importujte šablonu s těmito parametry:
    • MQTT Broker IP Address: IP adresa vašeho brokeru (např. 192.168.1.10)
    • MQTT Broker Port: 1883
    • Gateway name: Tasmota MQTT topic z kroku 1 (např. tasmota_XXXXX)

Po importu uvidíte dvě zařízení: Permit Join (přepínač) a Devices Found (počítadlo).

Krok 3 — Spárujte Zigbee zařízení

  1. V TapHome zapněte přepínač Permit Join — otevře se 60sekundové okno pro párování
  2. Na Zigbee zařízení spusťte proces párování (typicky podržte tlačítko reset 5 sekund, dokud LED nezačne blikat)
  3. Sledujte počítadlo Devices Found — zvýší se, když se připojí nové zařízení
  4. Zkontrolujte Service Attributes brány, kde uvidíte ID nového zařízení (např. 0x1234), výrobce a model
  5. Režim párování se automaticky deaktivuje po uplynutí časového limitu

Krok 4 — Importujte šablonu zařízení

  1. Stáhněte si šablonu konkrétního zařízení z příslušné stránky kompatibility
  2. Importujte šablonu s těmito parametry:
    • MQTT Broker IP Address: stejná jako pro bránu
    • MQTT Broker Port: 1883
    • Gateway name: stejný Tasmota MQTT topic jako výše
    • Device ID: krátká adresa z párování (např. 0x1234)

Dostupná zařízení

Aqara Door and Window Sensor Modul
Servisní atributy
IEEEAddrZigbee IEEE adresa — unikátní 64bitový hardwarový identifikátor senzoru
ModelId
Výrobce
Endpoints
Config
Kvalita spojeníSíla Zigbee signálu — 0 % (žádný signál) až 100 % (nejlepší)
Napětí baterieNapětí knoflíkové baterie CR1632 ve voltech
Úroveň baterieOdhadovaná úroveň baterie — upozornění při poklesu pod 30 %
Vlastní proměnné
GWname (string)Název Tasmota MQTT topicu Zigbee gateway (najdete v Configuration → MQTT → Topic)
ID (string)Zigbee krátká adresa senzoru (přiřazená během párování)
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

Čtení (modul)
MQTTPUBLISH("cmnd/" + GWname+ "/ZbInfo", ID)
Listener
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
Servisní atributy
IEEEAddr
MQTTPUBLISH("cmnd/" + GWname+ "/ZbInfo", ID)
ModelId
Manufacturer
Endpoints
Config
Link Quality
Battery Voltage
BatteryVoltage + " V"
Battery Percentage
BatteryPercentage + "%"
Dveřní senzor Jazýčkový kontakt Pouze ke čtení

Jazýčkový kontakt pro detekci otevření/zavření dveří — čte pole Contact ze Zigbee zprávy senzoru

boolean

Dveřní senzor

Listener
if INDEXOF(RECEIVEDMSG.Topic, "SENSOR") > 0
    var val := PARSEJSON(RECEIVEDMSG.Payload, "ZbReceived." + ID + ".Contact", true);
    if(!ISNULL(val), Rc := val);
end
Okenní senzor Jazýčkový kontakt Pouze ke čtení

Jazýčkový kontakt pro detekci otevření/zavření okna — čte pole Contact ze Zigbee zprávy senzoru

boolean

Okenní senzor

Listener
if INDEXOF(RECEIVEDMSG.Topic, "SENSOR") > 0
    var val := PARSEJSON(RECEIVEDMSG.Payload, "ZbReceived." + ID + ".Contact", true);
    if(!ISNULL(val), Rc := val);
end
Připojení: Packet Parser → MQTT
Možná vylepšení (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.

Zdroje