Neues Modul HMCCU für Homematic CCU

Begonnen von zap, 19 August 2015, 19:45:30

Vorheriges Thema - Nächstes Thema

zap

Kann Dir erst heute Abend helfen. Nur soviel: homeBridgeMapping und genericDeviceType sind keine HMCCU Attribute. Die dürften hier also nichts bewirken.
2xCCU3, Fenster, Rollläden, Themostate, Stromzähler, Steckdosen ...)
Entwicklung: FHEM auf AMD NUC (Ubuntu)
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: FULLY, Meteohub, HMCCU, AndroidDB

zap

#916
Zitat von: Chris8888 am 18 November 2016, 18:34:17

CHN 000393C994D014:1 HMIP-eTRV_000393C994D014:1
  DPT {i} HmIP-RF.000393C994D014:1.ACTIVE_PROFILE = 1 [WE]
  DPT {f} HmIP-RF.000393C994D014:1.ACTUAL_TEMPERATURE = 22.000000 [RE]
  DPT {b} HmIP-RF.000393C994D014:1.BOOST_MODE = false [WE]
  DPT {f} HmIP-RF.000393C994D014:1.CONTROL_DIFFERENTIAL_TEMP =  [WE]
  DPT {i} HmIP-RF.000393C994D014:1.CONTROL_MODE =  [WE]
  DPT {i} HmIP-RF.000393C994D014:1.DURATION_UNIT =  [W]
  DPT {i} HmIP-RF.000393C994D014:1.DURATION_VALUE =  [W]
  DPT {b} HmIP-RF.000393C994D014:1.FROST_PROTECTION = false [RE]
  DPT {f} HmIP-RF.000393C994D014:1.LEVEL = 0.050000 [RWE]
  DPT {b} HmIP-RF.000393C994D014:1.PARTY_MODE = false [RE]
  DPT {f} HmIP-RF.000393C994D014:1.PARTY_SET_POINT_TEMPERATU = 0.000000 [RE]
  DPT {s} HmIP-RF.000393C994D014:1.PARTY_TIME_END =  [RWE]
  DPT {s} HmIP-RF.000393C994D014:1.PARTY_TIME_START =  [RWE]
  DPT {i} HmIP-RF.000393C994D014:1.SET_POINT_MODE = 0 [RWE]
  DPT {f} HmIP-RF.000393C994D014:1.SET_POINT_TEMPERATURE = 20.000000 [RWE]
  DPT {b} HmIP-RF.000393C994D014:1.SWITCH_POINT_OCCURED = false [RE]
  DPT {b} HmIP-RF.000393C994D014:1.VALVE_ADAPTION =  [WE]
  DPT {i} HmIP-RF.000393C994D014:1.VALVE_STATE = 4 [RE]
  DPT {i} HmIP-RF.000393C994D014:1.WINDOW_STATE = 0 [WE]



ccureadingformat datapoint
ccuscaleval LEVEL:0:1:0:100
controldatapoint 1.SET_POINT_TEMPERATURE
event-on-change-reading .*
eventmap /datapoint 1.CONTROL_MODE 1:Manu/datapoint 1.CONTROL_MODE 0:Auto/datapoint 1.CONTROL_MODE 2:Party/datapoint 1.CONTROL_MODE 3:Boost/datapoint 1.SET_POINT_TEMPERATURE 4.5:off/datapoint 1.SET_POINT_TEMPERATURE 30.5/on/
statedatapoint 1.SET_POINT_TEMPERATURE
stateFormat T: 1.ACTUAL_TEMPERATURE° D: 1.SET_POINT_TEMPERATURE° V: 1.LEVEL%
stripnumber 1
substexcl control
substitute LOW_BAT!(0|false):ok,(1|true):low;CONTROL_MODE!0:AUTO,1:MANU,2:PARTY,3:BOOST;WINDOW_STATE!(true|1):open,(false|0):closed;SET_POINT_TEMPERATURE!#0-4.5:off,#30.5-40:on
webCmd control
widgetOverride control:slider,4.5,0.5,30.5,1


Durch das eventMap Attribut werden neue Set Befehle zur Verfügung gestellt (Auto, Boost, usw). Grundsätzlich sollte aber auch "set datapoint 1.CONTROL_MODE Wert" funktionieren. Möglicherweise muss man auch den DP SET_POINT_MODE verwenden, um den Controlmode zu setzen. Dann im eventMap Attribute entsprechend ersetzen. Würde es aber erst mal so testen.

Ach ja: Wird bei Dir das Reading CONTROL_MODE aktualisiert? Ich frage, weil jemand mal Probleme damit hatte.

2xCCU3, Fenster, Rollläden, Themostate, Stromzähler, Steckdosen ...)
Entwicklung: FHEM auf AMD NUC (Ubuntu)
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: FULLY, Meteohub, HMCCU, AndroidDB

Chris8888

#917
Hallo Zap,

danke für die Hilfe!
Leider klappt es noch nicht.

Ein Umschalten auf Auto und Manuell funktioniert, Boost und Party funktionieren nicht. Auch nicht mit SET_POINT_MODE.
Ein Reading 1.CONTROL.MODE wird nicht angezeigt, das Reding 1.SET_POINT_MODE verändert sich nie.
Bekommt man nicht für jeden Datenpunkt des Devices ein Reading?

LEVEL ist also der Öffnungsgrad des Ventiles..:-) Wieder was gelernt.

Seltsamerweise habe ich kurz nach der Attr-Anlage "neue" Readings bekommen.
Mehr oder minder die gleichen, nur ohne "HMIP-eTRV_000393C994D014.".
Die neuen werden auch aktuallisiert (außer SET_POINT_MODE), die alten nicht.

So richtig verstehen tue ich es noch nicht....

Hast du noch eine Idee?

VG
Christian




FHEM 6.0 auf einem PI4 mit div. Homematic-Komponenten, Alexa, Tablet-UI und Homebridge...und läuft einfach. Erweitert mit CCU3 und Homematic-IP...und läuft immer noch.

zap

#918
Zitat von: Chris8888 am 20 November 2016, 13:49:39
Ein Umschalten auf Auto und Manuell funktioniert, Boost und Party funktionieren nicht. Auch nicht mit SET_POINT_MODE.
Ein Reading 1.CONTROL.MODE wird nicht angezeigt, das Reding 1.SET_POINT_MODE verändert sich nie.

OK, das IP-Thermostat scheint sich hier anders zu verhalten. Versuche mal folgendes für Boos und Party:

set xyz datapoint 1.BOOST_MODE true
set xyz datapoint 1.PARTY_MODE true

Wenn "true" nicht funktioniert, versuche "1". Wenn Du damit Boost und Party einschalten kannst, musst Du das eventMap Attribut anpassen (wobei das nice to have ist, grundsätzlich geht das immer auch mit "set datapoint"):

eventmap /datapoint 1.CONTROL_MODE 1:Manu/datapoint 1.CONTROL_MODE 0:Auto/datapoint 1.PARTY_MODE 1:Party/datapoint 1.BOOST_MODE 1:Boost/datapoint 1.SET_POINT_TEMPERATURE 4.5:off/datapoint 1.SET_POINT_TEMPERATURE 30.5/on/

Zitat
Bekommt man nicht für jeden Datenpunkt des Devices ein Reading?

Nein. Wenn Du mit "get deviceinfo" die Datenpunkte abfragst, stehen hinter jedem Datenpunkt die Buchstaben R, W und E in eckigen Klammern. W steht für "Write", d.h. der Datenpunkt kann mit "set" geschrieben werden. Bei "R" für "Read" ist ein Auslesen des Datenpunktes mit "get" möglich. "E" steht für "Event", d.h. der Datenpunkt wird automatisch aktualisiert. Sowohl bei "R" als auch bei "E" wird ein Reading in FHEM aktualisiert. Allerdings scheint aufgrund eines Software Fehlers in der CCU bzw. dem Thermostaten CONTROL_MODE trotz "E" Kennzeichnung nicht aktualisiert zu werden. Gerade wurde ja ein neues Firmware Update für die CCU verteilt. Hast Du das installiert? Vielleicht wird damit der Fehler behoben.

Zitat
LEVEL ist also der Öffnungsgrad des Ventiles..:-) Wieder was gelernt.

Ja ich auch. Zumal es bei den alten Thermostaten VALVE_STATE war.

Zitat
Seltsamerweise habe ich kurz nach der Attr-Anlage "neue" Readings bekommen.
Mehr oder minder die gleichen, nur ohne "HMIP-eTRV_000393C994D014.".
Die neuen werden auch aktuallisiert (außer SET_POINT_MODE), die alten nicht.

Das liegt am Attribut "ccureadingformat". Wenn Du das auf "datapoint" setzt, werden kürzere Readingnamen verwendet.
2xCCU3, Fenster, Rollläden, Themostate, Stromzähler, Steckdosen ...)
Entwicklung: FHEM auf AMD NUC (Ubuntu)
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: FULLY, Meteohub, HMCCU, AndroidDB

Chris8888

#919
Zitat von: zap am 20 November 2016, 19:02:56
OK, das IP-Thermostat scheint sich hier anders zu verhalten. Versuche mal folgendes für Boos und Party:

set xyz datapoint 1.BOOST_MODE true
set xyz datapoint 1.PARTY_MODE true

Wenn "true" nicht funktioniert, versuche "1". Wenn Du damit Boost und Party einschalten kannst, musst Du das eventMap Attribut anpassen (wobei das nice to have ist, grundsätzlich geht das immer auch mit "set datapoint"):

eventmap /datapoint 1.CONTROL_MODE 1:Manu/datapoint 1.CONTROL_MODE 0:Auto/datapoint 1.PARTY_MODE 1:Party/datapoint 1.BOOST_MODE 1:Boost/datapoint 1.SET_POINT_TEMPERATURE 4.5:off/datapoint 1.SET_POINT_TEMPERATURE 30.5/on/


1.BOOST_MODE true funktioniert (false = ausschalten auch)
1.PARTY_MODE true funktioniert nicht (invalid datapoint...skuril)...mit "1" funktioniert es auch nicht, gleiche Meldung

eventmap ist jetzt:
/datapoint 1.CONTROL_MODE 1:Manu/datapoint 1.CONTROL_MODE 0:Auto/datapoint 1.PARTY_MODE true:Party/datapoint 1.BOOST_MODE true:Boost/datapoint 1.SET_POINT_TEMPERATURE 4.5:off/datapoint 1.SET_POINT_TEMPERATURE 30.5/on/

Da ich nur den Boost benötige ist das für mich so okay, Party nutze ich nicht.
Oder kann ich das "false" (=Ausschalten des Boostmodus) nicht auch im Eventmap hinterlegen?

Die Firmware der CCU2 ist aktuell 2.25.14.
Hinter dem 1.CONTROL_MODE steht ein [WE].

Wie kann ich denn die "alten" Readings löschen?

Danke vorab für den spitzen Service!

VG
Christian
FHEM 6.0 auf einem PI4 mit div. Homematic-Komponenten, Alexa, Tablet-UI und Homebridge...und läuft einfach. Erweitert mit CCU3 und Homematic-IP...und läuft immer noch.

DaDiGi

Ich kann bei den IP-Thermostaten mit: set <device> datapoint 1.CONTROL_MODE 0|1|2 zwischen auto, manual und holiday umschalten.
Das reading für den aktuellen Modus bekomme ich aber nur über 1.SET_POINT_MODE ausgelesen.
FHEM, HmIP, Hue, Harmony, Unifi, AVM, HEOS, VUPlus

zap

#921
Zitat
Ich kann bei den IP-Thermostaten mit:

set <device> datapoint 1.CONTROL_MODE 0|1|2

zwischen auto, manual und holiday umschalten.
Das reading für den aktuellen Modus bekomme ich aber nur über 1.SET_POINT_MODE ausgelese

Danke für den Hinweis! Wird SET_POINT_MODE bei Dir automatisch aktualisiert? Werden in SET_POINT_MODE nur die Modi 0-2 zurück gegeben oder weitere (>2)?

Zitat
1.PARTY_MODE true funktioniert nicht (invalid datapoint...skuril)...mit "1" funktioniert es auch nicht, gleiche Meldung

Kann nicht funktionieren, da PARTY_MODE kein "W" Flag hat, d.h. read only ist. Das war bei den alten Thermostaten so schön konsistent gelöst und jetzt so ein Murks bei den IP Geräten. EQ3 eben. Versuche mal, mit


set datapoint 1.PARTY_SET_POINT_TEMPERATU 20


eine Party-Zieltemp zu setzen (und nein, die fehlenden "RE" am Ende des Datenpunkts scheinen kein Schreibfehler zu sein). Prüfe dann, ob der Thermostat automatisch den Party-Mode einschaltet.

Zitat
Oder kann ich das "false" (=Ausschalten des Boostmodus) nicht auch im Eventmap hinterlegen?

Du könntest es so machen (eventMap ist ein Standard FHEM Attribut, sehr mächtig, siehe Online Hilfe):


attr eventMap /datapoint 1.CONTROL_MODE 1:Manu/datapoint 1.CONTROL_MODE 0:Auto/datapoint 1.CONTROL_MODE 2:Holiday/datapoint 1.PARTY_SET_POINT_TEMPERATU 20:Party/datapoint 1.BOOST_MODE true:BoostOn/datapoint 1.BOOST_MODE false:BoostOff/datapoint 1.SET_POINT_TEMPERATURE 4.5:off/datapoint 1.SET_POINT_TEMPERATURE 30.5/on/


Bitte achte mal darauf, ob das Reading SET_POINT_MODE automatisch aktualisiert wird.

Zitat
Wie kann ich denn die "alten" Readings löschen?

Entweder mit dem FHEM Befehl deletereading oder mit "set clear" im HMCCUDEV/CHN Device (löscht alle Readings außer State, aber die kommen ja wieder).

2xCCU3, Fenster, Rollläden, Themostate, Stromzähler, Steckdosen ...)
Entwicklung: FHEM auf AMD NUC (Ubuntu)
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: FULLY, Meteohub, HMCCU, AndroidDB

DaDiGi

Bei mir wird SET_POINT_MODE automatisch aktualisiert.
Bisher habe ich nur die Werte 0-2 gesehen.
2 setzt sowohl den Urlaubsmodus in der CCU2-WebUI als auch das PARTY_MODE reading.
Es wird also zwischen Party und Urlaub nicht unterschieden.
FHEM, HmIP, Hue, Harmony, Unifi, AVM, HEOS, VUPlus

zap

Ah ich sehe schon da hat jemand bei eq3 mitgedacht. Szenario: Eltern in Urlaub, Kinder wollen Party machen. Da macht es natürlich Sinn die beiden Modi zu verknüpfen ;-)
2xCCU3, Fenster, Rollläden, Themostate, Stromzähler, Steckdosen ...)
Entwicklung: FHEM auf AMD NUC (Ubuntu)
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: FULLY, Meteohub, HMCCU, AndroidDB

theotherhalf

bin ein wenig am verzweifeln und hoffe ihr könnt mir helfen...
Ich bekomme den rpcserver nicht ans Laufen.

2016.11.21 16:21:42 0: HMCCU: Child process for server CB9292 started with PID 1047
2016.11.21 16:21:42 0: CCURPC: CB9292 Creating file queue /tmp_9292
2016.11.21 16:21:42 0: CCURPC: CB9292 Can't create queue
2016.11.21 16:21:42 2: CCURPC: Eventcount DD = 0
2016.11.21 16:21:42 2: CCURPC: Eventcount EV = 0
2016.11.21 16:21:42 2: CCURPC: Eventcount EX = 0
2016.11.21 16:21:42 2: CCURPC: Eventcount IN = 0
2016.11.21 16:21:42 2: CCURPC: Eventcount ND = 0
2016.11.21 16:21:42 2: CCURPC: Eventcount RA = 0
2016.11.21 16:21:42 2: CCURPC: Eventcount RD = 0
2016.11.21 16:21:42 2: CCURPC: Eventcount SL = 0
2016.11.21 16:21:42 2: CCURPC: Eventcount UD = 0
2016.11.21 16:21:42 2: CCURPC: Eventcount total = 0
2016.11.21 16:21:42 2: CCURPC: Eventcount writeerror = 0
2016.11.21 16:21:42 0: RPC server(s) starting
2016.11.21 16:21:54 1: HMCCU: Can't open file queue /tmp_2001
2016.11.21 16:21:54 1: HMCCU: Can't open file queue /tmp_2010
2016.11.21 16:21:54 1: HMCCU: Can't open file queue /tmp_9292
2016.11.21 16:21:54 0: HMCCU: Periodical check found no RPC Servers
2016.11.21 16:21:54 0: HMCCU: All RPC servers stopped

Sieht so aus, als wenn die queue Dateien nicht generiert werden können, der tmp Ordner ist leer.

Der Server steht auf busy und die ganze Zeit auf stopped.
Habt ihr eine Idee woran es liegen kann?
Den tmp Ordner musste ich händisch anlegen. Sollte der automatisch installiert werden?
FHEM Anfänger
HM CCU2 mit diversen Komponenten als Steuerung
FHEM mit Floorplan auf Raspi 3 (Raspbian Jessie)  zur Visualisierung (Heizung, Zustände, etc.) und angeschlossenen One-Wire Sensoren
Schnittstelle CCU2 - FHEM mit HMCCU
EBUSD Applikation auf Raspi 2 mit Anbindung an Vaillant Heizung

zap

Hast Du das Attribut rpcqueue gesetzt? Wenn ja lösche es oder setze es auf /tmp/ccuqueue.

Was für ein System verwendest Du eigentlich? Ich frage, weil es kein /tmp gibt. Das ist ungewöhnlich. Wenn Du /tmp manuell angelegt hast, achte darauf, dass der User fhem Schreibrechte hat.
2xCCU3, Fenster, Rollläden, Themostate, Stromzähler, Steckdosen ...)
Entwicklung: FHEM auf AMD NUC (Ubuntu)
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: FULLY, Meteohub, HMCCU, AndroidDB

theotherhalf

Zitat von: zap am 21 November 2016, 18:44:17
Hast Du das Attribut rpcqueue gesetzt? Wenn ja lösche es oder setze es auf /tmp/ccuqueue.
Ja, das habe ich gesetzt. Allerdings nur wie im FHEM Wiki mit :  attr d_ccu rpcqueue /tmp

Zitat von: zap am 21 November 2016, 18:44:17
Was für ein System verwendest Du eigentlich? Ich frage, weil es kein /tmp gibt. Das ist ungewöhnlich. Wenn Du /tmp manuell angelegt hast, achte darauf, dass der User fhem Schreibrechte hat.
Ich hab Raspbian Jessie auf einem RPi 3 installiert. Den Ordner habe selbst unter fhem erstellt.
FHEM Anfänger
HM CCU2 mit diversen Komponenten als Steuerung
FHEM mit Floorplan auf Raspi 3 (Raspbian Jessie)  zur Visualisierung (Heizung, Zustände, etc.) und angeschlossenen One-Wire Sensoren
Schnittstelle CCU2 - FHEM mit HMCCU
EBUSD Applikation auf Raspi 2 mit Anbindung an Vaillant Heizung

Chris8888

Zitat von: zap am 21 November 2016, 08:54:10
Danke für den Hinweis! Wird SET_POINT_MODE bei Dir automatisch aktualisiert? Werden in SET_POINT_MODE nur die Modi 0-2 zurück gegeben oder weitere (>2)?

Bei mir werden bei 1.CONTROL_MODE nur 0 und 1 akzeptiert. Bei 2 passiert nichts. SET_POINT_MODE wird bei 0 und 1 automatisch aktuallisiert/angezeigt.

Zitat von: zap am 21 November 2016, 08:54:10
Kann nicht funktionieren, da PARTY_MODE kein "W" Flag hat, d.h. read only ist. Das war bei den alten Thermostaten so schön konsistent gelöst und jetzt so ein Murks bei den IP Geräten. EQ3 eben. Versuche mal, mit


set datapoint 1.PARTY_SET_POINT_TEMPERATU 20


eine Party-Zieltemp zu setzen (und nein, die fehlenden "RE" am Ende des Datenpunkts scheinen kein Schreibfehler zu sein). Prüfe dann, ob der Thermostat automatisch den Party-Mode einschaltet.

Fehlermeldung: Invalid Datapoint.  ???

Zitat von: zap am 21 November 2016, 08:54:10
Du könntest es so machen (eventMap ist ein Standard FHEM Attribut, sehr mächtig, siehe Online Hilfe):


attr eventMap /datapoint 1.CONTROL_MODE 1:Manu/datapoint 1.CONTROL_MODE 0:Auto/datapoint 1.CONTROL_MODE 2:Holiday/datapoint 1.PARTY_SET_POINT_TEMPERATU 20:Party/datapoint 1.BOOST_MODE true:BoostOn/datapoint 1.BOOST_MODE false:BoostOff/datapoint 1.SET_POINT_TEMPERATURE 4.5:off/datapoint 1.SET_POINT_TEMPERATURE 30.5/on/


Bitte achte mal darauf, ob das Reading SET_POINT_MODE automatisch aktualisiert wird.
Super! Danke.

Zitat von: zap am 21 November 2016, 08:54:10
Entweder mit dem FHEM Befehl deletereading oder mit "set clear" im HMCCUDEV/CHN Device (löscht alle Readings außer State, aber die kommen ja wieder).
Das habe ich gesucht. Danke!
FHEM 6.0 auf einem PI4 mit div. Homematic-Komponenten, Alexa, Tablet-UI und Homebridge...und läuft einfach. Erweitert mit CCU3 und Homematic-IP...und läuft immer noch.

zap

#928
Zitat von: theotherhalf am 21 November 2016, 20:14:39
Ja, das habe ich gesetzt. Allerdings nur wie im FHEM Wiki mit :  attr d_ccu rpcqueue /tmp
Ich hab Raspbian Jessie auf einem RPi 3 installiert. Den Ordner habe selbst unter fhem erstellt.

Ok, mein Fehler. Die Angabe im Wiki ist falsch. Also entweder das Attribut weglassen oder auf /tmp/ccuqueue setzen. Das Verzeichnis alleine genügt nicht. Das Präfix für die Queue Dateien (hier ccuqueue) muss mit angegeben werden.

Was meinst du mit "unter fhem erstellt"? Unter dem User fhem ? Dann müsste alles passen (Rechte).
2xCCU3, Fenster, Rollläden, Themostate, Stromzähler, Steckdosen ...)
Entwicklung: FHEM auf AMD NUC (Ubuntu)
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: FULLY, Meteohub, HMCCU, AndroidDB

mbuzina

Gibt es im Forum keine "In Thread Suche"? Na ja, dann muss ich halt Fragen (nachdem ich 5 Seiten durch habe ;-)

Kann ich über das HMCCU Modul auch AES Verschlüsselte Aktoren/Sensoren steuern/einlesen? Ist gerade für eine Kaufentscheidung wichtig (CCU2 oder doch nur FHEM).