HMRPC Setup ( CCU2 / FHEM / Ubuntu / HMRPC )

Begonnen von EdgarM, 13 Oktober 2015, 20:32:31

Vorheriges Thema - Nächstes Thema

EdgarM

Hallo zusammen,

neues Jahr neuer Anlauf. Mein Setup ist folgendes:

CCU2 / 5 Heizkörper mit je einem HM-CC-RT / ein Wandthermostat für das Wohnzimmer.
FHEM installiert auf einer ubuntu Hyperv
HMRPC und HMDEV verbunden mit der CCU2 (danke für die neue Version )

Nachdem ich das ganze gefühlt 3 Mal komplett neu aufgesetzt habe, kann ich alles konfigurieren bis zu dem Punkt, dass die Geräte eingetragen werden in FHEM.

Leider weiss ich trotz 2 Tage langem lesen im Forum und im i-net nicht weiter:


Die Geräte sind sichtbar in FHEM, allerdings ist im STATE nur der Eintrag ???
set Befehle geben ein -1: failure zurück

Anbei ein paar Screenshots


Und hier ein Auszug aus dem Log:

2015.10.13 20:24:24 5: Processing event setting MEQ0:4->PARTY_STOP_TIME=0
2015.10.13 20:24:24 5: hmrf dispatch HMDEV MEQXXXXXXX:4 PARTY_STOP_TIME 0
2015.10.13 20:24:24 5: Triggering BadHeiz (1 changes)
2015.10.13 20:24:24 5: Notify loop for BadHeiz PARTY_STOP_TIME_4: 0
2015.10.13 20:24:24 5: Processing event setting MEQXXXXXXX:4->PARTY_STOP_DAY=1
2015.10.13 20:24:24 5: hmrf dispatch HMDEV MEQXXXXXXX:4 PARTY_STOP_DAY 1
2015.10.13 20:24:24 5: Triggering BadHeiz (1 changes)
2015.10.13 20:24:24 5: Notify loop for BadHeiz PARTY_STOP_DAY_4: 1
2015.10.13 20:24:24 5: Processing event setting MEQXXXXXXX:4->PARTY_STOP_MONTH=1
2015.10.13 20:24:24 5: hmrf dispatch HMDEV MEQXXXXXXX:4 PARTY_STOP_MONTH 1
2015.10.13 20:24:24 5: Triggering BadHeiz (1 changes)
2015.10.13 20:24:24 5: Notify loop for BadHeiz PARTY_STOP_MONTH_4: 1
2015.10.13 20:24:24 5: Processing event setting MEQXXXXXXX:4->PARTY_STOP_YEAR=0
2015.10.13 20:24:24 5: hmrf dispatch HMDEV MEQXXXXXXX:4 PARTY_STOP_YEAR 0
2015.10.13 20:24:24 5: Triggering BadHeiz (1 changes)
2015.10.13 20:24:24 5: Notify loop for BadHeiz PARTY_STOP_YEAR_4: 0
2015.10.13 20:24:24 4: name: /fhem/HMRPC_hmrf/request&<?xml version="1.0"?>^M
<methodCall><methodName>system.multicall</methodName>^M
<params><param><value><array><data><value><struct><member><name>methodName</name><value>event</value></member><member><name>params</name><value><array><data><value>CB1</value><value>MEQXXXXXXX:4</value><value>PARTY_STOP_TIME</value><value><i4>0</i4></value></data></array></value></member></struct></value><value><struct><member><name>methodName</name><value>event</value></member><member><name>params</name><value><array><data><value>CB1</value><value>MEQXXXXXXX:4</value><value>PARTY_STOP_DAY</value><value><i4>1</i4></value></data></array></value></member></struct></value><value><struct><member><name>methodName</name><value>event</value></member><member><name>params</name><value><array><data><value>CB1</value><value>MEQXXXXXXX:4</value><value>PARTY_STOP_MONTH</value><value><i4>1</i4></value></data></array></value></member></struct></value><value><struct><member><name>methodName</name><value>event</value></member><member><name>params</name><value><array><data><value>CB1</value><value>MEQXXXXXXX:4</value><value>PARTY_STOP_YEAR</value><value><i4>0</i4></value></data></array></value></member></struct></value></data></array></value></param></params></methodCall>^M
/ RL:277 / text/xml /  /



Das mag für jemanden alles einfach sein, aber als Einsteiger ( und ich kann auch Programmieren ;) ) ist es verdammt schwer die vielen verschiedenen Dinge gleichzeitg zu beachten. Sobald es funktioniert ist es auch einfacher es zu verstehen.

Im Gegenzug werde ich versuchen ein echter Howto für Anfänger zu schreiben mit allen Schritten die ich benötigt habe.

Danke für die Hilfe

zap

Hmm, die Definition sieht schon mal sauber aus. IODev ist korrekt. Readings wurden offensichtlich aktualisiert. Hast Du mal im Log der CCU nachgeschaut, ob da irgendwelche Fehler auflaufen, wenn Du den set Befehl ausführst (/var/log/messages) ?
2xCCU3 mit ca. 100 Aktoren, Sensoren
Entwicklung: FHEM auf Proxmox Debian VM
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: HMCCU, (Fully, AndroidDB)

EdgarM

Hi zap,

leider ist auf der CCU2 nichts im log zu finden. Beim ausführen kommt gar keine Eintrag zustande, wird scheinbar gar nicht erst aufgerufen.

zap

Hast Du die Version von hendryk von github installiert oder die gepatchte von Raymond (letzter Post im Orginalthread s.u.)?

Falls sich hier keiner mehr äußert stelle die Frage nochmal im Orginalthread http://forum.fhem.de/index.php/topic,41060.0.html

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

EdgarM

Hi zap,

danke für den Hinweis. Ich hatte das ignoriert im letzten Post weil "abwärtskompatibel". Ich habe ja alles auf dem neuesten Stand und dachte ich kann das ignorieren.

Jetzt ist der STATE nicht mehr ??? sondern :
STATE
ACTUAL_TEMPERATURE_4: 24.400000 BATTERY_STATE_4: 3.100000 BOOST_STATE_4: 0 CONTROL_MODE_4: 0 FAULT_REPORTING_4: 0 PARTY_START_DAY_4: 1 PARTY_START_MONTH_4: 1 PARTY_START_TIME_4: 0 PARTY_START_YEAR_4: 0 PARTY_STOP_DAY_4: 1 PARTY_STOP_MONTH_4: 1 PARTY_STOP_TIME_4: 0 PARTY_STOP_YEAR_4: 0 PARTY_TEMPERATURE_4: 5.000000 SET_TEMPERATURE_4: 17.000000 VALVE_STATE_4: 0


Mal sehen wie weit ich jetzt komme.

Danke schon mal dafür.

EdgarM

Leider ist es nur ein Schritt in die Richtige Richtung :(

Ich habe zwar keine Fragezeichen mehr, aber ich kann keinen Befehl senden ( oder weiß nicht wie ich das tuen soll)

Beispiel aus der Wiki:

set BadHeiz regSet btnLock on

Da bekomme ich leider keine Bestätigung, sondern ein
-3: Unknown paramset

Danke für die Hilfestellung

grüße

zap

Diese Fehlermeldung scheint von dem Perl-RPC Modul zu kommen, nicht von HMRPC direkt. Ich nehme an, der set Befehl ist nicht korrekt und in HMRPC wird das nicht geprüft bzw. die Prüfung bemerkt es nicht.
2xCCU3 mit ca. 100 Aktoren, Sensoren
Entwicklung: FHEM auf Proxmox Debian VM
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: HMCCU, (Fully, AndroidDB)

zap

Noch ein paar Anmerkungen / Fragen:

- Welches Wiki meinst Du?
- Versuche mal, im Set Befehl statt on/off true/false oder 1/0 anzugeben. Die States in der CCU sind meistens true/false oder 1/0. Mit on/off kann die CCU nichts anfangen. Ich glaube nicht, dass HMRPC das übersetzt.
2xCCU3 mit ca. 100 Aktoren, Sensoren
Entwicklung: FHEM auf Proxmox Debian VM
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: HMCCU, (Fully, AndroidDB)

Raymund

Hallo,

ich hoffe, ich verstehe Eure Diskussion richtig: nach meinen Erfahrungen kann man mit set nur das "senden", was als Reading vorliegt (also z.B. STATE_1 oder LEVEL_1) und muss außerdem den "Datentyp" beachten, so wie er im xmlrpc-File benötigt wird (also z.B. set <name> LEVEL_1 1.0 oder set <name> STATE_1 true). Wenn noch nicht alle benötigten Readings angelegt wurden, dann in der ccu "schalten".

Zur Vereinfachung habe ich eventMaps gesetzt, wie z.B. /STATE_1 true:ein/STATE_1 false:aus/

Mir fehlt so z.B. noch der STOP-Befehl für die Rollläden (blind actuators). Das kriege ich auch nicht hin. Ansonsten laufen hmrpc und hmdev mit gut 20 Devices problemlos seit jetzt einigen Wochen.

Grüße
Raymund

EdgarM

Hi Raymund,

mein Problem ist, dass ich zwar die Heizkörperthermostate sehe in FHEM, aber keinerlei Befehle an sie senden kann.

Da das nicht klappt, weiß ich natürlich auch nicht, ob die Konfiguration bei mir in Ordnung ist.


Vielleicht kannst Du mir ja sagen, ob meine Config stimmt oder ob noch etwas fehlt.


# Disable this to avoid looking for new USB devices on startup
define initialUsbCheck notify global:INITIALIZED usb create
define hmrf HMRPC 172.23.0.10 2001
attr hmrf callback_base http://172.23.1.33:8083/fhem
attr hmrf icon hm_ccu
define SchlafzimmerHeiz HMDEV LEQXXXXXXXX
attr SchlafzimmerHeiz IODev hmrf
attr SchlafzimmerHeiz icon hc_wht_regler
attr SchlafzimmerHeiz room Schlafzimmer,HMDEV
attr SchlafzimmerHeiz stateFormat ACTUAL_TEMPERATURE_4


Und mit welchem Befehl setzt du z.b. die Temperatur?

Danke schon mal
grüße

Ralli

Ich denke, Du würdest Thermostate besser über das Modul HMCCU einbinden. Da scheint auch momentan mehr Entwicklungswille drin zu stecken ;). Ausserdem besteht darin die Möglichkeit, Kommandos "zu übersetzen".

Der (bisher) einzige Nachteil: HMCCU arbeitet auf Polling-Basis, HMRPC dagegen auf RPC, nimmt also auch Events entgegen.

Ideal wäre eine Kombination aus beidem. Wenn ZAP also in sein HMCCU dazu noch ein (optionales) RPC einbaut, mit dem bspw. ein Device praktisch aus beiden "Schienen" heraus gefüttert und gesteuert werden kann, wäre das die genialste Lösung.

http://forum.fhem.de/index.php/topic,40189
Gruß,
Ralli

Proxmox 8.4 Cluster mit HP ED800G2i7, Intel NUC11TNHi7+NUC7i5BNH, virtualisiertes fhem 6.4 dev, virtualisierte RaspberryMatic (3.81.5.20250527) mit HB-RF-ETH 1.3.0 / RPI-RF-MOD, HM-LAN-GW (1.4.1) und HMW-GW, FRITZBOX 7490 (07.59), FBDECT, Siri und Alexa

Raymund

Hallo EdgarM,

ich sehe nur, dass Deine IP-Adressen in unterschiedlichen Subnetzen (vorletzter Adressteil mal 0, mal 1) definiert sind. Ist das bei Dir so richtig im Heimnetz?

Grüße
Raymund

EdgarM

Hi Raymund,

ja, ich habe als Netmask 255.255.254.0. das 172.23.0* ist statisch, 1.* ist DHCP :)


Raymund

Hallo EdgarM,

ich habe nur Schalter und Rollläden (blinds), die ich schalte. Ich kann also nichts zu den Temperaturen schreiben. Ich versuche aber gerade in Sachen "STOP-Befehl" zu debuggen. Wenn ich dazu mehr habe, melde ich mich. Die Firewall-Einstellungen in der CCU hast Du ja sicher kontrolliert!?

Grüße
Raymund

EdgarM

Hi Raymund,

vor 15 Minuten hab ich da mal was umgestellt. Allerdings gab es keine Verbesserung dazu :(

Danke für die Unterstützung.

grüße