CUxDaemon und MQTT Broker
Moderator: Co-Administratoren
CUxDaemon und MQTT Broker
Hallo Forum,
ich bin ein Newbee was das Thema HomeMatic angeht.
Ich betreibe eine HomeAssistant Installation auf einem älterem x86-64 mini HP Desktop.
Das dort installierte RaspberryMatic Addon (Docker) spricht via USB den USB 1-5 - eQ-3 HmIP-RFUSB [FF] Stick direkt an.
Meine Somfy RTS Markise wird via USB 1-4.1 - {CUX} CUL868 [COMM] - /dev/ttyACM0 {:3799s} - V 1.67 CUL868 (CUL_V3) und das RaspberryMatic Addon CUxD gesteuert. Das funktioniert sehr gut.
Da CUxD Geräte von dem HA Addon "Homematic (IP) local" (BINRPC) nicht unterstützt werden wollte ich Mosquitto als Vermittler nutzen.
Das "ccu-addon-mosquitto" funktioniert auf x86-64 leider nicht, deshalb habe ich mir die Version 1.6.15 selbst kompiliert und eingebunden.
Funktioniert alles soweit perfekt.
Jetzt stehe ich so ziemlich auf dem Schlauch. Wie binde das CUxD-Gerät (senden und empfangen) im lokalem RM-MQTT-Broker ein, sodass ich die Daten dann vom HomeAssistant aus weiter nutzen kann?
Viele Grüße
Andreas
ich bin ein Newbee was das Thema HomeMatic angeht.
Ich betreibe eine HomeAssistant Installation auf einem älterem x86-64 mini HP Desktop.
Das dort installierte RaspberryMatic Addon (Docker) spricht via USB den USB 1-5 - eQ-3 HmIP-RFUSB [FF] Stick direkt an.
Meine Somfy RTS Markise wird via USB 1-4.1 - {CUX} CUL868 [COMM] - /dev/ttyACM0 {:3799s} - V 1.67 CUL868 (CUL_V3) und das RaspberryMatic Addon CUxD gesteuert. Das funktioniert sehr gut.
Da CUxD Geräte von dem HA Addon "Homematic (IP) local" (BINRPC) nicht unterstützt werden wollte ich Mosquitto als Vermittler nutzen.
Das "ccu-addon-mosquitto" funktioniert auf x86-64 leider nicht, deshalb habe ich mir die Version 1.6.15 selbst kompiliert und eingebunden.
Funktioniert alles soweit perfekt.
Jetzt stehe ich so ziemlich auf dem Schlauch. Wie binde das CUxD-Gerät (senden und empfangen) im lokalem RM-MQTT-Broker ein, sodass ich die Daten dann vom HomeAssistant aus weiter nutzen kann?
Viele Grüße
Andreas
-
- Beiträge: 2520
- Registriert: 13.02.2012, 20:23
- System: Alternative CCU (auf Basis OCCU)
- Hat sich bedankt: 317 Mal
- Danksagung erhalten: 121 Mal
Re: CUxDaemon und MQTT Broker
Danke für die schnelle Antwort.
Da wird Node-Red genutzt, das halte ich in meinem Fall für mit Kanonen auf Spatzen geschossen.
Dafür habe ich jetzt doch meinen selbstgebauten Mosquitto (vielleicht war die Mühe umsonst) doch gegen das Addon ccu-jack ausgetauscht.
MQTT kann das Teil so wie so und dort steht auch was über CUxD Unterstützung.
Ich schaue ob ich damit weiterkomme.
VG
Andreas
Da wird Node-Red genutzt, das halte ich in meinem Fall für mit Kanonen auf Spatzen geschossen.
Dafür habe ich jetzt doch meinen selbstgebauten Mosquitto (vielleicht war die Mühe umsonst) doch gegen das Addon ccu-jack ausgetauscht.
MQTT kann das Teil so wie so und dort steht auch was über CUxD Unterstützung.
Ich schaue ob ich damit weiterkomme.
VG
Andreas
Re: CUxDaemon und MQTT Broker
Hallo,
ich wollte das Thema erneut aufgreifen.
Ich bin jetzt soweit weitergekommen, dass ich den CCU-Jack Broker nutzen kann und im MQTT-Explorer die Topics sehen kann. Leider fehlt mir noch der Rückweg (das Senden). Habe hier im Forum gelesen, dass nur der {"v": true} zurückgesendet wird.
Aber der CCU-Jack lehnt die Werte ab. VG
Andreas
ich wollte das Thema erneut aufgreifen.
Ich bin jetzt soweit weitergekommen, dass ich den CCU-Jack Broker nutzen kann und im MQTT-Explorer die Topics sehen kann. Leider fehlt mir noch der Rückweg (das Senden). Habe hier im Forum gelesen, dass nur der {"v": true} zurückgesendet wird.
Aber der CCU-Jack lehnt die Werte ab. VG
Andreas
- Baxxy
- Beiträge: 11478
- Registriert: 18.12.2018, 15:45
- System: Alternative CCU (auf Basis OCCU)
- Hat sich bedankt: 671 Mal
- Danksagung erhalten: 2433 Mal
Re: CUxDaemon und MQTT Broker
Nicht so knauserig mit Info's sein.
Was für ein CUxD-Gerät hast du angelegt und auf welches Topic schreibst du den Wert?
Was für ein CUxD-Gerät hast du angelegt und auf welches Topic schreibst du den Wert?
Grüße... Baxxy
- Raspberry Pi 4 als Homematic-Zentrale - Tipps und Informationen
- Analysescript für genutzte Funk-Adressen, Funkmodul-Hardware und Zentralen Hardware
- NANO CUL 868MHz - Stick zum AskSin Analyzer XS umflashen (Anleitung für ArduinoIDE unter Windows)
- Firmware Updates für IP-Aktoren / Sensoren... Info's, Tipps und Sonstiges
- CCU funkt nicht - CarrierSense (CS) Probleme erkennen und lösen
Re: CUxDaemon und MQTT Broker
Aktuelle Geräteeinstellungen - 1 Gerät(e), 16 Channel(s):
CUX4000001: dev('') BLIND
CUX4000001:1 RCV_SHORT('') --> EXEC:CMD_SHORT('tclsh /usr/local/addons/rollo/somfy.tcl CUX4000001:1 Somfy $VALUE$ A0 A00000')
RCV_LONG('') --> EXEC:CMD_LONG('tclsh /usr/local/addons/rollo/somfy.tcl CUX4000001:1 Somfy $VALUE$ A0 A00000')
EXEC:CMD_STOP('tclsh /usr/local/addons/rollo/somfy.tcl CUX4000001:1 Somfy STOP A0 A00000')
Ich versuche auf dieses MQTT Topic zu schreiben
mosquitto_pub -h 192.168.178.xxx -u xxxx -P 'xxxxxx' -p 11883 -t 'device/set/CUX4000001/1/STOP' -m {"v":true}
CUX4000001: dev('') BLIND
CUX4000001:1 RCV_SHORT('') --> EXEC:CMD_SHORT('tclsh /usr/local/addons/rollo/somfy.tcl CUX4000001:1 Somfy $VALUE$ A0 A00000')
RCV_LONG('') --> EXEC:CMD_LONG('tclsh /usr/local/addons/rollo/somfy.tcl CUX4000001:1 Somfy $VALUE$ A0 A00000')
EXEC:CMD_STOP('tclsh /usr/local/addons/rollo/somfy.tcl CUX4000001:1 Somfy STOP A0 A00000')
Ich versuche auf dieses MQTT Topic zu schreiben
mosquitto_pub -h 192.168.178.xxx -u xxxx -P 'xxxxxx' -p 11883 -t 'device/set/CUX4000001/1/STOP' -m {"v":true}
Re: CUxDaemon und MQTT Broker
Habe doch teilweise die falschen Topics benutzt.
Versuche mit Curl funktionieren
ich kann die Markise rausfahren, stoppen und einfahren.
Das setzen der Datenpunkte via MQTT aufs gleiche Topic geht aber nach wie vor nicht.
Sagt das Logging im CCU-Jack.
Versuche mit Curl funktionieren
Code: Alles auswählen
curl -X PUT -d '{"v":0}' -u xxxx:XXXXX http://localhost:2121/device/CUX4000001/1/LEVEL/\~pv
curl -X PUT -d '{"v":true}' -u xxxx:XXXXX http://localhost:2121/device/CUX4000001/1/STOP/\~pv
curl -X PUT -d '{"v":1}' -u xxxx:XXXXX http://localhost:2121/device/CUX4000001/1/LEVEL/\~pv
Das setzen der Datenpunkte via MQTT aufs gleiche Topic geht aber nach wie vor nicht.
![Sad :(](./images/smilies/icon_sad.gif)
Code: Alles auswählen
2024-04-22 22:04:51 WARNING mqtt Writing parameter CUX4000001:1.LEVEL failed: Invalid type for FLOAT: "{v:false}"
2024-04-22 22:04:40 WARNING mqtt Writing parameter CUX4000001:1.LEVEL failed: Invalid type for FLOAT: "{v:true}"
2024-04-22 22:03:26 WARNING mqtt Writing parameter CUX4000001:1.LEVEL failed: Invalid type for FLOAT: "{v:0}"
2024-04-22 22:03:14 WARNING mqtt Writing parameter CUX4000001:1.LEVEL failed: Invalid type for FLOAT: "{v:1}"
-
- Beiträge: 1825
- Registriert: 03.11.2010, 10:25
- System: CCU
- Wohnort: Aachen
- Hat sich bedankt: 63 Mal
- Danksagung erhalten: 272 Mal
- Kontaktdaten:
Re: CUxDaemon und MQTT Broker
Versuche mal Folgendes über MQTT zu senden:
(v in " setzen)
Gruß
Mathias
Code: Alles auswählen
{"v":0}
Gruß
Mathias
- Baxxy
- Beiträge: 11478
- Registriert: 18.12.2018, 15:45
- System: Alternative CCU (auf Basis OCCU)
- Hat sich bedankt: 671 Mal
- Danksagung erhalten: 2433 Mal
Re: CUxDaemon und MQTT Broker
Auf den LEVEL ein Boolean (true/false) oder auch ein Integer (0/1) zu senden ist auch Quatsch.
Erwartet wird bei LEVEL ein Float, also 0.00 - 1.00 (0% - 100%; Beispiel: 0.33 = 33%)
STOP erwartet ein Boolean (true), das kann ich per MQTT-Explorer problemlos publishen.
Grüße... Baxxy
- Raspberry Pi 4 als Homematic-Zentrale - Tipps und Informationen
- Analysescript für genutzte Funk-Adressen, Funkmodul-Hardware und Zentralen Hardware
- NANO CUL 868MHz - Stick zum AskSin Analyzer XS umflashen (Anleitung für ArduinoIDE unter Windows)
- Firmware Updates für IP-Aktoren / Sensoren... Info's, Tipps und Sonstiges
- CCU funkt nicht - CarrierSense (CS) Probleme erkennen und lösen
Re: CUxDaemon und MQTT Broker
Danke für die Tipps.
Das mit dem true auf LEVEL war wohl nur noch ein weiterer verzweifelter Versuch. Der Unterschied zwischen Integer, Float oder Bool ist mir schon bekannt.
Das was mich aber etwas doch überrascht ist, das nicht etwa zum SET_STATE sondern einfach nur 0 gesendet wird.
Ich muss jetzt noch weiter testen, denn noch macht die Markise ganz komische Bewegungen. Zum Beispiel, fährt sie beim STOP=true einfach ein kleines Stück raus und bleibt dann so stehen.
Das mit dem true auf LEVEL war wohl nur noch ein weiterer verzweifelter Versuch. Der Unterschied zwischen Integer, Float oder Bool ist mir schon bekannt.
Das was mich aber etwas doch überrascht ist, das nicht etwa
Code: Alles auswählen
{"v":0}
Ich muss jetzt noch weiter testen, denn noch macht die Markise ganz komische Bewegungen. Zum Beispiel, fährt sie beim STOP=true einfach ein kleines Stück raus und bleibt dann so stehen.