FHEM Forum

FHEM - Hausautomations-Systeme => KNX/EIB => Thema gestartet von: erwin am 27 März 2022, 20:27:03

Titel: Migration EIB -> KNX-Modul
Beitrag von: erwin am 27 März 2022, 20:27:03
Hi KNX community!
Nachdem das EIB-Modul seit März 2018 nicht mehr upgedatet wurde und deprecated ist, möchte ich dazu motivieren auf das aktuelle KNX-Modul umzustellen.

Für jene User, die noch auf wheezy bzw. Perl 5.14 sind, macht es möglicherweise mehr Sinn, das System komplett neu aufzusetzen.

Es gibt Stand März 2022 lt. Statisktik noch immer 10 Installs mit 1189 EIB definitionen.
ca. 60% betreffen dpt1, 15% dpt5, 15% dpt9, 10% diverse....

Die Umstellung ist ganz einfach:
Aus:
define lamp1 EIB 0/10/12 0/0/5
attr lamp1 model dpt1 dpt5
wird:
define lamp1 KNX 0/10/12:dpt1 0/0/5:dpt5also aus dem Attribut model wird der wert in die definition gesetzt!

Model mapping:
Falls im EIB-device ein model im format dptx[.xyz] codiert ist, kann das unverändert in die KNX definition übernommen werden.
Andernfalls die folgende Tabelle verwenden:
angle      -> dpt5.003
percent    -> dpt5.004
percent255 -> dpt5.001

length - mm      -> dpt7.011
current - mA     -> dpt7.012
brightness       -> dpt7.013
timeperiod - ms  -> dpt7.005
timeperiod - min -> dpt7.006
timeperiod - h   -> dpt7.007

tempsensor       -> dpt9.001 (°C), dpt9.002 (K)
lightsensor      -> dpt9.004
speedsensor      -> dpt9.005
speedsensor-km/h -> dpt9.028
pressuresensor   -> dpt9.006
rainsensor       -> dpt9.025
time1sensor      -> dpt9.010 (sec)
time2sensor      -> dpt9.011 (msec)
humiditysensor   -> dpt9.007
airqualitysensor -> dpt9.008
voltage-mV       -> dpt9.020
current-mA2      -> dpt9.021
power            -> dpt9.024
powerdensity     -> dpt9.022

time -> dpt10
date -> dpt11
Attribute mapping:
model               -> fällt weg, siehe model mapping
EIBreadingX         -> fällt weg, ist default! (jedes GAD hat ein reading- enspricht der KNX-def OHNE nosuffix-option), reading: setGx/getGx
EIBreadingSender    -> fällt weg, ist default! (reading last-sender)
EIBanswerReading    -> putCmd # andere syntax
EIBreadingRegex     -> stateRegex # Achtung syntax leicht unterschiedlich!!!
EIBwritingRegex     -> stateRegex # Achtung syntax leicht unterschiedlich!!!
readingFnAttributes -> fällt weg!
Set-cmd:
Vieles ist gleich zum EIB-Modul, was z.B. nicht richtig ist: 'set lamp1 on g1' -> entweder: 'set lamp1 on' oder 'set lamp1 g1 on'
Das kann natürlich auch in userfunktionen,at,notify,doif,... vorkommen!
Nicht unterstützt sind: 'set device value <wert>' und 'set device raw <wert>' -> hier den <wert> passend zum dpt verwenden!
        z.B. 'set device 123' (für einen dpt5)...
Für ganz spezielle Fälle gibts den dptRAW - siehe cmd-ref
Get-cmd: ident zum EIB-Modul

Mehr Info gibt in der cmd-ref und im wiki: https://wiki.fhem.de/wiki/KNX (https://wiki.fhem.de/wiki/KNX) bzw. https://wiki.fhem.de/wiki/KNX_Device_Definition_-_Beispiele (https://wiki.fhem.de/wiki/KNX_Device_Definition_-_Beispiele)
Bei Bedarf kann ich auch hier unterstützen!
l.g. erwin

PS: Tip:
Eine Liste von z.b allen EIB-devices mit Attribute model=dpt1 kann so erstellt werden:
list TYPE=EIB:FILTER=a:model=dpt1