Hallo zusammen,
ich habe aus dem Wiki die folgende Readingsgroup nachgebaut: https://wiki.fhem.de/wiki/ReadingsGroup#Readings_aus_zus.C3.A4tzlichen_Devices (https://wiki.fhem.de/wiki/ReadingsGroup#Readings_aus_zus.C3.A4tzlichen_Devices)
Es funktioniert auch schon fast :-)
Ich poste hier, da es glaube ich nicht readingsgroup spezifisch ist.
Ich habe den regex für die Namen an mein Schema angepasst.
Meine Thermostate (HM-TC-IT-WM-W-EU) und Ventile (HM-CC-RT-DN) sind alle nach dem folgenden Schema benamt: Stockwerk_Zimmer_Typ (EG_WZ_HT, EG_WZ_V1)
Die Thermostate werden auch ohne Probleme angezeigt. Ich frage den Climate Channel ab
Nur bekomme ich die 99_myutils nicht so angepasst, dass auch die daten der ventilantriebe ausgelesen werden.
Folgendes funktioniert leider nicht:
#namen des ventil device aus thermostat device ableiten
sub valveOfDevice ($) {
my ($DEVICE) = @_;
if ($DEVICE =~ m/AZ/) {
return "(KG|EG|OG|DG).(WZ|KU|AZ|BD|WC|SZ|GZ|KZ).(V1|V2)".substr($DEVICE,11).".Nord";
} else {
return "(KG|EG|OG|DG).(WZ|KU|AZ|BD|WC|SZ|GZ|KZ).(V1|V2)".substr($DEVICE,11);
}
}
keine Ahnung ob das überhaupt mit meinen device namen so funktionieren kann.
Was auch nicht angezeigt wird, ist der Batterie Status. Der Existiert im Climate Channel nicht. Ideen, wie ich den bekomme?
Hier noch ein List der RG:
Internals:
DEF <Raum>,<Tist>,<Tsoll>,<Mode>,<Tnight>,<Tday>,<Hum>,<BatTC>,<Vist>,<Vsoll>,<Verr>,<BatVD> (KG|EG|OG|DG).(WZ|KU|AZ|BD|WC|SZ|GZ|KZ).HT.Climate:measured-temp,desired-temp,controlMode,R-nightTemp,R-dayTemp,humidity,battery,ValvePosition@{valveOfDevice($DEVICE)},ValveDesired@{valveOfDevice($DEVICE)},R-valveErrorPos@{valveOfDevice($DEVICE)},battery@{valveOfDevice($DEVICE)}
NAME myTemp
NR 541
NTFY_ORDER 50-myTemp
STATE Initialized
TYPE readingsGroup
mayBeVisible 1
CONTENT:
DG_AZ_HT_Climate 1
DG_GZ_HT_Climate 1
EG_WC_HT_Climate 1
EG_WZ_HT_Climate 1
OG_BD_HT_Climate 1
OG_GZ_HT_Climate 1
OG_KZ_HT_Climate 1
OG_SZ_HT_Climate 1
CONTENT2:
DEVICES:
ARRAY(0xba19c0a0)
ARRAY(0xba1dd128)
ARRAY(0xba18b7d8)
ARRAY(0xb9ef52d8)
ARRAY(0xb994e468)
ARRAY(0xb9e21290)
ARRAY(0xb9d49518)
ARRAY(0xb9e7ddc0)
ARRAY(0xb9ef2820)
fhem:
lastDefChange 10
last_update 1512167016.65696
helper:
DEF
nameStyle style="color:black"
commands:
desired-temp desired-temp:
positions:
DG_AZ_HT_Climate.R-dayTemp 2:5
DG_AZ_HT_Climate.R-nightTemp 2:4
DG_AZ_HT_Climate.controlMode 2:3
DG_AZ_HT_Climate.desired-temp 2:2
DG_AZ_HT_Climate.humidity 2:6
DG_AZ_HT_Climate.measured-temp 2:1
DG_GZ_HT_Climate.R-dayTemp 3:5
DG_GZ_HT_Climate.R-nightTemp 3:4
DG_GZ_HT_Climate.controlMode 3:3
DG_GZ_HT_Climate.desired-temp 3:2
DG_GZ_HT_Climate.humidity 3:6
DG_GZ_HT_Climate.measured-temp 3:1
EG_WC_HT_Climate.R-dayTemp 4:5
EG_WC_HT_Climate.R-nightTemp 4:4
EG_WC_HT_Climate.controlMode 4:3
EG_WC_HT_Climate.desired-temp 4:2
EG_WC_HT_Climate.humidity 4:6
EG_WC_HT_Climate.measured-temp 4:1
EG_WZ_HT_Climate.R-dayTemp 5:5
EG_WZ_HT_Climate.R-nightTemp 5:4
EG_WZ_HT_Climate.controlMode 5:3
EG_WZ_HT_Climate.desired-temp 5:2
EG_WZ_HT_Climate.humidity 5:6
EG_WZ_HT_Climate.measured-temp 5:1
OG_BD_HT_Climate.R-dayTemp 6:5
OG_BD_HT_Climate.R-nightTemp 6:4
OG_BD_HT_Climate.controlMode 6:3
OG_BD_HT_Climate.desired-temp 6:2
OG_BD_HT_Climate.humidity 6:6
OG_BD_HT_Climate.measured-temp 6:1
OG_GZ_HT_Climate.R-dayTemp 7:5
OG_GZ_HT_Climate.R-nightTemp 7:4
OG_GZ_HT_Climate.controlMode 7:3
OG_GZ_HT_Climate.desired-temp 7:2
OG_GZ_HT_Climate.humidity 7:6
OG_GZ_HT_Climate.measured-temp 7:1
OG_KZ_HT_Climate.R-dayTemp 8:5
OG_KZ_HT_Climate.R-nightTemp 8:4
OG_KZ_HT_Climate.controlMode 8:3
OG_KZ_HT_Climate.desired-temp 8:2
OG_KZ_HT_Climate.humidity 8:6
OG_KZ_HT_Climate.measured-temp 8:1
OG_SZ_HT_Climate.R-dayTemp 9:5
OG_SZ_HT_Climate.R-nightTemp 9:4
OG_SZ_HT_Climate.controlMode 9:3
OG_SZ_HT_Climate.desired-temp 9:2
OG_SZ_HT_Climate.humidity 9:6
OG_SZ_HT_Climate.measured-temp 9:1
recalc:
undef
ARRAY(0xb9353a28)
undef
undef
undef
undef
ARRAY(0xba18a5b8)
valueFormat:
R-dayTemp %.1f °C
R-nightTemp %.1f °C
R-valveErrorPos %.0f %%
ToutIst %.1f °C
ValveDesired %.0f %%
ValvePosition %.0f %%
humidity %.0f
%%
measured-temp %0.1f °C
valueIcon:
battery.low batterie@red
battery.ok batterie@lightgreen
values:
formated:
undef
ARRAY(0xb9e03ea8)
ARRAY(0xb9e21bc8)
ARRAY(0xb9e7b9c8)
ARRAY(0xb9e16d90)
ARRAY(0xba1941f0)
ARRAY(0xb9e08ff8)
orig:
undef
ARRAY(0xba196390)
ARRAY(0xba2cc3e8)
ARRAY(0xba189878)
ARRAY(0xba1983f0)
ARRAY(0xba188088)
ARRAY(0xb9e12280)
prefixsuffix:
undef
ARRAY(0xb9e74020)
ARRAY(0xba2cd138)
ARRAY(0xba2ca290)
ARRAY(0xba196360)
ARRAY(0xba0fac10)
ARRAY(0xba18b460)
Attributes:
commands { 'desired-temp' => 'desired-temp:' }
group Thermostat
nameStyle style="color:black"
room RG
valueFormat { 'measured-temp' => "%0.1f °C",'ToutIst' => "%.1f °C",'R-nightTemp' => "%.1f °C",'R-dayTemp' => "%.1f °C",'humidity' => "%.0f
%%",'ValvePosition' => "%.0f %%",'ValveDesired' => "%.0f %%",'R-valveErrorPos' => "%.0f %%" }
valueIcon {'battery.ok' => 'batterie@lightgreen', 'battery.low' => 'batterie@red'}
Zitat von: slor am 01 Dezember 2017, 23:28:08
Was auch nicht angezeigt wird, ist der Batterie Status. Der Existiert im Climate Channel nicht. Ideen, wie ich den bekomme?
Ich habe mir hierfür ein userreading angelegt mit dem ich batteryLevel vom Hauptchannel übernehme. Dann liegt es als Reading vor und du kannst es in die Readingsgroup aufnehmen.