Hallo,
ich versuche eine Heizungsthermostat (HM-CC-RT-DN) über einen zusätzlichen Temperatursensor zu steuern.
Den HM-CC-RT-DN (Arz.RT) kann ich ansteuern und der Termperatursensor (Arz.Clima) wird ausgelesenund die Werte werden auch sauber an den wie im Wiki beschrieben eingerichteten virtuellen Sensor (Arz.vT_Sensor1) übertragen. Was offenbar nicht geklappt hat ist das Peering mit dem Weather-Kanal des Thermostats.
Was fehlt ?
Meine FHEM-Installation ist einige Wochen alt, aber ich habe kürzlich KEIN Update durchgeführt.
Ich nutze einen kleine Atom mit dem Docker-Image
Latest Revision: 17774
File Rev Last Change
00_CUL.pm 17559 2018-10-18 07:45:07Z rudolfkoenig
10_CUL_HM.pm 17532 2018-10-14 17:50:45Z martinp876
console.js 16348 2018-03-07 21:02:42Z rudolfkoenig
f18.js 17705 2018-11-08 10:30:28Z rudolfkoenig
fhemweb.js 17769 2018-11-17 22:57:02Z rudolfkoenig
Kommandos zum einrichten des virtuellen Senors:
define Arz.vT CUL_HM 5AB08B
set Arz.vT virtual 1
rename Arz.vT_Btn1 Arz.vT_Sensor1
set Arz.vT_Sensor1 peerChan 0 Arz.RT_Weather single
attr Arz.vT_Sensor1 stateFormat temperature °C, humidity %
define at_Arz.vT at +*00:01 {
my $T=(ReadingsVal("Arz.Clima.Sensor","temperature",20.0));;
fhem "set Arz.vT_Sensor1 virtTemp $T";;
my $H=(ReadingsVal("Arz.Clima.Sensor","humidity",20.0));;
fhem "set Arz.vT_Sensor1 virtTemp $H";;
}
attr at_Arz.vT room Arbeitszimmer
list Arz.vT - virtueller Sensor
--------------------------------------------------------------------------------------
Internals:
CFGFN
DEF 5AB08B
IODev
NAME Arz.vT
NOTIFYDEV global
NR 152
STATE ERR_IOdev_undefined
TYPE CUL_HM
channel_01 Arz.vT_Sensor1
protCmdDel 5
protIOerr 5 last_at:2019-01-08 21:55:26
protState CMDs_done_Errors:1
READINGS:
2019-01-08 21:55:26 state ERR_IOdev_undefined
helper:
HM_CMDNR 220
mId
expert:
def 1
det 0
raw 1
tpl 0
io:
newChn +5AB08B,00,00,00
prefIO
rxt 0
vccu
p:
5AB08B
00
00
00
mRssi:
mNo
prt:
bErr 0
sProc 0
rspWait:
q:
qReqConf
qReqStat
role:
dev 1
vrt 1
tmpl:
Attributes:
expert 2_raw
model virtual_1
msgRepeat 0
subType virtual
webCmd virtual
list Arz.RT_Weather - Weather-Channel des Thermostats
--------------------------------------------------------------------------------------
Internals:
DEF 4DB08B01
NAME Arz.RT_Weather
NOTIFYDEV global
NR 21
NTFY_ORDER 50-Arz.RT_Weather
STATE 21.6
TYPE CUL_HM
chanNo 01
device Arz.RT
peerList self01,
READINGS:
2019-01-08 21:23:27 R-sign off
2019-01-08 21:56:11 measured-temp 21.6
2019-01-08 21:43:41 peerList self01,
2019-01-08 21:56:11 state 21.6
helper:
getCfgListNo
peerIDsRaw ,00000000
regLst ,1
expert:
def 1
det 0
raw 1
tpl 0
role:
chn 1
shadowReg:
tmpl:
Attributes:
model HM-CC-RT-DN
peerIDs 00000000,4DB08B01
room Arbeitszimmer
HmInfo rssi
rssi done:
Device receive from last avg min_max count
Arz.RT Arz.RT CUL_0 -60.0 -57.7 -60.0< -54.0 16
Arz.RT CUL_0 Arz.RT -61.5 -61.4 -80.5< -53.5 2037
Kdz.RT CUL_0 Kdz.RT -88.0 -85.2 -97.0< -79.5 1232
Kdz.RT Kdz.RT CUL_0 -80.0 -82.0 -84.0< -80.0 4
Kue.RT CUL_0 Kue.RT -84.5 -82.5 -92.0< -78.5 2915
Kue.RT Kue.RT CUL_0 -80.0 -81.2 -82.0< -80.0 8
HmInfo peerXref
peerXref done:
x-ref list
Arz.RT_Weather => self01
Arz.vT_Sensor1 => Arz.RT_Weather
Kue.RT_Climate => 19D88901
HmInfo configCheck
configCheck done:
missing register list
Arz.RT_Weather: RegL_01.
peer not defined
Kue.RT_Climate id:19D88901
peer not verified. Check that peer is set on both sides
Arz.vT_Sensor1 p:Arz.RT_Weather
no IO device assigned
Arz.vT
PairedTo mismatch to IODev
Arz.RT paired:0xF11034 IO attr: -.
Kdz.RT paired:0xF11034 IO attr: -.
Kue.RT paired:0xF11034 IO attr: -.
templist mismatch
Arz.RT_Clima: file: ./tempList.cfg error:Can't open ./tempList.cfg: No such file or directory
Kdz.RT_Clima: file: ./tempList.cfg error:Can't open ./tempList.cfg: No such file or directory
Kue.RT_Climate: file: ./tempList.cfg error:Can't open ./tempList.cfg: No such file or directory
Eventlog
2019-01-08 22:11:46.081 MQTT_DEVICE Arz.Clima.Sensor transmission-state: incoming publish received
2019-01-08 22:11:46.082 MQTT_DEVICE Arz.Clima.Sensor temperature: 20
2019-01-08 22:11:46.127 MQTT_DEVICE Arz.Clima.Sensor transmission-state: incoming publish received
2019-01-08 22:11:46.128 MQTT_DEVICE Arz.Clima.Sensor humidity: 62
2019-01-08 22:12:17.932 CUL_HM Arz.vT_Sensor1 temperature: 20
2019-01-08 22:12:17.932 CUL_HM Arz.vT_Sensor1 set_virtTemp 20
2019-01-08 22:12:40.812 CUL_HM Arz.vT CMDs_pending
2019-01-08 22:12:40.813 CUL_HM Arz.vT IOerr
2019-01-08 22:12:40.813 CUL_HM Arz.vT CMDs_done_Errors:1
2019-01-08 22:12:40.814 CUL_HM Arz.vT ERR_IOdev_undefined
Hi,
wie die Fehlermeldung sagt: ERR_IOdev_undefined
PairedTo mismatch to IODev
Arz.RT paired:0xF11034 IO attr: -.
Kdz.RT paired:0xF11034 IO attr: -.
Kue.RT paired:0xF11034 IO attr: -.
Ohne IODev geht nix! Aus irgendwelchen Gründen klappt manchmal die automatische Anlage nicht. Musst Du manuell setzen!
Gruß Otto
Dein virtuelles Device hat kein IODev!
Daher kann es nicht mit der HM-Welt kommunizieren.
Nach dem
define Arz.vT CUL_HM 5AB08B
müsste ne Fehlermeldung gekommen sein!?
Das darf NICHT die HMID Deines IN sein!
cool, Vielen Dank! Das ging schnell. Und klappt auch schon:
Die Lösung brachte ein:
attr Arz.vT IODev CUL_0
Die hmId habe ich mir "ausgedacht" und natürlich drauf geachtet, dass die bisher bei mir nicht verwendet wird.
Oder gibt es ein Verfahren eine hmId für ein virtuelles Device zu erzeugen ?
Die drei Fehlermeldungen zu Arz.RT, Kue.RT und Kdz.RT kommen von den physikalischen Devices.
Schönheitsfehler denn es scheint alles zu funktionieren. Oder wie bekomme ich die auch noch weg ?
Ich habe allerdings keine Wandthermostate.
Aber vergiss die RT nicht! Kontrolliere auch dort IODev. Zumindest zeigt hmInfo einen Fehler!