HM-CC-RT-DN

Begonnen von Alex85, 13 September 2013, 11:03:07

Vorheriges Thema - Nächstes Thema

jostmario

Hallo


Habe heute mal Fhem geupdatet jetzt kann ich keine temperaturen mehr verstellen auf der Web oberfläche.

anbei ein Bild, vorhher war hinten die auswahlbo für die Solltemperatur.

Gruß Josty
Raspberry Pi  ---  HM-LAN ---  8X HM_HM_CC_RT_DN --- OWL+USB Strommesser    UVR1611

Herr 3x

Hallo!

Zitat von: jostmario am 08 Januar 2014, 18:42:35
Habe heute mal Fhem geupdatet jetzt kann ich keine temperaturen mehr verstellen auf der Web oberfläche.

Ich habe gestern mal ein update gemacht:
# $Id: fhem.pl 4565 2014-01-05 22:17:37Z rudolfkoenig $
# $Id: 10_CUL_HM.pm 4573 2014-01-06 13:41:57Z martinp876 $
# $Id: 01_FHEMWEB.pm 4566 2014-01-05 22:19:11Z rudolfkoenig $
# $Id: 92_FileLog.pm 4574 2014-01-06 14:12:42Z rudolfkoenig $
# $Id: 00_HMLAN.pm 4562 2014-01-05 15:22:54Z martinp876 $
# $Id: 30_HUEBridge.pm 4418 2013-12-19 17:21:19Z justme1968 $
# $Id: 31_HUEDevice.pm 4569 2014-01-06 00:43:57Z justme1968 $
# $Id: 98_PID.pm 3988 2013-11-01 09:20:26Z john $
# $Id: 99_SUNRISE_EL.pm 4537 2014-01-03 08:28:59Z rudolfkoenig $
# $Id: 98_SVG.pm 4503 2013-12-29 18:38:50Z rudolfkoenig $
# $Id: 99_Utils.pm 3595 2013-08-05 05:38:48Z tobiasfaust $
# $Id: 90_at.pm 4246 2013-11-18 20:35:20Z rudolfkoenig $
# $Id: 98_autocreate.pm 4234 2013-11-17 10:19:41Z rudolfkoenig $
# $Id: 98_dewpoint.pm 3832 2013-09-01 18:45:32Z wherzig $
# $Id: 98_dummy.pm 3738 2013-08-18 14:13:59Z rudolfkoenig $
# $Id: 91_notify.pm 3738 2013-08-18 14:13:59Z rudolfkoenig $
# $Id: 98_telnet.pm 3738 2013-08-18 14:13:59Z rudolfkoenig $


Damit ist die Auswahl noch da und das Temp-Ändern geht funktioniert auch.
Evtl. mal Style ändern, Browser-Reload, shutdown-restart oder anderen Browser probieren?
Ich hatte mal so einen eigenartigen Effekt (neuer Raum wollte nicht auftauchen) nach Änderungen, weil der Browser irgendwas noch im Cache hatte.

HTH

Herr 3x

jostmario

Hallo

hab das Update jetzt nochmal durchlaufen lassen per Telnet Console

Da steht am Ende

2014-01-08 19:56:09 Global global backup tar: ./log/Heizung_Bad_Oben-2014.log: file changed as we read it
2014-01-08 19:56:09 Global global backup done: FHEM-20140108_195315.tar.gz (24162326 Bytes)
2014-01-08 19:56:09 Global global update Can't write ./FHEM/00_HMLAN.pm: Permission denied
2014-01-08 19:56:09 Global global update Can't write ./FHEM/HMConfig.pm: Permission denied
2014-01-08 19:56:09 Global global update No files have been updated because one or more errors have occurred!


Könntest du dir das evtl mal per Teamviewer Anschauen
kann es an den fehlermeldungen beim Update liegen ?

Gruß Josty
Raspberry Pi  ---  HM-LAN ---  8X HM_HM_CC_RT_DN --- OWL+USB Strommesser    UVR1611

Herr 3x

Hallo Josty,

ich habe keine Ahnung, warum das Update nicht klappt.
Doch, was ich zuerst schauen würde: Ist noch Speicher frei?

Herr 3x

jostmario

Hallo

Ja ist ne 8 GB Karte.

Hab den fehler aber gefunden.
es waren wohl Schreibrechte vom fhem verzeichnis.
Da ich von Linux kein Plan habe, hat mich das 2 std Google gekostet :-( .
letzendlich war es dieser befehl:   sudo chmod -R a+w fhem
dann nochmal Update dann lief wieder alles wie gehabt.

Trotzdem Danke,

Gruß Josty
Raspberry Pi  ---  HM-LAN ---  8X HM_HM_CC_RT_DN --- OWL+USB Strommesser    UVR1611

jon_realdesign

Hallo liebes Forum,

bin noch relativ neu im Thema FHEM. Habe allerdings die PDF's zu FHEM und Homematic mittlerweile durch.
Pairing und Sollwerforgabe an das HM-CC-RT-DN via CUL auf Raspberry Pi funktionieren.

Nun würde ich gerne im Web-Frontend die Solltemperatur über einen Slider einstellen. Es wäre schön wenn man diesen auf 15 bis 25°C begrenzen könnte.

Habe mittlerweile den ganzen Thread durch und auch diverse Seiten mir im Web zum Thema Slider bei Jalousie & Dimmer angesehen. Aber leider funktioniert das hier alles nicht. Habt Ihr vielleicht eine Lösung?

Wäre sehr nett, wenn mir jemand helfen könnte.
Danke


martinp876

Hallo Jon_realdesign,

{$HMConfig::culHmChanSets{"HM-CC-RT-DN04"}{"desired-temp"}="[on|off|15..25]"}

In Perl und FHEM kann man alles verändern... das sind bereits "internas". Bei Veränderungen dieser Art erlischt natürlich die Garantie ;)
Will sagen - es sollte gehen. Ist kein dokumentiertes Feature - eventuelle Fehler muss der User auf diesem Level selbst korrigieren.

Des ändert nicht den Möglichen eingabebereich, der wird nicht aus diesem String abgeleitet

Gruss Martin

jon_realdesign

Danke Martin für die schnelle Antwort.

Mache mir erst ein BackUp von der HMconfig.pm und werde es dann testen. Die Zeile gehört doch selbst in die fhem.cfg?

Habe momentan eine andere Variante getestet, welche aber noch nicht ganz optimal ist:

define TempChange dummy
attr TempChange room Arbeitszimmer
attr TempChange setList state:slider,15,1,25
attr TempChange webCmd state
define AZ_TemperaturChange notify TempChange set AZ_Heizung_ClimRT desired-temp %


jon_realdesign

Habe den Code nochmal modifiziert, um nach einem Restart den zuletzt gespeicherten Wert zu benutzen. Leider funktioniert es noch nicht. Hat da evtl. jemand eine Idee?

define TempChange dummy
attr TempChange room Arbeitszimmer
attr TempChange setList state:slider,15,1,25
attr TempChange webCmd state
define AZ_TemperaturChange notify (TempChange|global:INITIALIZED|global:REREADCFG) set AZ_Heizung_ClimRT desired-temp {ReadingsVal("TempChange","state","17.0")}


martinp876

Hallo Jon_realdesign,

ZitatDie Zeile gehört doch selbst in die fhem.cfg?
ja/nein. Eigentlich schon, aber save löscht alles ausser comment, define und attr. Also keine gute Idee. Besser du schreibst ein eigenes File und lässt es ausführen.
Ich habe mir erst einmal ein directory setup gemacht, damit ich meine settings speichern kann (da kommen noch ein paar mehr zusammen).
Dass es ausgeführt wird (file fhemUserCfg.cfg im setup directory)
Zitatdefine userCfg notify global:INITIALIZED include setup/fhemUserCfg.cfg

in diesem File kannst du es dann hinterlegen - und es wird nicht gelöscht.

attr TempChange setList state:slider,15,1,25
Space separated list of commands.... siehe commandref!!!
Options mit ':'
attr TempChange setList state slider:15,1,25
was soll das webCmd 'state' machen? Welchen state soll es setzen?
Gruss Martin

jon_realdesign

Hallo Martin,

Danke für die INfos. Habe inzwischen folgendes erreicht


(http://d:%5CFHEM01.gif)

jon_realdesign

Hallo Martin,

Danke für die Infos. Habe inzwischen Folgendes erreicht.

(1)
Folgenden Code von Dir habe ich in ein separates File unter setup/fhemUserCfg.cfg kopiert.


{$HMConfig::culHmChanSets{"HM-CC-RT-DN04"}{"desired-temp"}="[on|off|15..25]"}


Dieses lasse ich durch die "fhem.cfg" ausführen analog deiner Beschreibung. Das Ausführen kappt auch, was man daran erkennen kann, das sich die Dropdown-Auswahlmöglichkeit für den Sollwert ändert. Allerdings habe dann immer noch eine Dropdownliste und nicht den gewünschten Schieberegler (Slider)!

(2)
Parallel habe ich an dem Ansatz mit einem Dummy-Objekt und einem Notify gearbeitet. Hierzu habe ich folgenden Script benutzt.


define AZ_Temperatur dummy
attr AZ_Temperatur room Arbeitszimmer
attr AZ_Temperatur setList state:slider,15,1,25
attr AZ_Temperatur webCmd state
define AZ_TemperaturChange notify AZ_Temperatur set AZ_Heizung_ClimRT desired-temp %


Dann bekomme ich einen Slider, mit dem ich den Sollwert ändern kann. Das sieht dann so aus, wie in dem angehängten Bild zu sehen.

Mein Problem ist aber jetzt immer noch, dass ich den eingestellten Sollwert aus dem Thermostat nicht rücklesen und an den Slider (=Dummy) senden kann. Damit meine ich inbesondere, wenn man über das Wahlrad am Thermostat die Temperatur manuell verändert, dann erscheint dieser Wert nicht am Slider. Das gleiche Problem besteht auch beim Neustarten des FHEM-Servers.

Das Reading 'desired-temp' existiert ja unter den Device-Readings. Dieses müsste man zyklisch oder nur nach Veränderung an den Slider (=Dummy) schicken. Hättest Du hierfür eine Idee? Oder bin evtl völlig auf dem Holzweg und es gibt eine viel einfachere Lösung?

Viele Grüße
Joachim


P.S.:
Zu deiner Frage nach dem "webCmd state':
Das hatte ich aus der CommandRef. Siehe hierzu folgenden Ausschnitt:

Zitat
webCmd
...
if the modifier is of the form ":slider,<min>,<step>,<max>", then a javascript driven slider is displayed
...
If the command is state, then the value will be used as a command.
...
define d2 dummy
attr d2 webCmd state
attr d2 setList state:slider,0,1,10
...

martinp876

nun, du kannst ein notify auf das desired-temp machen und abfangen, wenn sich dies ändert. Dann musst du deinen dummy ändern. Dort musst du wohl den state setzen, entsprechend dem wert.
Zyklisch abfragen macht m.E. keinen Sinn.

ext23

Moin,

ich hab gestern einen zweiten Regler in Betrieb genommen. Der RT_tr Kanal heißt jetzt aber nur noch Clima richtig? Ich habe burst aktiviert aber dennoch hatte ich Probleme die Temp Listen einzuspielen. Immer alles schön nacheinander, den Sonntag aber ich immer noch nicht rein bekommen :-( Den Offset bekomme ich auch nicht gesetzt. Noch Ideen? Nochmal neu pairen? Aber ich meine scheinbar sieht ja alles gut aus. Ein Boost wird auch sofort angenommen und ausgeführt.
PairedTo 0x23FF23
R-pairCentral 0x23FF23
R-burstRx on


2014.01.31 07:37:49 2: CUL_HM set az_Heizung_Clima tempListSun 09:00 17.0 23:00 19.0 24:00 17.0
2014.01.31 07:37:49 0: HMLAN_Send:  HMLAN1 S:SE704846C stat:  00 t:00000000 d:01 r:E704846C m:04 B112 23FF23 21F758
2014.01.31 07:37:49 0: HMLAN_Parse: HMLAN1 R:RE704846C stat:0001 t:CFA8817A d:FF r:FFD6     m:04 8002 21F758 23FF23 00
2014.01.31 07:37:49 0: HMLAN_Send:  HMLAN1 S:SE704866E stat:  00 t:00000000 d:01 r:E704866E m:05 A001 23FF23 21F758 00050000000007
2014.01.31 07:37:50 0: HMLAN_Parse: HMLAN1 R:RE704866E stat:0001 t:CFA8830D d:FF r:FFD6     m:05 8002 21F758 23FF23 00
2014.01.31 07:37:50 0: HMLAN_Send:  HMLAN1 S:SE70489AC stat:  00 t:00000000 d:01 r:E70489AC m:06 A001 23FF23 21F758 00082F6C304D3114
2014.01.31 07:37:51 0: HMLAN_Parse: HMLAN1 R:RE70489AC stat:0008 t:00000000 d:FF r:7FFF     m:06 A001 23FF23 21F758 00082F6C304D3114
2014.01.31 07:37:51 0: HMLAN_Parse: HMLAN1 no ACK from 21F758
2014.01.31 07:37:54 0: HMLAN_Send:  HMLAN1 S:SE70497F0 stat:  00 t:00000000 d:01 r:E70497F0 m:07 B112 23FF23 21F758
2014.01.31 07:37:54 0: HMLAN_Parse: HMLAN1 R:RE70497F0 stat:0001 t:CFA894FF d:FF r:FFD6     m:07 8002 21F758 23FF23 00
2014.01.31 07:37:54 0: HMLAN_Send:  HMLAN1 S:SE70499F1 stat:  00 t:00000000 d:01 r:E70499F1 m:06 A001 23FF23 21F758 00082F6C304D3114
2014.01.31 07:37:55 0: HMLAN_Parse: HMLAN1 R:RE70499F1 stat:0008 t:00000000 d:FF r:7FFF     m:06 A001 23FF23 21F758 00082F6C304D3114
2014.01.31 07:37:55 0: HMLAN_Parse: HMLAN1 no ACK from 21F758
2014.01.31 07:37:58 0: HMLAN_Send:  HMLAN1 S:SE704A873 stat:  00 t:00000000 d:01 r:E704A873 m:08 B112 23FF23 21F758
2014.01.31 07:37:59 0: HMLAN_Parse: HMLAN1 R:RE704A873 stat:0001 t:CFA8A583 d:FF r:FFD6     m:08 8002 21F758 23FF23 00
2014.01.31 07:37:59 0: HMLAN_Send:  HMLAN1 S:SE704AB70 stat:  00 t:00000000 d:01 r:E704AB70 m:06 A001 23FF23 21F758 00082F6C304D3114
2014.01.31 07:37:59 0: HMLAN_Parse: HMLAN1 R:RE704AB70 stat:0008 t:00000000 d:FF r:7FFF     m:06 A001 23FF23 21F758 00082F6C304D3114
2014.01.31 07:37:59 0: HMLAN_Parse: HMLAN1 no ACK from 21F758
2014.01.31 07:38:02 0: HMLAN_Send:  HMLAN1 S:SE704B99F stat:  00 t:00000000 d:01 r:E704B99F m:09 B112 23FF23 21F758
2014.01.31 07:38:03 0: HMLAN_Parse: HMLAN1 R:RE704B99F stat:0001 t:CFA8B6AE d:FF r:FFD6     m:09 8002 21F758 23FF23 00
2014.01.31 07:38:03 0: HMLAN_Send:  HMLAN1 S:SE704BB9F stat:  00 t:00000000 d:01 r:E704BB9F m:06 A001 23FF23 21F758 00082F6C304D3114
2014.01.31 07:38:04 0: HMLAN_Parse: HMLAN1 R:RE704BB9F stat:0008 t:00000000 d:FF r:7FFF     m:06 A001 23FF23 21F758 00082F6C304D3114
2014.01.31 07:38:04 0: HMLAN_Parse: HMLAN1 no ACK from 21F758


Gruß
Daniel
HM, KNX, FS20, 1-Wire, PanStamp, AVR-NET-IO, EM1000EM, PCA301, EC3000, HM-LAN, CUL868, RFXtrx433, LGW, DMX @Ubuntu-Server (Hauptsystem) & Raspberry Pi (Satellit)

jon_realdesign

Hallo Martin,

habe jetzt mein Problem mit dem Slider und dessen Aktualsierung bei manueller Änderung am Thermostat, nach der von dir beschriebenen Methode, lösen können. Die 'desired-temp' wird nun nicht mehr zyklisch abgefragt, sondern über ein Event nur bei Änderung. Man muss allerdings vorher am Thermostat (Device) das Attribut 'event-on-change-reading' auf 'desired-temp' setzen.

Falls jemand Interesse hat, kann ich meinen Code gerne hier 'posten'.

Viele Grüße und Danke
Joachim