fbt08 und FS20 Funksteckdose

Begonnen von PhotoFreak, 25 Januar 2014, 18:46:09

Vorheriges Thema - Nächstes Thema

PhotoFreak

Hallo zusammen!

Ich bin fhem und Perl - Neuling und verzweifel gerade so ein bisschen ...

Ich nutze u.a. die fbt08 in Verbindung mit einer FS20 Funksteckdose um die Ventile meiner Fussbodenheizung zu schalten.
Ein FHT (nur zum Test) schaltet die Steckdose einwandfrei doch möchte ich das Ganze über die fbt08 realisieren.
Dazu habe ich folgenden Codeschnipsel:

define HeizungWzAN notify Thermostat_Wz { if ( Value("measured-temp") < (ReadingsVal("Thermostat_Wz", "desired-temp", 17)) { fhem("set Heizung_Wz on") } }

Leider passiert nichts bei unterschreiten der Soll-Temperatur   :(

Darüberhinaus verstehe ich den Befehl ReadingsVal nicht so ganz. Laut dem pdf Dokument "Heimautomatisierung-mit-fhem"
ist dieser Befehl OHNE notify anzuwenden. Doch dann bekomme ich immer die Fehlermeldung:

ERROR:
Unknown module my, choose one of ALL3076 ALL4000T ALL4027 BS CM11 CUL CUL_EM CUL_FHTTK CUL_HM CUL_HOERMANN CUL_IR CUL_MAX CUL_RFR CUL_TX CUL_WS CULflash Calendar DbLog ECMD ECMDDevice EGPM EGPM2LAN EIB EM EMEM EMGZ EMWZ ENIGMA2 ESA2000 EnOcean FBAHA FBDECT FB_CALLMONITOR FHEM2FHEM FHEMWEB FHT FHT8V FHZ FLOORPLAN FRM FRM_AD FRM_I2C FRM_IN FRM_LCD FRM_OUT FRM_PWM FRM_SERVO FS20 FileLog GDS HCS HMLAN HMS HMinfo HTTPSRV HUEBridge HUEDevice Heating_Control I2C_BMP180 IPCAM IPWE IT Itach_Relay JeeLink JsonList KM271 KS300 LGTV LIRC LISTENLIVE LUXTRONIK2 LightScene M232 M232Counter M232Voltage MAX MAXLAN MSG MSGFile MSGMail NetIO230B OREGON OWAD OWCOUNT OWDevice OWFS OWID OWLCD OWMULTI OWSWITCH OWServer OWTEMP OWTHERM OWX PCA301 PID PIFACE POKEYS PRESENCE PachLog RFXCOM RFXMETER RFXX10REC RSS RandomTimer Revolt SCIVT SISPM SIS_PMS SML STV SVG SWAP SWAP_0000002200000003 SYSSTAT TCM THRESHOLD TRX TRX_ELSE TRX_LIGHT TRX_SECURITY TRX_WEATHER TUL TellStick Twilight USBWX USF1000 VIERA VantagePro2 WEBCOUNT WEBIO WEBIO_12DIGITAL WEBTHERM WOL WS2000 WS300 WS3600 Weather X10 XmlList YAMAHA_AVR ZWDongle ZWave _internal_ at autocreate average backup dewpoint dummy eventTypes fheminfo holiday mailcheck notice notify openweathermap panStamp readingsGroup remotecontrol sequence speedtest structure telnet update watchdog weblink xxLG7000


Kann jemand weiterhelfen? Was mache ich falsch?

Danke & Gruß

Puschel74

#1
Hallo,

ZitatWas mache ich falsch?
So einiges - sorry  ;D

ZitatKann jemand weiterhelfen?
Ich versuchs mal.

define HeizungWzAN notify Thermostat_Wz { if ( Value("measured-temp") < (ReadingsVal("Thermostat_Wz", "desired-temp", 17)) { fhem("set Heizung_Wz on") } }

a) Das regexp "Thermostat_Wz" ist schonmal zu allgemein da es immer auslöst - selbst wenn der Sensor kein measured-temp sendet.
Versuch mal Thermostat_Wz:measured-temp.*
b) Value? Wird mMn nicht klappen da measured-temp nicht mit Value abgefragt werden kann.
if ( ReadingsVal(("Thermostat_Wz","measured-temp",15) < (ReadingsVal("Thermostat_Wz", "desired-temp", 17))
soltle eher zum Ziel führen.

c) Die gepostete Fehlermeldung kann ich nicht nachvollziehen da du uns den Code der diese auslöst nicht zeigst.
ReadingsVal hast du wohl falsch verstanden - hier sollte dich die Forumssuche weiter bringen.

d) Du bearbeitest die fhem.cfg direkt?
Dann bist du dir über die Nebeneffekte und dgl. im klaren?

Das Wiki kennst du?
Dort sollte sich Code finden lassen der (abgewandelt) das macht was du willst.

Grüße

P.S.: Versuch dich mal an den Tags - dann lässt sich der Text besser lesen  ;)

Edith: Grad gesehen - FBT08. die kenn ich nicht. Werden die in FHEM überhaupt angezeigt bzw. eingebunden?
Welche Werte liefern sie und wie sehen die Readings aus?
Event Monitor zeigt was an?
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

PhotoFreak

Danke für deine Antwort!

Also ich habe jetzt die cfg nach Deinen Korrekturvorschlägen geändert in:

define HeizungWzAN notify Thermostat_Wz:measured-temp.* if ( ReadingsVal(("Thermostat_Wz","measured-temp",15) < (ReadingsVal("Thermostat_Wz", "desired-temp", 17)) { fhem("set Heizung_Wz on") }

Leider passiert auch dann nichts, der Ist-Wert liegt bei 19 Grad und der Soll-Wert bei 21 Grad. Dennoch wird die Fs20 nicht eingeschaltet.


Warum sollte man nicht direkt die cfg ändern? Was ergeben sich denn daraus für Nachteile? Ich finde es übersichtlicher,
die cfg mit einem entsprechenden Editor direkt zu bearbeiten. Anschließend copy & paste, speichern und ein rereadcfg sollte doch OK sein!?

FBT08 wird einwandfrei erkannt und liefert auch Werte (siehe Screenshot)


VG

Puschel74

Hallo,

na dann fütter mal das Suchfeld im Forum - es gibt speziell für Anfänger einige Gründe die Finger von der fhem.cfg zu lassen.

Aber wenn du dir über die Effekte im klaren gibst und weißt worauf du achten musst ist es ja ok.
Es steht ja auch nirgends das man die fhem.cfg NICHT! bearbeiten darf - es sind ja alles nur gut gemeinte Ratschläge.

Wenn dein notify immer noch nicht "klappt" dann bau dir mal ein paar Logeinträge ein und schau mal was den ausgelesen wird und was verglichen wird und wo es hackt.
Der Event Monitor ist immer ein heisser Tip um zu schauen wie die Events aussehen die FHEM empfängt.
Das FHEM-Logfile ist immer ein heisser Tip um zu schauen ob FHEM vielleicht einen Fehler meldet.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

PhotoFreak

Mit Hilfe der Logfiles und ein Bisschen "Herumprobieren" bin ich jetzt zu folgender Lösung gekommen, die zuverlässig funktioniert:

define HeizungWzAN notify Thermostat_Wz { if (ReadingsVal("Thermostat_Wz","desired-temp",20) > ("Thermostat_Wz", "measured-temp", 20))  {fhem ("set Heizung_Wz on") } else {fhem ("set Heizung_Wz off") } }

Damit ging es übrigens nicht: Thermostat_Wz:measured-temp.*