Hallo zusammen,
ich bin gerade so euphorisch, dass ich diese Energie in einen Post umsetzen möchte, der Anderen einfach erklärt, wie mit ioBroker eine Rolladensteuerung mit Shelly 2.5 Relais und über Google Home bzw. Google Assistant hin bekommt.
Euphorisch bin ich, da ich gerade einmal wenige Stunden Erfahrung mit SmartHome, ioBroker, MQTT und Shellies etc. habe. Leider ist es mir auch nicht gelungen, vernünftige Anfänger-Anleitungen zu finden, die den Weg zu diesem Meilenstein erklären würden, wenn man von all dem oben geschriebenen vorher noch nichts gehört hat oder damit bereits etwas Erfahrung gesammelt hat. Letztlich habe ich gefühlt an vielen Stellen unwissend herum konfiguriert aber ich denke, ich habe es nun soweit verstanden, Anderen etwas besser Starthilfe zu geben.
Ich werde versuchen, zumindest bei den ioBroker-Schritten vom Shelly zum Google Assistant etwas besser zu erklären, was nötig war.
Was habe ich als Vorbereitung getan:
- Shellies eingebaut
- IOBroker installiert
- MQTT installiert (meiner Ansicht nach hierfür nicht zwingend erforderlich)
- Discovery-Adapter (Gerätesuche) ausgeführt: Dadurch wurden weitere (hier nicht relevante) Adapter installiert
Der IOT Adapter und dessen Konfiguration (kommt unten) ist jedoch ein essenzieller Baustein:
Im Grunde habe ich versucht, dieser Anleitung zu folgen: https://forum.iobroker.net/topic/18517/anleitung-iot-pro-cloud-assistenten-service-iobroker-iot-reloaded-alexa-und-services
Meiner Ansicht nach ist sie aber nicht aktuell, auf Alexa ausgelegt (dass bei Google Home überhaupt nicht passt) und erwähnt nirgends etwas zu Google Home. Sie war für mich lediglich für den IOT-Adapter und nur äußerst begrenzt hilfreich - für den eigentlichen Google Home Part eigentlich wertlos.
Ich habe also
- Unter "Aufzählungen" im IOBroker Räume analog zu meinen Räumen (mit den Rolläden) angelegt
- Unter "Aufzählungen" im IOBroker eine Function "Rollo" angelegt
- Shelly-Adapter installiert (der in IOBroker unter "Objekte" alle Shellies anzeigt) mit Kommunikation über CoAP
- Unter "Objekte" zu jedem aufgelisteten Shelly-Device in der Spalte "Raum" den entsprechenden Raum und unter Funktion "Rollo" ausgewählt.
- mir einen ioBroker.pro-account angelegt.
- IOT Adapter installiert
- Einstellungen: iobroker.pro Accountdaten eingetragen
- Einstellungen: Nur Google Home ausgewählt
- Intelligente Aufzählungen: Festgestellt, dass dort die von mir oben angelegten Räume und die Funktion bereits angezeigt und ausgewählt sind.
- Google Devices: Die Shelly-Adapter mit Type "Blinds" und Trait "OpenClose" bereits zum oben festgelegten Raum zugeordnet vorgefunden.
- Erweiterte Einstellungen: den Haken bei "Platziere Funktionsname vorne" gesetzt.
- In der Google Home App und meinem Zuhause auf das +-Symbol oben links geklickt, "Gerät einrichten" und anschließend unter Funktioniert mit Google auf "Du hast bereits Geräte eingerichtet" getippt und im folgenden Screen "ioBroker" ausgewählt:
- Im folgenden Anmeldedialog das mir ebenfalls per eMail zugesandte ioBroker.iot-Passwort (nicht ioBroker.pro!) eingegeben. Die email hatte den Betreff "Vorübergehendes Kennwort für ioBroker.iot". Das Kennwort musste ich daraufhin gleich ändern.
In der Google Home App wurden mir dann alle in ioBroker im iot-Adapter gelisteten Google Devices aufgelistet und ich konnte sie auch in der App einem Raum zuordnen und in den jeweiligen Einstellungen der Geräte dann auch in "Rollo" umbenennen. Als Alternative zur Umbenennung in der App kann man dies auch im iot-Adapter unter Google Devices je Device anpassen (Feld "Smartnames").
Die Sätze
- "Rollo im Bad schließen" oder
- "Rollo im Bad öffnen" oder auch
- "Rollo im Bad auf 50%"
haben alle auf Anhieb das gewünschte Ergebnis gebracht. Ich war begeistert!
Warum? - Nun, das klingt beim Lesen bis hierhin vielleicht alles recht simpel und straight-forward - war es aber nicht. Ich habe vieles ausprobiert und mangels verständlicher Beschreibung auch nicht auf Anhieb verstanden. Installiert, Deinstalliert, Rekonfiguriert, etc. Die hier beschriebenen Schritte sind die, die ich selbst nun aus der Vielzahl an Maßnahmen als die eigentlich einzigen wichtigen Schritte verstehe.
Es gibt aber noch einiges dass mir immer noch nicht klar ist:
- Warum lege ich in ioBroker ein Funktion "Rollo" an und weise diese den Shelly Adaptern zu? Ich kann nicht erkennen, dass diese Funktion irgendeine Bedeutung hat oder verwendet wird?
Wie kann ich sinnvoll mehrere Rollos eines Raumes auf einmal (also als Gruppe) per Sprache steuern? Als Namen "Rollo 1" und "Rollo 2" (oder ähnliches) zu verwenden erscheint mir nicht "smart" und erlaubt nur getrennte Steuerung.Die Antwort konnte ich mir selbst geben: Habe ich mehrere Rollos einem Raum zugeordnet, ist es sogar egal, wie diese heißen. Der Befehl "Rollos im Wohnzimmer öffnen" fährt alle Rollos, die dem Raum zugeordnet sind, hoch - obwohl deren Namen nicht einmal das Wort "Rollo" enthalten.- Warum wird im ioBroker Ereignis-Log vom iot-Adapter ständig der Fehler [GHOME] Url Key error. Google Request and Response are working. But device states are not reported automatically: {"error":"Email not found or URL key not found"} und die Warnung [GHOME] Invalid URL key. Status update is disabled you can set states but not receive state updates: {"error":"Email not found or URL key not found"} geworfen? Ich finde nirgends einen URL key, den ich anpassen/eingeben könnte.
- Woher weiß der iot-Adapter bei der (automatischen) Auflistung der Google Devices, dass es sich bei den Shellies um "Blinds" handelt? Welche Einstellung sorgt hierfür?
Wer auf die Fragen eine Antwort oder zur Beschreibung etwas beitragen kann, bitte unterstützt gerne.