{"id":16493,"date":"2021-03-14T14:57:51","date_gmt":"2021-03-14T13:57:51","guid":{"rendered":"http:\/\/blog.wenzlaff.de\/?p=16493"},"modified":"2021-03-20T11:20:57","modified_gmt":"2021-03-20T10:20:57","slug":"hausautomatisation-5-0-steuerung-des-roborock-staubsaugers-per-qr-code-barcode","status":"publish","type":"post","link":"http:\/\/blog.wenzlaff.de\/?p=16493","title":{"rendered":"Hausautomatisation 5.0: Steuerung des Roborock-Staubsaugers per QR-Code (Barcode)"},"content":{"rendered":"<p>Idee: In jedem Zimmer an der T\u00fcr oder sonstwo einen QR-Code anbringen. Einfach mit dem Handy scannen und schon wird automatisch das Zimmer gesaugt. Kein l\u00e4stiges suchen der Sauger App, starten und ausw\u00e4hlen des Zimmers. Gesagt getan!<\/p>\n<p>Ein QR-Code wird einmalig erstell und an den M\u00fclleimer (oder in der N\u00e4he) angebracht. Wenn der mit dem Handy gescannt wird (muss im WLAN eingew\u00e4hlt sein, k\u00f6nnte man aber auch f\u00fcr alle freigeben ;-)) l\u00e4uft der Roboter los, h\u00e4lt f\u00fcr 2 Minuten an. Macht eine Sprachausgabe. Nun kannn der Staubbeh\u00e4lter gelehrt werden. Dann f\u00e4hrt er mit der Reinigung der K\u00fcche fort, und f\u00e4hrt wieder zur Ladestation.<\/p>\n<p>Also zuerst eine QR-Code erstellen mit der URL des Pis und dem Kommando:<br \/>\n<a href=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/03\/wenzlaff.de-2021-03-14-um-14.47.23.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/03\/wenzlaff.de-2021-03-14-um-14.47.23-243x300.png\" alt=\"\" width=\"243\" height=\"300\" class=\"aligncenter size-medium wp-image-16494\" srcset=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/03\/wenzlaff.de-2021-03-14-um-14.47.23-243x300.png 243w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/03\/wenzlaff.de-2021-03-14-um-14.47.23-768x949.png 768w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/03\/wenzlaff.de-2021-03-14-um-14.47.23.png 814w\" sizes=\"auto, (max-width: 243px) 100vw, 243px\" \/><\/a><\/p>\n<p>Dann diesen Flow importieren bzw. erstellen:<br \/>\n<a href=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/03\/wenzlaff.de-2021-03-14-um-14.38.27.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/03\/wenzlaff.de-2021-03-14-um-14.38.27.png\" alt=\"\" width=\"1716\" height=\"566\" class=\"aligncenter size-full wp-image-16496\" srcset=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/03\/wenzlaff.de-2021-03-14-um-14.38.27.png 1716w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/03\/wenzlaff.de-2021-03-14-um-14.38.27-300x99.png 300w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/03\/wenzlaff.de-2021-03-14-um-14.38.27-1024x338.png 1024w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/03\/wenzlaff.de-2021-03-14-um-14.38.27-768x253.png 768w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/03\/wenzlaff.de-2021-03-14-um-14.38.27-1536x507.png 1536w\" sizes=\"auto, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/a><\/p>\n<p>Dann in den HTTP-Node die URL aus dem CQ-Code eintragen und <strong>get<\/strong> w\u00e4hlen:<!--more--><\/p>\n<p><a href=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/03\/wenzlaff.de-2021-03-14-um-14.39.18.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/03\/wenzlaff.de-2021-03-14-um-14.39.18-300x180.png\" alt=\"\" width=\"300\" height=\"180\" class=\"aligncenter size-medium wp-image-16497\" srcset=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/03\/wenzlaff.de-2021-03-14-um-14.39.18-300x180.png 300w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/03\/wenzlaff.de-2021-03-14-um-14.39.18-768x461.png 768w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/03\/wenzlaff.de-2021-03-14-um-14.39.18.png 990w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>In dem response-Node, kann noch die Antwort, die nach dem Scannen im Handy angezeigt wird ver\u00e4ndert werden:<\/p>\n<p><a href=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/03\/wenzlaff.de-2021-03-14-um-14.39.00.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/03\/wenzlaff.de-2021-03-14-um-14.39.00-1024x349.png\" alt=\"\" width=\"525\" height=\"179\" class=\"aligncenter size-large wp-image-16498\" srcset=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/03\/wenzlaff.de-2021-03-14-um-14.39.00-1024x349.png 1024w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/03\/wenzlaff.de-2021-03-14-um-14.39.00-300x102.png 300w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/03\/wenzlaff.de-2021-03-14-um-14.39.00-768x262.png 768w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/03\/wenzlaff.de-2021-03-14-um-14.39.00-1536x524.png 1536w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/03\/wenzlaff.de-2021-03-14-um-14.39.00-2048x698.png 2048w\" sizes=\"auto, (max-width: 525px) 100vw, 525px\" \/><\/a><\/p>\n<p>Hier der Programmcode zum Import: &#8230;<\/p>\n<pre class=\"lang:js decode:true \" >[\r\n    {\r\n        \"id\": \"f1ed66df.7b27a8\",\r\n        \"type\": \"ui_button\",\r\n        \"z\": \"65d1d0fe.3c4c08\",\r\n        \"g\": \"e458d371.6bce4\",\r\n        \"name\": \"\",\r\n        \"group\": \"86b9a6db.87a35\",\r\n        \"order\": 5,\r\n        \"width\": 0,\r\n        \"height\": 0,\r\n        \"passthru\": true,\r\n        \"label\": \"Staubbeh\u00e4lter leeren und K\u00fcche\",\r\n        \"tooltip\": \"\",\r\n        \"color\": \"\",\r\n        \"bgcolor\": \"\",\r\n        \"icon\": \"\",\r\n        \"payload\": \"16\",\r\n        \"payloadType\": \"num\",\r\n        \"topic\": \"topic\",\r\n        \"topicType\": \"msg\",\r\n        \"x\": 1150,\r\n        \"y\": 180,\r\n        \"wires\": [\r\n            [\r\n                \"eda2f1e6.4bbc6\",\r\n                \"281515f8.a6829a\"\r\n            ]\r\n        ]\r\n    },\r\n    {\r\n        \"id\": \"278e3180.dec406\",\r\n        \"type\": \"inject\",\r\n        \"z\": \"65d1d0fe.3c4c08\",\r\n        \"g\": \"e458d371.6bce4\",\r\n        \"name\": \"Staubbeh\u00e4lter leeren\",\r\n        \"props\": [\r\n            {\r\n                \"p\": \"payload\"\r\n            }\r\n        ],\r\n        \"repeat\": \"\",\r\n        \"crontab\": \"\",\r\n        \"once\": false,\r\n        \"onceDelay\": 0.1,\r\n        \"topic\": \"\",\r\n        \"payload\": \"16\",\r\n        \"payloadType\": \"num\",\r\n        \"x\": 1030,\r\n        \"y\": 120,\r\n        \"wires\": [\r\n            [\r\n                \"f1ed66df.7b27a8\"\r\n            ]\r\n        ]\r\n    },\r\n    {\r\n        \"id\": \"281515f8.a6829a\",\r\n        \"type\": \"miio-roborock-command\",\r\n        \"z\": \"65d1d0fe.3c4c08\",\r\n        \"g\": \"e458d371.6bce4\",\r\n        \"name\": \"K\u00fcche\",\r\n        \"server\": \"49f6cbbe.77c9c4\",\r\n        \"command_name\": \"\u25ba Start room cleaning\",\r\n        \"command\": \"app_segment_clean\",\r\n        \"commandType\": \"vacuum_cmd\",\r\n        \"payload\": \"payload\",\r\n        \"payloadType\": \"msg\",\r\n        \"coordinates\": \"\",\r\n        \"fan_speed\": 100,\r\n        \"voice_pack\": null,\r\n        \"homekit_stop_to_dock\": false,\r\n        \"x\": 1650,\r\n        \"y\": 240,\r\n        \"wires\": [\r\n            []\r\n        ]\r\n    },\r\n    {\r\n        \"id\": \"e2f7f3b7.94d638\",\r\n        \"type\": \"miio-roborock-command\",\r\n        \"z\": \"65d1d0fe.3c4c08\",\r\n        \"g\": \"e458d371.6bce4\",\r\n        \"name\": \"Ansage\",\r\n        \"server\": \"49f6cbbe.77c9c4\",\r\n        \"command_name\": \"Find me\",\r\n        \"command\": \"find_me\",\r\n        \"commandType\": \"vacuum_cmd\",\r\n        \"payload\": \"payload\",\r\n        \"payloadType\": \"msg\",\r\n        \"coordinates\": \"\",\r\n        \"fan_speed\": \"\",\r\n        \"homekit_stop_to_dock\": true,\r\n        \"x\": 1500,\r\n        \"y\": 120,\r\n        \"wires\": [\r\n            [\r\n                \"b34ed276.ade78\"\r\n            ]\r\n        ]\r\n    },\r\n    {\r\n        \"id\": \"b34ed276.ade78\",\r\n        \"type\": \"miio-roborock-command\",\r\n        \"z\": \"65d1d0fe.3c4c08\",\r\n        \"g\": \"e458d371.6bce4\",\r\n        \"name\": \"\",\r\n        \"server\": \"49f6cbbe.77c9c4\",\r\n        \"command_name\": \"\u2759\u2759 Pause\",\r\n        \"command\": \"app_pause\",\r\n        \"commandType\": \"vacuum_cmd\",\r\n        \"payload\": \"payload\",\r\n        \"payloadType\": \"msg\",\r\n        \"coordinates\": \"\",\r\n        \"fan_speed\": 100,\r\n        \"voice_pack\": null,\r\n        \"homekit_stop_to_dock\": false,\r\n        \"x\": 1640,\r\n        \"y\": 120,\r\n        \"wires\": [\r\n            []\r\n        ]\r\n    },\r\n    {\r\n        \"id\": \"eda2f1e6.4bbc6\",\r\n        \"type\": \"delay\",\r\n        \"z\": \"65d1d0fe.3c4c08\",\r\n        \"g\": \"e458d371.6bce4\",\r\n        \"name\": \"Fahre zum M\u00fclleimer\",\r\n        \"pauseType\": \"delay\",\r\n        \"timeout\": \"50\",\r\n        \"timeoutUnits\": \"seconds\",\r\n        \"rate\": \"1\",\r\n        \"nbRateUnits\": \"1\",\r\n        \"rateUnits\": \"second\",\r\n        \"randomFirst\": \"1\",\r\n        \"randomLast\": \"5\",\r\n        \"randomUnits\": \"seconds\",\r\n        \"drop\": false,\r\n        \"x\": 1300,\r\n        \"y\": 120,\r\n        \"wires\": [\r\n            [\r\n                \"e2f7f3b7.94d638\",\r\n                \"ed859d7d.7f1538\"\r\n            ]\r\n        ]\r\n    },\r\n    {\r\n        \"id\": \"ed859d7d.7f1538\",\r\n        \"type\": \"delay\",\r\n        \"z\": \"65d1d0fe.3c4c08\",\r\n        \"g\": \"e458d371.6bce4\",\r\n        \"name\": \"Leere des Staubcontainer (2 Minuten)\",\r\n        \"pauseType\": \"delay\",\r\n        \"timeout\": \"2\",\r\n        \"timeoutUnits\": \"minutes\",\r\n        \"rate\": \"1\",\r\n        \"nbRateUnits\": \"1\",\r\n        \"rateUnits\": \"second\",\r\n        \"randomFirst\": \"1\",\r\n        \"randomLast\": \"5\",\r\n        \"randomUnits\": \"seconds\",\r\n        \"drop\": false,\r\n        \"x\": 1510,\r\n        \"y\": 180,\r\n        \"wires\": [\r\n            [\r\n                \"281515f8.a6829a\"\r\n            ]\r\n        ]\r\n    },\r\n    {\r\n        \"id\": \"59ff2a1.fa600d4\",\r\n        \"type\": \"http in\",\r\n        \"z\": \"65d1d0fe.3c4c08\",\r\n        \"g\": \"e458d371.6bce4\",\r\n        \"name\": \"\",\r\n        \"url\": \"\/staubsauger-leeren\",\r\n        \"method\": \"get\",\r\n        \"upload\": false,\r\n        \"swaggerDoc\": \"\",\r\n        \"x\": 1030,\r\n        \"y\": 240,\r\n        \"wires\": [\r\n            [\r\n                \"54c1e70d.ab3e18\"\r\n            ]\r\n        ]\r\n    },\r\n    {\r\n        \"id\": \"54c1e70d.ab3e18\",\r\n        \"type\": \"template\",\r\n        \"z\": \"65d1d0fe.3c4c08\",\r\n        \"g\": \"e458d371.6bce4\",\r\n        \"name\": \"Nachricht\",\r\n        \"field\": \"payload\",\r\n        \"fieldType\": \"msg\",\r\n        \"format\": \"handlebars\",\r\n        \"syntax\": \"mustache\",\r\n        \"template\": \"&lt;html&gt;\\n    &lt;head&gt;&lt;\/head&gt;\\n    &lt;body&gt;\\n        &lt;h1&gt;Staubsauger f\u00e4hrt nun zum entlehren des Staubbeh\u00e4lters in die K\u00fcche, wartet 2 Minuten und reinigt dann die K\u00fcche.&lt;\/h1&gt;\\n    &lt;\/body&gt;\\n&lt;\/html&gt;\",\r\n        \"x\": 1240,\r\n        \"y\": 240,\r\n        \"wires\": [\r\n            [\r\n                \"266c286f.d993d8\",\r\n                \"f1ed66df.7b27a8\"\r\n            ]\r\n        ]\r\n    },\r\n    {\r\n        \"id\": \"266c286f.d993d8\",\r\n        \"type\": \"http response\",\r\n        \"z\": \"65d1d0fe.3c4c08\",\r\n        \"g\": \"e458d371.6bce4\",\r\n        \"name\": \"Antwort\",\r\n        \"statusCode\": \"\",\r\n        \"headers\": {},\r\n        \"x\": 1400,\r\n        \"y\": 240,\r\n        \"wires\": []\r\n    },\r\n    {\r\n        \"id\": \"86b9a6db.87a35\",\r\n        \"type\": \"ui_group\",\r\n        \"name\": \"Staubsauger\",\r\n        \"tab\": \"10f74434.26e3bc\",\r\n        \"order\": 2,\r\n        \"disp\": true,\r\n        \"width\": \"6\",\r\n        \"collapse\": false\r\n    },\r\n    {\r\n        \"id\": \"49f6cbbe.77c9c4\",\r\n        \"type\": \"miio-roborock-server\",\r\n        \"name\": \"Roborock S6\",\r\n        \"ip\": \"IP-EINTRAGEN\",\r\n        \"token\": \"TOKEN-EINTRAGEN\",\r\n        \"polling\": \"10\"\r\n    },\r\n    {\r\n        \"id\": \"10f74434.26e3bc\",\r\n        \"type\": \"ui_tab\",\r\n        \"name\": \"Staubsauger\",\r\n        \"icon\": \"toys\",\r\n        \"order\": 1,\r\n        \"disabled\": false,\r\n        \"hidden\": false\r\n    }\r\n]<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Idee: In jedem Zimmer an der T\u00fcr oder sonstwo einen QR-Code anbringen. Einfach mit dem Handy scannen und schon wird automatisch das Zimmer gesaugt. Kein l\u00e4stiges suchen der Sauger App, starten und ausw\u00e4hlen des Zimmers. Gesagt getan! Ein QR-Code wird einmalig erstell und an den M\u00fclleimer (oder in der N\u00e4he) angebracht. Wenn der mit dem &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/blog.wenzlaff.de\/?p=16493\" class=\"more-link\"><span class=\"screen-reader-text\">\u201eHausautomatisation 5.0: Steuerung des Roborock-Staubsaugers per QR-Code (Barcode)\u201c <\/span>weiterlesen<\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[220,566,852,3137,4649,79,1023],"tags":[2516,4731,2824,555,4113,4732,4652,4730],"class_list":["post-16493","post","type-post","status-publish","format-standard","hentry","category-anleitung","category-hardware","category-heimautomatisierung","category-javascript","category-nodered","category-programmierung","category-raspberry-pi","tag-flow","tag-hausautomatisation-5-0","tag-nodered","tag-qr-code","tag-qrcode","tag-roborock","tag-roboter","tag-staubsauger"],"_links":{"self":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/posts\/16493","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=16493"}],"version-history":[{"count":0,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/posts\/16493\/revisions"}],"wp:attachment":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=16493"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=16493"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=16493"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}