Hallo, ich habe ein Themostat (HM-TC-IT-WM-W-EU) und würde das Wochenprogramm gerne über FHEM bearbeiten.
Momentan mach ich das in RaspberryMatic.
Alles was ich zu weekprofile finde, ist das es auf den Kanal _Climate zugreifen soll.
HMCCU hat mir aber nur ein Gerät angelegt.
Internals:
DEF REQ0837379:2
FUUID 677d5e0a-f33f-df0d-b587-665f2b61fd1c55b9
IODev d_ccu
NAME Thermostat_Bad
NR 829
STATE 24.3
TYPE HMCCUCHN
ccuaddr REQ0837379:2
ccudevstate active
ccuif BidCos-RF
ccuname HM-TC-IT-WM-W-EU REQ0837379:2
ccurolectrl THERMALCONTROL_TRANSMIT
ccurolestate THERMALCONTROL_TRANSMIT
ccusubtype HM-TC-IT-WM-W-EU
ccutype HM-TC-IT-WM-W-EU
chntype ?
eventCount 326
firmware 1.4
readonly no
READINGS:
2025-01-24 19:29:12 ACTUAL_HUMIDITY 39.0
2025-01-24 19:29:12 ACTUAL_TEMPERATURE 24.3
2025-01-24 18:43:55 BATTERY_STATE 3.0
2025-01-24 18:43:55 BOOST_STATE 0
2025-01-24 18:43:55 COMMUNICATION_REPORTING false
2025-01-24 18:43:55 CONTROL_MODE AUTO-MODE
2025-01-24 15:42:45 IODev d_ccu
2025-01-24 18:43:55 LOWBAT_REPORTING false
2025-01-24 18:43:55 PARTY_START_DAY 1
2025-01-24 18:43:55 PARTY_START_MONTH 1
2025-01-24 18:43:55 PARTY_START_TIME 00:00
2025-01-24 18:43:55 PARTY_START_YEAR 0
2025-01-24 18:43:55 PARTY_STOP_DAY 1
2025-01-24 18:43:55 PARTY_STOP_MONTH 1
2025-01-24 18:43:55 PARTY_STOP_TIME 00:00
2025-01-24 18:43:55 PARTY_STOP_YEAR 0
2025-01-24 18:43:55 PARTY_TEMPERATURE 5.0
2025-01-24 19:29:12 SET_TEMPERATURE 24.0
2025-01-24 18:43:55 WINDOW_OPEN_REPORTING closed
2025-01-24 15:43:05 activity alive
2025-01-24 15:43:05 battery ok
2025-01-24 19:29:12 control 24.0
2025-01-24 19:29:12 desired-temp 24.0
2025-01-24 19:29:32 devstate ok
2025-01-24 19:29:32 hmstate 24.3
2025-01-24 19:29:12 humidity 39.0
2025-01-24 19:29:12 measured-temp 24.3
2025-01-24 15:43:05 rssidevice N/A
2025-01-24 15:43:05 rssipeer -79
2025-01-24 15:43:05 sign off
2025-01-24 19:29:12 state 24.3
hmccu:
channels 1
detect 0
devspec REQ0837379:2
nodefaults 1
role 2:THERMALCONTROL_TRANSMIT
setDefaults 0
cmdlist:
get week-program:"WEEK#PROGRAM#1","WEEK#PROGRAM#2","WEEK#PROGRAM#3"
set manu off:noArg boost:off,on desired-temp on:noArg week-program:"WEEK#PROGRAM#1","WEEK#PROGRAM#2","WEEK#PROGRAM#3" auto:noArg
control:
chn 2
dpt SET_TEMPERATURE
dp:
0.AES_KEY:
VALUES:
NVAL 0
SVAL off
VAL 0
0.CONFIG_PENDING:
VALUES:
NVAL 0
SVAL false
VAL 0
0.DEVICE_IN_BOOTLOADER:
VALUES:
NVAL 0
SVAL false
VAL 0
0.INHIBIT:
VALUES:
NVAL 0
SVAL false
VAL 0
0.LOWBAT:
VALUES:
NVAL 0
SVAL ok
VAL 0
0.RSSI_DEVICE:
VALUES:
NVAL N/A
SVAL N/A
VAL -65535
0.RSSI_PEER:
VALUES:
NVAL -79
SVAL -79
VAL -79
0.STICKY_UNREACH:
VALUES:
NVAL 0
SVAL false
VAL 0
0.UNREACH:
VALUES:
NVAL 0
SVAL alive
VAL 0
0.UPDATE_PENDING:
VALUES:
NVAL 0
SVAL false
VAL 0
2.ACTUAL_HUMIDITY:
VALUES:
NVAL 39.000000
SVAL 39.0
VAL 39.000000
2.ACTUAL_TEMPERATURE:
VALUES:
NVAL 24.300000
ONVAL 24.400000
OSVAL 24.4
OVAL 24.400000
SVAL 24.3
VAL 24.300000
2.BATTERY_STATE:
VALUES:
NVAL 3.000000
SVAL 3.0
VAL 3.000000
2.BOOST_STATE:
VALUES:
NVAL 0
SVAL 0
VAL 0
2.COMMUNICATION_REPORTING:
VALUES:
NVAL 0
SVAL false
VAL 0
2.CONTROL_MODE:
VALUES:
NVAL 0
SVAL AUTO-MODE
VAL 0
2.LOWBAT_REPORTING:
VALUES:
NVAL 0
SVAL false
VAL 0
2.PARTY_START_DAY:
VALUES:
NVAL 1
SVAL 1
VAL 1
2.PARTY_START_MONTH:
VALUES:
NVAL 1
SVAL 1
VAL 1
2.PARTY_START_TIME:
VALUES:
NVAL 00:00
SVAL 00:00
VAL 0
2.PARTY_START_YEAR:
VALUES:
NVAL 0
SVAL 0
VAL 0
2.PARTY_STOP_DAY:
VALUES:
NVAL 1
SVAL 1
VAL 1
2.PARTY_STOP_MONTH:
VALUES:
NVAL 1
SVAL 1
VAL 1
2.PARTY_STOP_TIME:
VALUES:
NVAL 00:00
SVAL 00:00
VAL 0
2.PARTY_STOP_YEAR:
VALUES:
NVAL 0
SVAL 0
VAL 0
2.PARTY_TEMPERATURE:
VALUES:
NVAL 5.000000
SVAL 5.0
VAL 5.000000
2.SET_TEMPERATURE:
VALUES:
NVAL 24.000000
ONVAL 20.000000
OSVAL 20.0
OVAL 20.000000
SVAL 24.0
VAL 24.000000
2.WINDOW_OPEN_REPORTING:
VALUES:
NVAL 0
SVAL closed
VAL 0
roleChannels:
THERMALCONTROL_TRANSMIT 2
roleCmds:
get:
week-program:
channel d
ps MASTER
role THERMALCONTROL_TRANSMIT
rpc 0
subcount 1
syntax D:WEEK_PROGRAM_POINTER:#program:HMCCU_DisplayWeekProgram
usage week-program {WEEK PROGRAM 3,WEEK PROGRAM 1,WEEK PROGRAM 2}
subcmd:
000:
args WEEK PROGRAM 3,WEEK PROGRAM 1,WEEK PROGRAM 2
dpt WEEK_PROGRAM_POINTER
fnc HMCCU_DisplayWeekProgram
max 2
min 0
parname program
partype 1
ps MASTER
scn 000
type ENUM
unit
look:
WEEK PROGRAM 1 0
WEEK PROGRAM 2 1
WEEK PROGRAM 3 2
set:
auto:
channel 2
ps VALUES
role THERMALCONTROL_TRANSMIT
rpc 0
subcount 1
syntax V:AUTO_MODE:1
usage auto
subcmd:
000:
args 1
dpt AUTO_MODE
fnc
max 1
min 0
parname AUTO_MODE
partype 3
ps VALUES
scn 000
type ACTION
unit
boost:
channel 2
ps VALUES
role THERMALCONTROL_TRANSMIT
rpc 0
subcount 1
syntax V:BOOST_MODE:#boost=on,off
usage boost {on,off}
subcmd:
000:
args on,off
dpt BOOST_MODE
fnc
max 1
min 0
parname boost
partype 1
ps VALUES
scn 000
type ACTION
unit
look:
off 0
on 1
desired-temp:
channel 2
ps VALUES
role THERMALCONTROL_TRANSMIT
rpc 0
subcount 1
syntax V:SET_TEMPERATURE:?temperature
usage desired-temp temperature
subcmd:
000:
args
dpt SET_TEMPERATURE
fnc
max 30.500000
min 4.500000
parname temperature
partype 2
ps VALUES
scn 000
type FLOAT
unit �C
manu:
channel 2
ps VALUES
role THERMALCONTROL_TRANSMIT
rpc 0
subcount 1
syntax V:MANU_MODE:?temperature=20
usage manu [temperature]
subcmd:
000:
args 20
dpt MANU_MODE
fnc
max 30.500000
min 4.500000
parname temperature
partype 2
ps VALUES
scn 000
type FLOAT
unit �C
off:
channel 2
ps VALUES
role THERMALCONTROL_TRANSMIT
rpc 0
subcount 1
syntax V:MANU_MODE:4.5
usage off
subcmd:
000:
args 4.5
dpt MANU_MODE
fnc
max 30.500000
min 4.500000
parname MANU_MODE
partype 3
ps VALUES
scn 000
type FLOAT
unit �C
on:
channel 2
ps VALUES
role THERMALCONTROL_TRANSMIT
rpc 0
subcount 1
syntax V:MANU_MODE:30.5
usage on
subcmd:
000:
args 30.5
dpt MANU_MODE
fnc
max 30.500000
min 4.500000
parname MANU_MODE
partype 3
ps VALUES
scn 000
type FLOAT
unit �C
week-program:
channel d
ps MASTER
role THERMALCONTROL_TRANSMIT
rpc 0
subcount 1
syntax D:WEEK_PROGRAM_POINTER:#program
usage week-program {WEEK PROGRAM 3,WEEK PROGRAM 1,WEEK PROGRAM 2}
subcmd:
000:
args WEEK PROGRAM 3,WEEK PROGRAM 1,WEEK PROGRAM 2
dpt WEEK_PROGRAM_POINTER
fnc
max 2
min 0
parname program
partype 1
ps MASTER
scn 000
type ENUM
unit
look:
WEEK PROGRAM 1 0
WEEK PROGRAM 2 1
WEEK PROGRAM 3 2
state:
chn 2
dpt ACTUAL_TEMPERATURE
Attributes:
alias Thermostat Bad
cmdIcon auto:sani_heating_automatic manu:sani_heating_manual on:general_an off:general_aus
group Heizung
room Bad,Testraum
sortby 1
substexcl desired-temp
webCmd desired-temp:auto:manu:on:off
widgetOverride desired-temp:slider,4.5,0.5,30.5,1
Muss ich die Kanäle manuell anlegen?
Die Steuerung der Heizung funktioniert bereits mit PWM auf einen SONOFF/Tasmota Schalter.
Was du gelesen hast ist Einbindung per CUL_HM in fhem.
D.h. fhem ist quasi die CCU...
Du hast Homematic indirekt eingebunden, also die echte CCU per HMCCU.
Da geht das bestimmt auch aber dazu musst du nachlesen wo es um HMCCU geht...
Ich nutze CUL_HM, daher kann ich dir nicht konkret(er) weiterhelfen...
Gruß, Joachim
Ich hatte mal testweise einen nanoCUL für das HM Protokoll, da ging das mit dem weekprofile.
Der hing aber oft und musste neu initialisiert werden.
Daher hielt ich den Weg über eine CCU, in dem Fall RaspberryMatic, als gute Idee.
Aber scheinbar doch kein so sinnvoller Weg.
Es sollte auch via ccu gehen; bitte mal den weekprofile-Thread durchsehen, da steht was dazu (es gab/gibt(?) da aber irgendwelche Probleme und Patch-Vorschläge, bei denen nicht klar ist, wie herum es jetzt sein soll, afair).
Laut Wiki Wiki weekprofile (https://www.fhemwiki.de/wiki/Weekprofile) sollte es mit weekprofile und HMCCU funktionieren.
Bei mir werden allerdings mit einem IP-Thermostat (HmIP_WTH_B_2) falsche Werte geliefert und das senden an das Device funktioniert auch nicht. Da ich das Wochenprofil aber nur sselten nutze, ist es für mich kein Problem es über die CCU3-Weboberfläche zu pflegen.
Eventuell kann der "weekprofile-Autor" helfen.
Viele Grüße
Jürgen
Zitat von: juemuc am 25 Januar 2025, 15:19:44Eventuell kann der "weekprofile-Autor" helfen.
Das ist schon Thema gewesen im entsprechend Thread. Das Problem scheint (! von sehr weit weg und aus den Augenwinkeln als Eindruck entstanden...) zu sein, dass es unterschiedliche Konfigurationsmöglichkeiten für die Thermostate zu geben scheint, also nicht nur BidCos<=>IP, sondern auch (mindestens) innerhalb der HMIP-Welt, so dass es für den einen so funktioniert, und für den anderen wieder anders.
Solange das so ist und es keinen "vereinbarten Standard" gibt, hat Risiko eigentlich keine Chance, das zu fixen...
Jemand muss hergehen und die ganze Kette mal funktionieren aufzeigen (Konfiguration des HMCCU.*-Geräts bzw. der Geräte (Wandthermostat und HK-Thermostat sind uU. stark unterschiedlich, ist ja auch in BidCoS so), und dazu passenden, funktionierenden Code in weekprofile.
Die Patch-Corschläge scheinen sich zumindest beim Überfliegen zu widersprechen, da kannste als Maintainer nur den Kopf in den Sand stecken...
Ich kann gerne unterstützen (sofern es nicht um Prgrammieren geht).
Ich habe folgende Geräte im Einsatz: HmIP_WTH_B_2, HmIP-eTRV-B-2 R4M und HmIP-eTRV-C-2.
Im Logfile finde ich folgende Infos:
2025.01.25 14:55:16.484 1: PERL WARNING: Argument "05:30" isn't numeric in modulus (%) at ./FHEM/98_weekprofile.pm line 82.
2025.01.25 14:55:16.484 1: PERL WARNING: Argument "22:30" isn't numeric in modulus (%) at ./FHEM/98_weekprofile.pm line 82.
2025.01.25 14:55:16.484 1: PERL WARNING: Argument "24:00" isn't numeric in modulus (%) at ./FHEM/98_weekprofile.pm line 82.
2025.01.25 14:55:16.484 1: PERL WARNING: Argument "22:00" isn't numeric in modulus (%) at ./FHEM/98_weekprofile.pm line 82.
2025.01.25 15:01:59.353 1: HMCCUCHN [HmIP_WTH_B_2_003460C9ACB99A] HMCCUCHN: HmIP_WTH_B_2_003460C9ACB99A Invalid parameter specified
2025.01.25 15:04:10.080 2: WP_Wohnzimmer(readDayProfile): no readings for MONDAY found
2025.01.25 15:04:10.083 2: WP_Wohnzimmer(readDayProfile): no readings for TUESDAY found
2025.01.25 15:04:10.084 2: WP_Wohnzimmer(readDayProfile): no readings for WEDNESDAY found
2025.01.25 15:04:10.084 2: WP_Wohnzimmer(readDayProfile): no readings for THURSDAY found
2025.01.25 15:04:10.085 2: WP_Wohnzimmer(readDayProfile): no readings for FRIDAY found
2025.01.25 15:04:10.085 2: WP_Wohnzimmer(readDayProfile): no readings for SATURDAY found
2025.01.25 15:04:10.085 2: WP_Wohnzimmer(readDayProfile): no readings for SUNDAY found
Bezüglich HMCCU-Kommunikation kann eventuell zap wichtige Infos liefern. Aktuell bin ich mir unsicher, ob hierzu eventuell ein eigener Thread eröffnet werden sollte.
Viele Grüße
Jürgen