FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Tueftler1983 am 11 Juni 2020, 22:15:24

Titel: ***Gelöst*** devStateIcon Farbe je nach Wert 150l - 1750l
Beitrag von: Tueftler1983 am 11 Juni 2020, 22:15:24
Hallo,
Habe einen Regenwassertank diesen überwache ich mit Ultraschall.
Bekomme über die Umrechnung im Userreading die Liter angezeigt 0 bis 1750l jetzt würde ich gerne das devStateIcon  im Farbverlauf Rot-Orange-Grün anzeigen lassen.

Habe gedacht könnte die Definition so machen.....

attr ESPEasy_ESP_8_Tank_US devStateIcon >=1750:Zisterne@00C000
<=150:Zisterne@FF0000
>150:Zisterne@FF2D00
>=250:Zisterne@FF6A00
>=500:Zisterne@FF9300
>=750:Zisterne@FFD600
>=1000:Zisterne@FFFF00
>=1250:Zisterne@80FF00
>=1500:Zisterne@20FF00

Leider geht es so nicht.
Kann mir jemand helfen???
Titel: Antw:devStateIcon Farbe je nach Wert 150l - 1750l
Beitrag von: Tueftler1983 am 11 Juni 2020, 22:43:42
Nächster Ansatz jedoch denke ich das ich da das Problem habe da mir das Userreading Liter mit Komma stellen ausgegeben wird.....


(0[0-9]|15[0-0]):Zisterne@FF0000
(15[1-9]|24[0-9]):Zisterne@FF2D00
(25[0-9]|50[0-0]):Zisterne@FF6A00
(50[1-9]|74[0-9]):Zisterne@FF9300
(75[1-9]|100[0-0]):Zisterne@FFD600
(100[1-9]|124[0-9]):Zisterne@FFFF00
(125[1-9]|150[0-0]):Zisterne@80FF00
(150[1-9]|174[0-9]):Zisterne@20FF00
(175[1-9]|200[0-0]):Zisterne@00C000
Titel: Antw:devStateIcon Farbe je nach Wert 150l - 1750l
Beitrag von: Damian am 11 Juni 2020, 22:53:43
Alternativ kannst du über devStateIcon nicht nur die Farbe stufenlos, sondern sogar den Wasserstand anzeigen lassen:

devStateIcon {ui_Table::cylinder("",0,1700,"l",90,undef,100,0,ReadingsVal("$name","state",0),ReadingsVal("$name","state",0)/17*1.2,undef)}

Im Anhang die Darstellung verschiedener Füllstände :)
Titel: Antw:devStateIcon Farbe je nach Wert 150l - 1750l
Beitrag von: Tueftler1983 am 11 Juni 2020, 23:01:40
So habe das Reading "Liter" angepasst ohne Kommastellen.
Doch leider funktioniert meine Methode immer noch nicht.

Wo liegt mein Fehler????
Titel: Antw:devStateIcon Farbe je nach Wert 150l - 1750l
Beitrag von: Tueftler1983 am 11 Juni 2020, 23:08:09
Hey Damian, leider bringt auch deine Variante
{ui_Table::cylinder("",0,1700,"l",90,undef,100,0,ReadingsVal("$name","Liter",0),ReadingsVal("$name","Liter",0)/17*1.2,undef)}
Bei mir keine anzeige
Titel: Antw:devStateIcon Farbe je nach Wert 150l - 1750l
Beitrag von: Damian am 11 Juni 2020, 23:22:43
Zitat von: Tueftler1983 am 11 Juni 2020, 23:08:09
Hey Damian, leider bringt auch deine Variante
{ui_Table::cylinder("",0,1700,"l",90,undef,100,0,ReadingsVal("$name","Liter",0),ReadingsVal("$name","Liter",0)/17*1.2,undef)}
Bei mir keine anzeige

Die cylinder-Funktion steckt im DOIF-Modul, die Version des Moduls sollte nicht allzu alt sein.
Titel: Antw:devStateIcon Farbe je nach Wert 150l - 1750l
Beitrag von: Tueftler1983 am 11 Juni 2020, 23:44:29
Das heißt?
Mein Fhem habe ich gestern erst aktualisiert.
Also wie muss ich vorgehen damit ich deine Version nutzen kann?
Titel: Antw:devStateIcon Farbe je nach Wert 150l - 1750l
Beitrag von: Damian am 11 Juni 2020, 23:49:33
Zitat von: Tueftler1983 am 11 Juni 2020, 23:44:29
Das heißt?
Mein Fhem habe ich gestern erst aktualisiert.
Also wie muss ich vorgehen damit ich deine Version nutzen kann?

Dann probiere erst mal eine Definition mit einem Dummy:

defmod d_zisterne dummy
attr d_zisterne devStateIcon {ui_Table::cylinder("Zisterne",0,1700,"l",90,undef,100,0,ReadingsVal("$name","state",0),ReadingsVal("$name","state",0)/17*1.2,undef)}
setstate d_zisterne 1700
setstate d_zisterne 2020-06-11 22:42:57 state 1700
Titel: Antw:devStateIcon Farbe je nach Wert 150l - 1750l
Beitrag von: Tueftler1983 am 11 Juni 2020, 23:52:17
Habe Grade nochmal ein shutdown restart gemacht.... Hatte ich wohl vergessen.

Jetzt läuft deine Version!!

Würde nur gerne meine sich zum laufen bekommen... Rein zum Verständnis

Aber vielen fcnk
Titel: Antw:devStateIcon Farbe je nach Wert 150l - 1750l
Beitrag von: Damian am 12 Juni 2020, 00:08:33
Zitat von: Tueftler1983 am 11 Juni 2020, 23:52:17
Habe Grade nochmal ein shutdown restart gemacht.... Hatte ich wohl vergessen.

Jetzt läuft deine Version!!

Würde nur gerne meine sich zum laufen bekommen... Rein zum Verständnis

Aber vielen fcnk

Ich benutze devStateIcon nur in Verbindung mit Perl, hier eine Alternative mit dem Zisterne-Icon:

defmod d_zisterne dummy
attr d_zisterne devStateIcon {FW_makeImage("Zisterne\@".DOIF_hsv(ReadingsVal("$name","state",0),0,1700,0,120,100,100))}
attr d_zisterne room test10
Titel: Antw:devStateIcon Farbe je nach Wert 150l - 1750l
Beitrag von: Tueftler1983 am 12 Juni 2020, 00:31:19
Danke funktioniert auch, aber deins ist 1000 Mal Eleganter. Gefällt mir echt super!!


Vielen lieben dank nochmal.
Titel: Antw:***Gelöst*** devStateIcon Farbe je nach Wert 150l - 1750l
Beitrag von: Müller am 12 Juni 2020, 06:25:15
Ich habe für eine Batterie folgende Attribute bei devstateicon

100:measure_battery_100@green 9[1-9]:measure_battery_100@green 8[1-9]:measure_battery_75@green 7[1-9]:measure_battery_75@green 6[1-9]:measure_battery_50@green 5[1-9]:measure_battery_50@green 4[1-9]:measure_battery_50@green 3[1-9]:measure_battery_25@green 2[1-9]:measure_battery_25@green 1[1-9]:measure_battery_25@red [1-9]:measure_battery_0@red
Titel: Antw:devStateIcon Farbe je nach Wert 150l - 1750l
Beitrag von: Damian am 12 Juni 2020, 10:11:39
Zitat von: Tueftler1983 am 12 Juni 2020, 00:31:19
Danke funktioniert auch, aber deins ist 1000 Mal Eleganter. Gefällt mir echt super!!


Vielen lieben dank nochmal.

Wenn es dir gefällt, dann schau mal, was noch alles geht:

https://wiki.fhem.de/wiki/DOIF/uiTable_Schnelleinstieg#3d-Balkendarstellung_mehrerer_Zahlenwerten_mit_Hilfe_der_universellen_SVG-Funktion_cylinder

oder auch andere Darstellungen:

https://wiki.fhem.de/wiki/DOIF/uiTable_Schnelleinstieg#SVG-uiTable-Funktionen

Und all das funktioniert auch mit devStateIcon ;)
Titel: Antw:***Gelöst*** devStateIcon Farbe je nach Wert 150l - 1750l
Beitrag von: Tueftler1983 am 04 Juli 2021, 23:47:38
Hallo Damian
Habe da Grade ein kleines Problem,
Wollte deine Methode auch gerne benutzen um den Tankinhalt vom Auto anzuzeigen, aber ich möchte das sowohl Liter als auch in % angezeigt wird.
Blicke leider durch die Syntax der Definition nicht ganz durch.

Kannst du mir helfen??
Titel: Antw:***Gelöst*** devStateIcon Farbe je nach Wert 150l - 1750l
Beitrag von: Damian am 05 Juli 2021, 10:18:48
Zitat von: Tueftler1983 am 04 Juli 2021, 23:47:38
Hallo Damian
Habe da Grade ein kleines Problem,
Wollte deine Methode auch gerne benutzen um den Tankinhalt vom Auto anzuzeigen, aber ich möchte das sowohl Liter als auch in % angezeigt wird.
Blicke leider durch die Syntax der Definition nicht ganz durch.

Kannst du mir helfen??

Ggf. kannst du den prozentuellen Anteil in der Beschriftung unterbringen, z. B:

cylinder("Zisterne",0,100,"Liter",undef,100,undef,0,[Zisterne:inhalt],200,"Wasserstand ".[Zisterne:Anteil]." %")