NEWS
Amazon Dash Button für ioBroker nutzen
-
Hallo alle
Hab mir mal einen Button bestellt und wollte den DashButton Adapter ausprobieren.
Habe also gemäß http://forum.iobroker.net/viewtopic.php?t=3986 libpcap instaliert und den Adapter geaddet. Keine Fehler in den Logs.
Aber wie geht es jetzt weiter?
Ich sehe als Objekte und Instanzen nur:
Fehlt da nicht was?Irgendein Datenpunkt der auf true geht wenn ich den Knopf drücke?
Gruss Ralf
-
Drück mal auf den Button!
ioBroker muss diesen erst einmalig erkennen, bevor du ihn verwenden kannst
-
Hi PArt
Hab ich schon 1000 mal gemacht.
Ich hab jetz mal noch zusätzlich dasher installiert und sende per XML-API einen Befehl. Das funktioniert. D.h. der Knopf funktoniert auch. Da ich aber mit der XML-API kein Licht toggeln kann (ich wüste zumindetst nicht wie) dachte ich, dass das über den Adapter geschickter geht.
Hab grad noch Folgendes festgestellt: Unter Objekte ist gar nichts. Wenn ich dann dash-button nochmal installiere gibt es wenigstens ein Objekt mit *.1
und auch unter Instanzen auch alle nochmal mit *.1
Aber trotzdem fehlt ein Datenpunkt .pressed oder ähnliches….
Gruss Ralf
-
Hast du ihn auch bei Deinem Amazon Konto angemeldet? Also sprich bluetooth Verbindung, dann im ins WLAN angemeldet?
-
Hast du ihn auch bei Deinem Amazon Konto angemeldet? Also sprich bluetooth Verbindung, dann im ins WLAN angemeldet? `
Ps: Falls noch nicht. Nur so weit anmelden bis du ein Produkt wählen solltest und dort dann einfach abbrechen. Sint bestellst du etwas.
Dein Router vergibt sogar dem Button eine eigene ip.
-
Hi charlyphyro~~@charlyphyro:~~
Hast du ihn auch bei Deinem Amazon Konto angemeldet? Also sprich bluetooth Verbindung, dann im ins WLAN angemeldet? `
Ps: Falls noch nicht. Nur so weit anmelden bis du ein Produkt wählen solltest und dort dann einfach abbrechen. Sint bestellst du etwas.
Dein Router vergibt sogar dem Button eine eigene ip. `
Klar, hab ich gemacht. Allerdings war kein Blutooth im Spiel (oder ich hab's nicht mitgekriegt).Ich habe den Button in der Amazon-App hinzugefügt, und kein Produkt ausgewählt. Danach alle Notifications abgeschaltet und im OpenWrt auf meinem Router eine Firewallregel eingebaut damit das Ding nicht nach Hause telefoniert, sondern im internen Netz bleibt.
Und wie gesagt mit Dasher funktioniert der Taster ja.
Gruss Ralf
-
Hat dein Rechner, auf dem ioBroker läuft eventuell mehrere Netzwerkadapter? Wenn ja, dann kannst du den passenden Adapter in den Einstellungen festlegen.
Sind ioBroker und Dash-Button im gleichen LAN? Sprich ist der WLAN Router eventuell in einem anderen Netz?
ioBroker fängt die ARP-Requests ab, diese müssen also von ioBroker empfangen werden können
-
Hi PArt
@PArt:Hat dein Rechner, auf dem ioBroker läuft eventuell mehrere Netzwerkadapter? Wenn ja, dann kannst du den passenden Adapter in den Einstellungen festlegen.
Sind ioBroker und Dash-Button im gleichen LAN? Sprich ist der WLAN Router eventuell in einem anderen Netz?
ioBroker fängt die ARP-Requests ab, diese müssen also von ioBroker empfangen werden können `
Der Rechner (Bananapi) hat einen Netzwerk und einen WLAN Anschluss. Verbunden ist er per WLAN.
In welchen Einstellungen kann ich den passenden Adapter einstellen? Der Dash-Button Adapter hat nur eine Einstellung "PCAP Interface (leer lassen um Standardadapter zu verwenden)". Die ist bei mir leer weil ich eh nicht wüsste was ich da eintragen soll.
Nochmal zum Verständnis. Auf dem gleichen Bananapi läuft ein Programm (dasher) das genau das macht: Die ARP Requests abfangen und dann einen XML-API Befehl absetzen (siehe auch http://www.bruhautomation.com/single-po … -Assistant)
D.h. doch: Wenn der dasher funktioniert dann sollte doch alles mit dem Knopf grundsätzlich stimmen oder? Ich hab den dasher auch mal gestoppt und ein paarmal den dashbutton gedrückt, damit ich ausschliessen kann dass der dazwischen fummelt. Aber im IOBroker ändert sich nix.
Gruss Ralf
-
Gib mal ifconfig auf der Konsole ein und trag den Namen des Interfaces ein, welches die richtige IP hat … Das DefaultInterface ist eth0, deshalb findet er bei dir nichts ...
An dem Beispiel meines Systems:
Hier wäre enp3s0 als Interface einzutragen.
-
Hi
Ifconfig liefert
root@ioBroker-BPi:~# ifconfig eth0 Link encap:Ethernet HWaddr 02:ce:0a:41:a3:17 UP BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) Interrupt:50 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:2817506 errors:0 dropped:0 overruns:0 frame:0 TX packets:2817506 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1 RX bytes:513015847 (489.2 MiB) TX bytes:513015847 (489.2 MiB) wlan0 Link encap:Ethernet HWaddr 80:1f:02:97:4e:8f inet addr:192.168.111.173 Bcast:192.168.111.255 Mask:255.255.255.0 inet6 addr: fd13:235b:7090:0:821f:2ff:fe97:4e8f/64 Scope:Global inet6 addr: fe80::821f:2ff:fe97:4e8f/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:550739 errors:0 dropped:0 overruns:0 frame:0 TX packets:819085 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:114906291 (109.5 MiB) TX bytes:211157211 (201.3 MiB)
Wie gesagt. Ich bin per WLAN im Netz.
Gruss Ralf
-
Hi, wie gesagt, dann trage
wlan0
ein
-
Ja aber wo denn????
…
Ach jetzt hab ich's glaub ich kapiert.
"PCAP interface" soll der Netzwerkadpter sein!?
Wie soll man denn da drauf kommen? Warum schreibt man nicht "Netzwerkadapter" da hin. Dann würde es jeder kapieren.
Was weiss ich den was ein PCAP Adapter sein soll?
Manchmal sitzen auch normale User vor dem Ding ;-))
Ich probier das morgen gleich mal aus.
Vielen Dank erstmal.
Gruss Ralf
-
-
Ja, hatte ich schon verstanden dass pcap ein Netzwerk Tool ist. Aber “pcap Adapter“ hätte ja alles mögliche sein können. Wenn ich da irgend einen String eingeben kann komme ich nicht gleich drauf, dass das einfach nur der schnöde NetzNetzwerkadapter ist ( sonst hätte man es ja hingeschrieben), sondern denke es ist irgend was anderes. Könnte ja sein dass mit der pcap Installation alle möglichen Adapter für irgendwas mitkommen. Weiss ich's? So klingt das auf jeden Fall für mich. Das ist wie wenn (blödes Beispiel) in der Word-Installation irgendwo nach dem Word-Port gefragt wird und eigentlich der Druckerport gemeint ist.
Stünde da "Netzwerkadapter für PCAP" wäre alles klar gewesen.
Aber jetzt hab ich es kapiert.
Gruss Ralf
-
Ich bin's nochmal.
Ich hab also wlan0 eingetragen, den Button zig mal gedrückt (dasher abgeschaltet um Konflikte zu vermeiden) aber:
Ich habe keine Amazon-Dash Objekte und von den Instanzen fehlt mir auch ein "pressed" oder was da normalerweise erscheinen müsste:
ACHTUNG und jetzt kommt das Interessante: Ich habe heute einen zweiten Dashbutton bekommen. Den habe ich gedrückt und DER wurde nun vom Adapter erkannt. Es gibt hier auch einen "pressed" Datenpunkt den man verwenden kann. Nur der erste Button wird nicht erkannt. Seltsam oder?
Gruss Ralf
-
Siehst du die MAC Adresse des alten irgendwo? Ich vermute das Amazon die MAC-Adress-Bereiche geändert hat und er deshalb nicht erkannt wird
MAC-Adressen haben die Form AA:BB:CC:DD:EE
-
Siehst du die MAC Adresse des alten irgendwo? Ich vermute das Amazon die MAC-Adress-Bereiche geändert hat und er deshalb nicht erkannt wird
MAC-Adressen haben die Form AA:BB:CC:DD:EE `
Klar.Die Macadresse sehe ich im OpenWRT und auch in der Fritzbox. Auch der Dasher hat 'ne Funktion um die auszugeben.
Die Macadresse ist 34:d2:70:0d:bc:3a
Und die funktoniert auch mit der Dasher-Software.
Ich habe dort eine config-datei die diese Mac-Adresse abfängt und dann einen
"http://ccu/config/xmlapi/statechange.cg … ew_value=1"
Befehl absetzt. Der schaltet dann das Licht im Esszimmer auch an. Funktioniert also grundsätzlich. Nur der IOBroker weigert sich das Teil zu sehen.
Ich habe es jetzt aber glaub ich komplett verbockt:
Ich dachte es wäre ne gute Idee den Button in der Amazon-Shopping App abzumelden und einfach neu anzumelden. Ich hatte aber vergessen, dass ich die Mac-Adresse in den OpenWRT Firewall Regeln geblockt hatte (der Dash Button darf nicht nach Hause telefonieren).
Jetzt wurde der Button zwar aus der App entfern, ist also nicht mehr unter meinen Geräten zu finden, aber durch die Firewall-Regeln konnte er wohl auch nicht von Amazon resettet werden, so dass er immer noch die WLAN Konfiguration hat. Das sorgt nun aber dafür dass ich ihn nicht mehr neu anmelden kann. Das wäre im Grund ja auch nicht schlimm - Ich will damit ja nicht einkaufen -, aber ich kann nun auch nciht testen ob eine Neuanmeldung ev. die Situation im IOBroker geändert haette (wobei ich das nicht glaube).
Gruss Ralf
-
Ich hab gerade ein neues Update veröffentlicht, welches diese neue Adress-Familie mit berücksichtigt. Anscheinend hat Amazon ein paar neue MACs bekommen.
Update mal den Adapter, sobald das Update bei dir angezeigt wird (0.1.2)
Der Adapter scannt nach einem DHCP Broadcast, von daher ist es diesem ziemlich egal, ob der Button angemeldet ist oder nicht, er muss sich nur in dein WLAN einbuchen können.
-
Hi PArt
Prüfst Du nur einen bestimmten MAC-Adressen Bereich? Warum eigentlich?
PS: Hab grad mit Amazon telefoniert: Bekomme einen Neuen.
Mal sehen ob der besser geht.
Gruss Ralf
-
Ich habe eine Lib in der vermerkt ist, welche MAC-Adressen zu welchem Hersteller gehören, da ja auch andere Geräte einen DHCP bzw. ARP Request ins Netz senden. Der Adapter fängt diese ab und erkennt anhand dessen, ob sich ein Gerät ins Netz einbucht. Damit nicht alle Geräte erkannt werden, beschränkt die Liste diese eben nur auf Amazon Geräte. Deine MAC bzw. die ersten 6 Oktette fehlten in der Liste.
Das passiert leider immer mal wieder, auch werden leider noch einige Geräte falsch erkannt, lässt sich aber leider ohne eine komplette Liste nicht vermeiden. Werde diese bei Gelgenheit mal auf den aktuellen Stand bringen. Allerdings sind die Dash-Buttons auch mehr Proof of concept, als wirklich als Schalter zu gebrauchen, da die Schaltzeiten durch dieses Verfahren doch relativ langsam sind…