{"version":3,"file":"e4489082-f95aef8537e725543a9d.js","mappings":"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","sources":["webpack://instar-wiki/./src/pages/Erweitert/XiaoMi_Home_Zigbee2MQTT/index.mdx"],"sourcesContent":["import * as React from 'react'\n /* @jsx mdx */\nimport { mdx } from '@mdx-js/react';\n/* @jsxRuntime classic */\n/* @jsx mdx */\nimport NavButtons from 'components/Advanced_User/NavButtons';\nimport BreadCrumbs from 'components/Layout/BreadCrumbs';\nimport SEOHelmet from 'components/Layout/SEOHelmet';\nexport const _frontmatter = {\n \"title\": \"Nutzen Sie XiaoMi Home Hardware ohne die Cloud\",\n \"path\": \"/Erweitert/XiaoMi_Home_Zigbee2MQTT/\",\n \"dateChanged\": \"2018-09-20\",\n \"author\": \"Mike Polinowski\",\n \"excerpt\": \"ZigBee zu MQTT-Brücke - beseitigen Sie Ihre proprietären Zigbee-Bridges. zigbee2mqtt integriert kabelose Sensoren in Ihr lokales Netzwerk und ermöglicht Ihnen die Steuerung Ihrer Zigbee-Geräte über MQTT. Auf diese Weise können Sie Ihre Zigbee-Geräte in die von Ihnen verwendete Smart Home-Infrastruktur integrieren. Kompatibel mit den Kameramodellen IN-6001 HD, IN-6012 HD, IN-6014 HD, IN-5905 HD, IN-5907 HD, IN-7011 HD, IN-8003 Full HD, IN-8015 Full HD, IN-9008 Full HD, IN-9020 Full HD\",\n \"image\": \"./AU_SearchThumb_Zigbee.png\",\n \"social\": \"/images/Search/AU_SearchThumb_Zigbee.webp\",\n \"toc\": \"/images/Search/TOC_Icons/Wiki_Tiles_Advanced_ZigBee_white.webp\",\n \"chapter\": \"Advanced User\",\n \"category\": \"smarthome\",\n \"type\": \"Node-RED\"\n};\nconst layoutProps = {\n _frontmatter\n};\nconst MDXLayout = \"wrapper\";\nexport default function MDXContent({\n components,\n ...props\n}) {\n return <MDXLayout {...layoutProps} {...props} components={components} mdxType=\"MDXLayout\">\n\n <SEOHelmet title='XiaoMi Home Hardware ohne die Cloud nutzen – INSTAR Wiki' dateChanged='2018-09-20' author='Mike Polinowski' tag='INSTAR IP Camera' description='Die Zigbee2MQTT Brücke erlaubt es Ihnen unterstützte ZigBee Geräte ohne die normalerweise erzwungene Hub oder Vendor Cloud Bindung zu vernetzen. Und Sie können Zigbee-Geräte zur Steuerung von INSTAR IP Kameras in Node-RED verwenden.' image='/images/Search/TOC_Icons/Wiki_Tiles_Advanced_ZigBee_white.png' twitter='/images/Search/TOC_Icons/Wiki_Tiles_Advanced_ZigBee_white.webp' location={props.location.pathname} mdxType=\"SEOHelmet\" />\n <BreadCrumbs locationBC={props.location} locationDE={props.location.pathname} locationEN='/en/Advanced_User/XiaoMi_Home_Zigbee2MQTT/' locationFR='/fr/Advanced_User/XiaoMi_Home_Zigbee2MQTT/' crumbLabel=\"Zigbee\" mdxType=\"BreadCrumbs\" />\n <NavButtons mdxType=\"NavButtons\" />\n <h1 {...{\n \"id\": \"nutzen-sie-xiaomi-home-hardware-ohne-die-cloud\",\n \"style\": {\n \"position\": \"relative\"\n }\n }}><a parentName=\"h1\" {...{\n \"href\": \"#nutzen-sie-xiaomi-home-hardware-ohne-die-cloud\",\n \"aria-label\": \"nutzen sie xiaomi home hardware ohne die cloud permalink\",\n \"className\": \"header-link-icon before\"\n }}><svg parentName=\"a\" {...{\n \"aria-hidden\": \"true\",\n \"focusable\": \"false\",\n \"height\": \"16\",\n \"version\": \"1.1\",\n \"viewBox\": \"0 0 16 16\",\n \"width\": \"16\"\n }}><path parentName=\"svg\" {...{\n \"fillRule\": \"evenodd\",\n \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n }}></path></svg></a>{`Nutzen Sie XiaoMi Home Hardware ohne die Cloud`}</h1>\n {/* TOC */}\n <ul>\n <li parentName=\"ul\"><a parentName=\"li\" {...{\n \"href\": \"#zigbee-kommunikation-ohne-propriet%C3%A4ren-hub\"\n }}>{`ZigBee-Kommunikation ohne proprietären Hub`}</a>\n <ul parentName=\"li\">\n <li parentName=\"ul\"><a parentName=\"li\" {...{\n \"href\": \"#die-br%C3%BCcke-einrichten\"\n }}>{`Die Brücke einrichten`}</a></li>\n <li parentName=\"ul\"><a parentName=\"li\" {...{\n \"href\": \"#starten-der-br%C3%BCcke\"\n }}>{`Starten der Brücke`}</a>\n <ul parentName=\"li\">\n <li parentName=\"ul\"><a parentName=\"li\" {...{\n \"href\": \"#ermitteln-sie-die-position-des-cc2531-usb-sniffer-und-%C3%BCberpr%C3%BCfen-sie-die-benutzerberechtigungen\"\n }}>{`Ermitteln Sie die Position des CC2531 USB-Sniffer und überprüfen Sie die Benutzerberechtigungen`}</a></li>\n <li parentName=\"ul\"><a parentName=\"li\" {...{\n \"href\": \"#installation\"\n }}>{`Installation`}</a></li>\n <li parentName=\"ul\"><a parentName=\"li\" {...{\n \"href\": \"#konfiguration\"\n }}>{`Konfiguration`}</a></li>\n <li parentName=\"ul\"><a parentName=\"li\" {...{\n \"href\": \"#zigbee2mqtt-ausf%C3%BChre\"\n }}>{`ZigBee2MQTT Ausführe`}</a></li>\n <li parentName=\"ul\"><a parentName=\"li\" {...{\n \"href\": \"#zigbee2mqtt-als-dienst-ausf%C3%BChren\"\n }}>{`ZigBee2MQTT als Dienst Ausführen`}</a></li>\n <li parentName=\"ul\"><a parentName=\"li\" {...{\n \"href\": \"#aktualisieren-sie-zigbee2mqtt-auf-die-neueste-version\"\n }}>{`Aktualisieren Sie zigbee2mqtt auf die neueste Version`}</a></li>\n </ul>\n </li>\n <li parentName=\"ul\"><a parentName=\"li\" {...{\n \"href\": \"#zigbee-ger%C3%A4te-verbinden\"\n }}>{`Zigbee Geräte verbinden`}</a></li>\n </ul>\n </li>\n <li parentName=\"ul\"><a parentName=\"li\" {...{\n \"href\": \"#verwenden-von-zigbee-ger%C3%A4ten-zur-steuerung-von-instar-ip-kameras-in-node-red\"\n }}>{`Verwenden von Zigbee-Geräten zur Steuerung von INSTAR IP-Kameras in Node-RED`}</a>\n <ul parentName=\"li\">\n <li parentName=\"ul\"><a parentName=\"li\" {...{\n \"href\": \"#f%C3%BCgen-sie-den-mqtt-eingang-zu-einem-vorhandenen-flow-hinzu\"\n }}>{`Fügen Sie den MQTT-Eingang zu einem vorhandenen Flow hinzu`}</a></li>\n </ul>\n </li>\n </ul>\n {/* /TOC */}\n <h2 {...{\n \"id\": \"zigbee-kommunikation-ohne-proprietären-hub\",\n \"style\": {\n \"position\": \"relative\"\n }\n }}><a parentName=\"h2\" {...{\n \"href\": \"#zigbee-kommunikation-ohne-propriet%C3%A4ren-hub\",\n \"aria-label\": \"zigbee kommunikation ohne proprietären hub permalink\",\n \"className\": \"header-link-icon before\"\n }}><svg parentName=\"a\" {...{\n \"aria-hidden\": \"true\",\n \"focusable\": \"false\",\n \"height\": \"16\",\n \"version\": \"1.1\",\n \"viewBox\": \"0 0 16 16\",\n \"width\": \"16\"\n }}><path parentName=\"svg\" {...{\n \"fillRule\": \"evenodd\",\n \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n }}></path></svg></a>{`ZigBee-Kommunikation ohne proprietären Hub`}</h2>\n <p>{`ZigBee ist eine Spezifikation für eine Reihe von Kommunikationsprotokollen, die zum Erstellen von privaten Netzwerken mit kleinen digitalen Funkgeräten mit geringem Stromverbrauch verwendet wird. Zigbee ist ein idealer drahtloses Ad-hoc-Netzwerk Standard für Smarthome Sensoren.`}</p>\n <p>{`Die `}<a parentName=\"p\" {...{\n \"href\": \"https://github.com/Koenkk/zigbee2mqtt\"\n }}>{`Zigbee2MQTT`}</a>{` Brücke erlaubt es Ihnen `}<a parentName=\"p\" {...{\n \"href\": \"https://github.com/Koenkk/zigbee2mqtt/wiki/Supported-devices\"\n }}>{`unterstützte ZigBee Geräte`}</a>{` `}<strong parentName=\"p\">{`ohne die normalerweise erzwungene Hub oder Vendor Cloud Bindung`}</strong>{` zu vernetzen. Zu den Geräten, die Sie steuern können, gehören Smart (ZigBee) Lampen von Belkin, IKEA, OSRAM und Philips sowie Smart Sensoren von SmartThings und Xiaomi.`}</p>\n <p>{`In diesem Tutorial werden wir die ZigBee2MQTT-Brücke zusammen mit Smart Home Xiaomi-Sensoren - auf der Hardwareseite - und `}<a parentName=\"p\" {...{\n \"href\": \"/de/Software/Linux/Node-RED/\"\n }}>{`Node-RED`}</a>{` und `}<a parentName=\"p\" {...{\n \"href\": \"/de/Software/Linux/Home_Assistant/\"\n }}>{`Home Assistant`}</a>{` - auf der Software Seite - installieren und darüber unsere INSTAR IP Kamera kontrollieren.`}</p>\n <p>{`Die ZigBee-Brücke besteht aus einem `}<strong parentName=\"p\">{`ZigBee-Sniffer-Modul`}</strong>{` und einer in `}<strong parentName=\"p\">{`Node.js`}</strong>{` geschriebenen Steuerungssoftware. Sie ermöglicht es die ZigBee Meldungen der Sensoren über das `}<strong parentName=\"p\">{`MQTT`}</strong>{` Protokoll in unser lokales Netzwerk einzuspeisen. Auf diese Weise können Sie Ihre Zigbee-Geräte in die von Ihnen verwendete Smart Home-Infrastruktur integrieren.`}</p>\n <p><a parentName=\"p\" {...{\n \"href\": \"https://github.com/Koenkk/zigbee2mqtt/wiki/Getting-started#1-hardware-requirements\"\n }}>{`Benötigte Hardware`}</a>{`:`}</p>\n <ul>\n <li parentName=\"ul\">{`CC Debugger`}</li>\n <li parentName=\"ul\">{`CC2531 USB Sniffer`}</li>\n <li parentName=\"ul\">{`Downloader Kabel CC2531`}</li>\n <li parentName=\"ul\">{`Linux PC oder Raspberry Pi`}</li>\n </ul>\n <p>{`Der Debugger, der Sniffer und das Verbindungskabel können direkt über Online-Shops wie `}<a parentName=\"p\" {...{\n \"href\": \"https://community.home-assistant.io/t/zigbee2mqtt-getting-rid-of-your-proprietary-zigbee-bridges-xiaomi-hue-tradfri/52108/193\"\n }}>{`Aliexpress bestellt werden`}</a>{`.`}</p>\n <p>{`Der Debugger und das Kabel werden nur einmal zum Flashen der Firmware auf den Stick verwendet. Es gibt aber auch einen alternativen Weg `}<a parentName=\"p\" {...{\n \"href\": \"https://github.com/Koenkk/zigbee2mqtt/wiki/Alternative-firmware-flashing-methods\"\n }}>{`stattdessen ein Arduino-Board zu verwenden`}</a>{`.`}</p>\n <h3 {...{\n \"id\": \"die-brücke-einrichten\",\n \"style\": {\n \"position\": \"relative\"\n }\n }}><a parentName=\"h3\" {...{\n \"href\": \"#die-br%C3%BCcke-einrichten\",\n \"aria-label\": \"die brücke einrichten permalink\",\n \"className\": \"header-link-icon before\"\n }}><svg parentName=\"a\" {...{\n \"aria-hidden\": \"true\",\n \"focusable\": \"false\",\n \"height\": \"16\",\n \"version\": \"1.1\",\n \"viewBox\": \"0 0 16 16\",\n \"width\": \"16\"\n }}><path parentName=\"svg\" {...{\n \"fillRule\": \"evenodd\",\n \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n }}></path></svg></a>{`Die Brücke einrichten`}</h3>\n <p>{`Die folgende Beschreibung zeigt Ihnen, wie Sie die Firmware unter Windows 10 auf Ihren CC2531-Stick flashen - `}<a parentName=\"p\" {...{\n \"href\": \"https://github.com/Koenkk/zigbee2mqtt/wiki/Getting-started#for-linuxmacos\"\n }}>{`für Linux oder macOS folgen Sie bitee diesem Link`}</a>{`.`}</p>\n <ol>\n <li parentName=\"ol\">{`Installieren Sie den `}<a parentName=\"li\" {...{\n \"href\": \"http://www.ti.com/tool/FLASH-PROGRAMMER\"\n }}>{`SmartRF Flash Programmer`}</a>{` (`}<strong parentName=\"li\">{`Nicht V2!`}</strong>{`). Diese Software ist kostenlos, erfordert jedoch ein Texas Instruments-Konto, um heruntergeladen zu werden.`}</li>\n </ol>\n <p><span parentName=\"p\" {...{\n \"className\": \"gatsby-resp-image-wrapper\",\n \"style\": {\n \"position\": \"relative\",\n \"display\": \"block\",\n \"marginLeft\": \"auto\",\n \"marginRight\": \"auto\",\n \"maxWidth\": \"730px\"\n }\n }}>{`\n `}<a parentName=\"span\" {...{\n \"className\": \"gatsby-resp-image-link\",\n \"href\": \"/de/static/983bf5269150f333772ce890283f6c21/e9beb/flash_00.png\",\n \"style\": {\n \"display\": \"block\"\n },\n \"target\": \"_blank\",\n \"rel\": \"noopener\"\n }}>{`\n `}<span parentName=\"a\" {...{\n \"className\": \"gatsby-resp-image-background-image\",\n \"style\": {\n \"paddingBottom\": \"77.39130434782608%\",\n \"position\": \"relative\",\n \"bottom\": \"0\",\n \"left\": \"0\",\n \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAPCAYAAADkmO9VAAAACXBIWXMAAA7CAAAOwgEVKEqAAAACuUlEQVQ4y62SzW8bVRTF5+9ikzqbUqVdkCAF1AICxI4FO7pCrFggFoh2A2xg3zVCAiG6aJvEsaM0cm3HdlCT2p4Pz8yb9954ZjwfP/RebKnsQOJKR/fe93Hm3PPGuffBR7z7/ofc/+JLjronHHa6HHZPeHLU5mm7w0Gny7PjLk/bxzw5Orb1s+OOPXPSe0Hn+RlngyE//vQz7338Cc7y4IDpcMCr0YiLXo/x2RnRdEqTplRKUWtNbfK6rqSkShLqVUH2y6/ITz9D/fUSEQuKROKMd3fpb7d4sbVFf2vL5kGrxXB7+xqtFqM3bzF5Z5/Rzg4Xd+8x3ttjsr/P6OZNJrdvM357j9HuLud37uBkwyHZYEDW71/n19Hvo3s9i3SzvzlvcH5ONpn8Y80JlcKNY+ZhxEIpPCFwowhPxLYvgXqNfxOO586ZTad4foDrusymM8LFgny5JNWK/xpOkiQIKYmGQ+YXF1xNpwS+j+/7SJ2ifJ/FYMDc8/BcF3c+J0oS5GyG//tvVoTn+XZdCIGTLZdkRUF6dUlwdYkXBJZsbg5IiVosiMZjvPVHDEEkBCoICE9PbR8EAZ7nXhOmaUoiBDJN+T/CUVIShqElbZqGuq4pi4JVnlOuVtd1llHkBWVZslqtqKrKwuxverNn4BRFgTQ/a1XZL5gcLzNUVSHznKSu0IDIMmSSoJRCa0UsYoRBItBaszDWRBGOVsp6YwwPw8gqCttt9OEh5ctLlt98S/rV11SjCc16LKPECDF5IyLPc9LlEmcjtyorSlNnGeGjR3g/fE/6+DFi5y2iN25Q/PGnJayLwtpSN421aGOTCUNqXzmOYwszuvHEjLVR06xVmNCnp7z6/D5qPCarKlZFYdc3d8zojmE1jXkcpTWF1ngPH+I9+I5mfaExCowS8wBS0qz9Nupez8aGvwFH4kxUXmZsGAAAAABJRU5ErkJggg==')\",\n \"backgroundSize\": \"cover\",\n \"display\": \"block\"\n }\n }}></span>{`\n `}<picture parentName=\"a\">{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/983bf5269150f333772ce890283f6c21/e4706/flash_00.avif 230w\", \"/de/static/983bf5269150f333772ce890283f6c21/d1af7/flash_00.avif 460w\", \"/de/static/983bf5269150f333772ce890283f6c21/b6582/flash_00.avif 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/avif\"\n }}></source><source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/983bf5269150f333772ce890283f6c21/a0b58/flash_00.webp 230w\", \"/de/static/983bf5269150f333772ce890283f6c21/bc10c/flash_00.webp 460w\", \"/de/static/983bf5269150f333772ce890283f6c21/87ca7/flash_00.webp 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/webp\"\n }}></source>{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/983bf5269150f333772ce890283f6c21/81c8e/flash_00.png 230w\", \"/de/static/983bf5269150f333772ce890283f6c21/08a84/flash_00.png 460w\", \"/de/static/983bf5269150f333772ce890283f6c21/e9beb/flash_00.png 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/png\"\n }}></source>{`\n `}<img parentName=\"picture\" {...{\n \"className\": \"gatsby-resp-image-image\",\n \"src\": \"/de/static/983bf5269150f333772ce890283f6c21/e9beb/flash_00.png\",\n \"alt\": \"Zigbee2MQTT\",\n \"title\": \"Zigbee2MQTT\",\n \"loading\": \"lazy\",\n \"decoding\": \"async\",\n \"style\": {\n \"width\": \"100%\",\n \"height\": \"100%\",\n \"margin\": \"0\",\n \"verticalAlign\": \"middle\",\n \"position\": \"absolute\",\n \"top\": \"0\",\n \"left\": \"0\"\n }\n }}></img>{`\n `}</picture>{`\n `}</a>{`\n `}</span></p>\n <ol {...{\n \"start\": 2\n }}>\n <li parentName=\"ol\">{`Installieren Sie danach den `}<a parentName=\"li\" {...{\n \"href\": \"http://www.ti.com/general/docs/lit/getliterature.tsp?baseLiteratureNumber=swrc212&fileType=zip\"\n }}>{`CC Debugger Treiber`}</a>{` auf Ihrem PC. Stellen Sie vor dem Fortfahren sicher, dass der CC Debugger-Treiber ordnungsgemäß installiert wurde. Falls der CC-Debugger nicht richtig erkannt wird, können Sie versuchen den `}<a parentName=\"li\" {...{\n \"href\": \"https://www.youtube.com/watch?v=jyKrxxXOvQY\"\n }}>{`Treiber manuell installieren`}</a>{`.`}</li>\n </ol>\n <p><span parentName=\"p\" {...{\n \"className\": \"gatsby-resp-image-wrapper\",\n \"style\": {\n \"position\": \"relative\",\n \"display\": \"block\",\n \"marginLeft\": \"auto\",\n \"marginRight\": \"auto\",\n \"maxWidth\": \"730px\"\n }\n }}>{`\n `}<a parentName=\"span\" {...{\n \"className\": \"gatsby-resp-image-link\",\n \"href\": \"/de/static/b39cf2db7e61283fa70e61d86bda766f/e9beb/driver_00.png\",\n \"style\": {\n \"display\": \"block\"\n },\n \"target\": \"_blank\",\n \"rel\": \"noopener\"\n }}>{`\n `}<span parentName=\"a\" {...{\n \"className\": \"gatsby-resp-image-background-image\",\n \"style\": {\n \"paddingBottom\": \"62.60869565217391%\",\n \"position\": \"relative\",\n \"bottom\": \"0\",\n \"left\": \"0\",\n \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAIAAAAmMtkJAAAACXBIWXMAAA7DAAAOwwHHb6hkAAACCElEQVQoz1WQ2W7bMBBF/f+fU6DPXQIEzUsCO04tS6JIrdzJsSSS1urCTt0mB/MyAxzci9k457xzwzAsyzLPo5KsrhpOqeTC99f7NI7XmaZ5nkPwAPpyY13XTVlWXPAko1nRVNI0TcmFlFpXlDIhoOv8MLg7fd8LQUMI5xsbhDEiJIqzRkgmuLXKKh0o66r60raXtrvA6TLP97RFSnote2Mjooh8+5F9/4kfHlldn6fzVJTsZatT5PKi3u3F22HE5F1elgVAr+v7dtmUBxR9+Vo9PE7HZAz+PA1jioqXrSpKxwXP8KTMnKB/srXqv3womuMhKvOiuz6uOw9+6fvm+dnGiYli9OtJH466rCyAENJ7d0v+a2+yPEvjJCd5XdWc0UbbLaJPUVEY3/ZdSRl0vQXQSp1O7T35LiNSpCky2rjeScGVVjHKX38fpba+78Harm1PACGEW+35U+1todIU06YBAOd6rQTOsjSJjdaUMoIxJiSJU4QyY0wIAeBDcoxxmqQE47btpmm0RmGcpykCAGuBc2as9d4755ZlXdfPD4tRfDxEjLJ5XkJw1iqCSRwn1yK9sxa89/M8T9M0Xhk+yUVdJXFCsqwqq/Z0AjCM8aqsTm3bX2ULAEppIaW6YYz8kEyK3e71bb8vi6quy5wgraVSQkomBJWScd4kyZGQDKH4bb/jvL7c+QN1rNMibid1dQAAAABJRU5ErkJggg==')\",\n \"backgroundSize\": \"cover\",\n \"display\": \"block\"\n }\n }}></span>{`\n `}<picture parentName=\"a\">{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/b39cf2db7e61283fa70e61d86bda766f/e4706/driver_00.avif 230w\", \"/de/static/b39cf2db7e61283fa70e61d86bda766f/d1af7/driver_00.avif 460w\", \"/de/static/b39cf2db7e61283fa70e61d86bda766f/b6582/driver_00.avif 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/avif\"\n }}></source><source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/b39cf2db7e61283fa70e61d86bda766f/a0b58/driver_00.webp 230w\", \"/de/static/b39cf2db7e61283fa70e61d86bda766f/bc10c/driver_00.webp 460w\", \"/de/static/b39cf2db7e61283fa70e61d86bda766f/87ca7/driver_00.webp 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/webp\"\n }}></source>{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/b39cf2db7e61283fa70e61d86bda766f/81c8e/driver_00.png 230w\", \"/de/static/b39cf2db7e61283fa70e61d86bda766f/08a84/driver_00.png 460w\", \"/de/static/b39cf2db7e61283fa70e61d86bda766f/e9beb/driver_00.png 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/png\"\n }}></source>{`\n `}<img parentName=\"picture\" {...{\n \"className\": \"gatsby-resp-image-image\",\n \"src\": \"/de/static/b39cf2db7e61283fa70e61d86bda766f/e9beb/driver_00.png\",\n \"alt\": \"Zigbee2MQTT\",\n \"title\": \"Zigbee2MQTT\",\n \"loading\": \"lazy\",\n \"decoding\": \"async\",\n \"style\": {\n \"width\": \"100%\",\n \"height\": \"100%\",\n \"margin\": \"0\",\n \"verticalAlign\": \"middle\",\n \"position\": \"absolute\",\n \"top\": \"0\",\n \"left\": \"0\"\n }\n }}></img>{`\n `}</picture>{`\n `}</a>{`\n `}</span></p>\n <ol {...{\n \"start\": 3\n }}>\n <li parentName=\"ol\">{`Verbinden Sie `}<code parentName=\"li\" {...{\n \"className\": \"language-text\"\n }}>{`CC debugger`}</code>{` --> `}<code parentName=\"li\" {...{\n \"className\": \"language-text\"\n }}>{`Downloader cable CC2531`}</code>{` --> `}<code parentName=\"li\" {...{\n \"className\": \"language-text\"\n }}>{`CC2531 USB sniffer`}</code>{`.`}</li>\n </ol>\n <p><span parentName=\"p\" {...{\n \"className\": \"gatsby-resp-image-wrapper\",\n \"style\": {\n \"position\": \"relative\",\n \"display\": \"block\",\n \"marginLeft\": \"auto\",\n \"marginRight\": \"auto\",\n \"maxWidth\": \"730px\"\n }\n }}>{`\n `}<a parentName=\"span\" {...{\n \"className\": \"gatsby-resp-image-link\",\n \"href\": \"/de/static/b7639d155aa03a2ddf678e20119f7a5d/e9beb/ccdebugger_00.png\",\n \"style\": {\n \"display\": \"block\"\n },\n \"target\": \"_blank\",\n \"rel\": \"noopener\"\n }}>{`\n `}<span parentName=\"a\" {...{\n \"className\": \"gatsby-resp-image-background-image\",\n \"style\": {\n \"paddingBottom\": \"55.65217391304348%\",\n \"position\": \"relative\",\n \"bottom\": \"0\",\n \"left\": \"0\",\n \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAALCAIAAADwazoUAAAACXBIWXMAAA7EAAAOxAGVKw4bAAABtElEQVQoz2NgwAYYGRkZGBg4ONizMyOVFeXgIkQBJiaQUlMzvdnTGyUkxBgYGJiZmbHrZwQDNGvZWFmrCgvmzZxaVVJsZGSIbDmaejRrmRgYGESFhYPjgg1dTVXlFTNSkz3cXQUFBSBSKICbi5ufj5+NjQ3ZZk0rnbDSWEEZEZCbmZiszMzjo6NTExNcnRz5+HnZuThASllZWVWVlfR1dfR0dEwMDY0NDM1MTJQUFQXUxMQclVg42ZiZmFlYWOA2cbFzyMhLGXmZyyjJMAgK8OnoaMjKSomJCUtJiisrKZqZGEvLSrMyMbMzMLMwIPzJzMwMcbaYqLClt6WMuhwDLx+3hrqyjLSksLCAkBC/qZGhtaW5haFhSUH+hjUrOhqqs+OjXCzMBbi44T7i5eGRU5YXlRZj4OLmMNTXlZaSEBEW0FBX0dJQU1SQ8/F2T0pOqG+siYoJCwrxyc6Iq8hLi/LzVpKRsTU1D/XyE5MQ4+LlYmBjYxUU4BMU5BMSEtDSVJeTkRIXE+Xh5UULVCERQUsrEwtTI1V5RWlRMeRQAHuJiYmFhZmLi4ODgx3uSbA3mXDFKgDsBzvvAN/pjwAAAABJRU5ErkJggg==')\",\n \"backgroundSize\": \"cover\",\n \"display\": \"block\"\n }\n }}></span>{`\n `}<picture parentName=\"a\">{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/b7639d155aa03a2ddf678e20119f7a5d/e4706/ccdebugger_00.avif 230w\", \"/de/static/b7639d155aa03a2ddf678e20119f7a5d/d1af7/ccdebugger_00.avif 460w\", \"/de/static/b7639d155aa03a2ddf678e20119f7a5d/b6582/ccdebugger_00.avif 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/avif\"\n }}></source><source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/b7639d155aa03a2ddf678e20119f7a5d/a0b58/ccdebugger_00.webp 230w\", \"/de/static/b7639d155aa03a2ddf678e20119f7a5d/bc10c/ccdebugger_00.webp 460w\", \"/de/static/b7639d155aa03a2ddf678e20119f7a5d/87ca7/ccdebugger_00.webp 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/webp\"\n }}></source>{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/b7639d155aa03a2ddf678e20119f7a5d/81c8e/ccdebugger_00.png 230w\", \"/de/static/b7639d155aa03a2ddf678e20119f7a5d/08a84/ccdebugger_00.png 460w\", \"/de/static/b7639d155aa03a2ddf678e20119f7a5d/e9beb/ccdebugger_00.png 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/png\"\n }}></source>{`\n `}<img parentName=\"picture\" {...{\n \"className\": \"gatsby-resp-image-image\",\n \"src\": \"/de/static/b7639d155aa03a2ddf678e20119f7a5d/e9beb/ccdebugger_00.png\",\n \"alt\": \"Zigbee2MQTT\",\n \"title\": \"Zigbee2MQTT\",\n \"loading\": \"lazy\",\n \"decoding\": \"async\",\n \"style\": {\n \"width\": \"100%\",\n \"height\": \"100%\",\n \"margin\": \"0\",\n \"verticalAlign\": \"middle\",\n \"position\": \"absolute\",\n \"top\": \"0\",\n \"left\": \"0\"\n }\n }}></img>{`\n `}</picture>{`\n `}</a>{`\n `}</span></p>\n <ol {...{\n \"start\": 4\n }}>\n <li parentName=\"ol\">{`Stecken Sie `}<strong parentName=\"li\">{`Beide`}</strong>{` - den `}<code parentName=\"li\" {...{\n \"className\": \"language-text\"\n }}>{`CC2531 USB Sniffer`}</code>{` und den `}<code parentName=\"li\" {...{\n \"className\": \"language-text\"\n }}>{`CC Debugger`}</code>{` - an einen USB Steckplatz an Ihrem PC ein.`}</li>\n <li parentName=\"ol\">{`Wenn die LED am CC-Debugger ROT ist, drücken Sie die Reset-Taste am CC-Debugger. Das Licht auf dem CC-Debugger sollte jetzt GRÜN leuchten. Falls nicht, verwenden Sie das `}<a parentName=\"li\" {...{\n \"href\": \"http://www.ti.com/lit/ug/swru197h/swru197h.pdf\"\n }}>{`CC Debugger Benutzerhandbuch`}</a>{` um eine Lösung für das Problem zu finden. `}</li>\n <li parentName=\"ol\">{`Downloaden Sie danach die Firmware `}<a parentName=\"li\" {...{\n \"href\": \"https://raw.githubusercontent.com/Koenkk/Z-Stack-firmware/master/coordinator/CC2531/bin/CC2531ZNP-Prod.hex\"\n }}>{`CC2531ZNP-Prod.hex`}</a></li>\n <li parentName=\"ol\">{`Starten Sie den SmartRF Flash Programmer, richten Sie ihn wie unten gezeigt ein und drücken Sie `}<code parentName=\"li\" {...{\n \"className\": \"language-text\"\n }}>{`Perform actions`}</code>{`. `}</li>\n </ol>\n <p><span parentName=\"p\" {...{\n \"className\": \"gatsby-resp-image-wrapper\",\n \"style\": {\n \"position\": \"relative\",\n \"display\": \"block\",\n \"marginLeft\": \"auto\",\n \"marginRight\": \"auto\",\n \"maxWidth\": \"702px\"\n }\n }}>{`\n `}<a parentName=\"span\" {...{\n \"className\": \"gatsby-resp-image-link\",\n \"href\": \"/de/static/1c6c877c2d14178a31f0c35525c8612a/d6331/flash_01.png\",\n \"style\": {\n \"display\": \"block\"\n },\n \"target\": \"_blank\",\n \"rel\": \"noopener\"\n }}>{`\n `}<span parentName=\"a\" {...{\n \"className\": \"gatsby-resp-image-background-image\",\n \"style\": {\n \"paddingBottom\": \"86.95652173913044%\",\n \"position\": \"relative\",\n \"bottom\": \"0\",\n \"left\": \"0\",\n \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAARCAYAAADdRIy+AAAACXBIWXMAAA7CAAAOwgEVKEqAAAAD6klEQVQ4y1WUW2wUVRiABxEwmoYiBXolGkNrWom88EZqqkGr0ICGAFVUJAheYooxqFFiTQxgeIHoA/FBDIYoJEUTMaBImrb0AgVtbTvd3dmdnd2d2Zmdy95LW3rhMzNLsTx8Ocm5fOf8//nPEfZ/cpyDX5+l5chZPjj8M1+cOI8SUdFUlXhcJ5lMkk6nsW2bfD7P5MQEE/MYHx+/x9jYGMLjDS08u/8kjzUdZWnDlxQ3tDIw5Mc3KiKKBQYGB73WlVqWRSKR8DZJplKk5uH2CSXr91G75Qjr3j3Fk++cZs32bxgaDRKNKERjMeKaStKxmZ6a5PbkBPlcllwmzfitsfu4dStPJptBWLR2D0LTMRZ91IbwYRul7/9IKKKRy2WJij5utncz1HuDwe7r+PoHCA/5CA6OMtTj9vUz3Pc3A939+K4PoIfCCEs3fUbJV+2UHL3CI60XqWq9QDBmkM9n8P0r0fbnCL9eGeXcH8Nc6gxwvj3IT5cD/PKXyA8Xhmi7LHLm4jBnfh8hKIYQVj1zgGVbj1N64BzFn/5G5b7TiKMhtHAYx0zAnRmYnYY70zAzBTO3C8xOFfq8sRlg1kuNUFRVz0NrdlL12ncUv36Kyv1n8HVdQ7t6lWhPH9HuXuSOLuTOLiJXe4j29BLpdukh1NFFqKOTaO81ou0dqDduIhRXbmBpzQ7W7v2elW+epqL5JJKkYKox9JiKbRiE/H4CokhC01CkINFQCDWsYOk6adsmZVmkTBND0xDqdx2mZuPHVDW0UFT/ORUbDyH6g8hhmWFRxOf3E1YUpGDQIyTLJEwT23FIZzJk83myuRz5sTFMy0LY8MYx1m87wrLaHTxQ2Uj52peRgjLRaMSrPb/fjxpTMQzDq8Ok45DJZDzcukunUl7xu7j1KTzx3EFqGlupeeEQCyq2sqKuGb8U9oSe4O5kF7eoTTc0w0DX9Xs4dzfxhEXVb1FU/TZF1Xt5uHo3y2t3IYVcmYWuG95id4GLEg4jSxIRRUFVVWKxGJqmebJsNlsQLi7fxqKKnSwu287C8u2UPr2bgBTGskzi8TjxuydwQ7VSKazpKZxs1jvx3JO7X1jZxMKKV3iwfAvCo42UrdvjndCVJBImllkg6UpGRJLvteD09uHkcji27c2be8cFYdVLCGVNLCzfjLD8eVY8tYuAJOOYuvfjuKF5ra4T/WeAyIlvifX2oRmGNzaHG34kEkFYsnoTC0pdYRNCSSMr65oZHJURYzaGaWNbFrIsEwoGCcgy/oRBwC0jSUJRlHv5dVPg5ltYsnrzPOGLrKp7lf4Rhc6AjZZwSKf+v2U3j0nLKrTzbn8un67wP6tMPYPwUPg+AAAAAElFTkSuQmCC')\",\n \"backgroundSize\": \"cover\",\n \"display\": \"block\"\n }\n }}></span>{`\n `}<picture parentName=\"a\">{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/1c6c877c2d14178a31f0c35525c8612a/e4706/flash_01.avif 230w\", \"/de/static/1c6c877c2d14178a31f0c35525c8612a/d1af7/flash_01.avif 460w\", \"/de/static/1c6c877c2d14178a31f0c35525c8612a/19dff/flash_01.avif 702w\"],\n \"sizes\": \"(max-width: 702px) 100vw, 702px\",\n \"type\": \"image/avif\"\n }}></source><source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/1c6c877c2d14178a31f0c35525c8612a/a0b58/flash_01.webp 230w\", \"/de/static/1c6c877c2d14178a31f0c35525c8612a/bc10c/flash_01.webp 460w\", \"/de/static/1c6c877c2d14178a31f0c35525c8612a/de2ca/flash_01.webp 702w\"],\n \"sizes\": \"(max-width: 702px) 100vw, 702px\",\n \"type\": \"image/webp\"\n }}></source>{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/1c6c877c2d14178a31f0c35525c8612a/81c8e/flash_01.png 230w\", \"/de/static/1c6c877c2d14178a31f0c35525c8612a/08a84/flash_01.png 460w\", \"/de/static/1c6c877c2d14178a31f0c35525c8612a/d6331/flash_01.png 702w\"],\n \"sizes\": \"(max-width: 702px) 100vw, 702px\",\n \"type\": \"image/png\"\n }}></source>{`\n `}<img parentName=\"picture\" {...{\n \"className\": \"gatsby-resp-image-image\",\n \"src\": \"/de/static/1c6c877c2d14178a31f0c35525c8612a/d6331/flash_01.png\",\n \"alt\": \"Zigbee2MQTT\",\n \"title\": \"Zigbee2MQTT\",\n \"loading\": \"lazy\",\n \"decoding\": \"async\",\n \"style\": {\n \"width\": \"100%\",\n \"height\": \"100%\",\n \"margin\": \"0\",\n \"verticalAlign\": \"middle\",\n \"position\": \"absolute\",\n \"top\": \"0\",\n \"left\": \"0\"\n }\n }}></img>{`\n `}</picture>{`\n `}</a>{`\n `}</span></p>\n <p><span parentName=\"p\" {...{\n \"className\": \"gatsby-resp-image-wrapper\",\n \"style\": {\n \"position\": \"relative\",\n \"display\": \"block\",\n \"marginLeft\": \"auto\",\n \"marginRight\": \"auto\",\n \"maxWidth\": \"702px\"\n }\n }}>{`\n `}<a parentName=\"span\" {...{\n \"className\": \"gatsby-resp-image-link\",\n \"href\": \"/de/static/3014b8d933b6e22629143b2cf9ef7868/d6331/flash_02.png\",\n \"style\": {\n \"display\": \"block\"\n },\n \"target\": \"_blank\",\n \"rel\": \"noopener\"\n }}>{`\n `}<span parentName=\"a\" {...{\n \"className\": \"gatsby-resp-image-background-image\",\n \"style\": {\n \"paddingBottom\": \"87.3913043478261%\",\n \"position\": \"relative\",\n \"bottom\": \"0\",\n \"left\": \"0\",\n \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAARCAYAAADdRIy+AAAACXBIWXMAAA7CAAAOwgEVKEqAAAAD7klEQVQ4y12TXWwUVRTHpxUJiEgtIO1SCzGRSggRjC+mEUIMSg0FA6aiFYli08RoIBgh0Vj7UtFoouHBGCBAjaEFqYkJkkgRJYgI/dy2u7OzO7s7Mzv7NfvdLa1Y4GfubWnEh1/O3HNy/+fcc84oTfsP8cHnnew52Ml7bR20fN2FFbGJRCLEYjEymQzZXI5UKkWxWGRiYuIexsfHZxgbG0OpXrePDc3fsHzLZ8xf/wnlz7Uy4vXj8Yzg8XjxeDz09w+gqirpdBrHcUgkkuRyObLZ7D0In1K2pplVL33K2neOU9N8gppXDqFqIYxwGNM0sS2TTMph8ubf3JwYp1jIU8hlGb8xxvhYkRtjo1O2OEo+n0NRVu5G2foF97/fhbL3DEvf/Q7LTlAcLRAIGVzpddM7pHJt0INb1VFDNh7dosft5brbS/+INhXzBbHsKMq8uo9Z3HaRRQcv8EDLOZa3nkU3bJxEjAE9zsmeJKf7knx/LcbZkQydA1nae9Kc6k1w+I8onb1Jjv8Z5dg1B68RRymv3cfD276iYu9pFhz4iWXN7aj+IKGgjpNMArfh9iRwa8re/meaSbgjuDUV4w6ZdBplzpJ1zK15jerXD7Ng5zGWNbUTsqLEolFMyyJsGAT0oCQUNqZ9pvzW/AECuk7EtjFMS26GMm9JLWUrX2V10zEWv9FOdeO3+PUwuh4gGo3Jyeq6jqZpJBIJQqGQHJa4LGL/nXY8Hkep3XGQmo37eXTDHh589kOqN7Wg+vyoXi/Dw8NyXcLhsBT0+/0Eg0EpLPZSiBUKBYnY0WQyifJM45c8vb2NspUNlFZtourJ7YTDpqxCiPl8PlmNyC5ERFX5fF5ytzqx/AKRSFm2/gBP1LWy4vmPUFxbqVjdSNi00TQfth2VIncvCDFxFhdFAvEnCStiIoEUnPPYWzxU08T8FW8z9/FdLF61E9OKEgzq9PX1MTg4KKsVzxEtGBoaks8WPtEKy7Jmni4FSxa9zOylO5hd2UCpqwHXmjcxTBs9EOCvq1fp7enBNAxZhfCJNvg1TX6HgkE5JFH56IzgI/XMqtrGLNdWlPJNVD21GyMSI55KEbIiGLZNRPQvlycp+pTOEHMcYqkUMSclz5lCgWyxSMJxUEoqXqSksp5S12aU8o1UrNlF2KuR0bykNVWS8gm8mP29+K9ewXYPkNZ80idwVA9JzzBWICAEN1NaWc99rnqUhS9QsXYXavdlhk6fY/DMLwx1nefy8R+4dPQUFw+f5NLRTn470sHvRzq4cqJLxt0/nsfd+TPG9X4UIVZaIQS3oCysw7W6kX6/za/+DN2+FBem6VZTM+f/W4mWJhCJ8y9ykDW8VjXB8QAAAABJRU5ErkJggg==')\",\n \"backgroundSize\": \"cover\",\n \"display\": \"block\"\n }\n }}></span>{`\n `}<picture parentName=\"a\">{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/3014b8d933b6e22629143b2cf9ef7868/e4706/flash_02.avif 230w\", \"/de/static/3014b8d933b6e22629143b2cf9ef7868/d1af7/flash_02.avif 460w\", \"/de/static/3014b8d933b6e22629143b2cf9ef7868/19dff/flash_02.avif 702w\"],\n \"sizes\": \"(max-width: 702px) 100vw, 702px\",\n \"type\": \"image/avif\"\n }}></source><source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/3014b8d933b6e22629143b2cf9ef7868/a0b58/flash_02.webp 230w\", \"/de/static/3014b8d933b6e22629143b2cf9ef7868/bc10c/flash_02.webp 460w\", \"/de/static/3014b8d933b6e22629143b2cf9ef7868/de2ca/flash_02.webp 702w\"],\n \"sizes\": \"(max-width: 702px) 100vw, 702px\",\n \"type\": \"image/webp\"\n }}></source>{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/3014b8d933b6e22629143b2cf9ef7868/81c8e/flash_02.png 230w\", \"/de/static/3014b8d933b6e22629143b2cf9ef7868/08a84/flash_02.png 460w\", \"/de/static/3014b8d933b6e22629143b2cf9ef7868/d6331/flash_02.png 702w\"],\n \"sizes\": \"(max-width: 702px) 100vw, 702px\",\n \"type\": \"image/png\"\n }}></source>{`\n `}<img parentName=\"picture\" {...{\n \"className\": \"gatsby-resp-image-image\",\n \"src\": \"/de/static/3014b8d933b6e22629143b2cf9ef7868/d6331/flash_02.png\",\n \"alt\": \"Zigbee2MQTT\",\n \"title\": \"Zigbee2MQTT\",\n \"loading\": \"lazy\",\n \"decoding\": \"async\",\n \"style\": {\n \"width\": \"100%\",\n \"height\": \"100%\",\n \"margin\": \"0\",\n \"verticalAlign\": \"middle\",\n \"position\": \"absolute\",\n \"top\": \"0\",\n \"left\": \"0\"\n }\n }}></img>{`\n `}</picture>{`\n `}</a>{`\n `}</span></p>\n <h3 {...{\n \"id\": \"starten-der-brücke\",\n \"style\": {\n \"position\": \"relative\"\n }\n }}><a parentName=\"h3\" {...{\n \"href\": \"#starten-der-br%C3%BCcke\",\n \"aria-label\": \"starten der brücke permalink\",\n \"className\": \"header-link-icon before\"\n }}><svg parentName=\"a\" {...{\n \"aria-hidden\": \"true\",\n \"focusable\": \"false\",\n \"height\": \"16\",\n \"version\": \"1.1\",\n \"viewBox\": \"0 0 16 16\",\n \"width\": \"16\"\n }}><path parentName=\"svg\" {...{\n \"fillRule\": \"evenodd\",\n \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n }}></path></svg></a>{`Starten der Brücke`}</h3>\n <p>{`Nachdem Sie Ihren CC2531 USB-Sniffer mit der Firmware `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`CC2531ZNP-Prod.hex`}</code>{` geflasht haben, können Sie den CC Debugger und das Verbindungskabel entfernen und den Sniffer an unseren Linux-Computer anschließen. In dem folgenden Beispiel haben wir den `}<a parentName=\"p\" {...{\n \"href\": \"/de/Software/Linux/MotionEye/\"\n }}>{`Core i3 Mini PC mit Debian Stretch`}</a>{` verwendet, den wir bereits für die MotionEye Installation genutzt haben.`}</p>\n <p>{`Für `}<a parentName=\"p\" {...{\n \"href\": \"https://github.com/Koenkk/zigbee2mqtt/wiki/Running-the-bridge\"\n }}>{`alternative Installationswege`}</a>{` folgen Sie bitte diesem Link.`}</p>\n <p><strong parentName=\"p\">{`Beachten Sie bitte`}</strong>{`: `}<a parentName=\"p\" {...{\n \"href\": \"https://github.com/Koenkk/zigbee2mqtt/issues/67#issuecomment-392574987\"\n }}>{`Das Betreiben der Brücke unter Raspbian Jessie scheint nicht zu funktionieren`}</a>{`.`}</p>\n <h4 {...{\n \"id\": \"ermitteln-sie-die-position-des-cc2531-usb-sniffer-und-überprüfen-sie-die-benutzerberechtigungen\",\n \"style\": {\n \"position\": \"relative\"\n }\n }}><a parentName=\"h4\" {...{\n \"href\": \"#ermitteln-sie-die-position-des-cc2531-usb-sniffer-und-%C3%BCberpr%C3%BCfen-sie-die-benutzerberechtigungen\",\n \"aria-label\": \"ermitteln sie die position des cc2531 usb sniffer und überprüfen sie die benutzerberechtigungen permalink\",\n \"className\": \"header-link-icon before\"\n }}><svg parentName=\"a\" {...{\n \"aria-hidden\": \"true\",\n \"focusable\": \"false\",\n \"height\": \"16\",\n \"version\": \"1.1\",\n \"viewBox\": \"0 0 16 16\",\n \"width\": \"16\"\n }}><path parentName=\"svg\" {...{\n \"fillRule\": \"evenodd\",\n \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n }}></path></svg></a>{`Ermitteln Sie die Position des CC2531 USB-Sniffer und überprüfen Sie die Benutzerberechtigungen`}</h4>\n <p>{`Zuerst müssen wir den Pfad des CC2531 USB-Sniffer ermitteln. Verbinden Sie den CC2531 USB mit Ihrem Raspberry Pi. Meistens ist der Pfad zum CC2531 `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`/dev/ttyACM0`}</code>{`. Dies kann überprüft werden durch:`}</p>\n <div {...{\n \"className\": \"gatsby-highlight\",\n \"data-language\": \"bash\"\n }}><pre parentName=\"div\" {...{\n \"className\": \"language-bash\"\n }}><code parentName=\"pre\" {...{\n \"className\": \"language-bash\"\n }}><span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`ls`}</span>{` -l /dev/ttyACM0\ncrw-rw---- `}<span parentName=\"code\" {...{\n \"className\": \"token number\"\n }}>{`1`}</span>{` root dialout `}<span parentName=\"code\" {...{\n \"className\": \"token number\"\n }}>{`166`}</span>{`, `}<span parentName=\"code\" {...{\n \"className\": \"token number\"\n }}>{`0`}</span>{` May `}<span parentName=\"code\" {...{\n \"className\": \"token number\"\n }}>{`16`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token number\"\n }}>{`19`}</span>{`:15 /dev/ttyACM0 `}<span parentName=\"code\" {...{\n \"className\": \"token comment\"\n }}>{`# <-- CC2531 on /dev/ttyACM0`}</span></code></pre></div>\n <p><span parentName=\"p\" {...{\n \"className\": \"gatsby-resp-image-wrapper\",\n \"style\": {\n \"position\": \"relative\",\n \"display\": \"block\",\n \"marginLeft\": \"auto\",\n \"marginRight\": \"auto\",\n \"maxWidth\": \"730px\"\n }\n }}>{`\n `}<a parentName=\"span\" {...{\n \"className\": \"gatsby-resp-image-link\",\n \"href\": \"/de/static/f5bb2a1d26b8df55d5d0ef390eaa43e6/e9beb/zigbee2mqtt_01.png\",\n \"style\": {\n \"display\": \"block\"\n },\n \"target\": \"_blank\",\n \"rel\": \"noopener\"\n }}>{`\n `}<span parentName=\"a\" {...{\n \"className\": \"gatsby-resp-image-background-image\",\n \"style\": {\n \"paddingBottom\": \"4.3478260869565215%\",\n \"position\": \"relative\",\n \"bottom\": \"0\",\n \"left\": \"0\",\n \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAABCAYAAADeko4lAAAACXBIWXMAAA7CAAAOwgEVKEqAAAAAVUlEQVQI1xXDTQpAQACAUYch0hiMFEpmgWL8NdxhFlZWjv/Jq+eZdWA/JqydOa8N12tc13APmseMvMuIbkvyIkKpkKoWyDwiFj5C/gNkFpKkAYn0+QCoNyJEMmKcsgAAAABJRU5ErkJggg==')\",\n \"backgroundSize\": \"cover\",\n \"display\": \"block\"\n }\n }}></span>{`\n `}<picture parentName=\"a\">{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/f5bb2a1d26b8df55d5d0ef390eaa43e6/e4706/zigbee2mqtt_01.avif 230w\", \"/de/static/f5bb2a1d26b8df55d5d0ef390eaa43e6/d1af7/zigbee2mqtt_01.avif 460w\", \"/de/static/f5bb2a1d26b8df55d5d0ef390eaa43e6/b6582/zigbee2mqtt_01.avif 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/avif\"\n }}></source><source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/f5bb2a1d26b8df55d5d0ef390eaa43e6/a0b58/zigbee2mqtt_01.webp 230w\", \"/de/static/f5bb2a1d26b8df55d5d0ef390eaa43e6/bc10c/zigbee2mqtt_01.webp 460w\", \"/de/static/f5bb2a1d26b8df55d5d0ef390eaa43e6/87ca7/zigbee2mqtt_01.webp 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/webp\"\n }}></source>{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/f5bb2a1d26b8df55d5d0ef390eaa43e6/81c8e/zigbee2mqtt_01.png 230w\", \"/de/static/f5bb2a1d26b8df55d5d0ef390eaa43e6/08a84/zigbee2mqtt_01.png 460w\", \"/de/static/f5bb2a1d26b8df55d5d0ef390eaa43e6/e9beb/zigbee2mqtt_01.png 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/png\"\n }}></source>{`\n `}<img parentName=\"picture\" {...{\n \"className\": \"gatsby-resp-image-image\",\n \"src\": \"/de/static/f5bb2a1d26b8df55d5d0ef390eaa43e6/e9beb/zigbee2mqtt_01.png\",\n \"alt\": \"Zigbee2MQTT\",\n \"title\": \"Zigbee2MQTT\",\n \"loading\": \"lazy\",\n \"decoding\": \"async\",\n \"style\": {\n \"width\": \"100%\",\n \"height\": \"100%\",\n \"margin\": \"0\",\n \"verticalAlign\": \"middle\",\n \"position\": \"absolute\",\n \"top\": \"0\",\n \"left\": \"0\"\n }\n }}></img>{`\n `}</picture>{`\n `}</a>{`\n `}</span></p>\n <p>{`Alternativ kann das Gerät auch durch eine ID abgebildet werden. Dies kann praktisch sein, wenn mehrere serielle Geräte an Ihr Pi angeschlossen sind. Im folgenden Beispiel lautet der Pfad des Geräts: `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`/dev/serial/by-id/usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B0018E32D5B-if00`}</code></p>\n <div {...{\n \"className\": \"gatsby-highlight\",\n \"data-language\": \"bash\"\n }}><pre parentName=\"div\" {...{\n \"className\": \"language-bash\"\n }}><code parentName=\"pre\" {...{\n \"className\": \"language-bash\"\n }}><span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`ls`}</span>{` -l /dev/serial/by-id\ntotal `}<span parentName=\"code\" {...{\n \"className\": \"token number\"\n }}>{`0`}</span>{`\nlrwxrwxrwx `}<span parentName=\"code\" {...{\n \"className\": \"token number\"\n }}>{`1`}</span>{` root root `}<span parentName=\"code\" {...{\n \"className\": \"token number\"\n }}>{`13`}</span>{` Nov `}<span parentName=\"code\" {...{\n \"className\": \"token number\"\n }}>{`24`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token number\"\n }}>{`18`}</span>{`:59 usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B0018E32D5B-if00 -`}<span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`>`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`..`}</span>{`/`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`..`}</span>{`/ttyACM0`}</code></pre></div>\n <p><span parentName=\"p\" {...{\n \"className\": \"gatsby-resp-image-wrapper\",\n \"style\": {\n \"position\": \"relative\",\n \"display\": \"block\",\n \"marginLeft\": \"auto\",\n \"marginRight\": \"auto\",\n \"maxWidth\": \"730px\"\n }\n }}>{`\n `}<a parentName=\"span\" {...{\n \"className\": \"gatsby-resp-image-link\",\n \"href\": \"/de/static/da57b41dfb0e48f940130d62bc5b0b42/e9beb/zigbee2mqtt_02.png\",\n \"style\": {\n \"display\": \"block\"\n },\n \"target\": \"_blank\",\n \"rel\": \"noopener\"\n }}>{`\n `}<span parentName=\"a\" {...{\n \"className\": \"gatsby-resp-image-background-image\",\n \"style\": {\n \"paddingBottom\": \"7.391304347826087%\",\n \"position\": \"relative\",\n \"bottom\": \"0\",\n \"left\": \"0\",\n \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAABCAIAAABR8BlyAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAP0lEQVQI1x3CAQqAMAgAwP4TKGkqOjaYK8r/fyjouO2pmavNjJXxdqmhNfRucnVhA1Y0Z4tTnJB2UhA//qgGH63gDV1LDc2jAAAAAElFTkSuQmCC')\",\n \"backgroundSize\": \"cover\",\n \"display\": \"block\"\n }\n }}></span>{`\n `}<picture parentName=\"a\">{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/da57b41dfb0e48f940130d62bc5b0b42/e4706/zigbee2mqtt_02.avif 230w\", \"/de/static/da57b41dfb0e48f940130d62bc5b0b42/d1af7/zigbee2mqtt_02.avif 460w\", \"/de/static/da57b41dfb0e48f940130d62bc5b0b42/b6582/zigbee2mqtt_02.avif 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/avif\"\n }}></source><source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/da57b41dfb0e48f940130d62bc5b0b42/a0b58/zigbee2mqtt_02.webp 230w\", \"/de/static/da57b41dfb0e48f940130d62bc5b0b42/bc10c/zigbee2mqtt_02.webp 460w\", \"/de/static/da57b41dfb0e48f940130d62bc5b0b42/87ca7/zigbee2mqtt_02.webp 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/webp\"\n }}></source>{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/da57b41dfb0e48f940130d62bc5b0b42/81c8e/zigbee2mqtt_02.png 230w\", \"/de/static/da57b41dfb0e48f940130d62bc5b0b42/08a84/zigbee2mqtt_02.png 460w\", \"/de/static/da57b41dfb0e48f940130d62bc5b0b42/e9beb/zigbee2mqtt_02.png 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/png\"\n }}></source>{`\n `}<img parentName=\"picture\" {...{\n \"className\": \"gatsby-resp-image-image\",\n \"src\": \"/de/static/da57b41dfb0e48f940130d62bc5b0b42/e9beb/zigbee2mqtt_02.png\",\n \"alt\": \"Zigbee2MQTT\",\n \"title\": \"Zigbee2MQTT\",\n \"loading\": \"lazy\",\n \"decoding\": \"async\",\n \"style\": {\n \"width\": \"100%\",\n \"height\": \"100%\",\n \"margin\": \"0\",\n \"verticalAlign\": \"middle\",\n \"position\": \"absolute\",\n \"top\": \"0\",\n \"left\": \"0\"\n }\n }}></img>{`\n `}</picture>{`\n `}</a>{`\n `}</span></p>\n <h4 {...{\n \"id\": \"installation\",\n \"style\": {\n \"position\": \"relative\"\n }\n }}><a parentName=\"h4\" {...{\n \"href\": \"#installation\",\n \"aria-label\": \"installation permalink\",\n \"className\": \"header-link-icon before\"\n }}><svg parentName=\"a\" {...{\n \"aria-hidden\": \"true\",\n \"focusable\": \"false\",\n \"height\": \"16\",\n \"version\": \"1.1\",\n \"viewBox\": \"0 0 16 16\",\n \"width\": \"16\"\n }}><path parentName=\"svg\" {...{\n \"fillRule\": \"evenodd\",\n \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n }}></path></svg></a>{`Installation`}</h4>\n <p>{`Um die ZigBee2MQTT Brücke auszuführen müssen wir zuerst `}<a parentName=\"p\" {...{\n \"href\": \"/de/Software/Linux/Node-RED/#installing-node-red\"\n }}>{`Node.js`}</a>{` und Git installieren:`}</p>\n <div {...{\n \"className\": \"gatsby-highlight\",\n \"data-language\": \"bash\"\n }}><pre parentName=\"div\" {...{\n \"className\": \"language-bash\"\n }}><code parentName=\"pre\" {...{\n \"className\": \"language-bash\"\n }}><span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`sudo`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`apt`}</span>{` update\n`}<span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`sudo`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`apt`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`install`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`git`}</span></code></pre></div>\n <p>{`Sie können bestätigen, dass Sie Git und Node korrekt installiert haben, indem Sie die folgenden Befehle ausführen:`}</p>\n <div {...{\n \"className\": \"gatsby-highlight\",\n \"data-language\": \"bash\"\n }}><pre parentName=\"div\" {...{\n \"className\": \"language-bash\"\n }}><code parentName=\"pre\" {...{\n \"className\": \"language-bash\"\n }}><span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`git`}</span>{` --version\nnode -v`}</code></pre></div>\n <p><span parentName=\"p\" {...{\n \"className\": \"gatsby-resp-image-wrapper\",\n \"style\": {\n \"position\": \"relative\",\n \"display\": \"block\",\n \"marginLeft\": \"auto\",\n \"marginRight\": \"auto\",\n \"maxWidth\": \"730px\"\n }\n }}>{`\n `}<a parentName=\"span\" {...{\n \"className\": \"gatsby-resp-image-link\",\n \"href\": \"/de/static/72925dbbdf947c7c1c5e5e30826ce3ef/e9beb/zigbee2mqtt_03.png\",\n \"style\": {\n \"display\": \"block\"\n },\n \"target\": \"_blank\",\n \"rel\": \"noopener\"\n }}>{`\n `}<span parentName=\"a\" {...{\n \"className\": \"gatsby-resp-image-background-image\",\n \"style\": {\n \"paddingBottom\": \"8.260869565217392%\",\n \"position\": \"relative\",\n \"bottom\": \"0\",\n \"left\": \"0\",\n \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAACCAYAAABYBvyLAAAACXBIWXMAAA7CAAAOwgEVKEqAAAAAiElEQVQI1yXIywqCQBSAYZ8ldLyMx2PjfbSkoKCFQa2KIGjT+7/BH9Xi23zB5XpiOR/Z7T3P7cDd1zzmntc8cBiUbqzxvsJ3OX2d0rVCOzQ4l1GqQTX+KxN0nRJMm4ZxanBdya1S3k5ZMoO1ESIxRWkRiZA8RMRQaIxois0jMhv+fD8Xg0lWfADh60A566+szgAAAABJRU5ErkJggg==')\",\n \"backgroundSize\": \"cover\",\n \"display\": \"block\"\n }\n }}></span>{`\n `}<picture parentName=\"a\">{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/72925dbbdf947c7c1c5e5e30826ce3ef/e4706/zigbee2mqtt_03.avif 230w\", \"/de/static/72925dbbdf947c7c1c5e5e30826ce3ef/d1af7/zigbee2mqtt_03.avif 460w\", \"/de/static/72925dbbdf947c7c1c5e5e30826ce3ef/b6582/zigbee2mqtt_03.avif 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/avif\"\n }}></source><source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/72925dbbdf947c7c1c5e5e30826ce3ef/a0b58/zigbee2mqtt_03.webp 230w\", \"/de/static/72925dbbdf947c7c1c5e5e30826ce3ef/bc10c/zigbee2mqtt_03.webp 460w\", \"/de/static/72925dbbdf947c7c1c5e5e30826ce3ef/87ca7/zigbee2mqtt_03.webp 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/webp\"\n }}></source>{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/72925dbbdf947c7c1c5e5e30826ce3ef/81c8e/zigbee2mqtt_03.png 230w\", \"/de/static/72925dbbdf947c7c1c5e5e30826ce3ef/08a84/zigbee2mqtt_03.png 460w\", \"/de/static/72925dbbdf947c7c1c5e5e30826ce3ef/e9beb/zigbee2mqtt_03.png 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/png\"\n }}></source>{`\n `}<img parentName=\"picture\" {...{\n \"className\": \"gatsby-resp-image-image\",\n \"src\": \"/de/static/72925dbbdf947c7c1c5e5e30826ce3ef/e9beb/zigbee2mqtt_03.png\",\n \"alt\": \"Zigbee2MQTT\",\n \"title\": \"Zigbee2MQTT\",\n \"loading\": \"lazy\",\n \"decoding\": \"async\",\n \"style\": {\n \"width\": \"100%\",\n \"height\": \"100%\",\n \"margin\": \"0\",\n \"verticalAlign\": \"middle\",\n \"position\": \"absolute\",\n \"top\": \"0\",\n \"left\": \"0\"\n }\n }}></img>{`\n `}</picture>{`\n `}</a>{`\n `}</span></p>\n <p>{`Klonen Sie dann `}<a parentName=\"p\" {...{\n \"href\": \"https://github.com/Koenkk/zigbee2mqtt\"\n }}>{`ZigBee2MQTT von Github`}</a>{` und ändern Sie den Besitzer des Verzeichnisses `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`/opt/zigbee2mqtt`}</code>{` in Ihren Linux-Standardbenutzer - in Fall unten ist dies `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`nodeadmin`}</code>{`:`}</p>\n <div {...{\n \"className\": \"gatsby-highlight\",\n \"data-language\": \"bash\"\n }}><pre parentName=\"div\" {...{\n \"className\": \"language-bash\"\n }}><code parentName=\"pre\" {...{\n \"className\": \"language-bash\"\n }}><span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`sudo`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`git`}</span>{` clone https://github.com/Koenkk/zigbee2mqtt.git /opt/zigbee2mqtt\n`}<span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`sudo`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`chown`}</span>{` -R nodeadmin:nodeadmin /opt/zigbee2mqtt`}</code></pre></div>\n <p>{`Wechseln Sie dann in das Verzeichnis und installieren Sie alle Abhängigkeiten mit `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`npm`}</code>{`:`}</p>\n <div {...{\n \"className\": \"gatsby-highlight\",\n \"data-language\": \"bash\"\n }}><pre parentName=\"div\" {...{\n \"className\": \"language-bash\"\n }}><code parentName=\"pre\" {...{\n \"className\": \"language-bash\"\n }}><span parentName=\"code\" {...{\n \"className\": \"token builtin class-name\"\n }}>{`cd`}</span>{` /opt/zigbee2mqtt\n`}<span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`npm`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`install`}</span></code></pre></div>\n <p><span parentName=\"p\" {...{\n \"className\": \"gatsby-resp-image-wrapper\",\n \"style\": {\n \"position\": \"relative\",\n \"display\": \"block\",\n \"marginLeft\": \"auto\",\n \"marginRight\": \"auto\",\n \"maxWidth\": \"730px\"\n }\n }}>{`\n `}<a parentName=\"span\" {...{\n \"className\": \"gatsby-resp-image-link\",\n \"href\": \"/de/static/eaa2112bf03df344f7dd7ef477c669a5/e9beb/zigbee2mqtt_04.png\",\n \"style\": {\n \"display\": \"block\"\n },\n \"target\": \"_blank\",\n \"rel\": \"noopener\"\n }}>{`\n `}<span parentName=\"a\" {...{\n \"className\": \"gatsby-resp-image-background-image\",\n \"style\": {\n \"paddingBottom\": \"27.39130434782609%\",\n \"position\": \"relative\",\n \"bottom\": \"0\",\n \"left\": \"0\",\n \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAFCAIAAADKYVtkAAAACXBIWXMAAA7EAAAOxAGVKw4bAAABBElEQVQY0x3NWU6DQAAAUI5iYijDrAwwLIXOwjYLQmn0o1ETvYD+9P6Jie8CL9p3vyx6npQP8/uxfl3D66SvujdFpjjpKQw52nLkBLKCSs5MLfbh8mKkEkVk7dB1Yhgv1pnt8JMb7Dr7bWll03RVStOySJoKFBlgPE5gfCIwZRRkLMEw2v7nxephvNyP8Hlb75s9Fu1Nb9rSqW6Tzdt03mXlKpqTmGGQZwgznCIQhdWGdV5mpcf+w/S/8/DjpscyPvr2m5FAUgNjT0+7gBtPBYoFBpyCMscZg5Eyndad1m1dc6VbO3XByZuXq6rmthA5EQL356wRkKCnDD5XKKEwLjksOfwDAE9F9V07vJMAAAAASUVORK5CYII=')\",\n \"backgroundSize\": \"cover\",\n \"display\": \"block\"\n }\n }}></span>{`\n `}<picture parentName=\"a\">{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/eaa2112bf03df344f7dd7ef477c669a5/e4706/zigbee2mqtt_04.avif 230w\", \"/de/static/eaa2112bf03df344f7dd7ef477c669a5/d1af7/zigbee2mqtt_04.avif 460w\", \"/de/static/eaa2112bf03df344f7dd7ef477c669a5/b6582/zigbee2mqtt_04.avif 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/avif\"\n }}></source><source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/eaa2112bf03df344f7dd7ef477c669a5/a0b58/zigbee2mqtt_04.webp 230w\", \"/de/static/eaa2112bf03df344f7dd7ef477c669a5/bc10c/zigbee2mqtt_04.webp 460w\", \"/de/static/eaa2112bf03df344f7dd7ef477c669a5/87ca7/zigbee2mqtt_04.webp 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/webp\"\n }}></source>{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/eaa2112bf03df344f7dd7ef477c669a5/81c8e/zigbee2mqtt_04.png 230w\", \"/de/static/eaa2112bf03df344f7dd7ef477c669a5/08a84/zigbee2mqtt_04.png 460w\", \"/de/static/eaa2112bf03df344f7dd7ef477c669a5/e9beb/zigbee2mqtt_04.png 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/png\"\n }}></source>{`\n `}<img parentName=\"picture\" {...{\n \"className\": \"gatsby-resp-image-image\",\n \"src\": \"/de/static/eaa2112bf03df344f7dd7ef477c669a5/e9beb/zigbee2mqtt_04.png\",\n \"alt\": \"Zigbee2MQTT\",\n \"title\": \"Zigbee2MQTT\",\n \"loading\": \"lazy\",\n \"decoding\": \"async\",\n \"style\": {\n \"width\": \"100%\",\n \"height\": \"100%\",\n \"margin\": \"0\",\n \"verticalAlign\": \"middle\",\n \"position\": \"absolute\",\n \"top\": \"0\",\n \"left\": \"0\"\n }\n }}></img>{`\n `}</picture>{`\n `}</a>{`\n `}</span></p>\n <h4 {...{\n \"id\": \"konfiguration\",\n \"style\": {\n \"position\": \"relative\"\n }\n }}><a parentName=\"h4\" {...{\n \"href\": \"#konfiguration\",\n \"aria-label\": \"konfiguration permalink\",\n \"className\": \"header-link-icon before\"\n }}><svg parentName=\"a\" {...{\n \"aria-hidden\": \"true\",\n \"focusable\": \"false\",\n \"height\": \"16\",\n \"version\": \"1.1\",\n \"viewBox\": \"0 0 16 16\",\n \"width\": \"16\"\n }}><path parentName=\"svg\" {...{\n \"fillRule\": \"evenodd\",\n \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n }}></path></svg></a>{`Konfiguration`}</h4>\n <p>{`Bevor wir zigbee2mqtt starten können, müssen wir die Datei `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`configuration.yaml`}</code>{` bearbeiten. Diese Datei enthält die Konfiguration, die von zigbee2mqtt verwendet wird. Öffnen Sie die Konfigurationsdatei:`}</p>\n <div {...{\n \"className\": \"gatsby-highlight\",\n \"data-language\": \"bash\"\n }}><pre parentName=\"div\" {...{\n \"className\": \"language-bash\"\n }}><code parentName=\"pre\" {...{\n \"className\": \"language-bash\"\n }}><span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`nano`}</span>{` /opt/zigbee2mqtt/data/configuration.yaml`}</code></pre></div>\n <p><span parentName=\"p\" {...{\n \"className\": \"gatsby-resp-image-wrapper\",\n \"style\": {\n \"position\": \"relative\",\n \"display\": \"block\",\n \"marginLeft\": \"auto\",\n \"marginRight\": \"auto\",\n \"maxWidth\": \"730px\"\n }\n }}>{`\n `}<a parentName=\"span\" {...{\n \"className\": \"gatsby-resp-image-link\",\n \"href\": \"/de/static/ce28a271b31218022aee18b044945f59/e9beb/zigbee2mqtt_05.png\",\n \"style\": {\n \"display\": \"block\"\n },\n \"target\": \"_blank\",\n \"rel\": \"noopener\"\n }}>{`\n `}<span parentName=\"a\" {...{\n \"className\": \"gatsby-resp-image-background-image\",\n \"style\": {\n \"paddingBottom\": \"45.21739130434783%\",\n \"position\": \"relative\",\n \"bottom\": \"0\",\n \"left\": \"0\",\n \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAJCAIAAAC9o5sfAAAACXBIWXMAAA7EAAAOxAGVKw4bAAABjElEQVQoz23N+1LaQBQG8LwCItoqYqdkN7tJ9pYN5IaISaTyFC1TXKSDBJyAvWgHWx/c2dDbH535zZkzZ75vjnFbqPnienl3c1fO778uN5+L+y+LxWp6W1zPPo0nk/dKjZUa38w+KvVhOpuo6Xi1mq/Xy7IsDJu8QU4L2M234HWrvX90Ujs62Ttu1Zun9ePW/uGrnfq/God7jYNa46BmxGcs6rFu5HRDh3KTctOy2ugP3LZtDeP/MNJcBBEKEiQEJK7JKOD8L8YAJYARPYlrVvSuucDIcpkNRf+Cppcyy7px4oYxCiIchKgTQCkhdeGv9G+MQkYgJVB/Ho5kf0CTPo4T4vsWBE2ENEpM6VvSszizOIWMWhXImSWYPhp5Hg8vo2Whnp+/bZ/W2x+bh8fy+7Z8+rnJstCTbd9HvIruOoIhj2uCI6M/YHHkpLm8GiXpIMnTXp71slQvHUkY2aWxJioci6rpCWy8G0XDK//8gqeZSM4cv2N2QyAEoA7wOJbC3nWE7uuOFLhiS4FfAOledCd9bi5NAAAAAElFTkSuQmCC')\",\n \"backgroundSize\": \"cover\",\n \"display\": \"block\"\n }\n }}></span>{`\n `}<picture parentName=\"a\">{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/ce28a271b31218022aee18b044945f59/e4706/zigbee2mqtt_05.avif 230w\", \"/de/static/ce28a271b31218022aee18b044945f59/d1af7/zigbee2mqtt_05.avif 460w\", \"/de/static/ce28a271b31218022aee18b044945f59/b6582/zigbee2mqtt_05.avif 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/avif\"\n }}></source><source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/ce28a271b31218022aee18b044945f59/a0b58/zigbee2mqtt_05.webp 230w\", \"/de/static/ce28a271b31218022aee18b044945f59/bc10c/zigbee2mqtt_05.webp 460w\", \"/de/static/ce28a271b31218022aee18b044945f59/87ca7/zigbee2mqtt_05.webp 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/webp\"\n }}></source>{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/ce28a271b31218022aee18b044945f59/81c8e/zigbee2mqtt_05.png 230w\", \"/de/static/ce28a271b31218022aee18b044945f59/08a84/zigbee2mqtt_05.png 460w\", \"/de/static/ce28a271b31218022aee18b044945f59/e9beb/zigbee2mqtt_05.png 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/png\"\n }}></source>{`\n `}<img parentName=\"picture\" {...{\n \"className\": \"gatsby-resp-image-image\",\n \"src\": \"/de/static/ce28a271b31218022aee18b044945f59/e9beb/zigbee2mqtt_05.png\",\n \"alt\": \"Zigbee2MQTT\",\n \"title\": \"Zigbee2MQTT\",\n \"loading\": \"lazy\",\n \"decoding\": \"async\",\n \"style\": {\n \"width\": \"100%\",\n \"height\": \"100%\",\n \"margin\": \"0\",\n \"verticalAlign\": \"middle\",\n \"position\": \"absolute\",\n \"top\": \"0\",\n \"left\": \"0\"\n }\n }}></img>{`\n `}</picture>{`\n `}</a>{`\n `}</span></p>\n <p>{`Wir nutzen einen `}<a parentName=\"p\" {...{\n \"href\": \"/de/Software/Linux/Node-RED/#configuring-mosquitto\"\n }}>{`lokalen Mosquitto MQTT Server`}</a>{` den wir bereits mit einem Client-Login konfiguriert haben, das hier hinzugefügt werden muss. Außerdem nutzen wir eine lokale Installation von `}<a parentName=\"p\" {...{\n \"href\": \"/de/Software/Linux/Home_Assistant/\"\n }}>{`Home Assistant`}</a>{` dass wir direkt mit der ZigBee2MQTT-Brücke kommunizieren können:`}</p>\n <div {...{\n \"className\": \"gatsby-highlight\",\n \"data-language\": \"yaml\"\n }}><pre parentName=\"div\" {...{\n \"className\": \"language-yaml\"\n }}><code parentName=\"pre\" {...{\n \"className\": \"language-yaml\"\n }}><span parentName=\"code\" {...{\n \"className\": \"token comment\"\n }}>{`# Home Assistant integration (MQTT discovery)`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`homeassistant`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token boolean important\"\n }}>{`true`}</span>{`\n\n`}<span parentName=\"code\" {...{\n \"className\": \"token comment\"\n }}>{`# allow new devices to join`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`permit_join`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token boolean important\"\n }}>{`true`}</span>{`\n\n`}<span parentName=\"code\" {...{\n \"className\": \"token comment\"\n }}>{`# MQTT settings`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`mqtt`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{`\n `}<span parentName=\"code\" {...{\n \"className\": \"token comment\"\n }}>{`# MQTT base topic for zigbee2mqtt MQTT messages`}</span>{`\n `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`base_topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` zigbee2mqtt\n `}<span parentName=\"code\" {...{\n \"className\": \"token comment\"\n }}>{`# MQTT server URL - change this to an local IP if your are running you server on a different device`}</span>{`\n `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`server`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'mqtt://localhost'`}</span>{`\n `}<span parentName=\"code\" {...{\n \"className\": \"token comment\"\n }}>{`# MQTT server authentication, uncomment if required:`}</span>{`\n `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`user`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` debian\n `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`password`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` my_password\n\n`}<span parentName=\"code\" {...{\n \"className\": \"token comment\"\n }}>{`# Serial settings`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`serial`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{`\n `}<span parentName=\"code\" {...{\n \"className\": \"token comment\"\n }}>{`# Location of CC2531 USB sniffer`}</span>{`\n `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`port`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` /dev/ttyACM0`}</code></pre></div>\n <p>{`Stellen Sie sicher, dass `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`allow_join`}</code>{` auf `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`true`}</code>{` gesetzt ist, damit neue Geräte hinzugefügt werden können. Es kann auf `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`false`}</code>{` gesetzt werden, sobald alle Ihre Zigbee-Geräte integriert sind.`}</p>\n <p>{`Für die serielle Schnittstelle können Sie den `}<a parentName=\"p\" {...{\n \"href\": \"#determine-location-of-cc2531-usb-sniffer-and-checking-user-permissions\"\n }}>{`Pfad des CC2531 USB Sniffer`}</a>{` verwenden, den wir als `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`/dev/ttyACM0`}</code>{` oder `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`/dev/serial/by-id/usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B0018E32D5B-if00`}</code>{` bestimmt haben - beide können austauschbar verwendet werden (die Position kann in Ihrem Fall abweichen!).`}</p>\n <h4 {...{\n \"id\": \"zigbee2mqtt-ausführe\",\n \"style\": {\n \"position\": \"relative\"\n }\n }}><a parentName=\"h4\" {...{\n \"href\": \"#zigbee2mqtt-ausf%C3%BChre\",\n \"aria-label\": \"zigbee2mqtt ausführe permalink\",\n \"className\": \"header-link-icon before\"\n }}><svg parentName=\"a\" {...{\n \"aria-hidden\": \"true\",\n \"focusable\": \"false\",\n \"height\": \"16\",\n \"version\": \"1.1\",\n \"viewBox\": \"0 0 16 16\",\n \"width\": \"16\"\n }}><path parentName=\"svg\" {...{\n \"fillRule\": \"evenodd\",\n \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n }}></path></svg></a>{`ZigBee2MQTT Ausführe`}</h4>\n <p>{`Nachdem wir nun alles korrekt eingerichtet haben, können Sie zigbee2mqtt direkt von unserer Konsole aus starten, um zu sehen, ob Fehlermeldungen angezeigt werden:`}</p>\n <div {...{\n \"className\": \"gatsby-highlight\",\n \"data-language\": \"bash\"\n }}><pre parentName=\"div\" {...{\n \"className\": \"language-bash\"\n }}><code parentName=\"pre\" {...{\n \"className\": \"language-bash\"\n }}><span parentName=\"code\" {...{\n \"className\": \"token builtin class-name\"\n }}>{`cd`}</span>{` /opt/zigbee2mqtt\n`}<span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`sudo`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`npm`}</span>{` start`}</code></pre></div>\n <p><span parentName=\"p\" {...{\n \"className\": \"gatsby-resp-image-wrapper\",\n \"style\": {\n \"position\": \"relative\",\n \"display\": \"block\",\n \"marginLeft\": \"auto\",\n \"marginRight\": \"auto\",\n \"maxWidth\": \"730px\"\n }\n }}>{`\n `}<a parentName=\"span\" {...{\n \"className\": \"gatsby-resp-image-link\",\n \"href\": \"/de/static/6d33fe2878897a302da1595941f19829/e9beb/zigbee2mqtt_06.png\",\n \"style\": {\n \"display\": \"block\"\n },\n \"target\": \"_blank\",\n \"rel\": \"noopener\"\n }}>{`\n `}<span parentName=\"a\" {...{\n \"className\": \"gatsby-resp-image-background-image\",\n \"style\": {\n \"paddingBottom\": \"41.30434782608695%\",\n \"position\": \"relative\",\n \"bottom\": \"0\",\n \"left\": \"0\",\n \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAICAIAAAB2/0i6AAAACXBIWXMAAA7EAAAOxAGVKw4bAAABdUlEQVQY0zWP246bMBiEeZRetEmBEGMDPgH27wPGmJN2s6t2b/r+j1ElVaXRSHPzzUy2Lu7cQ5rBQb8lG/wYgO99F2nt23tLyo6ULSka/F+vSOr8cv2WWS2CGwxwUMxoZjV3RirNKEOMIU6R5FgwJFjNKaJtReq8qXOCi3t1ySSvOCsYK0FTZwQoCoraJ4WpoVVDO8hGj50DYTXXivaC9AILiiSrMzejeN5hKr3rzm2KQaVZp8Xsq0sRjs2nCKDo2DdPqBHe9YMgtL3R9pbZWO6flU9FXOSvj2Nb7bH7Y58ex3xu/jzCuU/eiH/9r7dXjK745VmY8OOtSxHHID/e0hL0mswWzab7yFk0gx1pGiUoqscOFDWKSo4anBN0zWAq1vebCT+d797PZQ5qiXpd3Z78Nul9sUtQZngO1ooOPWmbkpAcoWtV/cikvpjlIuH7MNYxAIDwwH+b/k+ALzt8mf5zZAett6ZKTbU21YzyBZehLh51+RcYTXEEkbf6VwAAAABJRU5ErkJggg==')\",\n \"backgroundSize\": \"cover\",\n \"display\": \"block\"\n }\n }}></span>{`\n `}<picture parentName=\"a\">{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/6d33fe2878897a302da1595941f19829/e4706/zigbee2mqtt_06.avif 230w\", \"/de/static/6d33fe2878897a302da1595941f19829/d1af7/zigbee2mqtt_06.avif 460w\", \"/de/static/6d33fe2878897a302da1595941f19829/b6582/zigbee2mqtt_06.avif 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/avif\"\n }}></source><source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/6d33fe2878897a302da1595941f19829/a0b58/zigbee2mqtt_06.webp 230w\", \"/de/static/6d33fe2878897a302da1595941f19829/bc10c/zigbee2mqtt_06.webp 460w\", \"/de/static/6d33fe2878897a302da1595941f19829/87ca7/zigbee2mqtt_06.webp 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/webp\"\n }}></source>{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/6d33fe2878897a302da1595941f19829/81c8e/zigbee2mqtt_06.png 230w\", \"/de/static/6d33fe2878897a302da1595941f19829/08a84/zigbee2mqtt_06.png 460w\", \"/de/static/6d33fe2878897a302da1595941f19829/e9beb/zigbee2mqtt_06.png 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/png\"\n }}></source>{`\n `}<img parentName=\"picture\" {...{\n \"className\": \"gatsby-resp-image-image\",\n \"src\": \"/de/static/6d33fe2878897a302da1595941f19829/e9beb/zigbee2mqtt_06.png\",\n \"alt\": \"Zigbee2MQTT\",\n \"title\": \"Zigbee2MQTT\",\n \"loading\": \"lazy\",\n \"decoding\": \"async\",\n \"style\": {\n \"width\": \"100%\",\n \"height\": \"100%\",\n \"margin\": \"0\",\n \"verticalAlign\": \"middle\",\n \"position\": \"absolute\",\n \"top\": \"0\",\n \"left\": \"0\"\n }\n }}></img>{`\n `}</picture>{`\n `}</a>{`\n `}</span></p>\n <p>{`Sie können sehen, dass der Dienst ausgeführt wird, mit dem lokalen MQTT-Server verbunden ist und eine Nachricht an `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`zigbee2mqtt/bridge/state`}</code>{` mit der Payload `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`online`}</code>{` veröffentlicht hat. Wir können das Programm `}<a parentName=\"p\" {...{\n \"href\": \"/de/Erweitert/OpenHAB_Home_Automation/Mosquitto_Installation_on_Windows/#testing-the-mqtt-server-with-mqttfx\"\n }}>{`MQTT.fx`}</a>{` verwenden, um zu überprüfen, ob die Nachricht von unserem Mosquitto-Server empfangen wurde:`}</p>\n <p><span parentName=\"p\" {...{\n \"className\": \"gatsby-resp-image-wrapper\",\n \"style\": {\n \"position\": \"relative\",\n \"display\": \"block\",\n \"marginLeft\": \"auto\",\n \"marginRight\": \"auto\",\n \"maxWidth\": \"730px\"\n }\n }}>{`\n `}<a parentName=\"span\" {...{\n \"className\": \"gatsby-resp-image-link\",\n \"href\": \"/de/static/2667d899a41157b476e6f6af14b664a3/e9beb/zigbee2mqtt_07.png\",\n \"style\": {\n \"display\": \"block\"\n },\n \"target\": \"_blank\",\n \"rel\": \"noopener\"\n }}>{`\n `}<span parentName=\"a\" {...{\n \"className\": \"gatsby-resp-image-background-image\",\n \"style\": {\n \"paddingBottom\": \"56.52173913043479%\",\n \"position\": \"relative\",\n \"bottom\": \"0\",\n \"left\": \"0\",\n \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAALCAIAAADwazoUAAAACXBIWXMAAA7EAAAOxAGVKw4bAAABpklEQVQoz4XOW2sTQRTA8fk2NnuZ25mdvdXdDUk3Rs0mYRORGqG0MZcSjUiDoKlUMVHIsptsRXzwoeIXlawaCq344/9yZs7DQatVlm/W+TpN0zT7Lc2y9Sbb5Ot1Md0mSZI0TRAxPTBdZpcxZQRjgjEmhFk+dwLP923HKR628BbBhGiqKgTYdxmqhdXGk1F0uojix1H0MI7jMKwZ0qKMY13VNQX/jTJKCSa6ZliuYTpY11E/ag47neOocdJs9dvtfqs17D569vLd0fTt0fBFfzI7mZwVzUZnF+NXb0bT188v8sn5ajSdobZp1Sy76Qdx5aDhOvUwPj4cL5b5fPX1Q/p9eflj1yK/WlxeLb/8PP+UzD++X6bfkMmYxZjNuQPgALgAkjJNUzVVUZU9pXTnWn9GVSmpSkkp7SEuxDaAXSCElNLYkob8R8UXghtEAf5HACBxAwjBOYciUSzdGqEUBeUtKSUA+L5vu24YVA8rYTsox0H5niErjFc5XO+AQ0UYAz9AvLA7BlNS98rzwemg1xv3nnbr9/cp9TjftU/5A8/stMLP7e4vKQ679r+DEYQAAAAASUVORK5CYII=')\",\n \"backgroundSize\": \"cover\",\n \"display\": \"block\"\n }\n }}></span>{`\n `}<picture parentName=\"a\">{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/2667d899a41157b476e6f6af14b664a3/e4706/zigbee2mqtt_07.avif 230w\", \"/de/static/2667d899a41157b476e6f6af14b664a3/d1af7/zigbee2mqtt_07.avif 460w\", \"/de/static/2667d899a41157b476e6f6af14b664a3/b6582/zigbee2mqtt_07.avif 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/avif\"\n }}></source><source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/2667d899a41157b476e6f6af14b664a3/a0b58/zigbee2mqtt_07.webp 230w\", \"/de/static/2667d899a41157b476e6f6af14b664a3/bc10c/zigbee2mqtt_07.webp 460w\", \"/de/static/2667d899a41157b476e6f6af14b664a3/87ca7/zigbee2mqtt_07.webp 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/webp\"\n }}></source>{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/2667d899a41157b476e6f6af14b664a3/81c8e/zigbee2mqtt_07.png 230w\", \"/de/static/2667d899a41157b476e6f6af14b664a3/08a84/zigbee2mqtt_07.png 460w\", \"/de/static/2667d899a41157b476e6f6af14b664a3/e9beb/zigbee2mqtt_07.png 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/png\"\n }}></source>{`\n `}<img parentName=\"picture\" {...{\n \"className\": \"gatsby-resp-image-image\",\n \"src\": \"/de/static/2667d899a41157b476e6f6af14b664a3/e9beb/zigbee2mqtt_07.png\",\n \"alt\": \"Zigbee2MQTT\",\n \"title\": \"Zigbee2MQTT\",\n \"loading\": \"lazy\",\n \"decoding\": \"async\",\n \"style\": {\n \"width\": \"100%\",\n \"height\": \"100%\",\n \"margin\": \"0\",\n \"verticalAlign\": \"middle\",\n \"position\": \"absolute\",\n \"top\": \"0\",\n \"left\": \"0\"\n }\n }}></img>{`\n `}</picture>{`\n `}</a>{`\n `}</span></p>\n <h4 {...{\n \"id\": \"zigbee2mqtt-als-dienst-ausführen\",\n \"style\": {\n \"position\": \"relative\"\n }\n }}><a parentName=\"h4\" {...{\n \"href\": \"#zigbee2mqtt-als-dienst-ausf%C3%BChren\",\n \"aria-label\": \"zigbee2mqtt als dienst ausführen permalink\",\n \"className\": \"header-link-icon before\"\n }}><svg parentName=\"a\" {...{\n \"aria-hidden\": \"true\",\n \"focusable\": \"false\",\n \"height\": \"16\",\n \"version\": \"1.1\",\n \"viewBox\": \"0 0 16 16\",\n \"width\": \"16\"\n }}><path parentName=\"svg\" {...{\n \"fillRule\": \"evenodd\",\n \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n }}></path></svg></a>{`ZigBee2MQTT als Dienst Ausführen`}</h4>\n <p>{`Um zigbee2mqtt als Dienst auszuführen und automatisch beim Booten zu starten, führen wir zigbee2mqtt mit `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`systemctl`}</code>{` aus:`}</p>\n <div {...{\n \"className\": \"gatsby-highlight\",\n \"data-language\": \"bash\"\n }}><pre parentName=\"div\" {...{\n \"className\": \"language-bash\"\n }}><code parentName=\"pre\" {...{\n \"className\": \"language-bash\"\n }}><span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`sudo`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`nano`}</span>{` /etc/systemd/system/zigbee2mqtt.service`}</code></pre></div>\n <p>{`Fügen Sie dieser Datei Folgendes hinzu, um die `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`index.js`}</code>{`-Datei von der `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`zigbee2mqtt`}</code>{`-Bridge innerhalb der Node-Laufzeitumgebung automatisch auszuführen:`}</p>\n <div {...{\n \"className\": \"gatsby-highlight\",\n \"data-language\": \"text\"\n }}><pre parentName=\"div\" {...{\n \"className\": \"language-text\"\n }}><code parentName=\"pre\" {...{\n \"className\": \"language-text\"\n }}>{`[Unit]\nDescription=zigbee2mqtt\nAfter=network.target\n\n[Service]\nExecStart=/usr/bin/node /opt/zigbee2mqtt/index.js\nStandardOutput=syslog\nStandardError=syslog\nSyslogIdentifier=zigbee2mqtt\nRestart=always\n # Restart service after 10 seconds if node service crashes\n RestartSec=10\n\n[Install]\nWantedBy=multi-user.target`}</code></pre></div>\n <p><span parentName=\"p\" {...{\n \"className\": \"gatsby-resp-image-wrapper\",\n \"style\": {\n \"position\": \"relative\",\n \"display\": \"block\",\n \"marginLeft\": \"auto\",\n \"marginRight\": \"auto\",\n \"maxWidth\": \"730px\"\n }\n }}>{`\n `}<a parentName=\"span\" {...{\n \"className\": \"gatsby-resp-image-link\",\n \"href\": \"/de/static/3052f8d05bfe68edc4b868e9ca2c5fc2/e9beb/zigbee2mqtt_08.png\",\n \"style\": {\n \"display\": \"block\"\n },\n \"target\": \"_blank\",\n \"rel\": \"noopener\"\n }}>{`\n `}<span parentName=\"a\" {...{\n \"className\": \"gatsby-resp-image-background-image\",\n \"style\": {\n \"paddingBottom\": \"36.08695652173913%\",\n \"position\": \"relative\",\n \"bottom\": \"0\",\n \"left\": \"0\",\n \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAHCAIAAACHqfpvAAAACXBIWXMAAA7DAAAOwwHHb6hkAAABcElEQVQY0yWMbU+yUACGj8sUClQgtdmenvUyLA4g5x04R0Wd9KZuhpGtVv3/X9Go7fpwf7ivC+TfX2n5Icv37P3z7vNLlvtkt0+KUpZlXOzQpmDbXbR+DlfbcLVFm4JsivTlLdm9yqIEF/O7U5WfqeVALU0yBi4GLqoNseazukeaPtUD0YDs0OMHt7R2Q2o31QG4UcXl4uk8u7d4ZovZicgsNuknszM578aZwyc2VQ5VPSEdPrGwamNpRokZCiMQesCBLN/o8z542kbrYpivTuIq0YunBkqNKNFHSd2jTUiOQm4ioYW8AZkGmREwzafg9n7tLh/d/HGQZufjeTeetci4g2X7F5vIv930eQPS45AZo0rTAlqHFFxl+f/pcqDmHSr7QrawMlDaxtIi4xaWfaocLC2U6JA2PKL7rPKrBD/GElwvHv5lDzafWmzaSxcmSmtDdADpIWRNj1g4dpDojKgZEh0SK2JtxG1Eu5jafPIDRo1NMxjgBz4AAAAASUVORK5CYII=')\",\n \"backgroundSize\": \"cover\",\n \"display\": \"block\"\n }\n }}></span>{`\n `}<picture parentName=\"a\">{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/3052f8d05bfe68edc4b868e9ca2c5fc2/e4706/zigbee2mqtt_08.avif 230w\", \"/de/static/3052f8d05bfe68edc4b868e9ca2c5fc2/d1af7/zigbee2mqtt_08.avif 460w\", \"/de/static/3052f8d05bfe68edc4b868e9ca2c5fc2/b6582/zigbee2mqtt_08.avif 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/avif\"\n }}></source><source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/3052f8d05bfe68edc4b868e9ca2c5fc2/a0b58/zigbee2mqtt_08.webp 230w\", \"/de/static/3052f8d05bfe68edc4b868e9ca2c5fc2/bc10c/zigbee2mqtt_08.webp 460w\", \"/de/static/3052f8d05bfe68edc4b868e9ca2c5fc2/87ca7/zigbee2mqtt_08.webp 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/webp\"\n }}></source>{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/3052f8d05bfe68edc4b868e9ca2c5fc2/81c8e/zigbee2mqtt_08.png 230w\", \"/de/static/3052f8d05bfe68edc4b868e9ca2c5fc2/08a84/zigbee2mqtt_08.png 460w\", \"/de/static/3052f8d05bfe68edc4b868e9ca2c5fc2/e9beb/zigbee2mqtt_08.png 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/png\"\n }}></source>{`\n `}<img parentName=\"picture\" {...{\n \"className\": \"gatsby-resp-image-image\",\n \"src\": \"/de/static/3052f8d05bfe68edc4b868e9ca2c5fc2/e9beb/zigbee2mqtt_08.png\",\n \"alt\": \"Zigbee2MQTT\",\n \"title\": \"Zigbee2MQTT\",\n \"loading\": \"lazy\",\n \"decoding\": \"async\",\n \"style\": {\n \"width\": \"100%\",\n \"height\": \"100%\",\n \"margin\": \"0\",\n \"verticalAlign\": \"middle\",\n \"position\": \"absolute\",\n \"top\": \"0\",\n \"left\": \"0\"\n }\n }}></img>{`\n `}</picture>{`\n `}</a>{`\n `}</span></p>\n <p>{`Speichern Sie die Datei und überprüfen Sie, ob die Konfiguration funktioniert:`}</p>\n <div {...{\n \"className\": \"gatsby-highlight\",\n \"data-language\": \"bash\"\n }}><pre parentName=\"div\" {...{\n \"className\": \"language-bash\"\n }}><code parentName=\"pre\" {...{\n \"className\": \"language-bash\"\n }}><span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`sudo`}</span>{` systemctl daemon-reload\n`}<span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`sudo`}</span>{` systemctl start zigbee2mqtt\nsystemctl status zigbee2mqtt.service`}</code></pre></div>\n <p><span parentName=\"p\" {...{\n \"className\": \"gatsby-resp-image-wrapper\",\n \"style\": {\n \"position\": \"relative\",\n \"display\": \"block\",\n \"marginLeft\": \"auto\",\n \"marginRight\": \"auto\",\n \"maxWidth\": \"730px\"\n }\n }}>{`\n `}<a parentName=\"span\" {...{\n \"className\": \"gatsby-resp-image-link\",\n \"href\": \"/de/static/eee576bb53f07f08220a444fca262a45/e9beb/zigbee2mqtt_09.png\",\n \"style\": {\n \"display\": \"block\"\n },\n \"target\": \"_blank\",\n \"rel\": \"noopener\"\n }}>{`\n `}<span parentName=\"a\" {...{\n \"className\": \"gatsby-resp-image-background-image\",\n \"style\": {\n \"paddingBottom\": \"22.17391304347826%\",\n \"position\": \"relative\",\n \"bottom\": \"0\",\n \"left\": \"0\",\n \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAECAIAAAABPYjBAAAACXBIWXMAAA7DAAAOwwHHb6hkAAAAzklEQVQI1xXESXKEIAAAQL+iOCZRFlOCgAoColgCs11yyf/fkUofukj3kB9XTGHzxtr5DDY/Y3LqPY3XOmUtX0b+HPr3co+Vx6EbIcC47jHACBTayBCccdI4rla6nyrdj8PP0cq4zZcVl+HZT8+gk5NBU0oR6dtJEsZgsazCbPNimA+z3YVcCBeYCyKmb8YhHSFlkLKOsm4YWoTrj6+qupVtWzWfZSEWqlbudhWT3w+ds0/Zx7CcXijFpCBSkJ40CAKMagTruinBrfy/Kf8Aekg2HV/HZhYAAAAASUVORK5CYII=')\",\n \"backgroundSize\": \"cover\",\n \"display\": \"block\"\n }\n }}></span>{`\n `}<picture parentName=\"a\">{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/eee576bb53f07f08220a444fca262a45/e4706/zigbee2mqtt_09.avif 230w\", \"/de/static/eee576bb53f07f08220a444fca262a45/d1af7/zigbee2mqtt_09.avif 460w\", \"/de/static/eee576bb53f07f08220a444fca262a45/b6582/zigbee2mqtt_09.avif 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/avif\"\n }}></source><source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/eee576bb53f07f08220a444fca262a45/a0b58/zigbee2mqtt_09.webp 230w\", \"/de/static/eee576bb53f07f08220a444fca262a45/bc10c/zigbee2mqtt_09.webp 460w\", \"/de/static/eee576bb53f07f08220a444fca262a45/87ca7/zigbee2mqtt_09.webp 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/webp\"\n }}></source>{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/eee576bb53f07f08220a444fca262a45/81c8e/zigbee2mqtt_09.png 230w\", \"/de/static/eee576bb53f07f08220a444fca262a45/08a84/zigbee2mqtt_09.png 460w\", \"/de/static/eee576bb53f07f08220a444fca262a45/e9beb/zigbee2mqtt_09.png 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/png\"\n }}></source>{`\n `}<img parentName=\"picture\" {...{\n \"className\": \"gatsby-resp-image-image\",\n \"src\": \"/de/static/eee576bb53f07f08220a444fca262a45/e9beb/zigbee2mqtt_09.png\",\n \"alt\": \"Zigbee2MQTT\",\n \"title\": \"Zigbee2MQTT\",\n \"loading\": \"lazy\",\n \"decoding\": \"async\",\n \"style\": {\n \"width\": \"100%\",\n \"height\": \"100%\",\n \"margin\": \"0\",\n \"verticalAlign\": \"middle\",\n \"position\": \"absolute\",\n \"top\": \"0\",\n \"left\": \"0\"\n }\n }}></img>{`\n `}</picture>{`\n `}</a>{`\n `}</span></p>\n <p>{`Nachdem nun alles funktioniert, möchten wir, dass `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`systemctl`}</code>{` beim Booten automatisch `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`zigbee2mqtt`}</code>{` startet.`}</p>\n <div {...{\n \"className\": \"gatsby-highlight\",\n \"data-language\": \"text\"\n }}><pre parentName=\"div\" {...{\n \"className\": \"language-text\"\n }}><code parentName=\"pre\" {...{\n \"className\": \"language-text\"\n }}>{`sudo systemctl enable zigbee2mqtt.service`}</code></pre></div>\n <p><span parentName=\"p\" {...{\n \"className\": \"gatsby-resp-image-wrapper\",\n \"style\": {\n \"position\": \"relative\",\n \"display\": \"block\",\n \"marginLeft\": \"auto\",\n \"marginRight\": \"auto\",\n \"maxWidth\": \"730px\"\n }\n }}>{`\n `}<a parentName=\"span\" {...{\n \"className\": \"gatsby-resp-image-link\",\n \"href\": \"/de/static/d811ef0cfaea7a75df275a5267b90af5/e9beb/zigbee2mqtt_10.png\",\n \"style\": {\n \"display\": \"block\"\n },\n \"target\": \"_blank\",\n \"rel\": \"noopener\"\n }}>{`\n `}<span parentName=\"a\" {...{\n \"className\": \"gatsby-resp-image-background-image\",\n \"style\": {\n \"paddingBottom\": \"7.391304347826087%\",\n \"position\": \"relative\",\n \"bottom\": \"0\",\n \"left\": \"0\",\n \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAABCAIAAABR8BlyAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAARUlEQVQI12MIjwgJDvH39fP08HTx9nHz9fcO8nP3s7dwtTLztLX0sLX0d3HwdbT1sLFwMDMyMdE3szAxtzAxMNQJiwgBAP6OD8K0nZxcAAAAAElFTkSuQmCC')\",\n \"backgroundSize\": \"cover\",\n \"display\": \"block\"\n }\n }}></span>{`\n `}<picture parentName=\"a\">{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/d811ef0cfaea7a75df275a5267b90af5/e4706/zigbee2mqtt_10.avif 230w\", \"/de/static/d811ef0cfaea7a75df275a5267b90af5/d1af7/zigbee2mqtt_10.avif 460w\", \"/de/static/d811ef0cfaea7a75df275a5267b90af5/b6582/zigbee2mqtt_10.avif 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/avif\"\n }}></source><source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/d811ef0cfaea7a75df275a5267b90af5/a0b58/zigbee2mqtt_10.webp 230w\", \"/de/static/d811ef0cfaea7a75df275a5267b90af5/bc10c/zigbee2mqtt_10.webp 460w\", \"/de/static/d811ef0cfaea7a75df275a5267b90af5/87ca7/zigbee2mqtt_10.webp 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/webp\"\n }}></source>{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/d811ef0cfaea7a75df275a5267b90af5/81c8e/zigbee2mqtt_10.png 230w\", \"/de/static/d811ef0cfaea7a75df275a5267b90af5/08a84/zigbee2mqtt_10.png 460w\", \"/de/static/d811ef0cfaea7a75df275a5267b90af5/e9beb/zigbee2mqtt_10.png 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/png\"\n }}></source>{`\n `}<img parentName=\"picture\" {...{\n \"className\": \"gatsby-resp-image-image\",\n \"src\": \"/de/static/d811ef0cfaea7a75df275a5267b90af5/e9beb/zigbee2mqtt_10.png\",\n \"alt\": \"Zigbee2MQTT\",\n \"title\": \"Zigbee2MQTT\",\n \"loading\": \"lazy\",\n \"decoding\": \"async\",\n \"style\": {\n \"width\": \"100%\",\n \"height\": \"100%\",\n \"margin\": \"0\",\n \"verticalAlign\": \"middle\",\n \"position\": \"absolute\",\n \"top\": \"0\",\n \"left\": \"0\"\n }\n }}></img>{`\n `}</picture>{`\n `}</a>{`\n `}</span></p>\n <p>{`Einige Tipps, die später hilfreich sein können:`}</p>\n <div {...{\n \"className\": \"gatsby-highlight\",\n \"data-language\": \"bash\"\n }}><pre parentName=\"div\" {...{\n \"className\": \"language-bash\"\n }}><code parentName=\"pre\" {...{\n \"className\": \"language-bash\"\n }}><span parentName=\"code\" {...{\n \"className\": \"token comment\"\n }}>{`# Stoppen von zigbee2mqtt`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`sudo`}</span>{` systemctl stop zigbee2mqtt\n\n`}<span parentName=\"code\" {...{\n \"className\": \"token comment\"\n }}>{`# Starten von zigbee2mqtt`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`sudo`}</span>{` systemctl start zigbee2mqtt\n\n`}<span parentName=\"code\" {...{\n \"className\": \"token comment\"\n }}>{`# Das zigbee2mqtt Log ansehen`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`sudo`}</span>{` journalctl -u zigbee2mqtt.service -f`}</code></pre></div>\n <h4 {...{\n \"id\": \"aktualisieren-sie-zigbee2mqtt-auf-die-neueste-version\",\n \"style\": {\n \"position\": \"relative\"\n }\n }}><a parentName=\"h4\" {...{\n \"href\": \"#aktualisieren-sie-zigbee2mqtt-auf-die-neueste-version\",\n \"aria-label\": \"aktualisieren sie zigbee2mqtt auf die neueste version permalink\",\n \"className\": \"header-link-icon before\"\n }}><svg parentName=\"a\" {...{\n \"aria-hidden\": \"true\",\n \"focusable\": \"false\",\n \"height\": \"16\",\n \"version\": \"1.1\",\n \"viewBox\": \"0 0 16 16\",\n \"width\": \"16\"\n }}><path parentName=\"svg\" {...{\n \"fillRule\": \"evenodd\",\n \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n }}></path></svg></a>{`Aktualisieren Sie zigbee2mqtt auf die neueste Version`}</h4>\n <div {...{\n \"className\": \"gatsby-highlight\",\n \"data-language\": \"bash\"\n }}><pre parentName=\"div\" {...{\n \"className\": \"language-bash\"\n }}><code parentName=\"pre\" {...{\n \"className\": \"language-bash\"\n }}><span parentName=\"code\" {...{\n \"className\": \"token comment\"\n }}>{`# Stoppen Sie zigbee2mqtt und gehen Sie in das Verzeichnis`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`sudo`}</span>{` systemctl stop zigbee2mqtt\n`}<span parentName=\"code\" {...{\n \"className\": \"token builtin class-name\"\n }}>{`cd`}</span>{` /opt/zigbee2mqtt\n\n`}<span parentName=\"code\" {...{\n \"className\": \"token comment\"\n }}>{`# Backup der Konfiguration`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`cp`}</span>{` -R data data-backup\n\n`}<span parentName=\"code\" {...{\n \"className\": \"token comment\"\n }}>{`# Update`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`git`}</span>{` checkout HEAD -- npm-shrinkwrap.json\n`}<span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`git`}</span>{` pull\n`}<span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`rm`}</span>{` -rf node_modules\n`}<span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`npm`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`install`}</span>{`\n\n`}<span parentName=\"code\" {...{\n \"className\": \"token comment\"\n }}>{`# Konfiguration wieder herstellen`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`cp`}</span>{` -R data-backup/* data\n`}<span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`rm`}</span>{` -rf data-backup\n\n`}<span parentName=\"code\" {...{\n \"className\": \"token comment\"\n }}>{`# Starten von zigbee2mqtt`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token function\"\n }}>{`sudo`}</span>{` systemctl start zigbee2mqtt`}</code></pre></div>\n <h3 {...{\n \"id\": \"zigbee-geräte-verbinden\",\n \"style\": {\n \"position\": \"relative\"\n }\n }}><a parentName=\"h3\" {...{\n \"href\": \"#zigbee-ger%C3%A4te-verbinden\",\n \"aria-label\": \"zigbee geräte verbinden permalink\",\n \"className\": \"header-link-icon before\"\n }}><svg parentName=\"a\" {...{\n \"aria-hidden\": \"true\",\n \"focusable\": \"false\",\n \"height\": \"16\",\n \"version\": \"1.1\",\n \"viewBox\": \"0 0 16 16\",\n \"width\": \"16\"\n }}><path parentName=\"svg\" {...{\n \"fillRule\": \"evenodd\",\n \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n }}></path></svg></a>{`Zigbee Geräte verbinden`}</h3>\n <p>{`Die `}<a parentName=\"p\" {...{\n \"href\": \"https://github.com/Koenkk/zigbee2mqtt/wiki/Supported-devices\"\n }}>{`Auswahl der Geräte, die Sie mit der Zigbee2mqtt-Bridge verwenden können`}</a>{` wächst stetig (`}<a parentName=\"p\" {...{\n \"href\": \"https://github.com/Koenkk/zigbee2mqtt/wiki/Pairing-devices\"\n }}>{`hier gibt es alternative Anweisungen)`}</a>{`). In diesem Tutorial werden wir 3 `}<a parentName=\"p\" {...{\n \"href\": \"https://xiaomi-mi.com/sockets-and-sensors/\"\n }}>{`XiaoMi Mi Home`}</a>{` Sensoren hinzufügen - einen `}<a parentName=\"p\" {...{\n \"href\": \"https://xiaomi-mi.com/sockets-and-sensors/xiaomi-mi-temperature-humidity-sensor/\"\n }}>{`Temperatur & Luftfeuchtigkeit Sensor`}</a>{`, einen `}<a parentName=\"p\" {...{\n \"href\": \"https://xiaomi-mi.com/sockets-and-sensors/xiaomi-mi-wireless-switch/\"\n }}>{`Smart-Schalter`}</a>{` und einen `}<a parentName=\"p\" {...{\n \"href\": \"https://xiaomi-mi.com/sockets-and-sensors/xiaomi-mi-occupancy-sensor/\"\n }}>{`Bewegungsmelder`}</a>{`.`}</p>\n <p><strong parentName=\"p\">{`IMPORTANT`}</strong>{`: Bevor Sie beginnen, stellen Sie sicher, dass `}<a parentName=\"p\" {...{\n \"href\": \"#configuration\"\n }}>{`allow_join: true`}</a>{` in Ihrer configuration.yaml festgelegt ist. Andernfalls können keine neuen Geräte mit dem Netzwerk verbunden werden! Stellen Sie außerdem sicher, dass die `}<a parentName=\"p\" {...{\n \"href\": \"#running-zigbee2mqtt-as-a-daemon\"\n }}>{`ZigBee2MQTT-Bridge ausgeführt wird`}</a>{`.`}</p>\n <p>{`Wir beginnen zuerst mit dem `}<strong parentName=\"p\">{`Temperatur- und Luftfeuchtigkeitssensor`}</strong>{`, an dessen Seite sich ein Pairing-Button befindet. Drücken Sie die Taste etwa 5 Sekunden lang - die `}<strong parentName=\"p\">{`blue-LED beginnt zu blinken`}</strong>{`: In meinem Fall blinkt sie langsam in 3-maliger Folge. Nach einigen Sekunden wurde das Blinken schneller und stoppte danach. Das Gerät war danach mit der ZigBee Bridge gekoppelt.`}</p>\n <p>{`Die Kopplung ist in der Protokolldatei `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`/opt/zigbee2mqtt/data/log/`}</code>{` ersichtlich:`}</p>\n <div {...{\n \"className\": \"gatsby-highlight\",\n \"data-language\": \"yaml\"\n }}><pre parentName=\"div\" {...{\n \"className\": \"language-yaml\"\n }}><code parentName=\"pre\" {...{\n \"className\": \"language-yaml\"\n }}><span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` Connecting with device`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`...`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'zigbee2mqtt/bridge/log'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"type\":\"pairing\",\"message\":\"connecting with device\"}'`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` Device incoming`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`...`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'zigbee2mqtt/bridge/log'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"type\":\"pairing\",\"message\":\"device incoming\"}'`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` New device with address 0x00158d00023a21c8 connected`}<span parentName=\"code\" {...{\n \"className\": \"token tag\"\n }}>{`!`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'zigbee2mqtt/bridge/log'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"type\":\"device_connected\",\"message\":\"0x00158d00023a21c8\"}'`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'homeassistant/sensor/0x00158d00023a21c8/temperature/config'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"unit_of_measurement\":\"°C\",\"device_class\":\"temperature\",\"value_template\":\"{{ value_json.temperature }}\",\"json_attributes\":[\"linkquality\",\"battery\",\"voltage\"],\"state_topic\":\"zigbee2mqtt/0x00158d00023a21c8\",\"availability_topic\":\"zigbee2mqtt/bridge/state\",\"name\":\"0x00158d00023a21c8_temperature\",\"unique_id\":\"0x00158d00023a21c8_temperature_zigbee2mqtt\"}'`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'homeassistant/sensor/0x00158d00023a21c8/humidity/config'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"unit_of_measurement\":\"%\",\"device_class\":\"humidity\",\"value_template\":\"{{ value_json.humidity }}\",\"json_attributes\":[\"linkquality\",\"battery\",\"voltage\"],\"state_topic\":\"zigbee2mqtt/0x00158d00023a21c8\",\"availability_topic\":\"zigbee2mqtt/bridge/state\",\"name\":\"0x00158d00023a21c8_humidity\",\"unique_id\":\"0x00158d00023a21c8_humidity_zigbee2mqtt\"}'`}</span></code></pre></div>\n <p>{`Kurz darauf kamen die Sensordaten:`}</p>\n <div {...{\n \"className\": \"gatsby-highlight\",\n \"data-language\": \"yaml\"\n }}><pre parentName=\"div\" {...{\n \"className\": \"language-yaml\"\n }}><code parentName=\"pre\" {...{\n \"className\": \"language-yaml\"\n }}><span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'zigbee2mqtt/0x00158d00023a21c8'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"temperature\":26.74,\"linkquality\":55,\"humidity\":54.1,\"battery\":100,\"voltage\":3035}'`}</span></code></pre></div>\n <p>{`So weit, ist es gut. Die `}<strong parentName=\"p\">{`device ID`}</strong>{` war etwas schwer zu lesen und zu merken: `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`0x00158d00023a21c8`}</code>{` Zum Glück kann dies in eingestellt werden `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`/opt/zigbee2mqtt/data/configuration.yaml`}</code>{`:`}</p>\n <div {...{\n \"className\": \"gatsby-highlight\",\n \"data-language\": \"yaml\"\n }}><pre parentName=\"div\" {...{\n \"className\": \"language-yaml\"\n }}><code parentName=\"pre\" {...{\n \"className\": \"language-yaml\"\n }}><span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`devices`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{`\n `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`'0x00158d00023a21c8'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{`\n `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`friendly_name`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'temp_hum_sensor'`}</span>{`\n `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`retain`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token boolean important\"\n }}>{`false`}</span></code></pre></div>\n <p>{`Alle gekoppelten Geräte werden am Ende der Konfigurationsdatei aufgeführt. Ändern Sie einfach den `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`friendly_name`}</code>{` in etwas, das für Menschen lesbar ist. Denken Sie daran, dass dies auch das MQTT-Topic ändert, das die Zigbee-Brücke zum Veröffentlichen der Sensordaten verwendet:`}</p>\n <div {...{\n \"className\": \"gatsby-highlight\",\n \"data-language\": \"yaml\"\n }}><pre parentName=\"div\" {...{\n \"className\": \"language-yaml\"\n }}><code parentName=\"pre\" {...{\n \"className\": \"language-yaml\"\n }}><span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'zigbee2mqtt/temp_hum_sensor'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"temperature\":26.33,\"linkquality\":78,\"humidity\":54.32,\"battery\":99,\"voltage\":3005}'`}</span></code></pre></div>\n <p>{`Das topic hat sich jetzt von `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`zigbee2mqtt/0x00158d00023a21c8`}</code>{` auf `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`zigbee2mqtt/temp_hum_sensor`}</code>{` geändert!`}</p>\n <p>{`Die Kopplung des `}<strong parentName=\"p\">{`Smart Buttons`}</strong>{` und des `}<strong parentName=\"p\">{`Bewegungsmelders`}</strong>{` erwies sich jedoch als schwieriger. Wenn Sie die Pairing-Taste gedrückt halten, die hier nur mit einem Metallstift zu erreichen ist, ergab sich dasselbe Muster. Die `}<strong parentName=\"p\">{`blue LED begann zu blinken`}</strong>{` - erst langsam, dann schnell. Ich erhielt jedoch immer Zeitüberschreitungen für beide Geräte - das eine identifizierte sich als `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`0x00158d00023d229c`}</code>{` und das andere als `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`0x00158d00020b3dff`}</code>{` - für den Pairing-Vorgang in `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`/opt/zigbee2mqtt/data/log/`}</code>{`:`}</p>\n <div {...{\n \"className\": \"gatsby-highlight\",\n \"data-language\": \"yaml\"\n }}><pre parentName=\"div\" {...{\n \"className\": \"language-yaml\"\n }}><code parentName=\"pre\" {...{\n \"className\": \"language-yaml\"\n }}><span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`error`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`Cannot get the Node Descriptor of the Device`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`0x00158d00023d229c (Error`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` Timed out after 10000 ms)\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`error`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`Cannot get the Node Descriptor of the Device`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`0x00158d00020b3dff (Error`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` Timed out after 10000 ms)`}</code></pre></div>\n <p>{`Man kann hier `}<a parentName=\"p\" {...{\n \"href\": \"https://github.com/Koenkk/zigbee2mqtt/wiki/Pairing-devices#xiaomi\"\n }}>{`eine Anleitung finden`}</a>{` die besagt, dass Sie die Pairing-Taste 5 Sekunden lang gedrückt halten müssen (bis die blaue LED zu blinken beginnt), dann loslassen und die Taste wiederholt (1s-Intervall) drücken müssen. Fühlt sich merkwürdig an, hat aber tatsächlich funktioniert. Das Überprüfen der Protokolldatei zeigt, dass ein `}<strong parentName=\"p\">{`Occupancy Sensor`}</strong>{` (Bewegungsmelder) mit der ID `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`0x00158d00020b3dff`}</code>{` hinzugekommen ist:`}</p>\n <div {...{\n \"className\": \"gatsby-highlight\",\n \"data-language\": \"yaml\"\n }}><pre parentName=\"div\" {...{\n \"className\": \"language-yaml\"\n }}><code parentName=\"pre\" {...{\n \"className\": \"language-yaml\"\n }}><span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` New device with address 0x00158d00020b3dff connected`}<span parentName=\"code\" {...{\n \"className\": \"token tag\"\n }}>{`!`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'zigbee2mqtt/bridge/log'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"type\":\"device_connected\",\"message\":\"0x00158d00020b3dff\"}'`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'homeassistant/binary_sensor/0x00158d00020b3dff/occupancy/config'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"payload_on\":true,\"payload_off\":false,\"value_template\":\"{{ value_json.occupancy }}\",\"device_class\":\"motion\",\"json_attributes\":[\"linkquality\",\"battery\",\"voltage\"],\"state_topic\":\"zigbee2mqtt/0x00158d00020b3dff\",\"availability_topic\":\"zigbee2mqtt/bridge/state\",\"name\":\"0x00158d00020b3dff\",\"unique_id\":\"0x00158d00020b3dff_occupancy_zigbee2mqtt\"}'`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'zigbee2mqtt/0x00158d00020b3dff'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"occupancy\":true,\"linkquality\":131}'`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` Device incoming`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`...`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'zigbee2mqtt/bridge/log'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"type\":\"pairing\",\"message\":\"device incoming\"}'`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'zigbee2mqtt/0x00158d00020b3dff'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"occupancy\":true,\"linkquality\":128}'`}</span></code></pre></div>\n <p>{`Dasselbe für den `}<strong parentName=\"p\">{`Smart Button`}</strong>{` und ein neues Gerät mit der ID `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`0x00158d00023d229c`}</code>{` wurde hinzugefügt - ausgezeichnet!`}</p>\n <div {...{\n \"className\": \"gatsby-highlight\",\n \"data-language\": \"yaml\"\n }}><pre parentName=\"div\" {...{\n \"className\": \"language-yaml\"\n }}><code parentName=\"pre\" {...{\n \"className\": \"language-yaml\"\n }}><span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` New device with address 0x00158d00023d229c connected`}<span parentName=\"code\" {...{\n \"className\": \"token tag\"\n }}>{`!`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'zigbee2mqtt/bridge/log'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"type\":\"device_connected\",\"message\":\"0x00158d00023d229c\"}'`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'homeassistant/sensor/0x00158d00023d229c/click/config'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"icon\":\"mdi:toggle-switch\",\"value_template\":\"{{ value_json.click }}\",\"json_attributes\":[\"linkquality\",\"battery\",\"voltage\",\"action\",\"duration\"],\"force_update\":true,\"state_topic\":\"zigbee2mqtt/0x00158d00023d229c\",\"availability_topic\":\"zigbee2mqtt/bridge/state\",\"name\":\"0x00158d00023d229c\",\"unique_id\":\"0x00158d00023d229c_click_zigbee2mqtt\"}'`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` Device incoming`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`...`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'zigbee2mqtt/bridge/log'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"type\":\"pairing\",\"message\":\"device incoming\"}'`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'zigbee2mqtt/0x00158d00020b3dff'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"occupancy\":false,\"linkquality\":128}'`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'zigbee2mqtt/0x00158d00023d229c'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"click\":\"single\",\"linkquality\":94}'`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'zigbee2mqtt/0x00158d00023d229c'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"click\":\"double\",\"linkquality\":120}'`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'zigbee2mqtt/0x00158d00023d229c'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"click\":\"triple\",\"linkquality\":120}'`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'zigbee2mqtt/0x00158d00023d229c'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"click\":\"quadruple\",\"linkquality\":115}'`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'zigbee2mqtt/0x00158d00023d229c'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"click\":\"long\",\"linkquality\":118}'`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'zigbee2mqtt/0x00158d00023d229c'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"click\":\"long_release\",\"duration\":1236,\"linkquality\":118}'`}</span></code></pre></div>\n <p>{`Wieder können wir einstellen, dass in `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`/opt/zigbee2mqtt/data/configuration.yaml`}</code>{` ein von Menschen lesbarer Name anstelle der ID in angezeigt wird:`}</p>\n <div {...{\n \"className\": \"gatsby-highlight\",\n \"data-language\": \"yaml\"\n }}><pre parentName=\"div\" {...{\n \"className\": \"language-yaml\"\n }}><code parentName=\"pre\" {...{\n \"className\": \"language-yaml\"\n }}><span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`devices`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{`\n `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`'0x00158d00023a21c8'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{`\n `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`friendly_name`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'temp_hum_sensor'`}</span>{`\n `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`retain`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token boolean important\"\n }}>{`false`}</span>{`\n `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`'0x00158d00020b3dff'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{`\n `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`friendly_name`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'motion_pir_sensor'`}</span>{`\n `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`retain`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token boolean important\"\n }}>{`false`}</span>{`\n `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`'0x00158d00023d229c'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{`\n `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`friendly_name`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'smart_button'`}</span>{`\n `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`retain`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token boolean important\"\n }}>{`false`}</span></code></pre></div>\n <p>{`Die neuen Namen werden nun für die entsprechenden MQTT-Themen verwendet:`}</p>\n <div {...{\n \"className\": \"gatsby-highlight\",\n \"data-language\": \"yaml\"\n }}><pre parentName=\"div\" {...{\n \"className\": \"language-yaml\"\n }}><code parentName=\"pre\" {...{\n \"className\": \"language-yaml\"\n }}><span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'zigbee2mqtt/motion_pir_sensor'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"occupancy\":true,\"linkquality\":94,\"battery\":99,\"voltage\":3025}'`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'zigbee2mqtt/temp_hum_sensor'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"temperature\":27.79,\"linkquality\":110,\"humidity\":55.92,\"battery\":99,\"voltage\":3005}'`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'zigbee2mqtt/smart_button'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"battery\":100,\"voltage\":3042,\"linkquality\":68,\"click\":\"single\"}'`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'zigbee2mqtt/smart_button'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"battery\":100,\"voltage\":3042,\"linkquality\":60,\"click\":\"double\"}'`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'zigbee2mqtt/smart_button'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"battery\":100,\"voltage\":3042,\"linkquality\":63,\"click\":\"triple\"}'`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'zigbee2mqtt/smart_button'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"battery\":100,\"voltage\":3042,\"linkquality\":57,\"click\":\"quadruple\"}'`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'zigbee2mqtt/smart_button'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"battery\":100,\"voltage\":3042,\"linkquality\":57,\"click\":\"long\"}'`}</span>{`\n`}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`info`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` MQTT publish`}<span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`topic`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'zigbee2mqtt/smart_button'`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token key atrule\"\n }}>{`payload`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`:`}</span>{` `}<span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`'{\"battery\":100,\"voltage\":3042,\"linkquality\":65,\"click\":\"long_release\",\"duration\":1015}'`}</span></code></pre></div>\n <p>{`Beachten Sie, dass der `}<strong parentName=\"p\">{`Bewegungsmelder`}</strong>{` eine Payload von `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`true`}</code>{` oder `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`false`}</code>{` sendet, je nachdem, ob eine Bewegung erkannt wurde oder nicht. Der `}<strong parentName=\"p\">{`Temperatur- und Feuchtigkeitssensor`}</strong>{` sendet nur Zahlenwerte für Temperatur und Luftfeuchtigkeit. Der `}<strong parentName=\"p\">{`Smart Button`}</strong>{` sendet Click-Events und kann zwischen `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`Single`}</code>{`-, `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`Double`}</code>{`-, `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`Triple`}</code>{`-, `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`Quadruple`}</code>{`- und `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`Long / Long_Release`}</code>{`-Klicks unterscheiden.`}</p>\n <h2 {...{\n \"id\": \"verwenden-von-zigbee-geräten-zur-steuerung-von-instar-ip-kameras-in-node-red\",\n \"style\": {\n \"position\": \"relative\"\n }\n }}><a parentName=\"h2\" {...{\n \"href\": \"#verwenden-von-zigbee-ger%C3%A4ten-zur-steuerung-von-instar-ip-kameras-in-node-red\",\n \"aria-label\": \"verwenden von zigbee geräten zur steuerung von instar ip kameras in node red permalink\",\n \"className\": \"header-link-icon before\"\n }}><svg parentName=\"a\" {...{\n \"aria-hidden\": \"true\",\n \"focusable\": \"false\",\n \"height\": \"16\",\n \"version\": \"1.1\",\n \"viewBox\": \"0 0 16 16\",\n \"width\": \"16\"\n }}><path parentName=\"svg\" {...{\n \"fillRule\": \"evenodd\",\n \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n }}></path></svg></a>{`Verwenden von Zigbee-Geräten zur Steuerung von INSTAR IP-Kameras in Node-RED`}</h2>\n <p>{`Wir haben jetzt die Zigbee Bridge eingerichtet, Zigbee-Sensoren angeschlossen und sichergestellt, dass die Nachrichten an unseren Mosquitto MQTT-Server gesendet werden. Wir haben auch herausgefunden, welche Topics unsere Bridge für die einzelnen Sensoren verwendet, um ihre Meldungen zu veröffentlichen - `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`zigbee2mqtt/motion_pir_sensor`}</code>{`, `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`zigbee2mqtt/temp_hum_sensor`}</code>{` und `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`zigbee2mqtt/smart_button`}</code>{` - und welche Payload wir zu erwarten haben.`}</p>\n <p>{`Wir können jetzt das Programm `}<a parentName=\"p\" {...{\n \"href\": \"/de/Erweitert/OpenHAB_Home_Automation/Mosquitto_Installation_on_Windows/#testing-the-mqtt-server-with-mqttfx\"\n }}>{`MQTT.fx`}</a>{` verwenden, um zu überprüfen, ob die Nachricht von unserem Mosquitto-Server empfangen wurde:`}</p>\n <p><span parentName=\"p\" {...{\n \"className\": \"gatsby-resp-image-wrapper\",\n \"style\": {\n \"position\": \"relative\",\n \"display\": \"block\",\n \"marginLeft\": \"auto\",\n \"marginRight\": \"auto\",\n \"maxWidth\": \"730px\"\n }\n }}>{`\n `}<a parentName=\"span\" {...{\n \"className\": \"gatsby-resp-image-link\",\n \"href\": \"/de/static/c314dbe9d239fa241287b1b9ec7db8c4/e9beb/zigbee2mqtt_11.png\",\n \"style\": {\n \"display\": \"block\"\n },\n \"target\": \"_blank\",\n \"rel\": \"noopener\"\n }}>{`\n `}<span parentName=\"a\" {...{\n \"className\": \"gatsby-resp-image-background-image\",\n \"style\": {\n \"paddingBottom\": \"58.69565217391304%\",\n \"position\": \"relative\",\n \"bottom\": \"0\",\n \"left\": \"0\",\n \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAMCAIAAADtbgqsAAAACXBIWXMAAA7EAAAOxAGVKw4bAAACL0lEQVQoz23R70/TQBgH8P4xJia+cnftej/aXq90Xd0EEkhUWMGQmOEi4gvfYAigwmRsvGCbP9oiw7kZBBdBjFu3OQFDfId/kykQSdBPvrnnySX35C4nNJvNXq/X7XY7nXbnXLvTDgVB0PmfIAi+hVoC0XSKEUJIlpEcikaxivv6VW7acQtjLIqidFlU1VRuRQXDHrDuLZm37uuaYsZifaapKKokIykaThIvQAgBhFCEEESuiyKMyqKQSjmj4xOjzt1UKuU4zpgzEk/0sxvDRGUYIXIGY0XTuZXkOtMNs398Oj54W9OYwJhmGDyZTBicsz7LGEw9mV0srpUKhUK5XPY8zz3nua4fFs9z/fVqtVYsFgVNUznnVjzOOVd5TBsYW8iublYqruttbFQ+1C/UavVaPUy1Wm00Gr7vCzpjpmkODQ3HYqZhJc07Dxayq+ue+/pl2ffcd5uVf1PZeLuz/dFzXQEAIIqiqqqUUqoySI35lTefgl/vd79vN4+/Hv3ePzy5lC8HJ62fJ5v1LSESiQAAIqcAANeuXpldXN7Z71a397Z2W3vto73g8FI+tw6CH8evXF/QdZ0QAiEkhDDGJJlMPXq8nF18Oj+39PxZYSVXyOfC9W+Tz+VzL0qltZmZGQEhJEkSAECSJFmWIRRHnImph9PpdDo9OWnbNkKYKgqlCiGU0rBBGCeSyUwmE74ZgPD3T2t4c8u+adu2eYoxRghRwsMUY6woCsaYUnq2/wc3US2dNuSUPwAAAABJRU5ErkJggg==')\",\n \"backgroundSize\": \"cover\",\n \"display\": \"block\"\n }\n }}></span>{`\n `}<picture parentName=\"a\">{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/c314dbe9d239fa241287b1b9ec7db8c4/e4706/zigbee2mqtt_11.avif 230w\", \"/de/static/c314dbe9d239fa241287b1b9ec7db8c4/d1af7/zigbee2mqtt_11.avif 460w\", \"/de/static/c314dbe9d239fa241287b1b9ec7db8c4/b6582/zigbee2mqtt_11.avif 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/avif\"\n }}></source><source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/c314dbe9d239fa241287b1b9ec7db8c4/a0b58/zigbee2mqtt_11.webp 230w\", \"/de/static/c314dbe9d239fa241287b1b9ec7db8c4/bc10c/zigbee2mqtt_11.webp 460w\", \"/de/static/c314dbe9d239fa241287b1b9ec7db8c4/87ca7/zigbee2mqtt_11.webp 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/webp\"\n }}></source>{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/c314dbe9d239fa241287b1b9ec7db8c4/81c8e/zigbee2mqtt_11.png 230w\", \"/de/static/c314dbe9d239fa241287b1b9ec7db8c4/08a84/zigbee2mqtt_11.png 460w\", \"/de/static/c314dbe9d239fa241287b1b9ec7db8c4/e9beb/zigbee2mqtt_11.png 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/png\"\n }}></source>{`\n `}<img parentName=\"picture\" {...{\n \"className\": \"gatsby-resp-image-image\",\n \"src\": \"/de/static/c314dbe9d239fa241287b1b9ec7db8c4/e9beb/zigbee2mqtt_11.png\",\n \"alt\": \"Zigbee2MQTT\",\n \"title\": \"Zigbee2MQTT\",\n \"loading\": \"lazy\",\n \"decoding\": \"async\",\n \"style\": {\n \"width\": \"100%\",\n \"height\": \"100%\",\n \"margin\": \"0\",\n \"verticalAlign\": \"middle\",\n \"position\": \"absolute\",\n \"top\": \"0\",\n \"left\": \"0\"\n }\n }}></img>{`\n `}</picture>{`\n `}</a>{`\n `}</span></p>\n <p>{`Bei jeder Zustandsänderung sendet der Sensor eine Zigbee-Nachricht an unsere Bridge, die die Payload dann an unseren Mosquitto-Server weiterleitet - perfekt!`}</p>\n <p>{`Wir können jetzt `}<a parentName=\"p\" {...{\n \"href\": \"https://nodered.org/\"\n }}>{`Node-RED`}</a>{` starten - das entweder unter `}<a parentName=\"p\" {...{\n \"href\": \"/de/Erweitert/Node-RED_and_MQTT/\"\n }}>{`Windows 10`}</a>{`, auf einem `}<a parentName=\"p\" {...{\n \"href\": \"/de/Erweitert/openHABian_on_Raspberry_Pi/Node-RED_Setup/\"\n }}>{`Raspberry Pi`}</a>{` oder einem `}<a parentName=\"p\" {...{\n \"href\": \"/de/Software/Linux/Node-RED/\"\n }}>{`Debian Linux Server`}</a>{` läuft - und `}<strong parentName=\"p\">{`MQTT Nodes`}</strong>{` mit Abonnements für alle MQTT topics hinzufügen:`}</p>\n <p><span parentName=\"p\" {...{\n \"className\": \"gatsby-resp-image-wrapper\",\n \"style\": {\n \"position\": \"relative\",\n \"display\": \"block\",\n \"marginLeft\": \"auto\",\n \"marginRight\": \"auto\",\n \"maxWidth\": \"730px\"\n }\n }}>{`\n `}<a parentName=\"span\" {...{\n \"className\": \"gatsby-resp-image-link\",\n \"href\": \"/de/static/f416239901b8978344c8cd25d51d8a36/e9beb/zigbee2mqtt_12.png\",\n \"style\": {\n \"display\": \"block\"\n },\n \"target\": \"_blank\",\n \"rel\": \"noopener\"\n }}>{`\n `}<span parentName=\"a\" {...{\n \"className\": \"gatsby-resp-image-background-image\",\n \"style\": {\n \"paddingBottom\": \"46.52173913043478%\",\n \"position\": \"relative\",\n \"bottom\": \"0\",\n \"left\": \"0\",\n \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAJCAIAAAC9o5sfAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAB2ElEQVQoz02NXWvTUACG87tEVPxDA29brOBoZK5JziwOQfFiDD8vNlct/YhN068tzcdppDdixSHVjmbNaZqkOSc550jnTR+em/fi4RXu3rt/6/adBzs7L8plIMmSrJQkWVJASQaSAiQZ7N9M5eDZtrKsKAAIpf2niiQ92dt7vLv7sFDI5/O5XO5RoSCKYrFYFEVRlmUAgLINAOVXLw8OnwtDwzDNoTuCEELXdSGEjuOMx2N/4a+CIAxDjEm6RUYpWa8nr4//6n2hqemVRqumdbS2bhiG4ziWZUEI53NvNruaTqfXnrdcIuT7yF9sRL7veT8+fbk8NwStWvt89Lb65oOuaaZpOrZtWZbrur7ve/O5d70I4iTGJCYpYZwwjkm6TjDlHGMitNuNWvVjvX7S0TcxhNC27ZsYxes1T7PFz8ur75P55NdqOgt//0liHCVpinGKsaAPunW92WirvUHfsm24uTbdEVwiFCeYhdFqaAaWHZh2YNmRYdIoZJwzxgghQrfVVc+aaq1tn1a+vXuv1xrqaaXbUIPlEieYc55xTjnPGGN8A2OMUso538T9nqp9PdFaZ8NexxmcW6ZpXVyMHAchFEYRYywKwwChVRBkaUqzjFKaZdn/53/7hK+dbcxqCwAAAABJRU5ErkJggg==')\",\n \"backgroundSize\": \"cover\",\n \"display\": \"block\"\n }\n }}></span>{`\n `}<picture parentName=\"a\">{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/f416239901b8978344c8cd25d51d8a36/e4706/zigbee2mqtt_12.avif 230w\", \"/de/static/f416239901b8978344c8cd25d51d8a36/d1af7/zigbee2mqtt_12.avif 460w\", \"/de/static/f416239901b8978344c8cd25d51d8a36/b6582/zigbee2mqtt_12.avif 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/avif\"\n }}></source><source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/f416239901b8978344c8cd25d51d8a36/a0b58/zigbee2mqtt_12.webp 230w\", \"/de/static/f416239901b8978344c8cd25d51d8a36/bc10c/zigbee2mqtt_12.webp 460w\", \"/de/static/f416239901b8978344c8cd25d51d8a36/87ca7/zigbee2mqtt_12.webp 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/webp\"\n }}></source>{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/f416239901b8978344c8cd25d51d8a36/81c8e/zigbee2mqtt_12.png 230w\", \"/de/static/f416239901b8978344c8cd25d51d8a36/08a84/zigbee2mqtt_12.png 460w\", \"/de/static/f416239901b8978344c8cd25d51d8a36/e9beb/zigbee2mqtt_12.png 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/png\"\n }}></source>{`\n `}<img parentName=\"picture\" {...{\n \"className\": \"gatsby-resp-image-image\",\n \"src\": \"/de/static/f416239901b8978344c8cd25d51d8a36/e9beb/zigbee2mqtt_12.png\",\n \"alt\": \"Zigbee2MQTT\",\n \"title\": \"Zigbee2MQTT\",\n \"loading\": \"lazy\",\n \"decoding\": \"async\",\n \"style\": {\n \"width\": \"100%\",\n \"height\": \"100%\",\n \"margin\": \"0\",\n \"verticalAlign\": \"middle\",\n \"position\": \"absolute\",\n \"top\": \"0\",\n \"left\": \"0\"\n }\n }}></img>{`\n `}</picture>{`\n `}</a>{`\n `}</span></p>\n <p>{`Verbinden Sie alle 3 mit einem `}<strong parentName=\"p\">{`Debug-Knoten`}</strong>{` und klicken Sie auf `}<strong parentName=\"p\">{`Deploy`}</strong>{`. Klicken Sie auf die Smartbutton, wärmen Sie den Temp-Sensor auf und lösen Sie die Bewegungserkennung aus. Die MQTT-Meldungen werden im Debug-Fenster in Node-RED angezeigt:`}</p>\n <p><span parentName=\"p\" {...{\n \"className\": \"gatsby-resp-image-wrapper\",\n \"style\": {\n \"position\": \"relative\",\n \"display\": \"block\",\n \"marginLeft\": \"auto\",\n \"marginRight\": \"auto\",\n \"maxWidth\": \"730px\"\n }\n }}>{`\n `}<a parentName=\"span\" {...{\n \"className\": \"gatsby-resp-image-link\",\n \"href\": \"/de/static/aead1045e92e40bcf658769448eaed19/e9beb/zigbee2mqtt_13.png\",\n \"style\": {\n \"display\": \"block\"\n },\n \"target\": \"_blank\",\n \"rel\": \"noopener\"\n }}>{`\n `}<span parentName=\"a\" {...{\n \"className\": \"gatsby-resp-image-background-image\",\n \"style\": {\n \"paddingBottom\": \"31.304347826086953%\",\n \"position\": \"relative\",\n \"bottom\": \"0\",\n \"left\": \"0\",\n \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAGCAYAAADDl76dAAAACXBIWXMAAA7EAAAOxAGVKw4bAAABRklEQVQY01WP0WrbMBSG/f7v0RcYg17uYjBoWZd4q5Olnj1S3DWzE9mSLEuWZH0jHoz1h4//nJuPczI1KNrXlu7UITqB1ppxNCvGTGilEFIijcHFiA2BaZqYzISJEXF3z3mz5XffIy6C7LlqOHw+UOcVzVODnSZSDCzeQYoMUnIqClRZ0n8/0Fc1vRBoKZlDwCuFU2qdtR7Jnn82PG1KjrsjTdlw7lo+Pdzy/sMNH+/fUR9/0G1y1MMXdJ4zVhW677FSEp0jer928h7nHFldHnm8K6i/1rRNy+xnwmxxVhO8RWlN9+0Rtdujih2661CXC1bpv7J5/oe1lkwqjbxIjDR450kpkRIsiTXXV/pix7DZIrc5cr9HCoEZhlWyhLCKr70K+S9X2bIsKzHGdbfOoV9+4V5PzG3LfD7jtGYeR4K1by6cxpE/1a3HCXfM83MAAAAASUVORK5CYII=')\",\n \"backgroundSize\": \"cover\",\n \"display\": \"block\"\n }\n }}></span>{`\n `}<picture parentName=\"a\">{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/aead1045e92e40bcf658769448eaed19/e4706/zigbee2mqtt_13.avif 230w\", \"/de/static/aead1045e92e40bcf658769448eaed19/d1af7/zigbee2mqtt_13.avif 460w\", \"/de/static/aead1045e92e40bcf658769448eaed19/b6582/zigbee2mqtt_13.avif 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/avif\"\n }}></source><source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/aead1045e92e40bcf658769448eaed19/a0b58/zigbee2mqtt_13.webp 230w\", \"/de/static/aead1045e92e40bcf658769448eaed19/bc10c/zigbee2mqtt_13.webp 460w\", \"/de/static/aead1045e92e40bcf658769448eaed19/87ca7/zigbee2mqtt_13.webp 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/webp\"\n }}></source>{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/aead1045e92e40bcf658769448eaed19/81c8e/zigbee2mqtt_13.png 230w\", \"/de/static/aead1045e92e40bcf658769448eaed19/08a84/zigbee2mqtt_13.png 460w\", \"/de/static/aead1045e92e40bcf658769448eaed19/e9beb/zigbee2mqtt_13.png 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/png\"\n }}></source>{`\n `}<img parentName=\"picture\" {...{\n \"className\": \"gatsby-resp-image-image\",\n \"src\": \"/de/static/aead1045e92e40bcf658769448eaed19/e9beb/zigbee2mqtt_13.png\",\n \"alt\": \"Zigbee2MQTT\",\n \"title\": \"Zigbee2MQTT\",\n \"loading\": \"lazy\",\n \"decoding\": \"async\",\n \"style\": {\n \"width\": \"100%\",\n \"height\": \"100%\",\n \"margin\": \"0\",\n \"verticalAlign\": \"middle\",\n \"position\": \"absolute\",\n \"top\": \"0\",\n \"left\": \"0\"\n }\n }}></img>{`\n `}</picture>{`\n `}</a>{`\n `}</span></p>\n <h3 {...{\n \"id\": \"fügen-sie-den-mqtt-eingang-zu-einem-vorhandenen-flow-hinzu\",\n \"style\": {\n \"position\": \"relative\"\n }\n }}><a parentName=\"h3\" {...{\n \"href\": \"#f%C3%BCgen-sie-den-mqtt-eingang-zu-einem-vorhandenen-flow-hinzu\",\n \"aria-label\": \"fügen sie den mqtt eingang zu einem vorhandenen flow hinzu permalink\",\n \"className\": \"header-link-icon before\"\n }}><svg parentName=\"a\" {...{\n \"aria-hidden\": \"true\",\n \"focusable\": \"false\",\n \"height\": \"16\",\n \"version\": \"1.1\",\n \"viewBox\": \"0 0 16 16\",\n \"width\": \"16\"\n }}><path parentName=\"svg\" {...{\n \"fillRule\": \"evenodd\",\n \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n }}></path></svg></a>{`Fügen Sie den MQTT-Eingang zu einem vorhandenen Flow hinzu`}</h3>\n <p>{`In der folgenden Sequenz verwenden wir die Eingabe des Smart Buttons, um die Alarmbereiche unserer Kameras zu schalten - wir haben bereits dieselbe Sequenz für die `}<a parentName=\"p\" {...{\n \"href\": \"/de/Erweitert/Alexa_Sprachsteuerung_ohne_Cloud/\"\n }}>{`Amazon Alexa Integration verwendet`}</a>{` (Der vollständige Flow können Sie in unserem `}<a parentName=\"p\" {...{\n \"href\": \"/de/Software/Linux/Home_Assistant/\"\n }}>{`Home Assistant Tutorial`}</a>{` finden):`}</p>\n <p><span parentName=\"p\" {...{\n \"className\": \"gatsby-resp-image-wrapper\",\n \"style\": {\n \"position\": \"relative\",\n \"display\": \"block\",\n \"marginLeft\": \"auto\",\n \"marginRight\": \"auto\",\n \"maxWidth\": \"730px\"\n }\n }}>{`\n `}<a parentName=\"span\" {...{\n \"className\": \"gatsby-resp-image-link\",\n \"href\": \"/de/static/0237120bb455f5c518eba4d807e96bbe/e9beb/zigbee2mqtt_14.png\",\n \"style\": {\n \"display\": \"block\"\n },\n \"target\": \"_blank\",\n \"rel\": \"noopener\"\n }}>{`\n `}<span parentName=\"a\" {...{\n \"className\": \"gatsby-resp-image-background-image\",\n \"style\": {\n \"paddingBottom\": \"35.65217391304348%\",\n \"position\": \"relative\",\n \"bottom\": \"0\",\n \"left\": \"0\",\n \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAHCAIAAACHqfpvAAAACXBIWXMAAA7EAAAOxAGVKw4bAAABcElEQVQY0yWMUW/aMBRG8/+fK03qWzu1fZgmbWvVTkwtmrqFlkJImFZGYQQTTOyEhMQJoeb6Xk90n47Oy5E+Z5P5KvPqvL9V00KWCZNpnDfBr1e3U7sPyvOKzof66aoefC6fzqpBS3Q68vGn9noF504YvLv0bo7a5z8mj2uxXs1jlVW827s4vbj99LW8b23ujqV7OW6dztsnZdBO+p7odRuvXyy5Q2anwCY7UpqstWQPVnp7+3fcj6UpY6PW9VbH8boodgCIiADGIL1q7aiNqrICmoYQAMDs9wcDWEtEZMgaJERjLSIaAK21BgA0qPd7h4+ZCEW1aejQLdJ/CNCCITTmAKJ5GxLR26u11hhw1PVNXqpmy5T6U/JRPrqr5r7gbhSep9IXIkjTIWMz3w+SJJnPxtOXYSrTkT+dvCycKIrqqpE8iBcP0e+eGFznw9by+eNy9l6KLmPfVqt7xmZBECRpJkJ38fxFrPgwXHyfhP8AKCh5z8TmmpgAAAAASUVORK5CYII=')\",\n \"backgroundSize\": \"cover\",\n \"display\": \"block\"\n }\n }}></span>{`\n `}<picture parentName=\"a\">{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/0237120bb455f5c518eba4d807e96bbe/e4706/zigbee2mqtt_14.avif 230w\", \"/de/static/0237120bb455f5c518eba4d807e96bbe/d1af7/zigbee2mqtt_14.avif 460w\", \"/de/static/0237120bb455f5c518eba4d807e96bbe/b6582/zigbee2mqtt_14.avif 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/avif\"\n }}></source><source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/0237120bb455f5c518eba4d807e96bbe/a0b58/zigbee2mqtt_14.webp 230w\", \"/de/static/0237120bb455f5c518eba4d807e96bbe/bc10c/zigbee2mqtt_14.webp 460w\", \"/de/static/0237120bb455f5c518eba4d807e96bbe/87ca7/zigbee2mqtt_14.webp 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/webp\"\n }}></source>{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/0237120bb455f5c518eba4d807e96bbe/81c8e/zigbee2mqtt_14.png 230w\", \"/de/static/0237120bb455f5c518eba4d807e96bbe/08a84/zigbee2mqtt_14.png 460w\", \"/de/static/0237120bb455f5c518eba4d807e96bbe/e9beb/zigbee2mqtt_14.png 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/png\"\n }}></source>{`\n `}<img parentName=\"picture\" {...{\n \"className\": \"gatsby-resp-image-image\",\n \"src\": \"/de/static/0237120bb455f5c518eba4d807e96bbe/e9beb/zigbee2mqtt_14.png\",\n \"alt\": \"Zigbee2MQTT\",\n \"title\": \"Zigbee2MQTT\",\n \"loading\": \"lazy\",\n \"decoding\": \"async\",\n \"style\": {\n \"width\": \"100%\",\n \"height\": \"100%\",\n \"margin\": \"0\",\n \"verticalAlign\": \"middle\",\n \"position\": \"absolute\",\n \"top\": \"0\",\n \"left\": \"0\"\n }\n }}></img>{`\n `}</picture>{`\n `}</a>{`\n `}</span></p>\n <p>{`Sie können den folgenden JSON-Code kopieren und in Node-RED importieren (`}<a parentName=\"p\" {...{\n \"href\": \"/de/Software/Linux/Node-RED/#using-node-red-to-communicate-with-your-camera\"\n }}>{`Wie importiere ich Flows in Node-RED?`}</a>{`):`}</p>\n <div {...{\n \"className\": \"gatsby-highlight\",\n \"data-language\": \"json\"\n }}><pre parentName=\"div\" {...{\n \"className\": \"language-json\"\n }}><code parentName=\"pre\" {...{\n \"className\": \"language-json\"\n }}><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`[`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`{`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"id\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"ebde9a4c.90efe8\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"type\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"link out\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"z\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"17b43655.05bd3a\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"name\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"links\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`[`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"57b22bf7.0e2874\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"5eb0d369.b3b15c\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"b5ce97db.b3f4f8\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"f335d7f4.4bbe18\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`]`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"x\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token number\"\n }}>{`1308`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"y\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token number\"\n }}>{`100`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"wires\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`[`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`]`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`}`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`{`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"id\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"accb31dd.a130c\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"type\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"mqtt in\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"z\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"17b43655.05bd3a\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"name\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"Wireless Button\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"topic\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"zigbee2mqtt/smart_button\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"qos\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"1\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"broker\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"40415d07.67dd94\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"x\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token number\"\n }}>{`780`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"y\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token number\"\n }}>{`100`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"wires\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`[`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`[`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"2537690e.6230d6\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`]`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`]`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`}`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`{`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"id\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"2537690e.6230d6\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"type\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"json\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"z\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"17b43655.05bd3a\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"name\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"property\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"payload\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"action\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"pretty\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token boolean\"\n }}>{`false`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"x\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token number\"\n }}>{`929`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"y\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token number\"\n }}>{`100`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"wires\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`[`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`[`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"17df313d.2e7aff\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`]`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`]`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`}`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`{`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"id\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"17df313d.2e7aff\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"type\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"change\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"z\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"17b43655.05bd3a\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"name\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"single / double\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"rules\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`[`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`{`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"t\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"set\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"p\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"payload\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"pt\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"msg\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"to\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"payload.click\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"tot\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"msg\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`}`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`]`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"action\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"property\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"from\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"to\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"reg\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token boolean\"\n }}>{`false`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"x\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token number\"\n }}>{`1076`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"y\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token number\"\n }}>{`100`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"wires\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`[`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`[`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"1f97ee5b.dfc642\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`]`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`]`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`}`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`{`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"id\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"1f97ee5b.dfc642\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"type\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"string\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"z\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"17b43655.05bd3a\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"name\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"methods\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`[`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`{`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"name\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"replaceAll\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"params\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`[`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`{`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"type\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"str\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"value\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"single\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`}`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`{`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"type\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"str\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"value\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"{\\\\\"val\\\\\" : \\\\\"on\\\\\"}\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`}`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`]`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`}`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`{`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"name\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"replaceAll\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"params\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`[`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`{`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"type\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"str\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"value\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"double\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`}`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`{`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"type\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"str\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"value\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"{\\\\\"val\\\\\" : \\\\\"off\\\\\"}\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`}`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`]`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`}`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`]`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"prop\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"payload\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"propout\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"payload\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"object\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"msg\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"objectout\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"msg\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"x\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token number\"\n }}>{`1226`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"y\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token number\"\n }}>{`100`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"wires\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`[`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`[`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"ebde9a4c.90efe8\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`]`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`]`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`}`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`{`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"id\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"40415d07.67dd94\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"type\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"mqtt-broker\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"z\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"name\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"Debian Mosquitto\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"broker\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"localhost\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"port\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"1883\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"clientid\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"usetls\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token boolean\"\n }}>{`false`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"compatmode\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token boolean\"\n }}>{`true`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"keepalive\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"60\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"cleansession\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token boolean\"\n }}>{`true`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"birthTopic\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"birthQos\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"0\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"birthPayload\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"closeTopic\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"closePayload\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"willTopic\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"willQos\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"0\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`,`}</span><span parentName=\"code\" {...{\n \"className\": \"token property\"\n }}>{`\"willPayload\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token operator\"\n }}>{`:`}</span><span parentName=\"code\" {...{\n \"className\": \"token string\"\n }}>{`\"\"`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`}`}</span><span parentName=\"code\" {...{\n \"className\": \"token punctuation\"\n }}>{`]`}</span></code></pre></div>\n <p>{`Der `}<strong parentName=\"p\">{`MQTT-Knoten`}</strong>{` gibt die Nachricht von unserem Button als String aus. Wir müssen es zuerst mit einem `}<strong parentName=\"p\">{`JSON-Knoten`}</strong>{` in ein Javascript-Objekt umwandeln.`}</p>\n <p>{`Als nächstes folgt ein `}<strong parentName=\"p\">{`Change Node`}</strong>{`, der die Message Payload in den Wert von `}<strong parentName=\"p\">{`Click`}</strong>{` ändert. Wie wir oben erfahren haben, kann dieser Wert entweder `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`single`}</code>{`, `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`double`}</code>{`, `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`triple`}</code>{`, `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`quadruple`}</code>{`, `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`long`}</code>{` oder `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`release`}</code>{` sein:`}</p>\n <p><span parentName=\"p\" {...{\n \"className\": \"gatsby-resp-image-wrapper\",\n \"style\": {\n \"position\": \"relative\",\n \"display\": \"block\",\n \"marginLeft\": \"auto\",\n \"marginRight\": \"auto\",\n \"maxWidth\": \"730px\"\n }\n }}>{`\n `}<a parentName=\"span\" {...{\n \"className\": \"gatsby-resp-image-link\",\n \"href\": \"/de/static/94b7d346ea34f6ca4ab6f32de027a79d/e9beb/zigbee2mqtt_15.png\",\n \"style\": {\n \"display\": \"block\"\n },\n \"target\": \"_blank\",\n \"rel\": \"noopener\"\n }}>{`\n `}<span parentName=\"a\" {...{\n \"className\": \"gatsby-resp-image-background-image\",\n \"style\": {\n \"paddingBottom\": \"43.47826086956522%\",\n \"position\": \"relative\",\n \"bottom\": \"0\",\n \"left\": \"0\",\n \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAJCAIAAAC9o5sfAAAACXBIWXMAAA7DAAAOwwHHb6hkAAABmklEQVQoz2XPQXOTQBQHcL6gd7+LBz178TPUieN40rajjjrGaQKdNEDaZJJAEthAaCiEAGXZZVl2l3XS6Nix//kd3uU/7z3lajDQVPVS0/q9nmkYt8Hteu2tAQjDECFUPgnCuNjv9w7I450ymoyPzPHN1JqXJYRlWVUVQiV8mqLAnPnfu91nz52P58pEvZz0D8YXqmWOsixzHdd1HAAALMv/lh/6JSzSLN+GeZIo+tvXWueldvKqf/LCeveGlBhjTOu6obQmpCaEUsqa5h/GGGdCyoYxZXj6YfCpMzx/f3XasX9+QRjDqhKyZZwXCEGM6qZppRSPcClbKTnnytdvP87OPnd/9S566myxKnxvP52xbSiiuI0iGcftwyDu7kQU/RHHPAhomiqGrhuGPjJNfTicWnNuL0kYVknC7++r3S523dzfoCjiec6OsoxDWHs+XiyV678xDGNmWcwFgh1eklJWlG6jOEnTHBaYkMdnV2lGwFoxH3Io6/rMthsXCLAWm0D4G+oAOLfxYlktl2S14p53JDYBnVvE834DxO7iVp6UDxIAAAAASUVORK5CYII=')\",\n \"backgroundSize\": \"cover\",\n \"display\": \"block\"\n }\n }}></span>{`\n `}<picture parentName=\"a\">{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/94b7d346ea34f6ca4ab6f32de027a79d/e4706/zigbee2mqtt_15.avif 230w\", \"/de/static/94b7d346ea34f6ca4ab6f32de027a79d/d1af7/zigbee2mqtt_15.avif 460w\", \"/de/static/94b7d346ea34f6ca4ab6f32de027a79d/b6582/zigbee2mqtt_15.avif 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/avif\"\n }}></source><source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/94b7d346ea34f6ca4ab6f32de027a79d/a0b58/zigbee2mqtt_15.webp 230w\", \"/de/static/94b7d346ea34f6ca4ab6f32de027a79d/bc10c/zigbee2mqtt_15.webp 460w\", \"/de/static/94b7d346ea34f6ca4ab6f32de027a79d/87ca7/zigbee2mqtt_15.webp 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/webp\"\n }}></source>{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/94b7d346ea34f6ca4ab6f32de027a79d/81c8e/zigbee2mqtt_15.png 230w\", \"/de/static/94b7d346ea34f6ca4ab6f32de027a79d/08a84/zigbee2mqtt_15.png 460w\", \"/de/static/94b7d346ea34f6ca4ab6f32de027a79d/e9beb/zigbee2mqtt_15.png 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/png\"\n }}></source>{`\n `}<img parentName=\"picture\" {...{\n \"className\": \"gatsby-resp-image-image\",\n \"src\": \"/de/static/94b7d346ea34f6ca4ab6f32de027a79d/e9beb/zigbee2mqtt_15.png\",\n \"alt\": \"Zigbee2MQTT\",\n \"title\": \"Zigbee2MQTT\",\n \"loading\": \"lazy\",\n \"decoding\": \"async\",\n \"style\": {\n \"width\": \"100%\",\n \"height\": \"100%\",\n \"margin\": \"0\",\n \"verticalAlign\": \"middle\",\n \"position\": \"absolute\",\n \"top\": \"0\",\n \"left\": \"0\"\n }\n }}></img>{`\n `}</picture>{`\n `}</a>{`\n `}</span></p>\n <p>{`Danach folgt ein `}<strong parentName=\"p\">{`String-Knoten`}</strong>{` (dieser Knotentyp `}<a parentName=\"p\" {...{\n \"href\": \"/de/Software/Linux/Node-RED/#the-node-red-admin-panel\"\n }}>{`muss manuell installiert werden)`}</a>{` - suchen Sie nach `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`node-red-contrib-string`}</code>{`). Dieser sucht nach der Payload `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`single`}</code>{` oder `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`double`}</code>{` und ersetzt sie durch etwas, das wir benötigen, um den unten folgenden Flow unten auszulösen. In diesem Fall benötigen wir einen JSON-Ausdruck, der entweder einen Wert auf `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`on`}</code>{` oder `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`off`}</code>{` setzt - `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`{\"val\" : \"on\"}`}</code>{` / `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`{\"val\" : \"off\"}`}</code>{`:`}</p>\n <p><span parentName=\"p\" {...{\n \"className\": \"gatsby-resp-image-wrapper\",\n \"style\": {\n \"position\": \"relative\",\n \"display\": \"block\",\n \"marginLeft\": \"auto\",\n \"marginRight\": \"auto\",\n \"maxWidth\": \"730px\"\n }\n }}>{`\n `}<a parentName=\"span\" {...{\n \"className\": \"gatsby-resp-image-link\",\n \"href\": \"/de/static/91dd9c62905bad69d7aa462741bb4935/e9beb/zigbee2mqtt_16.png\",\n \"style\": {\n \"display\": \"block\"\n },\n \"target\": \"_blank\",\n \"rel\": \"noopener\"\n }}>{`\n `}<span parentName=\"a\" {...{\n \"className\": \"gatsby-resp-image-background-image\",\n \"style\": {\n \"paddingBottom\": \"73.91304347826086%\",\n \"position\": \"relative\",\n \"bottom\": \"0\",\n \"left\": \"0\",\n \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAPCAIAAABr+ngCAAAACXBIWXMAAA7DAAAOwwHHb6hkAAACNElEQVQoz3WRS2/TQBSF83fZ8iNYsmIHokJlwaZteFSltKJx7Cbxa8aTpipBSlvX7sux48SeOON5eNDEIQpQjq5GmpG+Ofee22hrmtZq6e22oesnJyeDweByNPoxHI5Go/R/mkziu/vx3X0DIAQQcvt9iJBt277vY4yzLMtxjjHO/5S6F0UahN1nz+GLl41+Wz/TjbO2jnqmA4Dv+3EcX19fX11dPj485Hme/aU8n03TaPgzGl02ultvDrffft967WxvdU61IAgJIUuDYkFKyvgTxTmXknHeAM0982PT2t0BXw863dMb/wbnOca5lBIXpCCsZBVlgqpzWbyqX4SCEYLQA9BzIDRNMwyVMyFEShnHycNjlKZTShnnYrNqNVzXdZYCADiOE4ZhlmVpmjLOq0owxoQQsnpCnPMVDADwPK+GOeez2SzLMsY457wsqVjrNymEmM/nCgYAQAg96NmWHYahlDKKomg8JoQIocylVN5yQ4wxBSPkIeRBCFEfucC9vb2VUi4WC0LIMlQphKjDp1TFXDuXZangbtc0TVs1b9odvRP4N2uf9WzTdIoxrvm6fc65gvd23h/s7xq68W3/aOdD8/x8KKWcTCZJkixD5pRS+Y+qqlJw68sr/eidpmm63moeH1sXF1LK8XicJElRFHU29bkJr9p2XWRZwAXIdaBlWUEQ1HOuHThjcRxnWTafzyml9UerwAy92et8Mnufe51DwzitA9vcpxCCEEIpZcvVbc78C+ckNIFb+rkwAAAAAElFTkSuQmCC')\",\n \"backgroundSize\": \"cover\",\n \"display\": \"block\"\n }\n }}></span>{`\n `}<picture parentName=\"a\">{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/91dd9c62905bad69d7aa462741bb4935/e4706/zigbee2mqtt_16.avif 230w\", \"/de/static/91dd9c62905bad69d7aa462741bb4935/d1af7/zigbee2mqtt_16.avif 460w\", \"/de/static/91dd9c62905bad69d7aa462741bb4935/b6582/zigbee2mqtt_16.avif 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/avif\"\n }}></source><source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/91dd9c62905bad69d7aa462741bb4935/a0b58/zigbee2mqtt_16.webp 230w\", \"/de/static/91dd9c62905bad69d7aa462741bb4935/bc10c/zigbee2mqtt_16.webp 460w\", \"/de/static/91dd9c62905bad69d7aa462741bb4935/87ca7/zigbee2mqtt_16.webp 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/webp\"\n }}></source>{`\n `}<source parentName=\"picture\" {...{\n \"srcSet\": [\"/de/static/91dd9c62905bad69d7aa462741bb4935/81c8e/zigbee2mqtt_16.png 230w\", \"/de/static/91dd9c62905bad69d7aa462741bb4935/08a84/zigbee2mqtt_16.png 460w\", \"/de/static/91dd9c62905bad69d7aa462741bb4935/e9beb/zigbee2mqtt_16.png 730w\"],\n \"sizes\": \"(max-width: 730px) 100vw, 730px\",\n \"type\": \"image/png\"\n }}></source>{`\n `}<img parentName=\"picture\" {...{\n \"className\": \"gatsby-resp-image-image\",\n \"src\": \"/de/static/91dd9c62905bad69d7aa462741bb4935/e9beb/zigbee2mqtt_16.png\",\n \"alt\": \"Zigbee2MQTT\",\n \"title\": \"Zigbee2MQTT\",\n \"loading\": \"lazy\",\n \"decoding\": \"async\",\n \"style\": {\n \"width\": \"100%\",\n \"height\": \"100%\",\n \"margin\": \"0\",\n \"verticalAlign\": \"middle\",\n \"position\": \"absolute\",\n \"top\": \"0\",\n \"left\": \"0\"\n }\n }}></img>{`\n `}</picture>{`\n `}</a>{`\n `}</span></p>\n <p>{`Und nicht zuletzt fügen wir einen `}<strong parentName=\"p\">{`Link Node`}</strong>{` hinzu, um ihn an alle 4 Sequenzen für die für die 4 Alarmbereiche anzuschließen. Bei jedem Klick auf die Wireless-Schaltfläche werden nun alle Bereiche aktiviert. Ein Doppelklick deaktiviert sie:`}</p>\n <p><img parentName=\"p\" {...{\n \"src\": \"/de/dd369d2cd739d1e125604e372a3b402c/nodered_01.gif\",\n \"alt\": \"Zigbee2MQTT\"\n }}></img></p>\n <p>{`Wir haben einen `}<strong parentName=\"p\">{`Debug Node`}</strong>{` an den MQTT-Eingang angehängt, um die durch den Wireless-Button gegebene Eingabe zu visualisieren - `}<strong parentName=\"p\">{`Note`}</strong>{` -, dass nur der `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`single`}</code>{` - und `}<code parentName=\"p\" {...{\n \"className\": \"language-text\"\n }}>{`double`}</code>{` - Klick die Alarmbereichssequenzen auslösen - die übrigen Eingangsoptionen können für andere Funktionen verwendet werden.`}</p>\n\n </MDXLayout>;\n}\n;\nMDXContent.isMDXComponent = true;\n "],"names":["_frontmatter","layoutProps","MDXLayout","MDXContent","_ref","components","props","_objectWithoutProperties","_excluded","mdx","Object","assign","mdxType","SEOHelmet","title","dateChanged","author","tag","description","image","twitter","location","pathname","BreadCrumbs","locationBC","locationDE","locationEN","locationFR","crumbLabel","NavButtons","parentName","isMDXComponent"],"sourceRoot":""}