Homematic HM-LC-DIM1T-DR via MQTT und Homeassistant

Begonnen von popperchris, 10 Juli 2024, 10:29:49

Vorheriges Thema - Nächstes Thema

popperchris

Guten Morgen
Ich habe folgenden Setup:
2 Homematic Hutschienen Dimmer HM-LC-DIM1T-DR
Diese sind über einen CUL in FHEM eingebunden und funktionieren ohne Probleme

Ich habe aber auch eine Homeassistant Installation laufen und was ich so raus gefunden habe ist das FHEM und HA über MQTT kommunizieren können.
Das hat für Sensoren die ich im FHEM über MQTT auch funktioniert so das ich die Daten auch im HA sehe.

Um die Dimmer anzulegen habe ich im FHEM für jeden Dimmer ein "MQTT Device" angelegt mit folgendem Setup:
define WohnzimmerLicht1MQTT MQTT_BRIDGE Wohnzimmerlicht1
setuuid WohnzimmerLicht1MQTT 668aa98d-f33f-3d66-bed3-63a1f61d0227233d
attr WohnzimmerLicht1MQTT publishReading_.associatedWith FHEM/Wohnzimmerlicht1/.associatedWith
attr WohnzimmerLicht1MQTT publishReading_CommandAccepted FHEM/Wohnzimmerlicht1/CommandAccepted
attr WohnzimmerLicht1MQTT publishReading_commState FHEM/Wohnzimmerlicht1/commState
attr WohnzimmerLicht1MQTT publishReading_deviceMsg FHEM/Wohnzimmerlicht1/deviceMsg
attr WohnzimmerLicht1MQTT publishReading_dim FHEM/Wohnzimmerlicht1/dim
attr WohnzimmerLicht1MQTT publishReading_level FHEM/Wohnzimmerlicht1/level
attr WohnzimmerLicht1MQTT publishReading_levelMissed FHEM/Wohnzimmerlicht1/levelMissed
attr WohnzimmerLicht1MQTT publishReading_overheat FHEM/Wohnzimmerlicht1/overheat
attr WohnzimmerLicht1MQTT publishReading_overload FHEM/Wohnzimmerlicht1/overload
attr WohnzimmerLicht1MQTT publishReading_pct FHEM/Wohnzimmerlicht1/pct
attr WohnzimmerLicht1MQTT publishReading_phyLevel FHEM/Wohnzimmerlicht1/phyLevel
attr WohnzimmerLicht1MQTT publishReading_recentStateType FHEM/Wohnzimmerlicht1/recentStateType
attr WohnzimmerLicht1MQTT publishReading_reduced FHEM/Wohnzimmerlicht1/reduced
attr WohnzimmerLicht1MQTT publishReading_state FHEM/Wohnzimmerlicht1/state
attr WohnzimmerLicht1MQTT publishReading_timedOn FHEM/Wohnzimmerlicht1/timedOn
attr WohnzimmerLicht1MQTT publishReading_trigLast FHEM/Wohnzimmerlicht1/trigLast
attr WohnzimmerLicht1MQTT room System
attr WohnzimmerLicht1MQTT subscribeSet_.associatedWith FHEM/Wohnzimmerlicht1/.associatedWith
attr WohnzimmerLicht1MQTT subscribeSet_CommandAccepted FHEM/Wohnzimmerlicht1/CommandAccepted
attr WohnzimmerLicht1MQTT subscribeSet_commState FHEM/Wohnzimmerlicht1/commState
attr WohnzimmerLicht1MQTT subscribeSet_deviceMsg FHEM/Wohnzimmerlicht1/deviceMsg
attr WohnzimmerLicht1MQTT subscribeSet_dim FHEM/Wohnzimmerlicht1/dim
attr WohnzimmerLicht1MQTT subscribeSet_level FHEM/Wohnzimmerlicht1/level
attr WohnzimmerLicht1MQTT subscribeSet_levelMissed FHEM/Wohnzimmerlicht1/levelMissed
attr WohnzimmerLicht1MQTT subscribeSet_overheat FHEM/Wohnzimmerlicht1/overheat
attr WohnzimmerLicht1MQTT subscribeSet_overload FHEM/Wohnzimmerlicht1/overload
attr WohnzimmerLicht1MQTT subscribeSet_pct FHEM/Wohnzimmerlicht1/pct
attr WohnzimmerLicht1MQTT subscribeSet_recentStateType FHEM/Wohnzimmerlicht1/recentStateType
attr WohnzimmerLicht1MQTT subscribeSet_reduced FHEM/Wohnzimmerlicht1/reduced
attr WohnzimmerLicht1MQTT subscribeSet_state FHEM/Wohnzimmerlicht1/state
attr WohnzimmerLicht1MQTT subscribeSet_timedOn FHEM/Wohnzimmerlicht1/timedOn
attr WohnzimmerLicht1MQTT subscribeSet_trigLast FHEM/Wohnzimmerlicht1/trigLast

Schalte ich die in FHEM sehe ich auch im MQTT Explorer Daten ankommen.
Mein Problem ist das die Dimmer teilweise in FHEM rumspinnen wenn der MQTT Server (Mosquitto) läuft und ein Setup in der "Konfiguration.yaml" habe ich auch noch nicht gefunden für die beiden Dimmer.

Vielleicht hat ja jemand auch so ein Setup und kann mir helfen oder sonst irgendeine Idee.

Vielen Dank für Eure Hilfe.
Christoph

popperchris

Niemand eine Idee dazu ??
oder hat jemand eine Config für einen Schalter ?
Sowohl im FHEM wie auch im Homeassistant

Beta-User

#2
Doch, aber vermutlich traut sich keiner, was dazu zu schreiben, weil so ziemlich alles schräg ist, was schräg sein kann:
- veraltetes Modul (MQTT_BRIDGE ist seit Jahren deprecated bzw. entfernt! MQTT_GENERIC_BRIDGE)
- gleiche topics für den Hin- und Rückweg geht gar nicht... (Schleifengefahr!)
- "alles" (alle Readings) in die MQTT-Welt zu pusten ist (m.E.) kompletter Unfug...

(Von der Formatierung des Beitrags will ich gar nicht erst anfangen...)

Fang vielleicht im Wiki bei MQTT_GENERIC_BRIDGE an zu suchen, dann sehen wir weiter.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

popperchris

Hallo zusammen,
ich habe das auf MQTT_GENERIC_BRIDGE umgestellt.
Jetzt sehe ich im MQTT Explorer alles was von FHEM an Homeassistant geht.
Auch sehe ich unter "MQTT_GENERIC_BRIDGE" den Counter "out" hochzählen.

Welches "subscribe" attr muss ich setzen damit ich aus HA raus die Schalter (Dimmer) schalten kann?
Und vielleicht hat jemand auch ein Bespiel was ich im HA in die config eintragen muss.

Vielen Dank für eure Hilfe !!

Beste Grüße

Beta-User

Da du nicht zeigst, was du hast, kann man schlecht raten...

Generell: es gibt ein attrTemplate für MGB zum Setzen der Attribute für einen Rollladen-Aktor. Das sollte m.E. auch für CUL_HM-Dimmer passen - falls (!) der Rest so gemacht wurde wie im Wiki beschrieben...
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

popperchris

Hallo
so sieht das in der fhem.cfg aus:
################################################################
# Definition Homeassistant MQTT Verbindung
################################################################
define ha_MQTT2 MQTT2_CLIENT 192.168.178.195:1883
setuuid ha_MQTT2 6698e0c3-f33f-3d66-4e0d-4422f3213037adf2
attr ha_MQTT2 clientId FHEM
attr ha_MQTT2 clientOrder MQTT_GENERIC_BRIDGE MQTT2_DEVICE
attr ha_MQTT2 keepaliveTimeout 60
attr ha_MQTT2 msgAfterConnect -r FHEM/connection/status connected
attr ha_MQTT2 msgBeforeDisconnect -r FHEM/connection/status disconnected
attr ha_MQTT2 qosMaxQueueLength 100
attr ha_MQTT2 room System
attr ha_MQTT2 subscriptions setByTheProgram
attr ha_MQTT2 username fhem-mqtt
#################################################################
# Definition MQTT Generic Bridge
#################################################################
define mqttGeneric MQTT_GENERIC_BRIDGE mqtt
setuuid mqttGeneric 6698e24a-f33f-3d66-a8f3-c7cafc3a179cf75f
attr mqttGeneric IODev ha_MQTT2
attr mqttGeneric globalDefaults sub:base=mqttGeneric/set pub:base=mqttGeneric
attr mqttGeneric globalPublish *:topic={"fhem/$device/$reading"}
attr mqttGeneric icon mqtt_bridge_2
attr mqttGeneric room System
attr mqttGeneric stateFormat in: incoming-count out: outgoing-count devices: device-count
attr mqttGeneric verbose 0

zusätzlich habe ich das attrTemplate auf General_Info_MQTT_GENERIC_BRIDGE gesetzt.

So sieht ein Reading aus das im MQTT Explorer zu sehen ist.
Rolladen_Wohnzimmer_Rechts_Auf
commState = CMDs_done
state = off
trigLast = fhem:02
deviceMsg = off (to CUL_HOM)
level = 0
pct = 0
timedOn = off
stat = set_off

Das ist die Konfiguration.yaml von homeassistant aus:
- name: "Wohnzimmerlicht1"
          unique_id: fhem_wohnzimmer_licht1
          command_topic: "fhem/Wohnzimmerlicht1/stat"
          state_topic: "fhem/Wohnzimmerlicht1/level"
          payload_on: "set_on"
          payload_off: "set_off"
          state_on: "100"
          state_off: "0"

Schalte ich im FHEM geht auch der Schalter im HA auf On.
Ich sehe aber im FHEM nichts rübergehen wenn ich im HA schalte, im MQTT Explorer schon.

Stehe jetzt ein wenig auf dem Schlauch welches Attribute mit welchem Wert ich wo setzen muss das die Messages von JA auch im FHEM zu sehen sind damit der Schalter schaltet.

Vielen Dank für die Hilfe.