Hallo Leute,
ich hatte einen funktionierenden KNX Dimmer, den ich via Alexa steuern konnte.
Was ich damit tun will:
Alexa, Licht an.
Alexa, Licht aus.
Alexa, dimme Licht auf x%
Wie gesagt, das hat(te) bisher funktioniert.
Leider habe ich mein System upgedatet und jetzt funktioniert Alexa, Licht an nicht mehr. Der Rest geht noch.
Ich habe schon viele Dinge ausprobiert, mit z.B. eventMap und/oder stateCmd. Leider ohne Erfolg.
Mein Problem ist, das Alexa bei An immer eine 1 senden will (was beim Dimmer ja nicht funktioniert), ich hätte das gerne umgebogen auf Dimmer 75%
Hat von euch jemand eine Idee, was ich noch falsch mache, oder wie ich es wieder zum laufen bekomme?
Hier mein List:
Internals:
DEF 0/1/128:dpt5.001:Dimm.Absolute 0/3/106:dpt5.001:Dimm.Status
FUUID 5dfcf3af-f33f-5687-c860-47ad943dcd6127fd
IODev KNX
KNX_MSGCNT 52
KNX_RAWMSG C0112ew0036a00
KNX_TIME 2025-11-10 22:01:27
LASTInputDev KNX
MSGCNT 52
NAME EG.Essz.Haengeleuchten.Licht.DimmAbsolute
NR 500
STATE 0 %
TYPE KNX
eventCount 136
model dpt5
GADDETAILS:
Dimm.Absolute:
CODE 00180
MODEL dpt5.001
NO 1
OPTION
RDNAMEGET Dimm.Absolute-get
RDNAMESET Dimm.Absolute-set
SETLIST :slider,0,1,100
Dimm.Status:
CODE 0036a
MODEL dpt5.001
NO 2
OPTION
RDNAMEGET Dimm.Status-get
RDNAMESET Dimm.Status-set
SETLIST :slider,0,1,100
GADTABLE:
00180 Dimm.Absolute
0036a Dimm.Status
Helper:
READINGS:
2025-11-10 22:01:29 Dimm.Absolute-set 0 %
2025-11-10 22:01:27 Dimm.Status-get 0 %
2025-10-27 09:55:24 Dimm.Status-set 70 %
2025-11-06 21:20:31 IODev KNX
2025-11-10 22:01:29 last-sender fhem
2025-11-10 22:01:29 state 0 %
Attributes:
IODev KNX
alexaName Licht Esstisch
genericDeviceType light
homebridgeMapping On=cmdOn=Dimm.Absolute 75,cmdOff=Dimm.Absolute 0 Brightness=Dimm.Status,cmd=Dimm.Absolute,minValue=0,maxValue=100
room hidden
stateFormat Dimm.Status-get
Hier der Auszug des Alexa Logs: 1. Dimme auf 50%, 2. Licht aus, 3. Licht an
[10/11/2025, 22:23:59] >>>> [ssh] {"directive":{"header":{"messageId":"e491e545-419b-4ae3-a7b2-5a94033edd0c","namespace":"Alexa.BrightnessController","name":"SetBrightness","payloadVersion":"3","correlationToken":"-"},"endpoint":{"scope":{"type":"BearerToken","token":"F0C6AAB8-0C0BCA41083B64DB"},"endpointId":"5dfcf3af-f33f-5687-c860-47ad943dcd6127fd","cookie":{"device":"EG.Essz.Haengeleuchten.Licht.DimmAbsolute","fuuid":"5dfcf3af-f33f-5687-c860-47ad943dcd6127fd"}},"payload":{"brightness":50}}}
[10/11/2025, 22:23:59] [FHEM] EG.Essz.Haengeleuchten.Licht.DimmAbsolute: executing set cmd for Brightness with value 50
[10/11/2025, 22:23:59] [FHEM] executing: https://127.0.0.1:8083/fhem?cmd=set%20EG.Essz.Haengeleuchten.Licht.DimmAbsolute%20Dimm.Absolute%2050&fwcsrf=csrf_606790952053282&XHR=1
[10/11/2025, 22:23:59] <<<< [ssh] {"context":{"properties":[{"namespace":"Alexa.BrightnessController","name":"brightness","value":50,"timeOfSample":"2025-11-10T21:23:59.253Z","uncertaintyInMilliseconds":500}]},"event":{"header":{"namespace":"Alexa","name":"Response","payloadVersion":"3","messageId":"28d07316-4438-4716-947d-49329285deb3","correlationToken":"-"},"endpoint":{"scope":{"type":"BearerToken","token":"F0C6AAB8-0C0BCA41083B64DB"},"endpointId":"5dfcf3af-f33f-5687-c860-47ad943dcd6127fd"},"payload":{}}}
2025-11-10 22:23:59 caching: EG.Essz.Haengeleuchten.Licht.DimmAbsolute-state: 50 %
[10/11/2025, 22:23:59] [FHEM] caching: On: 50 % (as string; from '50 %')
[10/11/2025, 22:24:11] >>>> [ssh] {"directive":{"header":{"messageId":"e63f25d6-7cbd-4bea-b99e-f8d2b93c3455","namespace":"Alexa.PowerController","name":"TurnOff","payloadVersion":"3","correlationToken":"-"},"endpoint":{"scope":{"type":"BearerToken","token":"F0C6AAB8-0C0BCA41083B64DB"},"endpointId":"5dfcf3af-f33f-5687-c860-47ad943dcd6127fd","cookie":{"device":"EG.Essz.Haengeleuchten.Licht.DimmAbsolute","fuuid":"5dfcf3af-f33f-5687-c860-47ad943dcd6127fd"}},"payload":{}}}
[10/11/2025, 22:24:11] [FHEM] EG.Essz.Haengeleuchten.Licht.DimmAbsolute: executing set cmd for On with value 0
[10/11/2025, 22:24:11] [FHEM] executing: https://127.0.0.1:8083/fhem?cmd=set%20EG.Essz.Haengeleuchten.Licht.DimmAbsolute%200&fwcsrf=csrf_606790952053282&XHR=1
[10/11/2025, 22:24:11] <<<< [ssh] {"context":{"properties":[{"namespace":"Alexa.PowerController","name":"powerState","value":"OFF","timeOfSample":"2025-11-10T21:24:11.127Z","uncertaintyInMilliseconds":500}]},"event":{"header":{"namespace":"Alexa","name":"Response","payloadVersion":"3","messageId":"b2f497c3-c353-4b34-9acb-ba19785fb4c9","correlationToken":"-"},"endpoint":{"scope":{"type":"BearerToken","token":"F0C6AAB8-0C0BCA41083B64DB"},"endpointId":"5dfcf3af-f33f-5687-c860-47ad943dcd6127fd"},"payload":{}}}
2025-11-10 22:24:11 caching: EG.Essz.Haengeleuchten.Licht.DimmAbsolute-state: 0 %
[10/11/2025, 22:24:11] [FHEM] caching: On: 0 % (as string; from '0 %')
[10/11/2025, 22:24:24] >>>> [ssh] {"directive":{"header":{"messageId":"72192d6f-6574-4008-b621-4efffb74eec0","namespace":"Alexa.PowerController","name":"TurnOn","payloadVersion":"3","correlationToken":"-"},"endpoint":{"scope":{"type":"BearerToken","token":"F0C6AAB8-0C0BCA41083B64DB"},"endpointId":"5dfcf3af-f33f-5687-c860-47ad943dcd6127fd","cookie":{"device":"EG.Essz.Haengeleuchten.Licht.DimmAbsolute","fuuid":"5dfcf3af-f33f-5687-c860-47ad943dcd6127fd"}},"payload":{}}}
[10/11/2025, 22:24:24] [FHEM] EG.Essz.Haengeleuchten.Licht.DimmAbsolute: executing set cmd for On with value 1
[10/11/2025, 22:24:24] [FHEM] executing: https://127.0.0.1:8083/fhem?cmd=set%20EG.Essz.Haengeleuchten.Licht.DimmAbsolute%20Dimm.Absolute&fwcsrf=csrf_606790952053282&XHR=1
[10/11/2025, 22:24:24] <<<< [ssh] {"context":{"properties":[{"namespace":"Alexa.PowerController","name":"powerState","value":"ON","timeOfSample":"2025-11-10T21:24:24.104Z","uncertaintyInMilliseconds":500}]},"event":{"header":{"namespace":"Alexa","name":"Response","payloadVersion":"3","messageId":"9832ef1d-e11e-4f7f-9d71-4d832be7c5f5","correlationToken":"-"},"endpoint":{"scope":{"type":"BearerToken","token":"F0C6AAB8-0C0BCA41083B64DB"},"endpointId":"5dfcf3af-f33f-5687-c860-47ad943dcd6127fd"},"payload":{}}}
Übrigens, ich benutze den Alexa FHEM Connector.
Danke für euren Support.
Hi,
gleich vorweg: ich verwende Alexa nicht, kann das nur aus der KNX-Sicht beurteilen....
Was ich dem Log entnehme:
1) Ein Dimm 50% funktioniert
2) Ein TurnOff funktioniert - wird auf 0% umgesetzt.
3) Ein TurnOn funktionert nicht - Alexa versucht value 1 - was sehr dunkel ist 8)
Was allerding komisch ist, ist der http request:
[10/11/2025, 22:24:24] [FHEM] executing: https://127.0.0.1:8083/fhem?cmd=set%20EG.Essz.Haengeleuchten.Licht.DimmAbsolute%20Dimm.Absolute&fwcsrf=csrf_606790952053282&XHR=1hier fehlt m.M. der Wert komplett!!!
Ich gehe davon aus, dass die KNX-cmds von der FHEM cmd-line funktionieren, ich würde vorschlagen, das ins Sprachsteuerung-Forum zu verschieben!
l.g. erwin
PS: um das mapping zu vereinfachen, würde ich die definition ändern:
0/1/128:dpt5.001:dim:set:nosuffix 0/3/106:dpt5.001:dimStatus:get:nosuffix siehe auch Alexa Wiki...
Hallo,
ich habe es jetzt nach Sprachsteuerung verschoben.
Und ja, Fhem cmd funktioniert:
set EG.Essz.Haengeleuchten.Licht.DimmAbsolute 50 tut zum Beispiel.
Habe mich jetzt nochmals ein wenig probiert. Für Licht an und aus wird via Alexa kein Wert mitgeschickt, es wird also folgendes ausgeführt: set EG.Essz.Haengeleuchten.Licht.DimmAbsolute ohne Wert. Wie auch erwin schon richtig bemerkt hat.
Das homebridgemapping für on und off funktioniert in meinem Fall nicht. Ich habe jetzt schon so viele Varianten ausprobiert, aber keine löst mein Problem.
Früher hatte ich :75 und :0 im mapping. Dieser Syntax funktioniert ja leider nicht mehr nach meinem fhem update.
Hat von euch noch jemand eine Idee?
Zitat von: superverbleit am 10 November 2025, 22:28:55homebridgeMapping On=cmdOn=Dimm.Absolute 75,cmdOff=Dimm.Absolute 0 Brightness=Dimm.Status,cmd=Dimm.Absolute,minValue=0,maxValue=100
Muss da nicht ein "plus" hin?
Also z.B.
homebridgeMapping On=cmdOn=Dimm.Absolute+75EDIT: https://github.com/justme-1968/homebridge-fhem/blob/master/README.md
Zitat von: https://github.com/justme-1968/homebridge-fhem/blob/master/README.mdspaces in commands have to be replaced by +
EDIT: wobei ich
ZitatDimm.Absolute
also den Punkt auch komisch finde, mag mich aber täuschen. Kenne KNX nicht...
Gruß, Joachim
Also wenn ich die gegebenen Infos richtig verstehe, müsste es eigentlich mit diesem homebridgeMapping funktionieren:
clear
On=state,part=0,valueOff=0,cmdOn=75,cmdOff=0
Brightness=state,part=0Das macht sich insbesondere folgendes zunutze:
- Um das % rauszukriegen:
Zitatpart: the reading value will be splitted at spaces and the n-th item is used as the value. counting starts at 0
- Um nicht irgendeine regex für die richtige Zustandserkennung nutzen zu müssen (alles > 0 = On):
ZitatvalueOn, valueOff: the reading values that are mapped to the true/false resp. on/off states in homekit. shotcut for values if only one is given all values not matching this one are automatically mapped to the other
Das einzige, was hier ein bisschen unüblich ist (eventuell eine KNX-Eigenheit?), ist, dass es kein
set DEVICE BEFEHL WERT gibt, sondern
set DEVICE WERT ausreicht, weil BEFEHL schon im Namen des devices enthalten ist. Lässt sich aber damit lösen, dass man im cmdOn/Off-Teil (jedenfalls bei der On-Characteristic) nur den Wert mitgibt und für die Brightness-Characteristic gar kein cmd definiert.
Ansonsten ist es sehr zu empfehlen, die Doku von homebridge-fhem (https://github.com/justme-1968/homebridge-fhem?tab=readme-ov-file#enhanced-config) SEHR genau zu lesen, da ist doch einiges versteckt, was nützlich ist.
Dieser Hinweis ist übrigens grundsätzlich zutreffend:
Zitat von: MadMax-FHEM am 11 November 2025, 23:27:27Muss da nicht ein "plus" hin?
Nur hier ist es wohl wegen KNX etwas anders (und deshalb war auch das ursprüngliche homebridgeMapping falsch), weil wir ja gerade nicht
set EG.Essz.Haengeleuchten.Licht.DimmAbsolute Dimm.Absolute 75ausführen wollen, sondern einfach nur
set EG.Essz.Haengeleuchten.Licht.DimmAbsolute 75, also "nur" das oben angesprochene
set DEVICE WERT anstatt das üblichere
set DEVICE BEFEHL WERT.
Kenne mich aber ebenfalls nicht mit KNX aus, vielleicht ist das, was ich hier vorgeschlagen habe also auch nutzlos, aber entsprechend der gegebenen Infos müsste es eigentlich™ funktionieren.
Hi,
in diesem Fall sind BEIDE cmd Varianten möglich und funktionieren:
set EG.Essz.Haengeleuchten.Licht.DimmAbsolute Dimm.Absolute 75
set EG.Essz.Haengeleuchten.Licht.DimmAbsolute 75... weil bei fehlendem gadNamen der ERSTE gadName verwendet wird (kompatiblility mode).
siehe auch KNX cmd ref. Das ist also nicht das Problem.
l.g. erwin
Ok! Danke für die Aufklärung. Dann dürfte wohl auch dieses Mapping funktionieren:
clear
On=state,part=0,valueOff=0,cmdOn=Dimm.Absolute+75,cmdOff=Dimm.Absolute+0
Brightness=state,part=0,cmd=Dimm.Absolute
Hallo,
großes Lob an euch.
So funktioniert es:
clear
On=state,part=0,valueOff=0,cmdOn=Dimm.Absolute+75,cmdOff=Dimm.Absolute+0
Brightness=state,part=0,cmd=Dimm.Absolute,minValue=0,maxValue=100
Auch erwin hat recht, es funktioniert beides
set EG.Essz.Haengeleuchten.Licht.DimmAbsolute Dimm.Absolute 75
set EG.Essz.Haengeleuchten.Licht.DimmAbsolute 75
Eine kurze Frage zu einem leicht anderen Thema hätte ich noch.
Es geht um die Temperature Abfrage auch von Alexa.
Ich habe folgendes Device
Internals:
DEF 4/0/0:dpt9.001:Ist-Temp
FUUID 5dfcf3ad-f33f-5687-78ca-f5de705525a416ca
IODev KNX
KNX_MSGCNT 7
KNX_RAWMSG C01113w0400003a1
KNX_TIME 2025-11-12 19:14:00
LASTInputDev KNX
MSGCNT 7
NAME Aussenbereich.Temp.Terrasse
NR 90
STATE 9.29 °C
TYPE KNX
eventCount 7
model dpt9
GADDETAILS:
Ist-Temp:
CODE 04000
MODEL dpt9.001
NO 1
OPTION
RDNAMEGET Ist-Temp-get
RDNAMESET Ist-Temp-set
SETLIST
GADTABLE:
04000 Ist-Temp
Helper:
READINGS:
2025-11-12 18:06:25 IODev KNX
2025-11-12 19:14:00 Ist-Temp-get 9.29 °C
2025-11-12 19:14:00 last-sender 1.1.19
2025-11-12 19:14:00 state 9.29 °C
Attributes:
IODev KNX
alexaName Terrassen Temperatur
genericDeviceType thermometer
group Aussentemperatur
homebridgeMapping CurrentTemperature:reading=state
icon icoTemp.png
room Aussenbereich
webCmd :
An sich funktioniert das auch, vor kurzem gab es ja Minus Temperaturen.
Das Reading hat minus angezeigt, nur Alexa hat das Minus verschluckt.
Bsp. -1,8° -> Alexa meldet 1,8°.
Früher ging das glaube ich, kam das jetzt auch durch das Update rein?
Würdet ihr das homebridgeMapping anders machen?
Ebenso habe ich im Alexa log viele Einträge wie:
2025-11-12 19:19:31 caching: EG.Buero.IstTemp-state: 22 °C
[12/11/2025, 19:19:31] [FHEM] caching: CurrentTemperature: 22 °C (as string; from '22 °C')
2025-11-12 19:20:33 caching: EG.Flur.IstTemp-state: 22.2 °C
[12/11/2025, 19:20:33] [FHEM] caching: CurrentTemperature: 22.2 °C (as string; from '22.2 °C')
2025-11-12 19:23:25 caching: Aussenbereich.Temp.Wetterstation-state: 5.5 °C
[12/11/2025, 19:23:25] [FHEM] caching: CurrentTemperature: 5.5 °C (as string; from '5.5 °C')
2025-11-12 19:25:27 caching: EG.Wohnz.IstTemp-state: 21.9 °C
[12/11/2025, 19:25:27] [FHEM] caching: CurrentTemperature: 21.9 °C (as string; from '21.9 °C')
Ist das nur ein Info Log, oder muss ich irgendwas machen, das die nicht immer im Log erscheinen?
Danke nochmals für euren tollen Support.