Seite 1 von 2

Levelanzeige beim Rollladenschalter HmIP-BROLL

Verfasst: 24. Feb 2021 15:03
von OliverCJ
Hallo zusammen, da bin ich mal wieder :-)

Nachdem ich die letzten Wochen ein wenig mit OH3 rumgespielt habe (immer noch als Testsystem nebenbei) habe ich letzte Woche eine neue Baustelle aufgemacht: Nach und nach Austausch meiner RWE-/Innogy-/Livisi-Komponenten gegen Homematic IP-Geräte an einer CCU3.

Angefangen habe ich mit zwei Rollladenaktoren HmIP-BROLL im Obergeschoss. Die funktionieren auch soweit, als das ich sie manuell bedienen kann, über die WebUI der CCU3 und auch den entsprechenden Kanal über OH ansprechen kann für Hoch/Runter/Stop.

Hier das Item für die Steuerung

Code: Alles auswählen

Rollershutter HmIP_BROLL_OG_Kinderzimmer_rollershutter
    "Rollladen Kinderzimmer"
    <rollershutter>
    (gRolladen,gKinderzimmerRollladen)
    {channel="homematic:HmIP-BROLL:CCU3:00111BE99813CF:4#LEVEL"}
Auf Kanal wird die tatsächliche Behanghöhe geliefert:

Code: Alles auswählen

Rollershutter Rollladen3LEVEL
    "Level [%s]"
    <rollershutter>
    (gRolladen,gKinderzimmerRollladen)
    {channel="homematic:HmIP-BROLL:CCU3:00111BE99813CF:3#LEVEL"
Tatsächlich wird das von VSC jeweils als Rollershutter angelegt, obwohl mal über Kanal 3 nicht steuern kann.

Soviel zur "Vorgeschichte", aber was ist nun das Problem? Nutze ich die Items genau wie von VSC angelegt, sieht das so aus:
asRollershutter.JPG
Links sehe ich zwar den korrekten Wert, kann aber über die Schaltflächen nicht bedienen, weil falscher Kanal.
Rechts kann ich bedienen, der Wert stimmt aber nicht (im Screenshot steht "Err", weil ich das [%s] nicht drin habe). Nehme ich das rein, stimmt der Wert trotzdem nicht, weil auf Kanal 4 eigentlich immer nur der "Zielwert" geliefert wird (meint: Drücke ich runter, wird eine 0 geliefert, drücke ich hoch, wird eine 100 geliefert, deshalb wollte ich den Wert da ganz raus haben...)

Ich habe auch schon mal probiert, den Level aus Kanal 3 als Number (dann erhalte ich "0.4400000" als Beispiel) oder Number:Dimensionless anzulegen (dann erhalte ich 0.44). Hier müsste ich dann wohl noch mit 100 multiplizieren.. geht das direkt im Item?

Kurz: Wie habt ihr die Items angelegt, welche Channels benutzt ihr überhaupt, damit das einigermaßen ordentlich aussieht und bedienbar ist?

Danke!
Oliver

Re: Levelanzeige beim Rollladenschalter HmIP-BROLL

Verfasst: 25. Feb 2021 06:44
von OliverCJ
Okay, lasst mich die Frage einfacher stellen:
Wenn mir ein Channel einen Wert als "0.43" liefert, wie bekomme ich den in der Anzeige als "43" angezeigt?
Habs über eine Umrechnung in einer rule probiert (Stichwort Summary State Item), aber das will auch nicht so wie ich...

Code: Alles auswählen

rule "BROLL umrechnen"
when
    Item BROLL_OG_Buero_Kanal3_LEVEL changed
then
    var Number neuerWert = ((BROLL_OG_Buero_Kanal3_LEVEL.state as DecimalType).floatValue)*100
    var String Ausgabe = String::format(neuerWert +"% geschlossen")
    SummaryStateBROLL.postUpdate(Ausgabe)
end
Das Item SummaryStateBROLL existiert natürlich:

Code: Alles auswählen

String SummaryStateBROLL

Re: Levelanzeige beim Rollladenschalter HmIP-BROLL

Verfasst: 25. Feb 2021 07:35
von OliverCJ
Und mal wieder so oft wie in der Vergangenheit...

Da tüftelt man zwei Tage und kommt nicht auf die Lösung. Dann stellt man eine Frage im Forum und zehn Minuten später - unter der Dusche oder auf'm Klo - kommt einem die Erkenntnis ;-)

Bitte, nehmt meine Fragen einfach nicht mehr ernst. Ich brauche meine Postings hier einfach, um selbst auf die Lösung zu kommen.
:lol:

Re: Levelanzeige beim Rollladenschalter HmIP-BROLL

Verfasst: 25. Feb 2021 10:01
von rbeudel
Das ist ja schön. :D und was war die Lösung :?:

Re: Levelanzeige beim Rollladenschalter HmIP-BROLL

Verfasst: 25. Feb 2021 10:33
von OliverCJ
Also...

Ich vergesse immer, dass ich ein Item gedanklich vom Widget der sitemap trennen muss. Hier speziell folgendes:

HmIP-BROLL liefert auf Kanal 3 am Datenpunkt LEVEL die tatsächliche Behanghöhe. Auf Kanal 4 findet am gleichen Datenpunkt die Steuerung statt, aber es wird eben NICHT die tatsächliceh Behanghöhe geliefert.
Läßt man die Item nun automatisch durch Visual Studio Code anlegen, werden diese beiden Items jeweils als rollershutter angelegt.
Auf einer sitemap, die rein auf gruppen basiert, führt das dann dazu, dass man eben - wie auf meinem Bild oben - zwei Steuerelemente für Rollladen sieht. In einem steht der richtige Wert, läßt sich aber nicht steuern. Mit dem anderen kann man steuern, hat aber den falschen Wert.

Auf meiner produktiven sitemap nehme ich nun einfach das Text-Widget für die tatsächliche Behanghöhe. Damit habe ich keine Steuerelemente mehr. Und beim Steuerelement blende ich mit "[]" im Label einfach den Wert aus...
asRollershutter_neu.JPG
Das sind zwar immer noch zwei getrennte Items, aber so ist es für mich okay.

Meine bisherigen Livisi Komponenten haben das alles über einen Channel korrekt geliefert, so dass man das in einem Widget darstellen konnte:
LivisiROLL.JPG

Re: Levelanzeige beim Rollladenschalter HmIP-BROLL

Verfasst: 25. Feb 2021 12:30
von rbeudel
Jetzt verstehe ich. Das ist glaube ich der beste weg. Bei meiner HM classic Rolllade ist das auch nicht so kompliziert. :oops:

Re: Levelanzeige beim Rollladenschalter HmIP-BROLL

Verfasst: 25. Feb 2021 12:39
von OliverCJ
Ich habe mir gestern ein ganz gutes Video zum Thema HmIp-Geräte und die virtuellen Kanäle angeschaut. Da wurde auch erklärt, warum man das gegenüber den Hm Geräten gemacht hat und das aufgespilttet hat...

Aber wie gesagt, richtig cool wäre jetzt ein Widget, in dem man beide Items zusammen unterbringen kann...
Und über das semantische Modell in OH3 bekommt man das auch sehr gut hin...

Re: Levelanzeige beim Rollladenschalter HmIP-BROLL

Verfasst: 25. Feb 2021 16:52
von udo1toni
Hm... Und was passiert, wenn Du einfach beide Channel mit EINEM Item verknüpfst? Dann sollte der Steuerberfehl jeweils korrekt gesendet werden, der Status sollte aber auch korrekt gefüllt werden.


Gesendet von iPad mit Tapatalk

Re: Levelanzeige beim Rollladenschalter HmIP-BROLL

Verfasst: 25. Feb 2021 17:51
von rbeudel
Ich habe es probiert. Die Steuerung funktioniert. Die Anzeige ist aber leider entweder auf/0 oder zu/100. Aber vielleicht mache ich was falsch.

Re: Levelanzeige beim Rollladenschalter HmIP-BROLL

Verfasst: 25. Feb 2021 17:54
von OliverCJ
Udo, wie genau verknüpfe ich ein Item mit zwei Channel? Einfach beide in die geschweiften Klammern? Komma-Trennung?

Gesendet von meinem SM-N975F mit Tapatalk