homebridge/homekit

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

Vorheriges Thema - Nächstes Thema

ritter_runkel

Hey Ho,
re-engineering ist harter Stoff....

Ich versuche meine Fibaro Roller-shutter mit Siri zu steuern, was auch teilweise gelingt. ich kann der Dame sagen "stelle Jalousie Küche auf 30%".

Was nicht (richtig) geht ist der Rückkanal zur Anzeige (kann man das auch abfragen?) der aktuellen Position. Das Reading dazu ist in fhem "position". Allerdings wird dieses erst (auch in EVE/homekit) aktualisiert, wenn ich manuell ein "get position" auslöse.

Hat jemand eine Idee dazu wie ich das reading sozusagen nach ausführen der Action cache?

Es hat nicht funktioniert, wenn ich als mapping das reading "state" oder "reportedState" verwende, da hier in fhem immer "dim xx" steht und von homekit ein numerischer Wert (pct) erwartet wird.

auch der Parameter "minStep=10" zeigt beim einstellen in Eve keine Wirkung. Es werden immer 1 stellige Werte verwendet.

Hier mein mapping:

attr Rolladen_UG_Kueche homebridgeMapping TargetPosition=dim::position,minValue=0,maxValue=100,minStep=10 CurrentPosition=position,minValue=0,maxValue=100


Ist am Mapping noch was krumm?

Herzlichen Dank!

//Erik

FHEM auf Raspberry Pi 2B
2x eService 1WireHu, 7x DS1820, 2x Multisensoren Wiregate AMS 2.11 für Temperatur DS1820, relativer Luftfeuchte HIH4031, zwei IO-Ports DS2438, Analog-Eingang 0-10 V (bzw. 0-20 mA) DS2413
FritzDECT; HUE; 5xFibaro RollerShutter, Rauchmelder

justme1968

mit ...,part=1,... kannst du den Zahlenwert aus dem reportedState reading ausschneiden. so wie hier: https://forum.fhem.de/index.php/topic,50302.msg420732.html#msg420732 beim dimmer.

wegen dem minStep: was steht auf beim starten mit --debug auf der konsole?


gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

ritter_runkel

#392
Guten Morgen,

danke Andre für den Split-Befehl - das hat geholfen
Nun sieht das Mapping so aus:
attr Rolladen_UG_Kueche homebridgeMapping TargetPosition=dim::position,minValue=0,maxValue=100,minStep=10 CurrentPosition=reportedState,part=1,cmd=dim,minValue=0,maxValue=100


Die Konsole spricht damit nun folgendes:
[FHEM] homebridgeMapping: TargetPosition=dim::position,minValue=0,maxValue=100,minStep=10 CurrentPosition=reportedState,part=1,cmd=dim,minValue=0,maxValue=100
[FHEM] mappings for Rolladen_UG_Kueche: { 'E863F10D-079E-48FF-8F27-9C2605A29F52': { name: 'Power', reading: 'power', format: 'UINT16', factor: 1 },
  'E863F10C-079E-48FF-8F27-9C2605A29F52': { name: 'Energy', reading: 'energy', format: 'UINT32', factor: 1 },
  CurrentPosition:
   { reading: 'reportedState',
     part: '1',
     cmd: 'dim',
     minValue: '0',
     maxValue: '100' },
  TargetPosition:
   { reading: 'position',
     cmd: 'dim',
     delay: true,
     minValue: '0',
     maxValue: '100',
     minStep: '10' },
  On: { reading: 'state', valueOff: 'off', cmdOn: 'on', cmdOff: 'off' } }


Mit dem Steuerungsverhalten über EVE - neben den 10ner Schritten - bin ich auch nicht glücklich. Wenn ich per SIRI die Jalousie auf 60% stelle (reportedState wird in EVE sauber angezeigt) und dann mit dem Schaltern auf bspw. 12% steuere sind dies absolute Werte - die Jalousie wird also auf 12% gestellt und nicht UM 12% verändert.
Kann ich das abstellen und mit relativen Werten arbeiten?

Auch möchte ich SIRI gern sagen - "Jalousie Küche auf/zu" - müssen hierzu auch Mappings angepasst werden?
Ich spiele mal mit der letzten Zeile im Code oben - vielleicht hilft das ja.

12.03.2016
So - die Anzeige in EVE in 10er-Schritten und das verstellen in 10er-Schritten geht mit folgendem Mapping:

attr Rolladen_UG_Kueche homebridgeMapping TargetPosition=dim::reportedState,part=1,minValue=0,maxValue=100,minStep=10 CurrentPosition=reportedState,part=1,cmd=dim,minValue=0,maxValue=100,minStep=10


Jetzt bleibt noch offen, wie mit einem Befehl die komplette Öffnung und Herunterfahren umgesetzt werden kann.
FHEM auf Raspberry Pi 2B
2x eService 1WireHu, 7x DS1820, 2x Multisensoren Wiregate AMS 2.11 für Temperatur DS1820, relativer Luftfeuchte HIH4031, zwei IO-Ports DS2438, Analog-Eingang 0-10 V (bzw. 0-20 mA) DS2413
FritzDECT; HUE; 5xFibaro RollerShutter, Rauchmelder

justme1968

homekit kennt nur absolute prozentuale positionen. siri versteht auch auf/zu oder rauf/runter oder ähnlich und setzt diese dann automatisch auf 0% bzw. 100% um. dazu musst du am mapping nichts ändern. nur rausfinden wie der wortlaut sein muss.

zur not helfen die siri szenen.

bei dimmern versteht siri heller/dunkler vielleicht geht das auch bei rolläden. zur not über zwei dummys für jeweils +/- 10 % und passenden siri szenen.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

ritter_runkel

Hey Andre,
danke Dir - noch will sie mich nicht verstehen. Es geht nur mit Zahlenwerten  :'(
Naja, vielleicht klappts ja wenn meine Frau mit ihr spricht  ;D
Liebe Grüsse
Erik
FHEM auf Raspberry Pi 2B
2x eService 1WireHu, 7x DS1820, 2x Multisensoren Wiregate AMS 2.11 für Temperatur DS1820, relativer Luftfeuchte HIH4031, zwei IO-Ports DS2438, Analog-Eingang 0-10 V (bzw. 0-20 mA) DS2413
FritzDECT; HUE; 5xFibaro RollerShutter, Rauchmelder

justme1968

gerade probiert: 'öffne den rollladen im schlafzimmer' wird erkannt und landet set <device> pct 100 in fhem.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

ritter_runkel

Moin,
@andre nochmal danke - aber leider konnte ich das noch nicht ausprobieren, weil:

Nachdem EVE (V1.4) gestern den Status der Geräte nicht mehr aktualisiert hat, habe ich auf dem iPhone (iOS 9.2.1) die Homekot-Daten zurück gesetzt. Jetzt schlägt die Kopplung zwischen EVE und der Homekit fehl.
Ich habe folgendes unternommen:
- Reset Homekit auf dem iPhone
- Réinstallation EVE
- Veränderung PIN in Homekit in config.json (und wieder zurück gestellt)
- Änderung user in config.json (und wieder zurück gestellt)

Folgender Effekt:
- EVE findet Homekit beim Suchen (neben einer HUE)
- danach kommt eine Warnung, dass das Gerät nicht identifiziert werden kann
- beim fotografieren der PIN von der Konsole wird die PIN nicht erkannt (offenbar zumindest, da keine Fehlermeldung erscheint, sondern einfach das Fenster zu geht)
- ich konnte - wenn ich den PIN in der config.json geändert hatte - auch den PIN eingeben
- danach bricht die Verbindung ab mit der Fehlermeldung "mit dem Gerät konnte keine Verbindung aufgebaut werden"

Da ich sonst nichts geändert habe, frage ich mich WARUM?
Ich hatte mein AppleTV 4 an - macht das was?

Irgendwelche Ideen?

Liebe Grüsse
Erik
FHEM auf Raspberry Pi 2B
2x eService 1WireHu, 7x DS1820, 2x Multisensoren Wiregate AMS 2.11 für Temperatur DS1820, relativer Luftfeuchte HIH4031, zwei IO-Ports DS2438, Analog-Eingang 0-10 V (bzw. 0-20 mA) DS2413
FritzDECT; HUE; 5xFibaro RollerShutter, Rauchmelder

knueppler

Moin

folgende Dinge kannst Du probieren/checken
HomeKit auch unter Datenschutz auf dem iPhone zurückgesetzt?
persist-Ordner gelöscht? Zu finden in aller Regel dort, wo auch die config.json liegt
Schlüsselbund zurückgesetzt?

Ciao Christian


Gesendet von iPhone mit Tapatalk

ritter_runkel

Hi,
ich hab mal den persist-Ordner gelöscht und homekit neu gestartet.
Auch die Datenschutz-Einstellungen auf dem iPhone sind zurück gesetzt.
Danach verhält sich EVE schonmal anders - beim klick auf Homekit wird offenbar ein SCAN der Landschaft (neu) durchgeführt und danach erscheint die PIN Eingabe.

Leider ist ab dann das Verhalten gleich.

Ich möchte auch nicht meinen Schlüsselbund zurücksetzten - sicher hast Du "löschen" gemeint. Damit verliere ich ja mein komplettes Gedächtnis :'(
Ich werde mal den Keyring lokal auf dem iPhone löschen (sync ausschalten)

Ich glaube auch nicht, dass es an der Authentisierung liegt - dafür müsste die Fehlermeldung nach der PIN-Eingabe schneller kommen. Es dauert aber eine Weile. Hier scheint ein Timer zuzuschlagen....

Welchen Effekt haben mehrere iOS Devices in einer solchen Kommunikation? Hier gestern noch mehr so Teilchen rum alle mit KeyRing-Sync.
Sollten die ausgeschalten sein oder alle an?

Liebe Grüsse
Erik


FHEM auf Raspberry Pi 2B
2x eService 1WireHu, 7x DS1820, 2x Multisensoren Wiregate AMS 2.11 für Temperatur DS1820, relativer Luftfeuchte HIH4031, zwei IO-Ports DS2438, Analog-Eingang 0-10 V (bzw. 0-20 mA) DS2413
FritzDECT; HUE; 5xFibaro RollerShutter, Rauchmelder

knueppler

Hi

die syncen alle über den Schlüsselbund.
Es kann sein, dass Du irgendein Device drin hast, welches HomeKit nicht mag, ggf auch nur ein schräger Wert.
Standardvorgehen ist dann, alles wieder rauszunehmen und nach und nach wieder reinnehmen.
Manchmal habe ich es insgesamt auch nur mit zurücksetzen des Schlüsselbundes vollständig hingekriegt.
Ciao Christian


Gesendet von iPhone mit Tapatalk

ritter_runkel

Hi Christian,
ich konnte Homekit wieder EVE hinzufügen.

Für andere - geholfen hat:
- alle Custom-Mappings aus fhem entfernen
- EVE von den Geräten löschen
- homekit Einstellungen auf dem iPhone unter Datenschutz zurücksetzen
- Schlüsselbund-Sync auf dem iPhone ausschalten
- EVE neu installieren
- verbinden

Auf jeden Fall ein seltsames Verhalten.
Die Ursache scheint gewesen zu sein, dass ich die Custom-Mappings welche bei einem der FIBARO Roller-Shutter funktioniert haben, auf meine anderen Roller-Shutter (6 Roller-Shutter) übertragen habe.
Offenbar war das zu viel für Homekit ;-)

Jetzt also nochmal langsam von vor  8)

Danke an Alle!

Liebe Grüsse
Erik 
FHEM auf Raspberry Pi 2B
2x eService 1WireHu, 7x DS1820, 2x Multisensoren Wiregate AMS 2.11 für Temperatur DS1820, relativer Luftfeuchte HIH4031, zwei IO-Ports DS2438, Analog-Eingang 0-10 V (bzw. 0-20 mA) DS2413
FritzDECT; HUE; 5xFibaro RollerShutter, Rauchmelder

DeeSPe

Zitat von: ritter_runkel am 13 März 2016, 10:51:21
Hi Christian,
ich konnte Homekit wieder EVE hinzufügen.

Für andere - geholfen hat:
- alle Custom-Mappings aus fhem entfernen
- EVE von den Geräten löschen
- homekit Einstellungen auf dem iPhone unter Datenschutz zurücksetzen
- Schlüsselbund-Sync auf dem iPhone ausschalten
- EVE neu installieren
- verbinden

Auf jeden Fall ein seltsames Verhalten.
Die Ursache scheint gewesen zu sein, dass ich die Custom-Mappings welche bei einem der FIBARO Roller-Shutter funktioniert haben, auf meine anderen Roller-Shutter (6 Roller-Shutter) übertragen habe.
Offenbar war das zu viel für Homekit ;-)

Jetzt also nochmal langsam von vor  8)

Danke an Alle!

Liebe Grüsse
Erik

Die EVE App deinstallieren und wieder installieren kannst Du Dir da nächste Mal sparen.
HomeKit Daten zurücksetzen und persist Ordner löschen sollte reichen. Das ging bei mir zumindest immer so.
Wenn an den Mappings was nicht richtig ist, dann verweigert Homebridge gerne die Verbindung.
Ich hatte auch schon mal dass ich an einem Gerät am Mapping was geändert habe und danach wurden meine Geräte in HomeKit nicht mehr gefunden. Stattdessen hat er alle Geräte neu gefunden und im Default Raum in EVE abgelegt. Somit hatte ich alle Geräte doppelt, aber nur die Hälfte hat funktioniert. Da half auch nur HomeKit zurücksetzen und neu einrichten. Bei mittlerweile 30 Geräten kann das ganz schön nerven...

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

arokh12

Hallo,

gibt es eigentlich auch die Möglichkeit benutzerdefinierte homebridgemapping Charakteristiken anzulegen?

Das wäre echt sehr praktisch.

arokh12

justme1968

ja...

einfach die UUID als characteristic namen verwenden und name, format und unit neben den üblichen mappings mit angeben. eine custom characteristic für volume würde z.b. etwa so aussehen:00001001-0000-1000-8000-135D67EC4377=volume,cmd=volume,delay=true,name=Volume,format=UINT8,unit=PERCENTAGE,minValue=0,maxValue=100,minStep=1

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

arokh12

Zitat von: justme1968 am 13 März 2016, 21:51:34
ja...

einfach die UUID als characteristic namen verwenden und name, format und unit neben den üblichen mappings mit angeben. eine custom characteristic für volume würde z.b. etwa so aussehen:00001001-0000-1000-8000-135D67EC4377=volume,cmd=volume,delay=true,name=Volume,format=UINT8,unit=PERCENTAGE,minValue=0,maxValue=100,minStep=1

gruss
  andre

Ok, dem kann ich jetzt nicht ganz folgen:
Ich habe bei mir ein dummy, welches ein paar zusätzliche readings besitzt, die ich auch gerne in EVE als "Unterpunkt" zu dem jeweiligen Gerät haben wollte. Allerdings, wo finde ich denn die UUID?

arokh12