SwitchBot Bot Alternative (ZigBee)

Ich bin per Zufall über den SwitchBot Bot gefallen. Gefällt mir vom Konzept her nicht so schlecht und könnte mir vorstellen, das z.B. für die Kaffeemaschine zu verwenden. Allerdings stört mich da wieder dieses Gateway, welches man quasi zwingend braucht.
Gibt es da Alternativen?

Hi,

meinst Du den SwitchBot Bot oder ein anderes Gerät? Sowas wie den Bot habe ich noch nie gesehen. Es gibt doch Schalter zum Einbau mit/ohne Neutral.

Ralf

Ich mein diesen da

Ich hab den Titel entsprechend angepasst. Danke für den Hinweis.

Ich habe das Teil als Bluetooth Variante hier liegen. Ist ganz lustig.

Grüße,
Kai

Ja, nur bringt mir die BT Variante in IPS eher wenig. Dachte es gäbe eine Alternative.

Ich glaube es gibt das auch als Zigbee Version, ich frage bei Gelegenheit mal nach.

Grüße,
Kai

Cool, vielen herzlichen Dank.

Eine Möglichkeit besteht, wenn man den Raspi als Sender benutzt https://github.com/OpenWonderLabs/python-host.

Gruß Dirk

Bin gerade über den thread gestolpert, vielleicht ja noch für jemand interessant. Ich kann zur Ansteuerung/Statusabfrage des switchbot folgendes Projekt für den esp32 und dann als mqtt device in symcon empfehlen:

Läuft seit ner ganzen Weile sehr zuverlässig.

Grüsse,
David

Hallo hinnie,
ich habe das Projekt von Github auf einem ESP32. Ich bekomme Werte
vom ESP32:

Ich kann aber nichts schalten/ auch nicht im Frontend.

Geht das nur per PHP? Und wenn ja wie? Habe es versucht und bin gescheitert.
Habe se mit SetValue (String) / RequestAction versucht, aber das hat nicht funktionniert. Er sendet nicht über MQTT an den ESP32. Mir fehlt aber auch die subscription für

  • ESPMQTTTopic/bot/name/set über die man wahrscheinlich nur schalten kann

Danke

Stefan

Hallo Kai,

hast du die in Smycon integriert bekommen? Ich laufe auf einem ESP32 um die SwitchBot BLE einzubinden (Über das SwitchBot in Github) . Daten kommen per MQTT aber ich kann nicht schalten. Siehe auch Nachricht an hinnie (siehe unten)

VG

Stefan

Hallo Stefan,

ja das ist etwas gemein am Anfang, ich musste auch nochmal kurz nachdenken, wie das genau war.

Man muss das Thema (bzw. Topic) mit /set verwenden und dann als Value (bzw. Payload) z.B. PRESS verwenden, um den Button einmal auszufahren und wieder einzufahren (bzw. halt einmal drücken lassen). Je nachdem was Du beim Switchbot machen möchtest, muss hier die entsprechende Payload eingetragen werden. Sollte das Topic /set über die Gerätesuche nicht vorhanden sein, einfach selber anlegen über eine neue Instanz → MQTT Server Device.

Hier die Passage auf der Readme des Github-Repos und dann ein Screenshot aus meiner Konfiguration:

ESP32 will subscribe to MQTT ‚set‘ topic for every configure device

  - <ESPMQTTTopic>/bot/<name>/set
  - <ESPMQTTTopic>/curtain/<name>/set
  - <ESPMQTTTopic>/meter/<name>/set
  - <ESPMQTTTopic>/contact/<name>/set
  - <ESPMQTTTopic>/motion/<name>/set

Send a payload to the 'set' topic of the device you want to control
  Strings:
    - "PRESS"
    - "ON"
    - "OFF"
    - "OPEN"
    - "CLOSE"
    - "PAUSE"
    - "STATEOFF"    (Only for bots in simulated ON/OFF mode)
    - "STATEON"     (Only for bots in simulated ON/OFF mode)

image

Damit solltest Du dann in der MQTT Server Device Konfiguration mit „Schalten“ den Switchbot betätigen können.

Um das ganze dann auch z.B. mit einem Schalter in Symcon zu steuern habe ich mir mit einer Boolean-Variable mit „~Switch“-Profil beholfen, im Standard steht die Variable auf „True“. Dazu noch ein Ablaufplan, der folgendes durchführt:

Auslöser: Schalter (Boolean-Variable) wird auf False gesetzt (z.B. über Webfront oder APP)
Aktion:

  1. Value des MQTT-Topic (das mit /set) wird der Wert PRESS gesetzt (Schalte auf PRESS)
  2. 2 Sekunden Warten (damit man auch im Webfront/APP merkt, dass was passiert
  3. Schalter (Boolean-Variable) wird wieder auf True gesetzt (damit alles wieder auf Anfang ist

Kann man sicher auch anderst lösen, aber für mich was das die einfachste Variante zur Steuerung im Webfront, gerne aber Vorschläge, wie es einfacher geht :slight_smile:

Hoffe das hilft, bei Fragen gerne fragen!

Grüße,
David

Danke für die Info,

wenn ich einen MQTT Server Device anlege ist der Value darin eine Statusvariable. D.h. ich habe den schalten Knopf nicht. Was machst du anders?

switchbot/esp32switchbot/bot/switchbotone/set

VG

Stefan

Gute Frage, eigentlich mach ich nichts anders, einfach nur Neue Instanz → MQTT Server Device. Ein paar Ideen/Ansatzpunkte:

  • Am am MQTT Server Device das Gateway konfiguriert bzw. MQTT-Server „verknüpft“ über „Gateway ändern“ oben in der Leiste?
  • Vielleicht eine andere Symcon-Version (ich benutze die 6.2 stable)?

Grüße,
David

Ja, bekomme ja auch alle anderen vom ESP32 gesendeten Daten.

VG

Stefan

Komisch, der Schalter ist zwar immer noch nicht da, aber heute kann ich über Änderung des Values schalten. Das reicht erst mal. Jetzt nur noch das Webfront bzw. View in IPS Studio anpassen.

Danke für dei Hilfe. Ich dachte eigentlich das MQTT immer vollständige broadcasts schickt.

VG

Stefan

Ist einfach mit einem eigenen Profil (String statt Bool für einen Switch) zu lösen. Braucht man kein Skript oder Ablaufplan

VG

Stefan

Dann hat sich das ja hier erledigt.
Ich hatte den Switchbot auch noch nicht integriert, ich hatte keine Lust auf die Fummelei mit Bluetooth. :smiley:

Grüße,
Kai