FHEM - Hausautomations-Systeme > MQTT

ebus Weishaupt MQTT im Zusammenspiel

<< < (17/19) > >>

rob:

--- Zitat von: Beta-User am 22 August 2021, 09:23:37 ---...31 dezimal ist nicht 0x0031, sondern eher 0x001E ;) ...

--- Ende Zitat ---
Ooops. Das stimmt natürlich auffallend  ::) Sehr gut beobachtet.
Habe die Werte soeben angepasst und nochmals getestet. Diese müssten hoffentlich so stimmen:

--- Code: ---0x0001=1;
0x0002=2;
0x0003=3;
0x0004=4;
0x0005=5;
0x0006=6;
0x0007=7;
0x0008=8;
0x0009=9;
0x000A=10;
0x000B=11;
0x000C=12;
0x000D=13;
0x000E=14;
0x000F=15;
0x0010=16;
0x0011=17;
0x0012=18;
0x0013=19;
0x0014=20;
0x0015=21;
0x0016=22;
0x0017=23;
0x0018=24;
0x0019=25;
0x001A=26;
0x001B=27;
0x001C=28;
0x001D=29;
0x001E=30;
0x001F=31

--- Ende Code ---
Eben getestet. Klappt leider auch nicht. Vielleicht gibt es einen Trick, welchen ich noch nicht gefunden habe. Im CSV sind zwei Write-Kommandos auskommentiert. Den Grund kenne ich nicht, aber vielleicht hatte Joker auch so seine Probleme damit.

--- Zitat von: Beta-User am 22 August 2021, 09:23:37 ---...wird aber vermutlich dauern...

--- Ende Zitat ---
Bin sehr froh um Deine Hilfe 8) und ich hab es nicht eilig.

Beta-User:
Habe vorhin ein update in contrib eingecheckt (=> muss separat geholt werden).

Der Code sollte dann auch setList und getList erweitern, wenn es StartOf/EndOf-Topic-Anteile gibt, ob das immer sinnvoll ist oder paßt, sei mal dahingestellt. "Einheitsreadings" für day/month habe ich jetzt (noch) nicht erzeugt, sowas würde v.a. auch erfordern, dass was (halbwegs) einheitliches (Januar, January, 1, ... ?) als Wert gesendet wird.

rob:
Habe ein generelles update gemacht. Die Files aus dem SVN geholt und anschl. den Analyzer auf das hc1-Device angewandt. Einen Unterschied hat es scheinbar noch nicht ergeben. Habe ich etwas vergessen?

--- Code: ---define MQTT2_ebusd_hc1 MQTT2_DEVICE ebusd_hc1
attr MQTT2_ebusd_hc1 userattr weekprofile
attr MQTT2_ebusd_hc1 model ebus_analyzeReadingList
attr MQTT2_ebusd_hc1 readingList ebusd/hc1/Set:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, '', $JSONMAP ) }\
ebusd/hc1/Adaption:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, '', $JSONMAP ) }\
ebusd/hc1/DHWMin:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, '', $JSONMAP ) }\
ebusd/hc1/DHWMode:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, 'DHWMode_', $JSONMAP ) }\
ebusd/hc1/DHWSetpoint:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, 'DHWSetpoint_', $JSONMAP ) }\
ebusd/hc1/DHWSetValue:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, 'DHWSetValue_', $JSONMAP ) }\
ebusd/hc1/DHWTemperature:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, 'DHWTemperature_', $JSONMAP ) }\
ebusd/hc1/EndOfHoliday.Day:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, 'EndOfHoliday_Day_', $JSONMAP ) }\
ebusd/hc1/EndOfHoliday.Month:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, 'EndOfHoliday_Month_', $JSONMAP ) }\
ebusd/hc1/EndOfHoliday:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, 'HolidayEnd_', $JSONMAP ) }\
ebusd/hc1/ExternalTemperature:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, '', $JSONMAP ) }\
ebusd/hc1/FrostProtection:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, '', $JSONMAP ) }\
ebusd/hc1/Gradient:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, '', $JSONMAP ) }\
ebusd/hc1/HeatDemand:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, '', $JSONMAP ) }\
ebusd/hc1/HeatingDemand:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, 'HeatingDemand_', $JSONMAP ) }\
ebusd/hc1/HolidayTemp:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, 'HolidayTemp_', $JSONMAP ) }\
ebusd/hc1/HP1.*:.* { FHEM::aTm2u_ebus::upd_day_profile( $NAME, $TOPIC, $EVENT, 'So|Mo|Di|Mi|Do|Fr|Sa' ) }\
ebusd/hc1/LegionnairesFunction:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, 'LegionnairesFunction_', $JSONMAP ) }\
ebusd/hc1/MaxDHWTemp:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, '', $JSONMAP ) }\
ebusd/hc1/MaxSupplyTemperature:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, '', $JSONMAP ) }\
ebusd/hc1/MinSupplyTemperature:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, '', $JSONMAP ) }\
ebusd/hc1/MixedExternalTemperature:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, '', $JSONMAP ) }\
ebusd/hc1/NormalSetTemp:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, '', $JSONMAP ) }\
ebusd/hc1/ProgramChooseSwitch:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, '', $JSONMAP ) }\
ebusd/hc1/ReducedSetTemp:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, '', $JSONMAP ) }\
ebusd/hc1/Reduces:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, '', $JSONMAP ) }\
ebusd/hc1/RoomInfluence:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, '', $JSONMAP ) }\
ebusd/hc1/RoomSensorCorrection:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, '', $JSONMAP ) }\
ebusd/hc1/RoomSetValue:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, '', $JSONMAP ) }\
ebusd/hc1/RoomTemperature:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, '', $JSONMAP ) }\
ebusd/hc1/RoomThermostat:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, '', $JSONMAP ) }\
ebusd/hc1/StartOfHoliday.Day:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, 'StartOfHoliday_Day_', $JSONMAP ) }\
ebusd/hc1/StartOfHoliday.Month:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, 'StartOfHoliday_Month_', $JSONMAP ) }\
ebusd/hc1/StartOfHoliday:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, 'HolidayStart_', $JSONMAP ) }\
ebusd/hc1/Status:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, '', $JSONMAP ) }\
ebusd/hc1/SummerWinterChangeOverTemperature:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, '', $JSONMAP ) }\
ebusd/hc1/SupplySetValueHC:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, '', $JSONMAP ) }\
ebusd/hc1/SupplyTemperatureHC:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, '', $JSONMAP ) }\
ebusd/hc1/SupplyTemperatureWTC:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, '', $JSONMAP ) }\
ebusd/hc1/SwitchOffSetting:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, '', $JSONMAP ) }\
ebusd/hc1/SwitchOnSetting:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, '', $JSONMAP ) }\
ebusd/hc1/TypeOfConstruction:.* { FHEM::aTm2u_ebus::j2nv( $EVENT, 'TypeOfConstruction_', $JSONMAP ) }
attr MQTT2_ebusd_hc1 room MQTT2_DEVICE
attr MQTT2_ebusd_hc1 setList Sunday ebusd/hc1/HP1.So/set\
Monday ebusd/hc1/HP1.Mo/set\
Tuesday ebusd/hc1/HP1.Di/set\
Wednesday ebusd/hc1/HP1.Mi/set\
Thursday ebusd/hc1/HP1.Do/set\
Friday ebusd/hc1/HP1.Fr/set\
Saturday ebusd/hc1/HP1.Sa/set\
HolidayEnd_Day ebusd/hc1/EndOfHoliday.Day/set\
HolidayEnd_Month ebusd/hc1/EndOfHoliday.Month/set\
HolidayStart_Day ebusd/hc1/StartOfHoliday.Day/set\
HolidayStart_Month ebusd/hc1/StartOfHoliday.Month/set
attr MQTT2_ebusd_hc1 weekprofile MQTT2_ebusd_hc1

setstate MQTT2_ebusd_hc1 HolidayEnd_Day
setstate MQTT2_ebusd_hc1 2021-08-30 05:57:45 Action startconsumer
setstate MQTT2_ebusd_hc1 2021-08-16 11:50:38 Adaption 32768
setstate MQTT2_ebusd_hc1 2021-08-16 11:52:03 DHWMode__16_DhwMode 32768
setstate MQTT2_ebusd_hc1 2021-08-30 05:57:45 DHWSetTemp 48.0
setstate MQTT2_ebusd_hc1 2021-08-16 11:53:59 DHWSetValue__16_Temp10 48.0
setstate MQTT2_ebusd_hc1 2021-08-16 11:53:49 DHWSetpoint__16_Temp10 48.0
setstate MQTT2_ebusd_hc1 2021-08-16 11:54:03 DHWTemperature__16_Temp10 0.0
setstate MQTT2_ebusd_hc1 2021-08-16 14:22:41 Day 25
setstate MQTT2_ebusd_hc1 2021-08-22 11:15:31 EndOfHoliday_Day__16_HolidayDay 5
setstate MQTT2_ebusd_hc1 2021-08-22 11:15:26 EndOfHoliday_Month__16_HolidayMonth November
setstate MQTT2_ebusd_hc1 2021-08-16 11:55:23 ExternalTemperature 20.0
setstate MQTT2_ebusd_hc1 2021-08-16 12:41:40 Friday 07:30;;22:00;;00:00;;00:00;;00:00;;00:00;;Mo-So
setstate MQTT2_ebusd_hc1 2021-08-16 11:55:29 FrostProtection 4.0
setstate MQTT2_ebusd_hc1 2021-08-16 11:55:38 Gradient 13.0
setstate MQTT2_ebusd_hc1 2021-08-16 11:55:44 HeatDemand 5.0
setstate MQTT2_ebusd_hc1 2021-08-16 11:55:53 HeatingDemand__8_Temp0 0
setstate MQTT2_ebusd_hc1 2021-08-16 14:57:21 HolidayEnd_Day 5
setstate MQTT2_ebusd_hc1 2021-08-16 14:57:21 HolidayEnd_Month November
setstate MQTT2_ebusd_hc1 2021-08-16 15:27:27 HolidayStart_Day 10
setstate MQTT2_ebusd_hc1 2021-08-16 15:27:27 HolidayStart_Month August
setstate MQTT2_ebusd_hc1 2021-08-16 11:55:58 HolidayTemp__16_TempReduced 32768
setstate MQTT2_ebusd_hc1 2021-08-27 13:51:28 IODev myMQTT_Server
setstate MQTT2_ebusd_hc1 2021-08-16 11:56:38 LegionnairesFunction__16_Legionnairesday 5
setstate MQTT2_ebusd_hc1 2021-08-16 11:57:28 MaxSupplyTemperature 75.0
setstate MQTT2_ebusd_hc1 2021-08-16 11:57:34 MinSupplyTemperature 25.0
setstate MQTT2_ebusd_hc1 2021-08-16 11:57:39 MixedExternalTemperature 20.7
setstate MQTT2_ebusd_hc1 2021-08-16 12:15:17 Monday 07:30;;22:00;;00:00;;00:00;;00:00;;00:00;;Mo-So
setstate MQTT2_ebusd_hc1 2021-08-16 14:22:41 Month August
setstate MQTT2_ebusd_hc1 2021-08-16 11:57:46 NormalSetTemp 22.0
setstate MQTT2_ebusd_hc1 2021-08-16 11:57:53 ProgramChooseSwitch Sommer
setstate MQTT2_ebusd_hc1 2021-08-16 11:57:59 ReducedSetTemp 19.0
setstate MQTT2_ebusd_hc1 2021-08-16 11:58:09 Reduces Absenktemperatur
setstate MQTT2_ebusd_hc1 2021-08-16 11:59:18 ReleaseDHW 0
setstate MQTT2_ebusd_hc1 2021-08-16 11:59:18 ReleaseHC 0
setstate MQTT2_ebusd_hc1 2021-08-16 11:58:13 RoomInfluence 32768
setstate MQTT2_ebusd_hc1 2021-08-16 11:58:19 RoomSensorCorrection 0.0
setstate MQTT2_ebusd_hc1 2021-08-16 11:58:29 RoomSetValue 4.0
setstate MQTT2_ebusd_hc1 2021-08-16 11:58:32 RoomTemperature -100.0
setstate MQTT2_ebusd_hc1 2021-08-16 12:15:34 Saturday 07:30;;22:00;;00:00;;00:00;;00:00;;00:00;;Mo-So
setstate MQTT2_ebusd_hc1 2021-08-30 05:57:45 SetTemp 5.00
setstate MQTT2_ebusd_hc1 2021-08-22 11:15:22 StartOfHoliday_Day__16_HolidayDay 2
setstate MQTT2_ebusd_hc1 2021-08-22 11:15:12 StartOfHoliday_Month__16_HolidayMonth November
setstate MQTT2_ebusd_hc1 2021-08-30 05:57:45 Status hotwater
setstate MQTT2_ebusd_hc1 2021-08-16 11:59:24 SuWiChangeOverTemperature 20.0
setstate MQTT2_ebusd_hc1 2021-08-16 12:15:54 Sunday 07:30;;22:00;;00:00;;00:00;;00:00;;00:00;;Mo-So
setstate MQTT2_ebusd_hc1 2021-08-16 11:59:30 SupplySetValueHC 5.0
setstate MQTT2_ebusd_hc1 2021-08-16 11:59:48 SwitchOffSetting 32768
setstate MQTT2_ebusd_hc1 2021-08-16 11:59:54 SwitchOnSetting 8
setstate MQTT2_ebusd_hc1 2021-08-16 12:14:31 Thursday 07:30;;22:00;;00:00;;00:00;;00:00;;00:00;;Mo-So
setstate MQTT2_ebusd_hc1 2021-08-16 11:59:18 TimeSinceLastCommand 0
setstate MQTT2_ebusd_hc1 2021-08-16 12:13:58 Tuesday 07:30;;22:00;;00:00;;00:00;;00:00;;00:00;;Mo-So
setstate MQTT2_ebusd_hc1 2021-08-16 12:00:04 TypeOfConstruction__16_Constructiontype Light
setstate MQTT2_ebusd_hc1 2021-08-16 12:14:59 Wednesday 07:30;;22:00;;00:00;;00:00;;00:00;;00:00;;Mo-So
setstate MQTT2_ebusd_hc1 2021-08-06 12:25:27 associatedWith MQTT2_ebusd_21.2_1,MQTT2_ebusd_hc1_HP2,MQTT2_ebusd_hc1_HP3,MQTT2_ebusd_hc1_WP,MQTT2_ebusd_hc1_ZP,MQTT2_ebusd_hc1_HP2,MQTT2_ebusd_hc1_HP3,MQTT2_ebusd_hc1_WP,MQTT2_ebusd_hc1_ZP
setstate MQTT2_ebusd_hc1 2021-08-30 07:49:43 attrTemplateVersion 2021-08-30 07:49:43 ##############################################
setstate MQTT2_ebusd_hc1 2021-08-22 11:15:31 state HolidayEnd_Day

--- Ende Code ---

Beta-User:
Hmm, also...:
Etwas anders als das letzte Ergebnis sieht es schon aus, es gibt jetzt weitere Einträge in setList. Die Frage ist nur, warum das mit getList nicht geklappt hat - das war bei meinen Tests auch ok, und eben habe ich das mit der gestern als 24890 verteilten (und nur in der commandref geringfügig angepassten) auch nochmal gecheckt (mit deinen Alt-Daten). Dazu habe ich im Moment keine Idee.

_getVersion (für version) war kaputt, das werde ich bei Gelegenheit auch im svn fixen, hier mal vorab das Schnippsel dazu:

--- Code: ---sub _getVersion {
    my $modpath = (exists($attr{global}{modpath}) ? $attr{global}{modpath} : "");
    my $fn = "$modpath/FHEM/99_attrTmqtt2_ebus_Utils.pm"; # configDB
    my ($ret, @content) = FileRead($fn);
    if ($ret) {
        Log3(undef, 1, "Error reading file $fn!") ;
        return 'unknown';
    }
    for (@content) {
        chomp;
        if ( m{#.*(\$Id\:[^\$\n\r].+)\$} ) {
            return $1;
        }
    }
    return 'unknown';
}

--- Ende Code ---

rob:
Hallo Beta-User.

Zu der Fragestellung:

--- Zitat von: Beta-User am 22 Juli 2021, 10:59:45 ---Bleibt die Frage, warum überhaupt Klartext-Readings erstellt wurden (oder anders gesagt: warum jetzt zuerst die non-JSON Payload kam).
Eventuell ist da auch bei "getAll" irgendwas gespeichertes aberufen worden, und der letzte Wert scheint jeweils "leer" gewesen zu sein(?). Grundsätzlich bin ich der Meinung, man sollte das an john30 adressieren, das kommt mir unbeabsichtigt vor, dass da "leere" Payload und JSON im Wechsel kommen.

--- Ende Zitat ---
hat john30 dies aufgeklärt: Ist so gedacht und OK
(https://forum.fhem.de/index.php/topic,118143.msg1179978.html#msg1179978).

Viele Grüße
rob

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln