Hallo Gemeinde,
bis jetzt bin ich im Forum oder im Wiki immer fündig geworden. Leider bin ich jetzt an eine Grenze gestoßen und muss mal mein Problem hier schildern.
Vor kurzem bin ich von HA-Bridge umgestiegen auf den Alexa-fhem Connector. Installation ging Problemlos und der Alexa Homeskill hat auch gleich funktioniert. Das Einbinden von Schaltern und Dimmern war problemlos aber jetzt hänge ich bei der Homematic Rolladensteuerung.
Die Attribute meiner Rolladenschalter weisen keine Besonderheiten auf lediglich benutze ich das Attribut param - levelInverse.
Zu Beginn war alles sehr durcheinander. Der Rolladen bewegt sich stets in die falsche Richtung.
Sprachkommando "Alexa, Arbeitszimmer Nord 20%". Der Rolladen bewegte sich auch 80% geschlossen, trotz levelInverse.
Ebenso zeigte die Alexa App einen Öffnungsgrad von 20%. Das stimmte mit dem tatsächlichen Ergebnis zwar überein aber war natürlich nicht gewünscht.
Das FHEM Reading pct zeigt korrekt 20
Nach entfernen des Attributs eventMap war die Anzeige der Alexa App übereinstimmend mit der Anzeige in fhem:
Sprachbefehl Alexa, Arbeitszimmer Nord 20% führt zu eine Anzeige von 80 % Öffnungsgrad aber das tatsächlich Ergebnis war wieder ein zu 80 % geschlossener Rolladen.
Das FHEM Reading pct zeigt korrekt 20
Zusätzliches Phänomen: Gibt man das Sprachkommando "Alexa, Arbeitszimmer Nord hoch" fuhr der Rolladen ein Stück nach unten.
Wiederholt man dieses Kommando, fährt der Rolladen bei jedem Kommando abwechselnd hoch und runter. Auch wenn man zwischendurch das Kommando "Alexa, Arbeitszimmer Nord runter" gibt bleibt die Systematik erhalten.
Befehl 1: hoch
Befehl 2: runter
Befehl 3: hoch usw.
Nun habe ich es mit einem Homebridge Mapping versucht:
clear CurrentPosition=pct,minValue=0,maxValue=100 TargetPosition=pct,cmds=pct;up;down
Siehe da, der Rolladen fährt bei "Alexa, Arbeitszimmer Nord 20%" tatsächlich auf 20 % geschlossen.
Bei "Alexa, Arbeitszimmer hoch" bewegt sich der Rolladen um 1% nach unten. Grrrrr.
im Homebridge Mapping habe ich noch minStep mit verschiedenen Werten ausprobiert, aber das hatte keinen Effekt.
Bei Hoch und Runter fährt der Rolladen immer in die falsche Richtung um 1%
Nun habe ich Stunden investiert, den Rolladen per Sprachsteuerung in die richtige Richtung zu bewegen, jetzt möchte ich jetzt auch nicht aufgeben.
Hat jemand eine Idee, wie man dieses Ding bein den Sprachkommandos "hoch" und "runter" dazu bekommt mehr als 1% zu fahren und dann noch in die richtige Richtung?
Ich weiß, das ist nicht wirklich soo wichtig aber ich möchte das doch ganz gerne noch hinbekommen.
So sieht mein Device aus:
IODev RPI_3_EG_FHEM
IOgrp VCCU:RPI_3_EG_FHEM
alexaName Arbeitszimmer Nord
alias Rollladen Arbeitszimmer Nord
autoReadReg 5_readMissing
devStateIcon up:audio_stop@#707070 down:fts_shutter_1w_100@#707070 9\d.*:fts_shutter_1w_90@#707070
8\d.*:fts_shutter_1w_80@#707070 7\d.*:fts_shutter_1w_70@#707070 6\d.*:fts_shutter_1w_60@#707070
5\d.*:fts_shutter_1w_50@#707070 4\d.*:fts_shutter_1w_40@#707070 3\d.*:fts_shutter_1w_30@#707070
2\d.*:fts_shutter_1w_20@#707070 1\d.*:fts_shutter_1w_10@#707070 0\d.*:audio_stop@#707070
event-on-change-reading .*
expert 0_defReg
firmware 2.8
genericDeviceType blind
group Rolladen
homebridgeMapping clear CurrentPosition=pct,minValue=0,maxValue=100 TargetPosition=pct,cmds=pct;up;down
model HM-LC-BL1PBU-FM
param levelInverse
peerIDs 00000000
room Arbeitszimmer,Favourites
serialNr NEQ1793413
sortby 09
subType blindActuator
webCmd up:10:20:30:40:50:60:70:80:90:down:stop
zu alexa und rollläden findest du hier etwas: https://forum.fhem.de/index.php/topic,105473.0.html (https://forum.fhem.de/index.php/topic,105473.0.html).
zum umdrehen der richtung hier: https://forum.fhem.de/index.php/topic,105473.msg1001471.html#msg1001471 (https://forum.fhem.de/index.php/topic,105473.msg1001471.html#msg1001471).
die einzige komplett funktionierende lösung: rollläden richtig herum anschliessen und warten bis amazon die fehlenden dinge implementiert hat.
Danke, habe beide Beiträge schon gesehen und gelesen. Saß heute wohl schon zu lange an dem Thema.
(Wer schließt seine Rolladenaktoren falsch herum an?)
wenn du levelInvers setzen musst sind deine aktoren falsch herum angeschlossen.
auch bei homematic ist 100% auf und 0% zu wenn der aktor wie vorgesehen angeschlossen wird.
Äh nein, das ist nicht korrekt.
Ich habe 14 von den Dingern richtig herum angeschlossen. Ohne levelInvers 0% = geschlossen und 100 % offen. Mit levelInvers 100% geschlossen, 0% offen
Das funktioniert bei mir seit nunmehr 5 Jahren einwandfrei.
levelInverse zu verwenden schafft genau dieses problem. du musst 100% als auf und 0% als geschlossen denken und verwenden. alles andere funktioniert mit den sprachassitenten nicht.
Aber es klappt ja mit dem Sprachassistenten.
Alexa "Arbeitszimmer Nord 20" Schließt den Rolladen zu 20%. App zeigt das korrekt. Fhem zeigt das korrekt. Rolladen steht korrekt.
Also habe ich korrekt angeschlossene Aktoren, bei denen 100% geschlossen iund 0% offen ist, die genau so auch auf die Spracheingabe reagieren. Alles gut.
Es ging nur um die Sprachbefehle hoch und runter. Das hat sich aber durch den von Dir verlinkten Beitrag geklärt. Das hatte ich überlesen.
hoch und runter funktioniert aus zwei gründen nicht. ein mal weil amazon es noch nicht implementiert hat und zum anderen prinzipiell nicht weil hoch und runter als 100% und 0% gesendet werden und nicht als 0% und 100% so wie du es dir angewöhnt hast.
nein hoch und runter werden nicht als 0% und 100% gesendet.
Bei Hoch und runter bewegt sich der Rolladen um 20% in die angegebene Richtung. Das ist auch korrekt so.
Hoch und Runter (up und down) hat bei Homematic nicht die Beudeutung ganz hoch und ganz runter.
du vermischst gerade zwei dinge.
hoch und runter werden von amazon aktuell (meist) als etwas hoch bzw. etwas runter interpretiert und es wird ein delta wert gesendet der von alexa-fhem so invertiert wird das er zu deiner logik passt.
wenn hoch und runter als ganz hoch und ganz runter interpretiert werden (bei amazon demnächst, bei siri immer) wird fest 100 bzw. 0 gesendet. dies kann alexa-fhem nicht von einem von dir gesagten 100% für runter und 0% für hoch in deiner logik. beides widerspricht sich aber prinzipiell und da alexa-fhem am event keinen unterschied fest machen kann hast du ein problem.
wenn amazon das semantik objekt in deutschland frei gibt kann alexa-fhem etwas tun. wenn nicht leider nicht.
ps: bei meinen hm aktoren hat up und down die bedeutung von ganz rauf und ganz runter :)
Zitatps: bei meinen hm aktoren hat up und down die bedeutung von ganz rauf und ganz runter
Das doch aber nicht standarmäßig so, up/down (HM-LC-BL1PBU-FM) sind doch normal 10% Schritte, on/off ganz hoch/ganz runter ?
Gruß
Thomas
eventMap on:up off:down
aber das hat mit der geschichte hier nichts zu tun.
Hi,
ignorieren wir mal das eventmap. Das habe ich entfernt.
Bei mir funktioniert auch das hoch- und runterfahren per Sprachsteuerung und dabei ist nicht die Richtung das Problem sondern wie viel hoch- / runtergefahren wird.
Zusammengefass funktioniert das bei mir so:
Alexa, RolladenX 0 % --> Rolladen fährt ganz hoch
Alexa RolladenX 100% --> Rolladen fährt ganz runter.
Alexa, RolladenX 30% --> Rolladen ist 30% geschlossen
Soweit alles fein.
Bei Alexa Rolladen hoch fährt der Rolladen ein kleines Stück ebenso bei Rolladen runter. Zwar in die falsche Richtung aber das habe ich ja verstanden wieso das so ist.
Mein eigentliches Problem ist, dass der Rolladen bei den Befehlen hoch und runter immer nur 1% fährt. Normalerweise sollten das 10% sein. Bei Klick auf die entsprechenden Webcommands ist das auch so. Ich habe im homebridge Mapping minStep ausprobiert, aber egal welchen wert ich für minStep eingebe, der Rolladen fährt immer nur 1%.
Wieso hat das minStep bei mir keinen Effekt?
schau ins log was amazon sendet.
Na, das Ergebnis ist wenig überraschend.
Egal ob rauf oder runter, im Log steht ein set, das immer 1% unterschiedlich ist vom vorigen Wert.
Also ist der aktuelle Wert 50% und gibt man den Befehl runter steht im log halt set 49%. Genau entsprechend dem physikalischen Ergebnis.
Nichts anderes hätte ich erwartet. Ich wunder mich nur warum minStep keine Auswirkung hat.
Hallo,
jetzt muss ich leider auch nochmal auf das Thema kommen und hoffen, dass einer von Euch mir einen Tipp hat. Ich setze die Eltako EnOcean FSB61 Aktoren für meine Jalousien ein und habe jetzt auch Alexa an mein FHEM angebunden. Bei den Aktoren von Eltako ist es ebenfalls so, dass 100 % geschlossen entspricht und 0 % geöffnet entspricht und Alexa jetzt eben immer bei komplett auf die 100 Prozent sendet, was bei mir bzw. meinen Aktoren eben geschlossen bedeutet. Wenn ich Alexa einen Befehl in Prozent gebe ist alles gut, aber rauf, runter bzw. komplett hoch oder runter wäre schon schöner.
Hat mir einer einen Tipp, wie ich das hinbekomme?
Danke im Voraus.
Viele Grüße
Michael
Ist das wirklich so, dass es "by Design" so ist (wo steht das? Bei Eltako?) oder liegt es am Einbau?
Weil: andersrum angeschlossen und: es ist genau andersrum ;)
Und bei Alexa ist es nun mal so, dass die Prozentzahl eben nach "Helligkeit" geht.
Also:
100% -> 100% Helligkeit -> offen
0% -> 0% Helligkeit -> geschlossen
Das ist bei Amazon so festgelegt...
Was es gibt: Attribut levelInverse
https://wiki.fhem.de/wiki/Alexa_und_Mappings#genericDeviceType
Hat aber u.U. andere "Nebenwirkungen"...
Gruß, Joachim
Hallo Joachim,
also laut Eltako sendet der Aktor bei Endlage oben ein Telegramm mit 0x70 und bei Endlage unten 0x50.
Wenn ich jetzt Modul "10_EnOcean.pm" anschaue sehe ich für mein model "Eltako_FSB_ACK" folgendes:
.......
# Eltako shutter
if ($db[0] == 0x70) {
# open
if ($model eq 'Eltako_FSB_ACK') {
push @event, "3:position:0";
push @event, "3:anglePos:" . AttrVal($name, "angleMin", -90);
}
push @event, "3:endPosition:open_ack";
$msg = "open_ack";
} elsif ($db[0] == 0x50) {
# closed
push @event, "3:position:100";
push @event, "3:anglePos:" . AttrVal($name, "angleMax", 90);
push @event, "3:endPosition:closed";
$msg = "closed";
}.....
Was für mich jetzt so aussieht, als wären meine Motoren richtig angeschlossen, da ich wenn sie offen sind eine position von 0 habe und wenn sie geschlossen sind eine position von 100 habe, siehst du das auch so?
Das Attribut levelInverse müsste ich doch bei mir an meinem Device für den Aktor setzen oder sehe ich das falsch (das Attribut gibt es nämlich bei mir nicht)?
Vielen Dank für Deine Hilfe.
Gruß
Michael
Ich habe ja nicht "falsch" angeschlossen, sondern "anders(rum)" angeschlossen gemeint... ;)
Ich kann halt nur sagen wie es bei Amazon/Alexa (und anderen Rollos) ist...
Das levelinverse ist beim homebridgeMapping...
Hmm, bzw. wird es dort genannt...
Ich steuere meine Rollos nicht mit Sprache (wozu geht automatisch)...
Gruß, Joachim
levelInverse ist homematic spezifisch.
allgemein kann man über ein homebridgeMapping mit CurrentPosition:invert=1 TargetPosition:invert=1
die Laufrichtung umdrehen.
das invert problem wurde schon mehrfach hier behandelt und lässt sich leider prinzipiell nicht oder nur zum teil lösen. alexa ist hier zwar am besten, aber auch hier kann es sein das du dich zwischen korrekten prozent angaben und korrekten ganz auf/zu entscheiden musst.
wenn das homebridgeMapping nicht hilft: sorgt man am besten im device dafür das es ein passendes reading und kommando gibt. z.b. per userreading und cmdalias oder in dem man den modulautor bittet.