[GELÖST] Darstellung unterschiedlich trotz gleicher Config

Begonnen von ERI, 18 Dezember 2020, 17:53:05

Vorheriges Thema - Nächstes Thema

ERI

Im Anhang ist ein Screenshot....  die bei SONOFFS  sind genau gleich  Configuriert. #So wohl auf dem Gerät als auch in FHEM . ( logisch  die geräteabhängigen Daten / Id  sind anders)

Das Symbol  wechselt  von weis an auf weis aus das obere von gelb an auf  weis aus ( so wollt ich das)

Ausserdem im zweiten Bild  ist eine Online anzeige ..... hier ist ein ESp32 mit etwas drum rum
bis auf  die Tatsache das  ich die Anzeige  zwei zeilig haben wollte passt das soweit. 
Aber die Onlinie  offline  Anzeige möchte ich auch für die  "einfachen" son offs ..


Dann noch die beiden Configurationen

defmod Nightlight_Esszimmer MQTT2_DEVICE DVES_D7D9AA
attr Nightlight_Esszimmer IODev FHEM_Broker
attr Nightlight_Esszimmer autocreate 0
attr Nightlight_Esszimmer cmdIcon off:FS20.off on:FS20.on
attr Nightlight_Esszimmer icon FS20.off
attr Nightlight_Esszimmer jsonMap POWER:state
attr Nightlight_Esszimmer model tasmota_basic_state_power1
attr Nightlight_Esszimmer readingList tele/tasmota_D7D9AA/LWT:.* LWT\
  tele/DVES_D7D9AA/STATE:.* { json2nameValue($EVENT,'',$JSONMAP) }\
  tele/DVES_D7D9AA/SENSOR:.* { json2nameValue($EVENT,'',$JSONMAP) }\
  tele/DVES_D7D9AA/INFO.:.* { json2nameValue($EVENT,'',$JSONMAP) }\
  tele/DVES_D7D9AA/UPTIME:.* { json2nameValue($EVENT,'',$JSONMAP) }\
  stat/DVES_D7D9AA/RESULT:.* { json2nameValue($EVENT,'',$JSONMAP) }\


defmod Nightlight_Diele MQTT2_DEVICE DVES_D7D705
attr Nightlight_Diele IODev FHEM_Broker
attr Nightlight_Diele autocreate 0
attr Nightlight_Diele cmdIcon on:FS20.on   off:FS20.off
attr Nightlight_Diele icon FS20.off
attr Nightlight_Diele jsonMap POWER1:state
attr Nightlight_Diele model tasmota_basic_state_power1
attr Nightlight_Diele readingList tele/tasmota_D7D705/LWT:.* LWT\
  tele/DVES_D7D705/STATE:.* { json2nameValue($EVENT,'',$JSONMAP) }\
  tele/DVES_D7D705/SENSOR:.* { json2nameValue($EVENT,'',$JSONMAP) }\
  tele/DVES_D7D705/INFO.:.* { json2nameValue($EVENT,'',$JSONMAP) }\
  tele/DVES_D7D705/UPTIME:.* { json2nameValue($EVENT,'',$JSONMAP) }\
  stat/DVES_D7D705/RESULT:.* { json2nameValue($EVENT,'',$JSONMAP) }\
 


attr Nightlight_Diele room Diele,MQTT2_DEVICE,Übersicht
attr Nightlight_Diele setList off:noArg    cmnd/DVES_D7D705/POWER1 0\
  on:noArg     cmnd/DVES_D7D705/POWER1 1\
  toggle:noArg cmnd/DVES_D7D705/POWER1 2\
  setOtaUrl:textField cmnd/DVES_D7D705/OtaUrl $EVTPART1\
  upgrade:noArg   cmnd/DVES_D7D705/upgrade 1
attr Nightlight_Diele setStateList on  off  toggle


das grosse Teil :
defmod 3D_Printer_addon MQTT2_DEVICE DVES_9A1940
attr 3D_Printer_addon IODev FHEM_Broker
attr 3D_Printer_addon autocreate 0
attr 3D_Printer_addon devStateIcon Online:10px-kreis-gruen Offline:10px-kreis-rot 1.on:on:POWER1+off 1.off:off:POWER1+on 2.on:on:POWER2+off 2.off:off:POWER2+on 3.on:on:POWER3+off 3.off:off:POWER3+on 4.on:on:POWER4+off 4.off:off:POWER4+on
attr 3D_Printer_addon icon remotecontrol/black_btn_TOOLS2
attr 3D_Printer_addon jsonMap POWER1:state
attr 3D_Printer_addon model tasmota_4ch_unified_icon
attr 3D_Printer_addon readingList tele/tasmota_9A1940/LWT:.* LWT\
  tele/3D_Printer9A1940/STATE:.* { json2nameValue($EVENT,'',$JSONMAP) }\
  tele/3D_Printer9A1940/SENSOR:.* { json2nameValue($EVENT,'',$JSONMAP) }\
  tele/3D_Printer9A1940/INFO.:.* { json2nameValue($EVENT,'',$JSONMAP) }\
  stat/3D_Printer9A1940/RESULT:.* { json2nameValue($EVENT,'',$JSONMAP) }\
  tele/3D_Printer9A1940/UPTIME:.* { json2nameValue($EVENT,'',$JSONMAP) }\
  stat/3D_Printer9A1940/POWER1:.* POWER1\
  stat/3D_Printer9A1940/POWER2:.* POWER2\
  stat/3D_Printer9A1940/POWER3:.* POWER3\
  stat/3D_Printer9A1940/POWER4:.* POWER4
attr 3D_Printer_addon room Übersicht,Diele,MQTT2_DEVICE
attr 3D_Printer_addon setList POWER1:on,off,toggle cmnd/3D_Printer9A1940/POWER1 $EVTPART1\
  POWER2:on,off,toggle cmnd/3D_Printer9A1940/POWER2 $EVTPART1\
  POWER3:on,off,toggle cmnd/3D_Printer9A1940/POWER3 $EVTPART1\
  POWER4:on,off,toggle cmnd/3D_Printer9A1940/POWER4 $EVTPART1
attr 3D_Printer_addon setStateList on off toggle
attr 3D_Printer_addon stateFormat LWT\
1:POWER1\
2:POWER2\
3:POWER3\
4:POWER4\
\
Temp: DHT11_Temperature TempUnit\
Hum:  DHT11_Humidity %\
DEWPoint : DHT11_DewPoint TempUnit

Die Beispiele und wiki gescannt  das  forum  durchwühlt nix gefunden was  mir  weiter geholfen hätte.
Vermutlich sehe ich den Wald  vor lauter Bäumen nicht ....





MKeY

Zitat von: ERI am 18 Dezember 2020, 17:53:05
die bei SONOFFS  sind genau gleich  Configuriert. #So wohl auf dem Gerät als auch in FHEM . ( logisch  die geräteabhängigen Daten / Id  sind anders)

ähm, sind sie nicht

attr Nightlight_Esszimmer jsonMap POWER:state
attr Nightlight_Diele jsonMap POWER1:state
Wer Fehler findet, darf sie behalten!
RPi's, D1Mini
Homematic, Hue, Sonoff, Alexa, Xiaomi, ConBee
Prusa MK2.5, Prusa MK3S (MMU2S vorhanden, aber nervtötend)
Lowrider 2CNC

ERI

Und das macht  den Unterschied?
irgenwie nicht ...
nach dem Umschreiben der Jason map ( und  natürlich auch der anderen definitionen im Device)
wurds nicht besser ... genau genommen tatsächlich schlechte   kein icon mehr  :( 

MKeY

nein, aber wenn du sagst, dass es identisch ist, dann war das ja nicht richtig.
Zudem definierst du noch ein setlist, was du ja beim ersten auch nicht hast.
Das kann alles dazu führen

attr Nightlight_Diele setList off:noArg    cmnd/DVES_D7D705/POWER1 0\
  on:noArg     cmnd/DVES_D7D705/POWER1 1\
  toggle:noArg cmnd/DVES_D7D705/POWER1 2\
  setOtaUrl:textField cmnd/DVES_D7D705/OtaUrl $EVTPART1\
  upgrade:noArg   cmnd/DVES_D7D705/upgrade 1
attr Nightlight_Diele setStateList on  off  toggle
Wer Fehler findet, darf sie behalten!
RPi's, D1Mini
Homematic, Hue, Sonoff, Alexa, Xiaomi, ConBee
Prusa MK2.5, Prusa MK3S (MMU2S vorhanden, aber nervtötend)
Lowrider 2CNC

ERI

#4
ja  aber das  war nicht  die Lösung ----


Die Set list gibt es  nicht beiden Devices ..

LuckyDay

ZitatAber die Onlinie  offline  Anzeige möchte ich auch für die  "einfachen" son offs ..

ist das die Frage --> der grüne Punkt?

fals ja, wird im attr stateFormat -->LWT
und attr devStateIcon --> devStateIcon Online:10px-kreis-gruen Offline:10px-kreis-rot


TomLee

Zitatbis auf  die Tatsache das  ich die Anzeige  zwei zeilig haben wollte passt das soweit.

Da könnte ein <br> in der Zeile nach 4:POWER4 in stateFormat helfen.

Gruß

Thomas

ERI

#7
so  finaly  I did  it

Danke @ fhem-hm-knecht
stateFormat war  die Ursache ... oder zumindest Teil dessen
LWT
POWER1
da hatte  sich  ein blödes Leerzeichen oder  was auch immer zwischen geschlichen ..

so nuun noch den Doppelzeiler
nun ja ---
danke  auch @TomLee
So  damit  sind wir  hier  durch
Das Printer ADD  On

defmod 3D_Printer_addon MQTT2_DEVICE DVES_9A1940
attr 3D_Printer_addon IODev FHEM_Broker
attr 3D_Printer_addon autocreate 0
attr 3D_Printer_addon devStateIcon Online:10px-kreis-gruen Offline:10px-kreis-rot 1.on:on:POWER1+off 1.off:off:POWER1+on 2.on:on:POWER2+off 2.off:off:POWER2+on 3.on:on:POWER3+off 3.off:off:POWER3+on 4.on:on:POWER4+off 4.off:off:POWER4+on
attr 3D_Printer_addon icon remotecontrol/black_btn_TOOLS2
attr 3D_Printer_addon jsonMap POWER1:state
attr 3D_Printer_addon model tasmota_4ch_unified_icon
attr 3D_Printer_addon readingList tele/tasmota_9A1940/LWT:.* LWT\
  tele/3D_Printer9A1940/STATE:.* { json2nameValue($EVENT,'',$JSONMAP) }\
  tele/3D_Printer9A1940/SENSOR:.* { json2nameValue($EVENT,'',$JSONMAP) }\
  tele/3D_Printer9A1940/INFO.:.* { json2nameValue($EVENT,'',$JSONMAP) }\
  stat/3D_Printer9A1940/RESULT:.* { json2nameValue($EVENT,'',$JSONMAP) }\
  tele/3D_Printer9A1940/UPTIME:.* { json2nameValue($EVENT,'',$JSONMAP) }\
  stat/3D_Printer9A1940/POWER1:.* POWER1\
  stat/3D_Printer9A1940/POWER2:.* POWER2\
  stat/3D_Printer9A1940/POWER3:.* POWER3\
  stat/3D_Printer9A1940/POWER4:.* POWER4
attr 3D_Printer_addon room Übersicht,Diele,MQTT2_DEVICE
attr 3D_Printer_addon setList POWER1:on,off,toggle cmnd/3D_Printer9A1940/POWER1 $EVTPART1\
  POWER2:on,off,toggle cmnd/3D_Printer9A1940/POWER2 $EVTPART1\
  POWER3:on,off,toggle cmnd/3D_Printer9A1940/POWER3 $EVTPART1\
  POWER4:on,off,toggle cmnd/3D_Printer9A1940/POWER4 $EVTPART1
attr 3D_Printer_addon setStateList on off toggle
attr 3D_Printer_addon stateFormat LWT\
1:POWER1\
2:POWER2\
3:POWER3\
4:POWER4\
<br>\
Temp: DHT11_Temperature TempUnit\
Hum:  DHT11_Humidity %\
DEWPoint : DHT11_DewPoint TempUnit

setstate 3D_Printer_addon Online\
1:off\
2:off\
3:off\
4:off\
<br>\
Temp: 20.7 C\
Hum:  60.0 %\
DEWPoint : 12.6 C

Dann
Das Dielen teil ( hier  Tasmota 9.1) :o

defmod Nightlight_Diele MQTT2_DEVICE DVES_D7D705
attr Nightlight_Diele IODev FHEM_Broker
attr Nightlight_Diele autocreate 1
attr Nightlight_Diele cmdIcon on:FS20.on   off:FS20.off
attr Nightlight_Diele devStateIcon Online:10px-kreis-gruen Offline:10px-kreis-rot  \
1.on:on:POWER1+off 1.off:off:POWER1+on\
\

attr Nightlight_Diele icon FS20.off
attr Nightlight_Diele jsonMap POWER1:state
attr Nightlight_Diele model tasmota_basic_state_power1
attr Nightlight_Diele readingList tele/tasmota_D7D705/LWT:.* LWT\
  tele/DVES_D7D705/STATE:.* { json2nameValue($EVENT,'',$JSONMAP) }\
  tele/DVES_D7D705/SENSOR:.* { json2nameValue($EVENT,'',$JSONMAP) }\
  tele/DVES_D7D705/INFO.:.* { json2nameValue($EVENT,'',$JSONMAP) }\
  tele/DVES_D7D705/UPTIME:.* { json2nameValue($EVENT,'',$JSONMAP) }\
  stat/DVES_D7D705/RESULT:.* { json2nameValue($EVENT,'',$JSONMAP) }\

attr Nightlight_Diele room Diele,MQTT2_DEVICE,Übersicht
attr Nightlight_Diele setList off:noArg    cmnd/DVES_D7D705/POWER1 0\
  on:noArg     cmnd/DVES_D7D705/POWER1 1\
  toggle:noArg cmnd/DVES_D7D705/POWER1 2
attr Nightlight_Diele setStateList on off toggle
attr Nightlight_Diele stateFormat LWT\
state

setstate Nightlight_Diele Online\
on

und  am ende  noch mal
Grüsse aus dem Esszimmer:

defmod Nightlight_Esszimmer MQTT2_DEVICE DVES_D7D9AA
attr Nightlight_Esszimmer IODev FHEM_Broker
attr Nightlight_Esszimmer autocreate 0
attr Nightlight_Esszimmer cmdIcon off:FS20.off on:FS20.on
attr Nightlight_Esszimmer devStateIcon Online:10px-kreis-gruen Offline:10px-kreis-rot  \
1.on:on:POWER1+off 1.off:off:POWER1+on\
\

attr Nightlight_Esszimmer icon FS20.off
attr Nightlight_Esszimmer jsonMap POWER1:state
attr Nightlight_Esszimmer model tasmota_basic_state_power1
attr Nightlight_Esszimmer readingList DVES_D7D9AA:stat/DVES_D7D9AA/POWER1:.* POWER1\
DVES_D7D9AA:tele/DVES_D7D9AA/LWT:.* LWT\
DVES_D7D9AA:cmnd/DVES_D7D9AA/POWER:.* POWER\
DVES_D7D9AA:stat/DVES_D7D9AA/UPGRADE:.* { json2nameValue($EVENT) }\
DVES_D7D9AA:tasmota/discovery/C82B96D7D9AA/config:.* { json2nameValue($EVENT) }\
DVES_D7D9AA:tasmota/discovery/C82B96D7D9AA/sensors:.* { json2nameValue($EVENT) }\
DVES_D7D9AA:stat/DVES_D7D9AA/RESULT:.* { json2nameValue($EVENT) }\
DVES_D7D9AA:tele/DVES_D7D9AA/STATE:.* { json2nameValue($EVENT) }
attr Nightlight_Esszimmer room Esszimmer,MQTT2_DEVICE,Übersicht
attr Nightlight_Esszimmer setList off:noArg    cmnd/DVES_D7D9AA/POWER1 0\
  on:noArg     cmnd/DVES_D7D9AA/POWER1 1\
  toggle:noArg cmnd/DVES_D7D9AA/POWER1 2\
  setOtaUrl:textField cmnd/DVES_D7D9AA/OtaUrl $EVTPART1\
  upgrade:noArg   cmnd/DVES_D7D9AA/upgrade 1
attr Nightlight_Esszimmer setStateList on off toggle
attr Nightlight_Esszimmer stateFormat LWT\
POWER1

setstate Nightlight_Esszimmer Online\
on

hier mit tasmota  9.2.0 ( weshalb auch immer )

Damit  gelösst  dank nochmal den hilfreichen Beiträgen 

TomLee

Zitatnun ja ---

Weiß ich nicht richtig einzuordnen.

Daher nochmal die Bemerkung das ich durch einlesen hier im Forum oder auch im Wiki und durch ausprobieren zu der Kenntnis komme, selbst hab ich mir das nicht ausgedacht.

ERI

Nun ja 
das  war mehr  so:
und jetzt noch mal das letzte damit es dann wirklich prefekt ist...

Aber du hast Recht hier gibt es viele gute Hinweise und auch das  Wiki ist beeindruckend

Aber es ist eben genau das selber Ausprobieren ist  das  was die Erfahrung bringt ...