AdapterRequests icon indicating copy to clipboard operation
AdapterRequests copied to clipboard

Switchbot

Open pockeras opened this issue 6 years ago • 75 comments

Ein sehr cooles Projekt ein Adapter wäre auch sehr nice 😊......

switchbot Hub Plus, All in One Infrarot Fernbedienung für Smart Home und Entertainment Geräte, switchbot Gateway (kompatibel mit Alexa, Google Home, ifttt) UK - Type G https://www.amazon.de/dp/B07F2WYPY1/ref=cm_sw_r_cp_api_i_Z4aUCb2J214PD

Mit freundlichen Grüßen

pockeras avatar Apr 18 '19 05:04 pockeras

I have the hardware and will look into creating an adapter as soon as I find find the time for it.

Garfonso avatar May 08 '20 13:05 Garfonso

Moin moin. SwitchBot Hub Mini wäre für mich auch eine prima Anbindung für iObroker!

Triox85 avatar Jun 24 '20 16:06 Triox85

Dem kann ich nur bepflichten. Zumal jetzt dann noch der SwitchBot Curtain kommt......Ich find sie super.

RedDev85 avatar Sep 20 '20 19:09 RedDev85

Ich habe heute mit einem Adapter für die Bluetooth Variante ohne Hub begonnen. Habe aber bisher nur einen SwitchBot "Bot" - von daher wird in einer ersten Version praktisch nur dieses Modell unterstützt sein. Theoretisch aber auch noch der "Meter" (Thermometer & Hygrometer), da ich (Stand jetzt) dieses Modul verwende: https://www.npmjs.com/package/node-switchbot

mrbungle64 avatar Sep 20 '20 21:09 mrbungle64

Ich habe soweit eine erste frühe Version bereitgestellt: https://github.com/mrbungle64/ioBroker.switchbot-ble

Falls also jemand an der Bluetooth Variante ohne Hub Interesse hat und/oder bereit ist eine frühe Version zu testen würde ich mich über Feedback freuen.

Bei mir funktioniert es auf auf meinem Laptop mit Fedora Linux nur teilweise - aber auf meinem ioBroker Produktivsytem (Raspberry Pi 4) recht gut.

Es ist weiterhin zu beachten, dass

  • es aktuell eher nur für 1-2 Geräte gedacht ist (z.B. 1 "Bot" + 1 "Meter").
  • ein paar Pakete wegen Bluetooth zu installieren sind. Wer aber z.B. den Bluetooth Low Energy (ioBroker.ble) Adapter bereits installiert hat - sollte eigentlich dafür dann schon vorbereitet sein.

mrbungle64 avatar Oct 01 '20 20:10 mrbungle64

Ich würde mir "zum Spaß" ja sogar noch einen Hub bestellen (ohne den wirklich zu benötigen) um einen Adpater dafür zu bauen.

Weiß zufällig jemand was aus der angekündigten "Open API" geworden ist?

Is API open? Yes, we have an opensource project on GitHub (https://github.com/OpenWonderLabs/python-host). Both Bluetooth (without hub) and RESTFUL APIs (with hub) will be available.

Mit dem verlinkten Python Skript kann man auch nur per Bluetooth "Bot" und "Meter" Geräte steuern (kein "Curtain").

Dieses "SwitchBot opensource project" scheint eingeschlafen zu sein ...

mrbungle64 avatar Oct 07 '20 21:10 mrbungle64

ja, hub scheint nicht wirklich anbindbar, zumindest nicht offiziell...

Garfonso avatar Oct 09 '20 18:10 Garfonso

Hi Sascha,

da ich mir drei Switchbot Meter zugelegt habe würde ich den Adapter sehr gerne auch in der sehr frühen Phase testen, leider scheitere ich schon an der Installation des Adapters.

Ich habe die Dependencies installiert:

$ sudo apt-get install bluetooth bluez libbluetooth-dev libudev-dev

Dann habe ich per NPM die Module installiert:

$ npm install @abandonware/noble $ npm install node-switchbot

Jetzt würde ich den Adaper switchbot-ble installieren wollen (https://github.com/mrbungle64/ioBroker.switchbot-ble), kann aber nicht herausfinden wie. Einen NPM Befehl habe ich nicht gefunden, ein Versuch über die Weboberfläche per "Install from Custom URL" mit der Adresse https://github.com/mrbungle64/ioBroker.switchbot-ble funktioniert augenscheinlich auch nicht.

Kannst du mir dabei weiterhelfen?

Danke & Gruß Rolf

rhasselbusch avatar Oct 20 '20 19:10 rhasselbusch

@rohabu

Hi Sascha,

Hi Rolf,

...

Dann habe ich per NPM die Module installiert:

$ npm install @abandonware/noble $ npm install node-switchbot

das wäre nicht notwendig gewesen - sollte aber auch nicht schaden ;)

Jetzt würde ich den Adaper switchbot-ble installieren wollen (https://github.com/mrbungle64/ioBroker.switchbot-ble), kann aber nicht herausfinden wie. Einen NPM Befehl habe ich nicht gefunden, ein Versuch über die Weboberfläche per "Install from Custom URL" mit der Adresse https://github.com/mrbungle64/ioBroker.switchbot-ble funktioniert augenscheinlich auch nicht.

"Install from Custom URL" ist soweit richtig. Was wird denn in dem Popup ausgegeben? Am Ende der Ausgabe sollte "process exited with code 0" ausgegeben werden.

Kannst du mir dabei weiterhelfen?

Danke & Gruß Rolf

mrbungle64 avatar Oct 20 '20 20:10 mrbungle64

Tatsächlich passiert einfach gar nichts, außer dass das Popup wieder geschlossen wird wenn ich auf "Install" klicke. Ausgefüllt habe ich das Popup wie in folgendem Screenshot zu sehen ist.

https://ibb.co/7yGysy1

rhasselbusch avatar Oct 20 '20 21:10 rhasselbusch

Okay, ich habe meinen eigenen Fehler gefunden. Wenn ich die Adresse bei "Custom URL anstatt bei Github eingebe startet die Installation und läuft sauber durch.

Wenn du etwas bestimmtes getestet haben möchtest etc. sag mir gerne was, dann mache ich das.

rhasselbusch avatar Oct 20 '20 21:10 rhasselbusch

@rohabu

Okay, ich habe meinen eigenen Fehler gefunden. Wenn ich die Adresse bei "Custom URL anstatt bei Github eingebe startet die Installation und läuft sauber durch.

:+1:

Wenn du etwas bestimmtes getestet haben möchtest etc. sag mir gerne was, dann mache ich das.

Einfach mal schauen, ob alle 3 Geräte autom. erkannt werden und die Werte dauerhaft korrekt in den Datenpunkten eingetragen werden :)

Falls Du auf Probleme stößt würde ich Dich bitten direkt einen Issue anzulegen. Feedback kannst Du aber direkt hier posten, denke ich ;)

mrbungle64 avatar Oct 20 '20 21:10 mrbungle64

@rohabu

Hattest Du bereits die Gelegenheit den Adapter zu testen?

mrbungle64 avatar Oct 26 '20 11:10 mrbungle64

@mrbungle64

Ja, ich nutze den Adapter mit drei Switchbot "Meter" und es funktioniert bisher völlig problemlos. Ich nutze die Temperaturwerte als Offset zu den Temperaturfühlern meiner FRITZ DECT Thermostate die direkt an der Heizung ja immer leicht falsche Temperaturen messen.

rhasselbusch avatar Oct 26 '20 13:10 rhasselbusch

Habe es heute auch in Betrieb genommen. Meter auslesen geht hier auch gut. mit den Bots muss ich noch etwas experimentieren. Eben ging das schalten, kann also das known issue noch nicht bestätigen.

Aber eine Rückmeldung, wann der bot mit dem schalten fertig ist, gibt es nicht, oder?

Garfonso avatar Oct 26 '20 13:10 Garfonso

@mrbungle64

Ja, ich nutze den Adapter mit drei Switchbot "Meter" und es funktioniert bisher völlig problemlos. Ich nutze die Temperaturwerte als Offset zu den Temperaturfühlern meiner FRITZ DECT Thermostate die direkt an der Heizung ja immer leicht falsche Temperaturen messen.

@rohabu

Danke für die Rückmeldung - freut mich, dass es bei Dir gut funktioniert :+1:

mrbungle64 avatar Oct 26 '20 14:10 mrbungle64

@Garfonso

Habe es heute auch in Betrieb genommen. Meter auslesen geht hier auch gut.

Danke für die Rückmeldung :+1:

mit den Bots muss ich noch etwas experimentieren. Eben ging das schalten, kann also das known issue noch nicht bestätigen.

Aber eine Rückmeldung, wann der bot mit dem schalten fertig ist, gibt es nicht, oder?

Über den Datenpunkt "on" sollte es eine Rückmeldung geben. Manchmal dauert es je nach eingestelltem Intervall ein paar Sekunden bis sich der Wert ändert. Evtl. musst Du noch "control.inverseOnOff" ändern, falls die "Schaltrichtung" umgekehrt für den Bot eingestellt ist. Edit: Sorry, das gilt nur für den "Switch mode". Den anderen habe ich bisher noch nicht getestet. Ich schaue mir das später mal an.

mrbungle64 avatar Oct 26 '20 14:10 mrbungle64

... Aber eine Rückmeldung, wann der bot mit dem schalten fertig ist, gibt es nicht, oder?

@Garfonso

Ich habe mir mal den Code der Library dazu angeschaut. Da wird einfach davon ausgegangen, dass das Schalten nach 1 Sekunde beendet ist.

Für das Auslesen und Erkennen der Geräte verwende ich eine andere Library. Die hat bei mir aber beim Schalten vom Bot leider nur sehr unzuverlässig funktioniert.

Mal schauen, ob sich da (mit angemessenem Auswand) eine Lösung findet - mich stört das auch, dass man bisher nur über erneutes Abfragen der Zustände herausfinden kann, ob der Bot geschaltet hat bzw. sich im richtigen Zustand befindet.

mrbungle64 avatar Oct 26 '20 17:10 mrbungle64

Hat eigentlich jemand einen SwitchBot Curtain? Die Library unterstützt das Modell nämlich seit gestern. Dann würde ich mal versuchen das in den Adapter einzubauen. Ich selbst habe aber leider kein Gerät (Curtain) hier.

mrbungle64 avatar Oct 29 '20 20:10 mrbungle64

Leider nein. Da ich keine derartigen Gardinen habe, habe ich dafür keine Verwendung.

Wenn es die "Smart Humidifier" irgendwann mal wieder zu kaufen gibt kann ich aber mit denen dienen ;-)

rhasselbusch avatar Oct 29 '20 21:10 rhasselbusch

Leider nein. Da ich keine derartigen Gardinen habe, habe ich dafür keine Verwendung.

Wenn es die "Smart Humidifier" irgendwann mal wieder zu kaufen gibt kann ich aber mit denen dienen ;-)

Den kannte ich noch gar nicht ;) Bisher wird das Modell aber noch nicht von der Library unterstützt - aber das kann ja noch kommen.

mrbungle64 avatar Oct 29 '20 21:10 mrbungle64

Ich hätte die Curtain. Bin aber noch nicht zum testen gekommen. Vielleicht das Wochenende.Gruss

RedDev85 avatar Oct 30 '20 08:10 RedDev85

Ich hätte die Curtain. Bin aber noch nicht zum testen gekommen. Vielleicht das Wochenende.Gruss

Hallo @RedDev85

ok, dann versuche ich mal die Unterstüzung für die Curtain in den Adapter einzubauen. Ich gebe Dir dann Bescheid.

mrbungle64 avatar Oct 30 '20 08:10 mrbungle64

@RedDev85

die aktuelle Version kann nun immerhin schon mal die Zustände vom Curtain abfragen (position, light level, battery etc.) und entsprechen dafür Datenpunkte erstellen - es gibt aber noch keine Möglicheit das Gerät zu steuern. Das schaue ich mir demnächst dann auch mal an.

Bin gespannt auf Dein Feedback, da ich es ja wie gesagt selbst nicht testen kann ;)

mrbungle64 avatar Oct 30 '20 16:10 mrbungle64

Hallo mrbungle64,

leider bekomme ich den Adapter nicht installiert. Liegt es daran das ich den Broker auf WinDoof verwende?

anbei der Install-Log

Gruss

log.txt `

RedDev85 avatar Oct 30 '20 19:10 RedDev85

@RedDev85

Ja, unter Windows müsstest Du anders vorgehen. Du könntest mal folgende Anleitung für die wegen Bluetooth notwendigen Abhängigkeiten probieren: https://github.com/abandonware/noble#windows (wurde aber von mir nicht getestet, da ich kein Windows dafür benutze)

mrbungle64 avatar Oct 30 '20 19:10 mrbungle64

Ich hätte sonst auch den MiniHub von SwichBot

RedDev85 avatar Oct 30 '20 19:10 RedDev85

Leider ohne Erfolg. Ich würde gern helfen

log.txt

RedDev85 avatar Oct 30 '20 19:10 RedDev85

Leider ohne Erfolg. Ich würde gern helfen

log.txt

@RedDev85 Bitte der Anleitung folgen: https://github.com/abandonware/noble#windows Das war keine URL um die in den ioBroker zu packen, sondern ein Link zu einer Anleitung um die Abhängigkeiten zu installieren.

mrbungle64 avatar Oct 30 '20 20:10 mrbungle64

sorry mein fehler

RedDev85 avatar Oct 30 '20 20:10 RedDev85