Neues Modul HMCCU für Homematic CCU

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

Vorheriges Thema - Nächstes Thema

chris1284

kommt drauf an was bei dir als log definiert ist ...
was hast du den unter Everything so als FileLogs definiert oder setzt du gar (was ich bezweifle ) auf dblog?

tuppertasse

Nee, dbLog verwende ich nicht. Das mache ich (wie früher auch) über Filelog.
Die entsprechende zeile sieht so aus:


define filelog_Temp_Feuchte_Aussen FileLog ./log/filelog_Temp_Feuchte_Aussen-%d.log Temp_Feuchte_Aussen.*:Temp_Feuchte_Aussen.*|rgTestName:d_TEST.Temp_Feuchte_Aussen.*

chris1284

na dann weisst du doch wo deine readings sind filelog_Temp_Feuchte_Aussen

chris1284

du musst nur im webinteface das logdevice anklicken, dann hast du obern den punkt "create SVG ...."

tuppertasse

#709
Ja, okay, damit ist die Definition wohl richtig.
Nur leider habe ich das Problem, dass das Logfile zwar angelegt wurde aber es wird nichts eingetragen und ist somit praktisch leer !  :o

Nochmal so als Info zu meinem Aufbau:
Ich mache alles nur über den rpcserver und habe keine CUL angelegt, was ich, so meine ich, auch nicht brauche. Ich möchte ja "nur" die Funktionalität der CCU2 erweitern. Weiss nciht ob diese Info wichtig ist.

chris1284

dann ist dein regexp zum filelog wohl falsch. logge doch testhalber mal mit

define filelog_Temp_Feuchte_Aussen FileLog ./log/filelog_Temp_Feuchte_Aussen-%d.log <gerätename>:.*

tuppertasse

So Logs werden beschrieben:
2016-09-01_10:58:21 rgTestName d_TEST.Temp_Feuchte_Aussen.1.TEMPERATURE: 24.4 °C
2016-09-01_11:01:03 rgTestName d_TEST.Temp_Feuchte_Aussen.1.TEMPERATURE: 24.6 °C
2016-09-01_11:01:03 rgTestName d_TEST.Temp_Feuchte_Aussen.1.HUMIDITY: 61 %
2016-09-01_11:03:30 rgTestName d_TEST.Temp_Feuchte_Aussen.1.TEMPERATURE: 24.8 °C
2016-09-01_11:03:30 rgTestName d_TEST.Temp_Feuchte_Aussen.1.HUMIDITY: 59 %
2016-09-01_11:08:44 rgTestName d_TEST.Temp_Feuchte_Aussen.1.TEMPERATURE: 24.9 °C
2016-09-01_11:14:04 rgTestName d_TEST.Temp_Feuchte_Aussen.1.TEMPERATURE: 25.1 °C
2016-09-01_11:16:24 rgTestName d_TEST.Temp_Feuchte_Aussen.1.TEMPERATURE: 25.2 °C
2016-09-01_11:18:28 rgTestName d_TEST.Temp_Feuchte_Aussen.1.TEMPERATURE: 25.3 °C
2016-09-01_11:21:22 rgTestName d_TEST.Temp_Feuchte_Aussen.1.TEMPERATURE: 25.4 °C
2016-09-01_11:21:22 rgTestName d_TEST.Temp_Feuchte_Aussen.1.HUMIDITY: 58 %
2016-09-01_11:24:01 rgTestName d_TEST.Temp_Feuchte_Aussen.1.TEMPERATURE: 25.6 °C
2016-09-01_11:24:01 rgTestName d_TEST.Temp_Feuchte_Aussen.1.HUMIDITY: 57 %


Allerdings kein SVG Plot angezeigt :-(

chris1284

su must schon auf den punk create svg ... klicken und dann den svg sagen was er plotten soll und auf write plot klicken.

tuppertasse

Man man man .... manchmal sieht man den Wald vor lauter Bäumen nicht  :o :o :o

Läuft und Danke !

zap

Neues aus der EQ-3 Murks-Fabrik:

Ein Dimmer (Steckdose) hat einen Datenpunkt LEVEL. Laut Doku hat dieser Datenpunkt einen Wertebereich zwischen 0 und 1.
Eine Abfrage des LEVELs per Homematic Script liefert auch Werte in diesem Bereich.

ABER: Angenommen, man schaltet einen Dimmer auf 100% mit LEVEL=1 meldet die RPC-Schnittstelle der CCU2 als neuen Wert LEVEL=100 zurück. Super! 2 Wertebereiche, je nachdem, über welche Schnittstelle die Abfrage erfolgt.

Bei einem Rolladenaktor ist das übrigens konsistent. Hier ist der Wertebereich von LEVEL immer 0-1.

Nur zur Info, falls sich jemand wundert.
2xCCU3 mit ca. 100 Aktoren, Sensoren
Entwicklung: FHEM auf Proxmox Debian VM
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: HMCCU, (Fully, AndroidDB)

tuppertasse

Zitat von: zap am 01 September 2016, 19:02:57
Nur zur Info, falls sich jemand wundert.
Ich meine in dem anderen Thread "HMCCU Beispiel Geräte-Definitionen" hatte member Yil doch das Problem. Vielleicht liest er es ja bzw. hat es selber schon erkannt / gelöst.

Neue Frage:
Ich habe von den meisten HM-Komponenten den RSSI übertragen bekommen. Den habe ich mir auch schön anzeigen lassen mit Farbwechsel usw.
Der wird eines gerätes wird mir dabei mit 207 angegeben.

Aus Spaß habe ich mal das Java Programm HMCompanion V0.22 herausgekramt, wo ebenso die RSSI Werte angegeben werden. Da bin ich völlig erstaunt, dass nun ein Wert von -51dBm mir angegeben wird. --> Mhhhh ist da noch eine Umrechnung drin oder wie habe ich nun die unterschiedlichen Werte zu interpretieren ?

Achiim

Gibt's etwas Neues zur geplanten Verteilung des Moduls HMCCU über den FHEM update?
3x Raspberry PI, 2x DUB-H7, 3x CUL868, 2x CUL433, 1x RFXTRX, 1x Jeelink, Max! 8x Wand- + 14x Heizkörperthermostate + 13x Fensterkontakte, 3x HM Schaltaktoren + Dimmer + Leistungsmessung, 8x HM Rauchmelder, Intertechno, LW12, LED Strip 5050, Foscam, FS20 Dim-Slider FS20DIS, FS20 Bewegungsmelder

zap

@tuppertasse: ja, ist mir auch schon aufgefallen. Die Werte müssen wohl umgerechnet werden. Ich schau mir das mal an.

@Achiim: wollte es eigentlich gestern einchecken. Habe dann aber noch einen Fehler gefunden. Dauert nicht mehr lange.
2xCCU3 mit ca. 100 Aktoren, Sensoren
Entwicklung: FHEM auf Proxmox Debian VM
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: HMCCU, (Fully, AndroidDB)

zap

#718
Ich habe heute die Version 3.4 von HMCCU in den Hauptzweig von FHEM eingecheckt. Damit ist HMCCU über den normalen FHEM Update Mechanismus verfügbar. Das Modul 88_HMCCU bringt einen eingebauten RPC-Server mit. Sollte jemand weiterhin den externen RPC-Server nutzen wollen, muss die Datei ccurpcd.pl aus dem bekannten contrib Verzeichnis manuell herunter geladen und installiert werden. Außerdem muss das Attribut ccuflags auf 'extrpc' gesetzt werden Ich rate jedoch davon ab, da ich ccurpcd.pl nicht mehr weiter entwickle.

Änderungen / Neuerungen gegenüber Version 3.3:


  • HMCCU: Folgende Set-/Get-Befehle stehen nicht mehr zur Verfügung: config, datapoint, channel.
  • HMCCU: Folgende Attribute stehen nicht mehr zur Verfügung: updatemode
  • HMCCUCHN, HMCCUDEV: Neue Set-Befehle on-for-timer, on-till und pct für die Steuerung von Geräten mit Datenpunkten ON_TIME, RAMP_TIME und LEVEL (Dimmer, Jalousien, Schalter, ...)
  • HMCCUCHN, HMCCUDEV: Der Befehl get channel steht nicht mehr zur Verfügung, da weitgehend identisch mit get update
  • HMCCUCHN, HMCCUDEV: Neuer Befehl set clear zum selektiven Löschen von Readings.
  • Attribut ccureadingformat: Beim Format 'datapoint' setzt sich der Readingname nun so zusammen: channel-number.datapoint. Dieses Format ist nun auch für HMCCUDEV verfügbar und erlaubt Readingnames ohne den Gerätenamen.
  • Das Attribut ccuackstate legt fest, ob nach Ausführung eines Befehls STATE mit dem Ergebnis der Ausführung (z.B. OK) überschrieben wird. Die Voreinstellung ist 0 = nicht überschreiben.
  • Das Attribut ccuscaleval wurde erweitert. Es erlaubt nun die Skalierung, Verschiebung und Umkehrung von Werten beim Schreiben und Lesen (Beispiele s.u.)
  • Das Attribut ccureadingname erlaubt die Umbenennung von Readingnamen. Beispiel: attr xyz ccureadingname 0.LOWBAT:battery,1:LEVEL:pct
  • Das Attribut ccureadingformat wurde um die Werte 'namelc', 'addresslc' und 'datapointlc' erweitert. Der Zusatz 'lc' bewirkt, dass Readingnames in Kleinbuchstaben angelegt werden.
  • HMCCUCHN: Neben dem Datenkanal werden auch immer die Datenpunkte/Readings des Statuskanals (0) aktualisiert. Dies kann durch das Attribut ccuflags = 'nochn0' deaktiviert werden.
  • Das Attribut stripnumber akzeptiert nun auch negative Werte. Damit werden nummerische Werte auf die entsprechende Anzahl Stellen gerunden (-0 = runden auf ganze Zahlen)
  • Das Attribut ccuflags erlaubt mit der Option 'trace' ein erweitertes Logging bestimmter Aktionen für das entsprechende Device. Bitte dieses Device bezogene Attribut verwenden. Das globale Attribut ccutrace im Modul HMCCU wird in der nächsten Version verschwinden.
  • Bei read only Devices stehen nun einige Set-Befehle zur Verfügung
  • HMCCUDEV: Bei der Definition von Devices kann die Option 'defaults' angegeben werden, um empfohlene Attribute zu setzen, sofern für den betreffenden Gerätetyp Vorgaben existieren.

Beispiele für Attrubt ccuscaleval:


attr name ccuscaleval LEVEL:0.01 => Einfache Skalierung
attr name ccuscaleval LEVEL:0:1:0:100 => Skalierung vom Bereich 0-1 in 0-100
attr name ccuscaleval LEVEL:0:1:0:200 => Skalierung vom Bereich 0-1 in 0-200
attr name ccuscaleval LEVEL:0:1:50:100 => Skalierung vom Bereich 0-1 in 50-100
attr name ccuscaleval !LEVEL:0:1:0:100 => Skalierung vom Bereich 0-1 in 0-100 und Umkehrung der Werte


Ich empfehle, insbesondere bei Dimmern die einfache Syntax (z.B. LEVEL:0.01) nicht zu verwenden, da die CCU in manchen Fällen bereits skalierte Werte liefert. Bei Angabe eines Wertebereiches erkennt HMCCU das und vermeidet eine doppelte Skalierung.

2xCCU3 mit ca. 100 Aktoren, Sensoren
Entwicklung: FHEM auf Proxmox Debian VM
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: HMCCU, (Fully, AndroidDB)

faerberma46466

Hi,
ich habe gerade den Thread gefunden und würde heute Abend dann auch mal versuchen meine CCU zu integrieren, habe allerdings noch eine Frage bzgl des XML::Simple Moduls.
Muss das jetzt nach dem gestrigen Update noch installiert werden?
Bin leider nicht ganz so fit was diese Dinge angeht, deshalb meine (vll sehr laienhafte) Frage ::)

Ansonsten tut aber bestimmt auch das Lob eines Laiens gut ;) Dieses Modul hört sich wirklich sehr vielversprechend an und nachdem ich nach dem Umstieg auf HomeMatic schon fast komplett auf FHEM verzichtet hätte, kann ich dir nur danken