[FTUI3] Entwicklung Thermometer/Thermostat

Begonnen von mr_petz, 23 September 2021, 18:17:49

Vorheriges Thema - Nächstes Thema

mr_petz


juemuc

#196
Passt. Vielen Dank
Ab welchem Prozentsatz fangt die Batterie an zu blinken?
Habe die Anwort im Coding gefunden  8) (<25%). Passt

Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

meier81

Hallo euch allen,

jetzt hab ich aber zum blinken noch eine Anmerkung: Hab mir eben mal die neuesten Dateien vom Thermostat gezogen und hochgeladen, jetzt blinkt meine Batterieanzeige immer. Hab aber bei mir auch den Fall das ich keinen Wert übergebe sondern ein mapping für das Batterie-Icon. Hier mal meine Definition:

<ftui-row>
    <ftui-thermostat class="size-1"
      [value]="{{device}}:desired-temp | map('4.5:aus')"
      (value)="{{device}}:desired-temp"
      [temp]="{{device}}:measured-temp"
      [valve]="{{device}}:1.LEVEL | append(' %')"
      [humidity]="{{device}}:humidity | append(' %')"
      [battery]="{{device}}:battery"
      battery-icon="map('low:battery-0, ok: battery')"
      battery-icon-color="map('low:red, ok:green')"
      readonly="true"
      [readonly]="Bedienung | map('locked:true,unlocked:false')"
      tick="30"
      min="0"
      max="30"
      movegradients="4"
      fadegradient="20"
      unit=" °C"
      has-arc-tick
      lowcolor="0,0,255">
    </ftui-thermostat>
</ftui-row>


Besteht hier di Möglichkeit das blinken auszuschalten bzw. es nur blinken zu lassen bei "low"?

Gruß Markus
QNAP NAS mit Debian VM, darauf FHEM, debmatic, influxdb2 und Grafana || HB-RF-ETH || SIGNALduino 433MHz mit Maple mini || WS980 Wetterstation || Xiaomi Mi Robot mit valetudo-FW || Buderus web KM100 || div. Tasmota-Devices

juemuc

Hi Markus,
wenn Du low=>1 und high>100 zuordnet, sollte es funktionieren.
Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

mr_petz

@meier81

Ok habe es geändert.
Wenn low dann class blink.

LG mr_petz

meier81

Zitat von: mr_petz am 26 Januar 2023, 15:02:08
@meier81

Ok habe es geändert.
Wenn low dann class blink.

LG mr_petz

Super, vielen Dank.

LG Markus
QNAP NAS mit Debian VM, darauf FHEM, debmatic, influxdb2 und Grafana || HB-RF-ETH || SIGNALduino 433MHz mit Maple mini || WS980 Wetterstation || Xiaomi Mi Robot mit valetudo-FW || Buderus web KM100 || div. Tasmota-Devices

curt

Jetzt verstehe ich garnix mehr.  :(


(value)="{{device}}:desired-temp"


Genau das funktioniert bei mir nicht: Es wird nichts angezeigt.
Bei mir heißt {{device}} zwar {{Thermostat}}, aber daran wird es hoffentlich nicht liegen.

In gleichem popup funktioniert

<ftui-button color="my_blue"
   @click="javascript:sendFhem('set Thermostat_Arbeitszimmer desired-temp 21.5;sleep 4;get Thermostat_Arbeitszimmer setpoint;')">21,5</ftui-button>


Also {{Thermostat}} ist korrekt gefüllt.
FHEM, FTUI, Thermostat - alles aktueller Stand.

Wo setze ich denn da nun an?
RPI 4 - Jeelink HomeMatic Z-Wave

mr_petz

Da musst du schon mehr zeigen.
(value) ist außerdem zum setzten und nicht zum lesen.

LG

curt

Ich bin in der Erkenntnis etwas weiter, aber nicht klüger. Folgende Situation:


      <ftui-grid-tile row="2" col="3" height="1" width="1" color="my_grey3">
        <ftui-content file="./haus/template_fenster.html" Raum="Arbeitszimmer" Raum_Detail="Raum_Arbeitszimmer" Thermostat="Thermostat_Arbeitszimmer" Geber1="Arbeits_rechts">
        </ftui-content>
      </ftui-grid-tile>


template_fenster.html

<ftui-row>
<ftui-label margin="-18px 0 0 0" class="size-0">{{Raum}}</ftui-label>
</ftui-row>
<ftui-row>
        <ftui-tab view="{{Raum_Detail}}" direction="vertical">
  <ftui-icon margin="-18px 0 0 0" size="3"
                [name]="{{Geber1}} | map('open: `icons-eigene/window-open`, closed: `icons-eigene/window-closed`')"
                [color]="{{Geber1}} | map('open:my_signalred, closed:my_signalgreen')">
  </ftui-icon>
</ftui-tab>
</ftui-row>


Raum_Arbeitszimmer.html

<ftui-grid base-width="96" base-height="86" margin="4">

<!-- Arbeitszimmer -->
[code]
    <!-- Zeile 2 -->
      <ftui-grid-tile row="2" col="2" height="4" width="7" color="my_grey3">
       <iframe src="https://192.168.128.13:8083/fhem/tablet/3-Raum_Arbeitszimmer.html" title="Grafik" width="670" height="400" style="border:none;"></iframe>
      </ftui-grid-tile>

    </ftui-tab-view>

    <ftui-popup id="pop2" timeout="600" width="600px" height="350px">
<!--
   <ftui-button [value]="ftuitest:MinMax" (value)="setreading ftuitest:MinMax" states="15,16,18,19,20,20.5,21,21.5,22,23,27">
           <ftui-icon size="3" name="plus"></ftui-icon>
         </ftui-button>
         <ftui-label size="3" [text]="ftuitest:MinMax | fix(1)" unit=" %"></ftui-label>
         <ftui-button [value]="ftuitest:MinMax" (value)="setreading ftuitest:MinMax" states="27,23,22,21.5,21,20.5,20,19,18,16,15">
           <ftui-icon size="3" name="minus"></ftui-icon>
         </ftui-button>
-->
<ftui-row>
  <ftui-column>
   <ftui-button class="size-1" color="my_darkblue" fill="solid"
           @click="javascript:sendFhem('set {{Thermostat}} desired-temp 21.5;sleep 4;get {{Thermostat}} setpoint;')">
                  <span style="color:white; width:50px; font-size: x-large; font-weight:700;">21,5</span>
          </ftui-button>
    <ftui-button color="my_blue" @click="javascript:sendFhem('set Thermostat_Arbeitszimmer desired-temp 21.5;sleep 4;get Thermostat_Arbeitszimmer setpoint;')">21,5</ftui-button>
  </ftui-column>
   <ftui-row>
    <ftui-thermostat class="size-1"
      [value]="{{Thermostat}}:desired-temp"
      (value)="{{Thermostat}}:desired-temp"
      readonly="true"
      tick="30"
      min="0"
      max="30"
      movegradients="4"
      fadegradient="20"
      unit=" °C"
      has-arc-tick
      lowcolor="0,0,255">
       </ftui-thermostat>
   </ftui-row>
  <ftui-column>
          <ftui-column>
               R-O
   </ftui-column>
   <ftui-column>
    <ftui-button popup-close>close</ftui-button>
    <ftui-label @click="pop2.close()">Close Pop2</ftui-label>
   </ftui-column>
  </ftui-column>
</ftui-row>


Das Problem ist keins von ftui-thermostat. Das Problem ist, dass die Variable {{Thermostat}} zwar ansich vorhanden ist, aber im Popup nicht verfügbar. Und da weiß ich nicht weiter: Kann ich das irgendwie an das Popup übergeben?
RPI 4 - Jeelink HomeMatic Z-Wave

mr_petz

#204
@curt

Das sind auch nicht alle Daten.
Raum_Arbeitszimmer.html - Aufruf fehlt in deiner Auflistung und ist unvollständig.
Aber wenn die Raum_Arbeitszimmer.html auch per content aufgerufen wird und da Thermostat="Dein Device" angegeben wird, dann werden auch die variablen ans popup übergeben.
Gerade getestet...

LG

Edit:
hier noch mein Test:
aufruf:

      <ftui-grid-tile row="5" col="2" height="15" width="15" shape="round">
        <ftui-content file="examples/contents/content-test.html" Raum="Arbeitszimmer" Raum_Detail="Raum_Arbeitszimmer" Thermostat="Thermostat_Arbeitszimmer" Geber1="Arbeits_rechts"></ftui-content>
      </ftui-grid-tile>

content:

<ftui-grid base-width="96" base-height="86" margin="4">

<!-- Arbeitszimmer -->

    <!-- Zeile 2 -->
<ftui-grid-tile row="2" col="2" height="4" width="7" color="my_grey3">
<ftui-label @click="pop2.open()">popup</ftui-label>
<ftui-popup id="pop2" timeout="600" width="600px" height="350px">
    <ftui-thermostat class="size-1"
      [value]="{{Thermostat}}:desired-temp"
      (value)="{{Thermostat}}:desired-temp"
      tick="30"
      min="0"
      max="30"
      movegradients="4"
      fadegradient="20"
      unit=" °C"
      has-arc-tick
      lowcolor="0,0,255">
    </ftui-thermostat>
    <ftui-button popup-close>close</ftui-button>
    <ftui-label @click="pop2.close()">Close Pop2</ftui-label>
</ftui-popup>
</ftui-grid>

curt

Zitat von: mr_petz am 26 Februar 2023, 21:25:37
Das sind auch nicht alle Daten.

Ja, das stimmt. Ich vergaß den Codeteil in index.html:

    <ftui-tab-view id="Raum_Arbeitszimmer">
            <ftui-content file="haus/Raum_Arbeitszimmer.html"></ftui-content>
    </ftui-tab-view>


Real wird also eine ID über eine Variable übergeben. Die Idee war ja, bei gleichen/ähnlichen Konstellationen ein content-file mehrfach zu nutzen.
RPI 4 - Jeelink HomeMatic Z-Wave


curt

Jetzt geht es wieder hier weiter, Frage zum Design.

Im Grunde ist mit dem unten stehenden Code für mich alles nun schön. Bis auf eine Sache: Diese grauen Striche und die Anfangs- und Endbeschriftung, dieses grau: Kann ich da eine andere Farbe wählen? Und falls ja - wie?

    <ftui-thermostat class="size-1"
        [value]="{{Thermostat}}:desired-temp"
        [temp]="{{Geber2}}:temperature"
        [humidity]="{{Geber2}}:humidity | append(' %')"
        [valve]="{{Thermostat}}:valve"
        [valve]="{{Geber2}}:temperature"
         unit=" °C"
         size="180"
         has-zoom
         tick="40"
         value-decimals="1"
         step="0.05"
       >
       </ftui-thermostat>
RPI 4 - Jeelink HomeMatic Z-Wave


curt

Zitat von: mr_petz am 02 März 2023, 07:05:48
Antwort steht hier:

Danke, verstanden. Und funktioniert grundsätzlich (hexadezimal).

Frage: Die in user.css selbst definierten Farben der Art "my_yellow" funktionieren da nicht? Oder mache ich da irgendwie einen Fehler?
RPI 4 - Jeelink HomeMatic Z-Wave