[Xiaomi Smart Home] Das Modul

Begonnen von torte, 24 Oktober 2017, 10:08:47

Vorheriges Thema - Nächstes Thema

Blackcat

Ich habe den Aqara Gateway (also wahrscheinlich V2) leider aber in der neuesten Firmware ohne Passwortmenü dafür bekomme ich aber meinen Token.

Tortes Modul erkennt zwar mein Gateway aber ich habe eben kein Passwort mehr
Viele Grüße Sandra - FHEM Style Entwicklerin iOS6+12
-----
ZBox nano, Homematic, Homebridge, Hue + Mi Light, ZWave, Dyson, etc.
https://www.foodcat.de
https://www.youtube.com/c/FoodCat (hier gibt es auch immer mehr Hausautomatisierungsvideos)


dominik

#242
Alle die Xiaomi Tokens benoetigen, hier nun eine einfache Moeglichkeit in FHEM direkt ueber die Xiaomi Cloud:

Zuerst PythonBinding installieren, siehe https://github.com/dominikkarall/fhem_pythonbinding
und dann...
define xiaomi_tokens PythonModule xiaomi_tokens
set xiaomi_tokens username USERNAME
set xiaomi_tokens password PASSWORD
set xiaomi_tokens get_tokens


Danach sind in den Readings alle Tokens. :) Großes Danke an micloud für die Entwicklung in Python die ich genutzt habe!
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Superposchi

Hallo,

ich habe da mal eine Frage zu XIAOMI und seinen Aktoren. Hab in der Vielzahl der Möglichkeiten die Übersicht verloren.

Ich versuche einen Aqara Hub V3 über das XIAOMISmartHome-Modul in Fhem einzubinden.
Das Device ließ sich auch ordendlich anlegen. Doch er verlangt noch ein Passwort, das Hexagonal und 16 Zeichen lang sein soll.

Habe den Hub in der MI Home App über den chinesischen Server laufen (ist also wohl eine China-Version). Aber da fangen die Diskrepanzen schon an.
Es gibt offensichtlich China-Produkte und Europa-Produkte. Aqara V3 und Miija V2 und V3 und das alles in Kombination.
Dazu kommt noch, dass es unzählige Beschreibungen über das Auslesen des Token (handelt es sich dabei um das Passwort?) zu den unterschiedlichen App-Versionen gibt.

Ich habe einen 32 stelligen Token über eine alte russische App ausgelesen. Entspricht dieser nun dem oben geforderten Paswort und muss nur umgewandelt werden oder ist dieses Passwort wieder was ganz anderes? Wenn umgewandelt, dann wie und womit?

Superposchi

ZitatAlle die Xiaomi Tokens benoetigen, hier nun eine einfache Moeglichkeit in FHEM direkt ueber die Xiaomi Cloud:
Ich habe zwangsweise einen Acount über den deutschen Server und einen über den chinesischen Server. Beide mit gleichen Zugangsdaten.
Werden dann die tokens von beiden Servern aufgelistet?

Wird auch das Passwort gelistet, das in dem XIAOMISmartHome-Modul für das Gateway benötigt wird?

iHome

@Superposchi:
Habe heute meine Aqara-Komponenten (Hub, Türkontakte, Bewegungsmelder) erhalten und installiert.
Ich kriege wie Du nur den Hub rein und keine angebundenen Komponenten.
Passwort hab ich auch vergeblich gesucht...
Eine Lösung würde mich auch interessieren.

Thurindot

Moin.

Ich hab geplant, die Temperatursensoren einzusetzen und habe daher analog dieser Anleitung https://wiki.gorjup.de/doku.php?id=public:fhem_zigbee_cc2531 alles eingerichtet. Das scheint an sich auch alles funktioniert zu haben, zumindest zeigt die xBridge als Status "online" und auch das MQTT steht auf "active" und "opened". permit_join ist "true"
Nun wollte ich den ersten Sensor anlernen, der taucht aber nach dem Pairing nicht auf. Stattdessen hab ich im Eventlog eine Datenwust an Readings aus der Bridge nach dem set pair 1 Befehl

Ausschnittsweise dargestellt:
2021-02-20 13:16:13 XiaomiMQTTDevice xBridge pair 1
2021-02-20 13:16:13 XiaomiMQTTDevice xBridge transmission-state: outgoing publish acknowledged
2021-02-20 13:16:13 XiaomiMQTTDevice xBridge transmission-state: incoming publish received
2021-02-20 13:16:13 XiaomiMQTTDevice xBridge transmission-state: outgoing publish acknowledged
2021-02-20 13:16:13 XiaomiMQTTDevice xBridge transmission-state: incoming publish received
2021-02-20 13:16:13 XiaomiMQTTDevice xBridge logging: {"level":"info","message":"Zigbee: allowing new devices to join."}
2021-02-20 13:16:14 XiaomiMQTTDevice xBridge transmission-state: incoming publish received
2021-02-20 13:16:14 XiaomiMQTTDevice xBridge logging: {"level":"info","message":"MQTT publish: topic 'zigbee2mqtt/bridge/info', payload '{\"commit\":\"99274c7\",\"config\":{\"advanced\":{\"adapter_concurrent\":null,\"adapter_delay\":null,\"availability_blacklist\":[],\"availability_blocklist\":[],\"availability_passlist\":[],\"availability_timeout\":0,\"availability_whitelist\":[],\"cache_state\":true,\"cache_state_persistent\":true,\"cache_state_send_on_startup\":true,\"channel\":11,\"elapsed\":false,\"ext_pan_id\":[221,221,221,221,221,221,221,221],\"homeassistant_discovery_topic\":\"homeassistant\",\"homeassistant_legacy_triggers\":true,\"homeassistant_status_topic\":\"hass/status\",\"last_seen\":\"disable\",\"legacy_api\":true,\"log_directory\":\"/opt/zigbee2mqtt/data/log/%TIMESTAMP%\",\"log_file\":\"log.txt\",\"log_level\":\"info\",\"log_output\":[\"console\",\"file\"],\"log_rotation\":true,\"log_syslog\":{},\"pan_id\":6754,\"report\":false,\"soft_reset_timeout\":0,\"timestamp_format\":\"YYYY-MM-DD HH:mm:ss\"},\"ban\":[],\"blocklist\":[],\"device_options\":{},\"devices\":{},\"experimental\":{\"output\":\"json\"},\"external_converters\":[],\"groups\":{},\"homeassistant\":false,\"map_options\":{\"graphviz\":{\"colors\":{\"fill\":{\"coordinator\":\"#e04e5d\",\"enddevice\":\"#fff8ce\",\"router\":\"#4ea3e0\"},\"font\":{\"coordinator\":\"#ffffff\",\"enddevice\":\"#000000\",\"router\":\"#ffffff\"},\"line\":{\"active\":\"#009900\",\"inactive\":\"#994444\"}}}},\"mqtt\":{\"base_topic\":\"zigbee2mqtt\",\"force_disable_retain\":false,\"include_device_information\":false,\"server\":\"mqtt://localhost:1883\"},\"passlist\":[],\"permit_join\":true,\"serial\":{\"disable_led\":false,\"port\":\"/dev/serial/by-id/usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B001CD4161E-if00\"},\"whitelist\":[]},\"config_schema\":{\"definitions\":{\"device\":{\"properties\":{\"debounce\":{\"description\":\"Debounces messages of this device\",\"title\":\"Debounce\",\"type\":\"number\"},\"debounce_ignore\":{\"description\":\"Protects unique payload values of specified payload properties from overriding within debounce time\",\"examples\":[\"action\"],\"items\":{\"type\":\"string\"},\"title\":\"Ignore debounce\",\"type\":\"array\"},\"filtered_attributes\":{\"description\":\"Allows to prevent certain attributes from being published\",\"examples\":[\"temperature\",\"battery\",\"action\"],\"items\":{\"type\":\"string\"},\"title\":\"Filtered attributes\",\"type\":\"array\"},\"friendly_name\":{\"description\":\"Used in the MQTT topic of a device. By default this is the device ID\",\"readOnly\":true,\"title\":\"Friendly name\",\"type\":\"string\"},\"optimistic\":{\"description\":\"Publish optimistic state after set (default true)\",\"title\":\"Optimistic\",\"type\":\"boolean\"},\"qos\":{\"descritption\":\"QoS level for MQTT messages of this device\",\"title\":\"QoS\",\"type\":\"number\"},\"retain\":{\"description\":\"Retain MQTT messages of this device\",\"title\":\"Retain\",\"type\":\"boolean\"},\"retention\":{\"description\":\"Sets the MQTT Message Expiry in seconds, Make sure to set mqtt.version to 5\",\"title\":\"Retention\",\"type\":\"number\"},\"retrieve_state\":{\"description\":\"Retrieves the state after setting it (Should only be enabled when the reporting feature does not work for this device)\",\"title\":\"Retrieve State\",\"type\":\"boolean\"}},\"required\":[\"friendly_name\"],\"type\":\"object\"},\"group\":{\"properties\":{\"devices\":{\"items\":{\"type\":\"string\"},\"type\":\"array\"},\"filtered_attributes\":{\"items\":{\"type\":\"string\"},\"type\":\"array\"},\"friendly_name\":{\"type\":\"string\"},\"optimistic\":{\"type\":\"boolean\"},\"qos\":{\"type\":\"number\"},\"retain\":{\"type\":\"boolean\"}},\"required\":[\"friendly_name\"],\"type\":\"object\"}},\"properties\":{\"advanced\":{\"properties\":{\"adapter_concurrent\":{\"description\":\"Adapter concurrency (e.g. 2 for CC2531 or 16 for CC26X2R1) (default: null, uses recommended value)\",\"title\":\"Adapter concurrency\",\"type\":[\"number\",\"null\"]},\"adapter_delay\":{\"title\":\"Adapter delay\",\"type\":[\"number\",\"null\"]},\"availability_blacklist\":{\"items\":{\"type\":\"string\"},\"title\":\"Availability blacklist (deprecated)\",\"type\":\"array\"},\"availability_blocklist\":{\"description\":\"Prevent devices from being checked for availability\",\"items\":{\"type\":\"string\"},\"title\":\"Availability Blocklist\",\"type\":\"array\"},\"availability_passlist\":{\"description\":\"Only enable availability check for certain devices\",\"items\":{\"type\":\"string\"},\"title\":\"Availability passlist\",\"type\":\"array\"},\"availability_timeout\":{\"default\":0,\"description   usw usw usw usw .....

...endet dann irgendwann mit:

2021-02-20 13:16:14 XiaomiMQTTDevice xBridge transmission-state: incoming publish received
2021-02-20 13:16:14 XiaomiMQTTDevice xBridge logging: {"level":"info","message":"MQTT publish: topic 'zigbee2mqtt/bridge/config', payload '{\"commit\":\"99274c7\",\"coordinator\":{\"meta\":{\"maintrel\":3,\"majorrel\":2,\"minorrel\":6,\"product\":0,\"revision\":20190608,\"transportrev\":2},\"type\":\"zStack12\"},\"log_level\":\"info\",\"network\":{\"channel\":11,\"extendedPanID\":\"0xdddddddddddddddd\",\"panID\":6754},\"permit_join\":true,\"version\":\"1.17.1\"}'"}
2021-02-20 13:16:14 XiaomiMQTTDevice xBridge transmission-state: incoming publish received
2021-02-20 13:16:14 XiaomiMQTTDevice xBridge config: {"commit":"99274c7","coordinator":{"meta":{"maintrel":3,"majorrel":2,"minorrel":6,"product":0,"revision":20190608,"transportrev":2},"type":"zStack12"},"log_level":"info","network":{"channel":11,"extendedPanID":"0xdddddddddddddddd","panID":6754},"permit_join":true,"version":"1.17.1"}



Das Bridge Reading mit diesem Info-Wust taucht auch unabhängig vom Pairing alle 7 Minuten auf, wie es scheint.

Jemand Ideen?

DeeSPe

Moin Leute,

ich habe mir heute einen "Aqara Hub M2" bestellt. Ist der mit diesem Modul funktionsfähig oder brauche ich ein anderes Modul? Oder soll man lieber doch den alten "Aqara Hub M1S" nehmen? Ich sehe hier noch nicht ganz durch.
Und wird das Modul mittlerweile im FHEM Update verteilt?

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

DeeSPe

Zitat von: DeeSPe am 20 Februar 2021, 14:09:53
Moin Leute,

ich habe mir heute einen "Aqara Hub M2" bestellt. Ist der mit diesem Modul funktionsfähig oder brauche ich ein anderes Modul? Oder soll man lieber doch den alten "Aqara Hub M1S" nehmen? Ich sehe hier noch nicht ganz durch.
Und wird das Modul mittlerweile im FHEM Update verteilt?

Gruß
Dan

Offensichtlich funktioniert hier überhaupt nichts mehr.
Nachdem ich nun meinen Hub bekommen habe, muss ich feststellen dass es den benötigten "dev mode" nicht mehr gibt und somit der Hub wohl wertlos für die Verwendung mit FHEM ist. Oder gibt es noch andere Möglichkeiten den in FHEM zu benutzen?
Aus lauter Enttäuschung habe ich mir nun einen Conbee II Stick bestellt, der funktioniert mit FHEM und auch die Aqara Geräte sollen daran funktionieren. Mal schauen.

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

okiberlin

Zitat von: dude am 27 September 2019, 22:55:07
Hi,

@slowfinger, @torte (Startup-Problem):
Ich hatte das gleiche Problem, und zwar nach dem Update von Raspbian Stretch auf Buster.
Das Problem scheint im Perl-Modul IO::Socket::Multicast in Verbindung mit Perl 5.28 zu liegen. Mit folgendem Patch startet FHEM bei mir wieder:


--- a/lib/IO/Socket/Multicast.pm 2019-09-27 22:24:18.358025842 +0200
+++ b/lib/IO/Socket/Multicast.pm 2019-09-27 22:24:28.548756284 +0200
@@ -99,7 +99,7 @@
   my $sock = shift;
   my $prev = ${*$sock}{'io_socket_mcast_dest'};
   if (my $dest = shift) {
-    $dest = sockaddr_in($2,inet_aton($1)) if $dest =~ /^($IP):(\d+)$/;
+    $dest = sockaddr_in(int($2),inet_aton($1)) if $dest =~ /^($IP):(\d+)$/;
     croak "invalid destination address" unless length($dest) == 16;
     ${*$sock}{'io_socket_mcast_dest'} = $dest;
   }


In der Annahme, dass es sich um einen Bug in IO::Socket::Multicast handelt, habe ich auch ein Bug-Report bei CPAN erstellt: https://rt.cpan.org/Ticket/Display.html?id=130581

Viele Grüße
dude

Hallo

ich hatte genau das gleiche Problem, nachdem ich alles auf einem neuen Server einrichten wollte. Der Patch an der multicast.pm hat es gelöst.

Viele Grüße und vielen Dank für das Modul
Olaf

chris_kmn

Wo findet man die multicast.pm auf einem Raspi ? Ich habe die Vermutung, dass das Modul per apt installiert ist und man damit den Patch nicht installieren kann, richtig ?

apt-get install libio-socket-multicast-perl


Tom71

Hallo,
gibt es schon eine Möglichkeit den Aqara Hub M1S einzubinden? Evtl. über HomeKit? Ich habe vergeblich versucht den Development-Mode einzuschalten. Weder in der Xiaomi Home App noch in der Aqara App ist das möglich.
Homematic | RaspberryMatic