homebridge/homekit

Begonnen von justme1968, 01 Februar 2016, 16:16:37

Vorheriges Thema - Nächstes Thema

hoppel118

#3270
Wow, danke! Habe gerade mal ein Bisschen damit herumgespielt. Ich habe es aber nicht geschafft, so eine blanko UUID mit einem Schalter zu verbinden. Ich wollte eine Characteristic "Natürlicher Wind" erstellen, um bei meinem Ventilator von der Windart "straight" (Schalter: AUS) zu "natural" (Schalter: EIN) wechseln zu können:

b31c4c44-25b6-41da-9b8f-7bab1e21ce12:mode,name=Natürlicher+Wind,cmdOff=mode+straight,cmdOn=mode+natural,valueOff=straight,valueOn=natural

Das funktioniert so aber nicht. Evtl. bin ich da zu naiv. ;) EVE hängt sich beim Starten komplett auf. Vielleicht hat ja noch jemand anderes eine Idee?

Viele Grüße Hoppel
Server: Openmediavault, XEON E3-1240L-v5, Supermicro X11SSH-CTF, 64GB ECC RAM, SSD, RAID-Z2
Homebridge | Alexa | Yowsup
Homematic | HomeConnect | MQTT | Philips Hue | Sonos | Unifi Network & Protect | vbus | Xiaomi

arokh12

Zitat von: hoppel118 am 19 Juni 2019, 17:19:57
Wow, danke! Habe gerade mal ein Bisschen damit herumgespielt. Ich habe es aber nicht geschafft, so eine blanko UUID mit einem Schalter zu verbinden. Ich wollte eine Characteristic "Natürlicher Wind" erstellen, um bei meinem Ventilator von der Windart "straight" (Schalter: AUS) zu "natural" (Schalter: EIN) wechseln zu können:

b31c4c44-25b6-41da-9b8f-7bab1e21ce12:mode,name=Natürlicher+Wind,cmdOff=mode+straight,cmdOn=mode+natural,valueOff=straight,valueOn=natural

Das funktioniert so aber nicht. Evtl. bin ich da zu naiv. ;) EVE hängt sich beim Starten komplett auf. Vielleicht hat ja noch jemand anderes eine Idee?

Viele Grüße Hoppel

Von den UUIDs habe ich zwar nicht soviel Ahnung, aber beim drüber gucken ist mir aufgefallen, dass im Beispiel nach der UUID ein = ist und bei dir ein :

Vielleicht liegt es ja schon daran.


Gesendet von iPad mit Tapatalk

Typ1er

@hoppel118

zum Lüfter, die Kindersicherung geht (in Home und Eve)
genericDeviceType Fan
On=power,valueOn=on,cmdOn=on,cmdOff=off
RotationSpeed=level,minValue=0,maxValue=100,cmd=level,delay=1
LockPhysicalControls=child_lock,values=on:CONTROL_LOCK_ENABLED;off:CONTROL_LOCK_DISABLED,cmds=CONTROL_LOCK_ENABLED:child_lock+on;CONTROL_LOCK_DISABLED:child_lock+off

hoppel118

Ja, sauber. Das war tatsächlich das letzte, was mir bei dem Lüfter noch gefehlt hat. Tatsächlich habe ich schon so viele Möglichkeiten durchprobiert... Aber es kam einfach nichts. Mit deiner Charateristic kam auch nichts, aber durch deine Aussage, dass es funktioniert, kam ich nun auf die Idee in der EVE App mal auf das kleine Zahnrad zu tippen. Siehe da, da gibt es eine Kindersicherung und sie funktioniert. ;)


Hier meine Mappings für die beiden Lüfter:

Xiaomi DC Pedestal Fan

genericDeviceType Fan


clear
On:power,cmdOn=on,cmdOff=off,valueOn=on,valueOff=off
LockPhysicalControls=child_lock,values=on:CONTROL_LOCK_ENABLED;;off:CONTROL_LOCK_DISABLED,cmds=CONTROL_LOCK_ENABLED:child_lock+on;CONTROL_LOCK_DISABLED:child_lock+off
RotationSpeed=level,minValue=0,maxValue=100,cmd=level,delay=1
TargetTiltAngle=angle,minValue=30,maxValue=120,minStep=30,cmd=angle
SwingMode=angle_enable,values=on:SWING_ENABLED;;off:SWING_DISABLED,cmdOn=angle_enable+on,cmdOff=angle_enable+off
CurrentRelativeHumidity=humidity
CurrentTemperature=temperature
BatteryLevel=batteryPercent,maxValue=100,minValue=0,minStep=1
AudioFeedback:buzzer,cmdOn=buzzer+on,cmdOff=buzzer+off,valueOn=on,valueOff=off
NightVision:led,cmdOn=led+off,cmdOff=led+bright,valueOn=off,valueOff=bright
Mute:mode,cmdOn=mode+straight,cmdOff=mode+natural,valueOn=straight,valueOff=natural
history:size=1024


Xiaomi Standing Fan 2S

genericDeviceType Fan

clear
On:power,cmdOn=on,cmdOff=off,valueOn=on,valueOff=off
LockPhysicalControls=child_lock,values=on:CONTROL_LOCK_ENABLED;;off:CONTROL_LOCK_DISABLED,cmds=CONTROL_LOCK_ENABLED:child_lock+on;CONTROL_LOCK_DISABLED:child_lock+off
RotationSpeed=level,minValue=0,maxValue=100,cmd=level,delay=1
TargetTiltAngle=angle,minValue=30,maxValue=120,minStep=30,cmd=angle
SwingMode=angle_enable,values=on:SWING_ENABLED;;off:SWING_DISABLED,cmdOn=angle_enable+on,cmdOff=angle_enable+off
AudioFeedback:buzzer,cmdOn=buzzer+on,cmdOff=buzzer+off,valueOn=on,valueOff=off
NightVision:led,cmdOn=led+off,cmdOff=led+bright,valueOn=off,valueOff=bright
Mute:mode,cmdOn=mode+straight,cmdOff=mode+natural,valueOn=straight,valueOff=natural


Im Großen und Ganzen dasselbe. Beim neueren Modell fehlen allerdings die Sensoren/Readings für battery, humidity und temperature. Außerdem funktioniert beim neueren Modell AudioFeedback noch nicht, weil "buzzer" nicht funktioniert. Vielleicht kann Markus da mal was machen... Bei dem älteren Modell funktioniert die history für humidity und temperature nicht, da der genericDeviceType Fan verwendet wird. Evtl. kann Andre da mal was machen...

Ich habe mich bei den Characteristics wie schon erwähnt an verfügbaren Characteristics orientiert und diese verwendet. Von daher sind die Bezeichnungen der Schalter in Eve nicht unbedingt immer passend/selbsterklärend.


  • Mit AudioFeedback/Audio-Bestätigung werden die Töne des Lüfters ein bzw. ausgeschaltet.
  • Mit NightVision/Nachtsicht werden die LEDs ein bzw. ausgeschaltet.
  • Mit Mute/Audio wird der Windmodus von Straight zu Natural geschaltet.
  • Der Rest ist selbsterklärend.

Ich werde das bei Gelegenheit mal alles ins Wiki übertragen, sobald ich das Gefühl habe, das es perfekt ist.

Viele Grüße Hoppel
Server: Openmediavault, XEON E3-1240L-v5, Supermicro X11SSH-CTF, 64GB ECC RAM, SSD, RAID-Z2
Homebridge | Alexa | Yowsup
Homematic | HomeConnect | MQTT | Philips Hue | Sonos | Unifi Network & Protect | vbus | Xiaomi

hoppel118

Hast du eine Idee, wie das mit den subtypes funktioniert? Ich würde gerne eine Kategorie "Verbrauchsmaterial" bei meinem Robosauger anlegen, die dann die ganzen Status der Bürsten, Filter und Sensoren beinhaltet. Das würde das ganze etwas übersichtlicher machen. In deinem Screenshot gibt es so etwas, heißt dort einmal "Homebridge Instances" und einmal "Feinstaub".

https://forum.fhem.de/index.php?action=dlattach;topic=48558.0;attach=121176;image

Einfach "subtype=Verbrauchsmaterial" am Ende der Characteristic ergänzen funktioniert irgendwie nicht.

2af6d0d0-3691-4f0d-9c9c-c1098295b1cb=consumables_sensors,name=Reinigung+Sensoren,minValue=0,maxValue=100,format=FLOAT,minStep=1,unit=%,subtype=Verbrauchsmaterial
fd11b965-052e-430f-b08f-206287d8bc00=consumables_filter,name=Austausch+Filter,minValue=0,maxValue=100,format=FLOAT,minStep=1,unit=%,subtype=Verbrauchsmaterial
fe7a8dac-dff3-4a07-8a5e-0d6abbf0df0c=consumables_main_brush,name=Austausch+Hauptbürste,minValue=0,maxValue=100,format=FLOAT,minStep=1,unit=%,subtype=Verbrauchsmaterial
4f9b2a22-b764-4fc1-8cd2-99383924394c=consumables_side_brush,name=Austausch+Seitenbürste,minValue=0,maxValue=100,format=FLOAT,minStep=1,unit=%,subtype=Verbrauchsmaterial


Viele Grüße Hoppel
Server: Openmediavault, XEON E3-1240L-v5, Supermicro X11SSH-CTF, 64GB ECC RAM, SSD, RAID-Z2
Homebridge | Alexa | Yowsup
Homematic | HomeConnect | MQTT | Philips Hue | Sonos | Unifi Network & Protect | vbus | Xiaomi

Typ1er

Das mit den Instanzen ist ein separates HomebridgePlugin https://github.com/SeydX/homebridge-instances-platform

dort Taucht jede Instanz als eigenes Gerät auf, als auch in dieser gemeinsamen Liste, wie das gelöst ist, da habe ich keine Info.

hoppel118

#3276
Jo, aber das muss auch ohne Plugin gehen. Vorhin hatte ich das zufällig kurz mal, als ich mich mit subtypes oder characteristic names beschäftigt hatte:

Habe es aber direkt wieder gelöscht und nun keine Ahnung mehr, was ich gemacht hatte.

Ansonsten habe ich gerade meine Mappings für die beiden Lüfter im Wiki ergänzt. Außerdem habe ich (leicht angepasst) dein Mapping für den Roborock S50 veröffentlicht. Dickes Danke dafür.

https://wiki.fhem.de/wiki/Homebridge_User_Configs

Bilder habe ich auch gleich hochgeladen.

Evtl. sollten wir unsere Erkenntnisse zu den Custom Characteristics auch im Wiki dokumentieren.

Viele Grüße Hoppel
Server: Openmediavault, XEON E3-1240L-v5, Supermicro X11SSH-CTF, 64GB ECC RAM, SSD, RAID-Z2
Homebridge | Alexa | Yowsup
Homematic | HomeConnect | MQTT | Philips Hue | Sonos | Unifi Network & Protect | vbus | Xiaomi

Typ1er

Also bei meinem Ventilator passt dein Beispiel nicht ganz, meinem fehlen Temp. und Feuchte. Auch der Akku gibt keine Kapazität bekannt. Das hat meiner garnicht, ist der Fan mit Akku Modell 2018


TargetTiltAngle ist auch irgendwie das Falsche (Lamellenverstellung), siehe die Bilder hier https://github.com/YinHangCode/homebridge-mi-fan/issues/5

mit dem subtype verstehe ich so, wenn aus einem Reading gleich 3 Geräte erstellt werden sollen, das sollte bei den 4 Filtern nicht klappen

genericDeviceType gibt es auch noch einen Fanv2, wo hier der Unterschied ist, keine Ahnung

hoppel118

#3278
Zitat von: Typ1er am 20 Juni 2019, 08:58:05
Also bei meinem Ventilator passt dein Beispiel nicht ganz, meinem fehlen Temp. und Feuchte. Auch der Akku gibt keine Kapazität bekannt. Das hat meiner garnicht, ist der Fan mit Akku Modell 2018

Ich hatte doch zwei Beispiele gepostet. Eins mit humidity, temperature und battery und eins ohne. Dann musst du wohl das zweite nehmen. Wie gesagt, mein 2019er Ventilator stellt diese Readings auch nicht mehr bereit, weil ihm die Sensoren fehlen. Das hatten wir doch hier irgendwo schon geklärt.

Zitat von: Typ1er am 20 Juni 2019, 08:58:05
mit dem subtype verstehe ich so, wenn aus einem Reading gleich 3 Geräte erstellt werden sollen, das sollte bei den 4 Filtern nicht klappen

Ok, das kann sein.

Zitat von: Typ1er am 20 Juni 2019, 08:58:05
genericDeviceType gibt es auch noch einen Fanv2, wo hier der Unterschied ist, keine Ahnung

Hatte ich getestet, aber hier waren auch standardmäßig Characteristics dabei, die unsere Ventilatoren nicht unterstützen.

Für konkrete Verbesserungsvorschläge bin ich offen. ;)

Gruß Hoppel
Server: Openmediavault, XEON E3-1240L-v5, Supermicro X11SSH-CTF, 64GB ECC RAM, SSD, RAID-Z2
Homebridge | Alexa | Yowsup
Homematic | HomeConnect | MQTT | Philips Hue | Sonos | Unifi Network & Protect | vbus | Xiaomi

hoppel118

#3279
Ich ziehe dieses Thema nochmal aus dem vorangegangenen Post heraus und ergänze etwas.

Zitat von: Typ1er am 20 Juni 2019, 08:58:05
TargetTiltAngle ist auch irgendwie das Falsche (Lamellenverstellung), siehe die Bilder hier https://github.com/YinHangCode/homebridge-mi-fan/issues/5

Ich habe versucht, möglichst viele Funktionen abzubilden, auch wenn die dafür von mir verwendeten Characteristics nicht 100%ig passen. Ok, diese Characteristic ist eigentlich für Lamellen gedacht. Man kann damit aber auch super den Schwenkwinkel (30', 60', 90' und 120') einstellen. Das sollte ich im Wiki vielleicht auch nochmal erläutern.

In dem Github-Screenshot sieht man noch die Drehrichtung (characteristic: RotationDirection). Diese Characteristic müssen wir noch ergänzen. Wobei das auch nicht wirklich die Drehrichtung ist, habe ich gerade festgestellt. Man kann damit die Windrichtung leicht justieren, wenn Schwenken deaktiviert ist.

Die folgende Frage bleibt: Kann man irgendwie die Namen von Standard Characteristics verändern?

Gruß Hoppel
Server: Openmediavault, XEON E3-1240L-v5, Supermicro X11SSH-CTF, 64GB ECC RAM, SSD, RAID-Z2
Homebridge | Alexa | Yowsup
Homematic | HomeConnect | MQTT | Philips Hue | Sonos | Unifi Network & Protect | vbus | Xiaomi

Typ1er

#3280
also meiner Kann in der Xiaomi App

-Natürlicher Wind
-Buzzer
-Led (high. low, aus)
-Schwenken (aus, 30°, 60°, 90°, 120°)
-links/rechts drehen
-Timer
-Device malfunktion alert
-Kindersicherung

und hat 4 Hardwaretasten zur Bedienung + Bluetooth Fernbedienung

Die Namen von Standard Characteristics wird man nicht verändern können, da er jeweils in die Landessprache übersetzt wird und das ist denke ich hinterlegt im iOS.

hoppel118

#3281
Zitat von: Typ1er am 20 Juni 2019, 14:50:27
also meiner Kann in der Xiaomi App

-Natürlicher Wind
-Buzzer
-Led (high. low, aus)
-Schwenken (aus, 30°, 60°, 90°, 120°)
-links/rechts drehen
-Timer
-Device malfunktion alert
-Kindersicherung

Jo, damit kann er genau das, was mein 2019er Fan 2S auch kann.

Zitat von: Typ1er am 20 Juni 2019, 14:50:27
und hat 4 Hardwaretasten zur Bedienung + Bluetooth Fernbedienung

Die 4 Hardwaretasten und die Bluetooth-Fernbedienung wurden bei meinem 2S dann wieder eingespart. Bluetooth hat er aber noch für den initialen Verbindungsvorgang. Danach wird er dann natürlich über Wifi angesprochen. Der 2S hat oben und hinten jeweils nur eine Taste, so wie beim älteren Modell. Das muss ich im Wiki nochmal konkretisieren, damit sich andere Leute direkt die richtigen Homebridgemappings ziehen.

Zitat von: Typ1er am 20 Juni 2019, 14:50:27
Die Namen von Standard Characteristics wird man nicht verändern können, da er jeweils in die Landessprache übersetzt wird und das ist denke ich hinterlegt im iOS.

Das ist schade! Damit hätten wir dann wirklich alle Möglichkeiten gehabt. Ich kann mir kaum vorstellen, dass die custom characteristics mehr können, als Readingwerte anzeigen und Ein-/Aus-Schalten.

Zitat von: hoppel118 am 20 Juni 2019, 14:28:33
In dem Github-Screenshot sieht man noch die Drehrichtung (characteristic: RotationDirection). Diese Characteristic müssen wir noch ergänzen. Wobei das auch nicht wirklich die Drehrichtung ist, habe ich gerade in der Xiaomi App festgestellt. Man kann damit den Lüfter bzw. die Windrichtung leicht nach links/rechts justieren, insofern Schwenken deaktiviert ist.

Das funktioniert leider nicht wie erwartet. Die characteritic "RotationDirection" ist tatsächlich dafür da, um die Drehrichtung des Lüfterblattes einzustellen. Das kann der Xiaomi aber nicht, zumindest wüsste ich nicht wie. Mit dieser Characteristic können wir nicht die Funktion abbilden, die wir benötigen, um den Lüfter bei deaktiviertem Schwenken leicht nach links bzw. rechts auszurichten.

@Typ1er: Du kannst es ja selbst mal ausprobieren:

RotationDirection:move,values=left:CLOCKWISE;;right:COUNTER_CLOCKWISE,cmds=CLOCKWISE:move+left;COUNTER_CLOCKWISE:move+right

Grundsätzlich funktioniert das zwar so, aber man kann nur einen Step nach links und einen Step nach rechts. Gibt es irgendeine Characteristic mit der man zwei Felder hat, die man antippen kann und bei jedem Tip wird eine Aktion ausgelöst? Mit so einer Characteristic könnten wir das so umsetzen, wie es auch in der Xiaomi App funktioniert.

Den Custom Ein-/Aus-Schalter müssen wir auch noch irgendwie hinbekommen. Damit könnten wir dann auch noch ein paar Funktionen mit einer besseren Bezeichnung versehen.

Viele Grüße Hoppel
Server: Openmediavault, XEON E3-1240L-v5, Supermicro X11SSH-CTF, 64GB ECC RAM, SSD, RAID-Z2
Homebridge | Alexa | Yowsup
Homematic | HomeConnect | MQTT | Philips Hue | Sonos | Unifi Network & Protect | vbus | Xiaomi

Typ1er

er macht nur einen Step nach links oder rechts  :-\


Zitat von: hoppel118 am 20 Juni 2019, 18:30:22
Den Custom Ein-/Aus-Schalter müssen wir auch noch irgendwie hinbekommen. Damit könnten wir dann auch noch ein paar Funktionen mit einer besseren Bezeichnung versehen.

Damit könnte man noch viel mehr anstellen ...

Momentan stürzt Homekit mit jedem versuch ab, in Home steht dann Geräte und Szenen laden ...
Danach alles einmal Neustarten, dann geht es meist wieder.

hoppel118

Hat denn hier noch niemand einen custom Ein-/Ausschalter gebaut?

@Andre: Weißt du vielleicht wie das geht?

Viele Grüße Hoppel
Server: Openmediavault, XEON E3-1240L-v5, Supermicro X11SSH-CTF, 64GB ECC RAM, SSD, RAID-Z2
Homebridge | Alexa | Yowsup
Homematic | HomeConnect | MQTT | Philips Hue | Sonos | Unifi Network & Protect | vbus | Xiaomi

Typ1er

@hoppel118 Ich habe bei meinen Ventilator eine Aktiviert Schalter? Wozu ist dieser? wird bei dir auch der Stromverbrauch angezeigt mit 0? Woher kommt das Reading?