Hallo,
ich habe mir aus versehen ein HMIP-BBL für einen Rollladen gekauft.
Sollte ja trotzdem funktionieren.
Problem ist, der Aktor wird in FHEM nicht automatisch mit den richtigen Funktionen (on, off, stop) belegt.
Was kann ich tun?
Internals:
DEF 001358A9955797
FUUID 5ceed50b-f33f-9a75-5195-757ec0863a01caeb
IODev d_ccu
NAME HmIP_BBL_001358A9955797
NR 564
STATE Initialized
TYPE HMCCUDEV
ccuaddr 001358A9955797
ccudevstate active
ccuif HmIP-RF
ccuname HmIP-BBL 001358A9955797
ccutype HmIP-BBL
channels 8
firmware 1.0.10
statevals devstate
READINGS:
2019-05-30 11:06:22 0.ACTUAL_TEMPERATURE 25.0
2019-05-30 11:06:22 0.ACTUAL_TEMPERATURE_STATUS 0
2019-05-30 11:57:01 0.CONFIG_PENDING 0
2019-05-30 11:06:23 0.DUTY_CYCLE 0
2019-05-30 11:06:22 0.ERROR_CODE 0
2019-05-30 11:06:22 0.ERROR_OVERHEAT 0
2019-05-29 22:19:42 0.INSTALL_TEST true
2019-05-29 22:19:42 0.OPERATING_VOLTAGE 0.000000
2019-05-29 22:19:42 0.OPERATING_VOLTAGE_STATUS 0
2019-05-30 11:57:01 0.RSSI_DEVICE -78
2019-05-29 22:19:42 0.RSSI_PEER 167
2019-05-30 11:57:01 0.UNREACH 0
2019-05-29 22:19:42 0.UPDATE_PENDING false
2019-05-30 11:06:22 3.ACTIVITY_STATE 3
2019-05-30 11:06:22 3.LEVEL 1.0
2019-05-30 11:06:22 3.LEVEL_2 1.0
2019-05-30 11:06:22 3.LEVEL_2_STATUS 0
2019-05-30 11:06:22 3.LEVEL_STATUS 0
2019-05-30 11:06:22 3.PROCESS 0
2019-05-29 22:19:42 3.SECTION
2019-05-30 11:06:22 3.SECTION_STATUS 1
2019-05-29 22:19:42 3.SELF_CALIBRATION_RESULT false
2019-05-30 11:06:22 4.ACTIVITY_STATE 3
2019-05-30 11:06:22 4.LEVEL 1.0
2019-05-30 11:06:22 4.LEVEL_2 1.0
2019-05-30 11:06:22 4.LEVEL_2_STATUS 0
2019-05-30 11:06:22 4.LEVEL_STATUS 0
2019-05-30 11:06:22 4.PROCESS 0
2019-05-30 11:06:22 4.SECTION 4
2019-05-30 11:06:22 4.SECTION_STATUS 0
2019-05-30 11:06:22 5.ACTIVITY_STATE 3
2019-05-30 11:06:22 5.LEVEL 0.0
2019-05-30 11:06:22 5.LEVEL_2 0.0
2019-05-30 11:06:22 5.LEVEL_2_STATUS 0
2019-05-30 11:06:22 5.LEVEL_STATUS 0
2019-05-30 11:06:22 5.PROCESS 0
2019-05-30 11:06:22 5.SECTION 0
2019-05-30 11:06:22 5.SECTION_STATUS 0
2019-05-30 11:06:22 6.ACTIVITY_STATE 3
2019-05-30 11:06:22 6.LEVEL 0.0
2019-05-30 11:06:22 6.LEVEL_2 0.0
2019-05-30 11:06:22 6.LEVEL_2_STATUS 0
2019-05-30 11:06:22 6.LEVEL_STATUS 0
2019-05-30 11:06:22 6.PROCESS 0
2019-05-30 11:06:22 6.SECTION 0
2019-05-30 11:06:22 6.SECTION_STATUS 0
2019-05-30 11:06:23 7.WEEK_PROGRAM_CHANNEL_LOCKS 0
2019-05-29 21:22:37 R-0.ARR_TIMEOUT 10
2019-05-29 21:22:37 R-0.CYCLIC_INFO_MSG 1
2019-05-29 21:22:37 R-0.CYCLIC_INFO_MSG_DIS 1
2019-05-29 21:22:37 R-0.CYCLIC_INFO_MSG_DIS_UNCHANGED 20
2019-05-29 21:22:37 R-0.CYCLIC_INFO_MSG_OVERDUE_THRESHOLD 2
2019-05-29 21:22:37 R-0.DAYLIGHT_SAVINGS_TIME 1
2019-05-29 21:22:37 R-0.DST_END_DAY_OF_WEEK 0
2019-05-29 21:22:37 R-0.DST_END_MONTH 10
2019-05-29 21:22:37 R-0.DST_END_TIME 180
2019-05-29 21:22:37 R-0.DST_END_WEEK_OF_MONTH 5
2019-05-29 21:22:37 R-0.DST_START_DAY_OF_WEEK 0
2019-05-29 21:22:37 R-0.DST_START_MONTH 3
2019-05-29 21:22:37 R-0.DST_START_TIME 120
2019-05-29 21:22:37 R-0.DST_START_WEEK_OF_MONTH 5
2019-05-29 21:22:37 R-0.DUTYCYCLE_LIMIT 180
2019-05-29 21:22:37 R-0.ENABLE_ROUTING 1
2019-05-29 21:22:37 R-0.LATITUDE 53.25
2019-05-29 21:22:37 R-0.LOCAL_RESET_DISABLED 0
2019-05-29 21:22:37 R-0.LONGITUDE 7.46
2019-05-29 21:22:37 R-0.UTC_DST_OFFSET 120
2019-05-29 21:22:37 R-0.UTC_OFFSET 60
2019-05-30 11:57:01 hmstate Initialized
2019-05-29 22:19:22 state Initialized
hmccu:
devspec 001358A9955797
dp:
0.ACTUAL_TEMPERATURE:
OSVAL 25.0
OVAL 25.0
SVAL 25.0
VAL 25.0
0.ACTUAL_TEMPERATURE_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
0.CONFIG_PENDING:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
0.DUTY_CYCLE:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
0.ERROR_CODE:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
0.ERROR_OVERHEAT:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
0.INSTALL_TEST:
OSVAL true
OVAL true
SVAL true
VAL true
0.OPERATING_VOLTAGE:
OSVAL 0.000000
OVAL 0.000000
SVAL 0.000000
VAL 0.000000
0.OPERATING_VOLTAGE_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
0.RSSI_DEVICE:
OSVAL -77
OVAL -77
SVAL -78
VAL -78
0.RSSI_PEER:
OSVAL 167
OVAL 167
SVAL 167
VAL 167
0.UNREACH:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
0.UPDATE_PENDING:
OSVAL false
OVAL false
SVAL false
VAL false
3.ACTIVITY_STATE:
OSVAL 3
OVAL 3
SVAL 3
VAL 3
3.LEVEL:
OSVAL 1.0
OVAL 1.0
SVAL 1.0
VAL 1.0
3.LEVEL_2:
OSVAL 1.0
OVAL 1.0
SVAL 1.0
VAL 1.0
3.LEVEL_2_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
3.LEVEL_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
3.PROCESS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
3.SECTION:
OSVAL
OVAL
SVAL
VAL
3.SECTION_STATUS:
OSVAL 1
OVAL 1
SVAL 1
VAL 1
3.SELF_CALIBRATION_RESULT:
OSVAL false
OVAL false
SVAL false
VAL false
4.ACTIVITY_STATE:
OSVAL 3
OVAL 3
SVAL 3
VAL 3
4.LEVEL:
OSVAL 1.0
OVAL 1.0
SVAL 1.0
VAL 1.0
4.LEVEL_2:
OSVAL 1.0
OVAL 1.0
SVAL 1.0
VAL 1.0
4.LEVEL_2_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
4.LEVEL_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
4.PROCESS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
4.SECTION:
OSVAL 4
OVAL 4
SVAL 4
VAL 4
4.SECTION_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
5.ACTIVITY_STATE:
OSVAL 3
OVAL 3
SVAL 3
VAL 3
5.LEVEL:
OSVAL 0.0
OVAL 0.0
SVAL 0.0
VAL 0.0
5.LEVEL_2:
OSVAL 0.0
OVAL 0.0
SVAL 0.0
VAL 0.0
5.LEVEL_2_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
5.LEVEL_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
5.PROCESS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
5.SECTION:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
5.SECTION_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
6.ACTIVITY_STATE:
OSVAL 3
OVAL 3
SVAL 3
VAL 3
6.LEVEL:
OSVAL 0.0
OVAL 0.0
SVAL 0.0
VAL 0.0
6.LEVEL_2:
OSVAL 0.0
OVAL 0.0
SVAL 0.0
VAL 0.0
6.LEVEL_2_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
6.LEVEL_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
6.PROCESS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
6.SECTION:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
6.SECTION_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
7.WEEK_PROGRAM_CHANNEL_LOCKS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
Attributes:
IODev d_ccu
alias Rolladen Küche
genericDeviceType blind
room Küche
In der Gerätedoku von EQ3 sind die Datenpunkte beschrieben. Wenn Du dann weißt, welcher Wert bei welchem Datenpunkt welche Funktion auslöst, kannst Du die von Dir benötigten Befehle mit "eventMap" (FHEM Standard Attribut) definieren, quasi als Alias für die entsprechenden "set datapoint" Befehle.
Für alle anderen Attribute wie ccureadingfilter und substitute finden sich reichlich Beispiele hier im Forum und im Wiki.
Danke ZAP.
Ich verstehe nicht welcher der Datapoints für z.B. down ist.
Könntest Du mir eine Bespiel geben?
üblicherweise einer der LEVEL Datenpunkte. Wertebereich ohne substitute Attribut 0-1.
Wahrscheinlich wird es LEVEL in mehreren Kanälen geben. Musst Du ausprobieren. Jedenfalls muss das richtige LEVEL Schreibrechte haben (s. Ausgabe von get deviceinfo).
OK, funktioniert jetzt bis auf ein Problem.
Wenn ich Up über FHEM absetze, fährt der Rollladen komplett hoch und dann wieder etwa 15% herunter.
Wenn ich den Schalter per Taste bediene oder über Raspimatic passiert das nicht.
Ich denke man müsste 4.LEVEL_2 auf 1.0 setzen bei dem Kommando up.
Wie kann ich das mit eventmap umsetzen?
Ich müsste also /datapoint 4.LEVEL 100 + datapoint 4.LEVEL_2 1.0:up haben.
Kann da jemand helfen?
Save config
anyViews
Alarm System
Alarm
Amazon
Bad
Büro
DG
Diele
Garage
Garten
Keller
Küche
Logs
Schlafzimmer
Treppenhaus
Unsorted
WC
Wohnzimmer
Zentrale
alexa
icoEverything Everything
Logfile
Commandref
Remote doc
Edit files
Select style
Event monitor
Internals:
DEF 001358A9955797
FUUID 5ceff75b-f33f-9a75-ec13-902544f1e232f092
IODev d_ccu
NAME HmIP_BBL_001358A9955797
NR 564
STATE 88.5
TYPE HMCCUDEV
ccuaddr 001358A9955797
ccudevstate active
ccuif HmIP-RF
ccuname HmIP-BBL 001358A9955797
ccutype HmIP-BBL
channels 8
firmware 1.6.2
statevals devstate
READINGS:
2019-05-31 20:51:24 0.ACTUAL_TEMPERATURE 26.000000
2019-05-31 20:51:24 0.ACTUAL_TEMPERATURE_STATUS normal
2019-05-31 20:48:58 0.CONFIG_PENDING false
2019-05-31 20:48:58 0.DUTY_CYCLE false
2019-05-31 20:51:24 0.ERROR_CODE 0
2019-05-31 20:51:24 0.ERROR_OVERHEAT no
2019-05-31 20:48:58 0.INSTALL_TEST true
2019-05-31 20:48:58 0.OPERATING_VOLTAGE 0.000000
2019-05-31 20:48:58 0.OPERATING_VOLTAGE_STATUS 0
2019-05-31 20:48:58 0.RSSI_DEVICE 180
2019-05-31 20:48:58 0.RSSI_PEER 167
2019-05-31 20:49:47 0.UNREACH 1
2019-05-31 20:48:58 0.UPDATE_PENDING false
2019-05-31 21:06:04 3.ACTIVITY_STATE stop
2019-05-31 21:06:04 3.LEVEL 88.5
2019-05-31 21:06:04 3.LEVEL_2 0.0
2019-05-31 21:06:04 3.LEVEL_2_STATUS 0
2019-05-31 21:06:04 3.LEVEL_STATUS 0
2019-05-31 20:48:58 3.PROCESS 0
2019-05-31 20:48:58 3.SECTION 0
2019-05-31 20:48:58 3.SECTION_STATUS 1
2019-05-31 20:51:24 3.SELF_CALIBRATION_RESULT ok
2019-05-31 21:06:04 4.ACTIVITY_STATE stop
2019-05-31 21:06:04 4.LEVEL 89
2019-05-31 21:06:04 4.LEVEL_2 0.0
2019-05-31 21:06:04 4.LEVEL_2_STATUS 0
2019-05-31 21:06:04 4.LEVEL_STATUS 0
2019-05-31 20:48:58 4.PROCESS 0
2019-05-31 20:48:58 4.SECTION 4
2019-05-31 20:48:58 4.SECTION_STATUS 0
2019-05-31 21:06:04 5.ACTIVITY_STATE stop
2019-05-31 21:06:04 5.LEVEL closed
2019-05-31 21:06:04 5.LEVEL_2 0.0
2019-05-31 21:06:04 5.LEVEL_2_STATUS 0
2019-05-31 21:06:04 5.LEVEL_STATUS 0
2019-05-31 20:48:58 5.PROCESS 0
2019-05-31 20:48:58 5.SECTION 0
2019-05-31 20:48:58 5.SECTION_STATUS 0
2019-05-31 21:06:04 6.ACTIVITY_STATE stop
2019-05-31 21:06:04 6.LEVEL closed
2019-05-31 21:06:04 6.LEVEL_2 0.0
2019-05-31 21:06:04 6.LEVEL_2_STATUS 0
2019-05-31 21:06:04 6.LEVEL_STATUS 0
2019-05-31 20:48:58 6.PROCESS 0
2019-05-31 20:48:58 6.SECTION 0
2019-05-31 20:48:58 6.SECTION_STATUS 0
2019-05-31 20:48:58 7.WEEK_PROGRAM_CHANNEL_LOCKS 0
2019-05-31 21:06:04 control 89
2019-05-31 21:06:04 hmstate 88.5
2019-05-31 20:28:18 pct 0
2019-05-31 00:35:17 pct_2 0.555000
2019-05-31 00:35:17 pct_2_STATUS 0
2019-05-31 17:24:54 pct_4.LEVEL 100
2019-05-31 17:24:54 pct_4.LEVEL_2 1.000000
2019-05-31 17:24:54 pct_4.LEVEL_2_STATUS 0
2019-05-31 17:24:54 pct_4.LEVEL_STATUS 0
2019-05-31 00:35:17 pct_STATUS 0
2019-05-31 21:06:04 state 88.5
hmccu:
devspec 001358A9955797
dp:
0.ACTUAL_TEMPERATURE:
OSVAL 26.000000
OVAL 26.000000
SVAL 26.000000
VAL 26.000000
0.ACTUAL_TEMPERATURE_STATUS:
OSVAL normal
OVAL 0
SVAL normal
VAL 0
0.CONFIG_PENDING:
OSVAL 0
OVAL 0
SVAL false
VAL 0
0.DUTY_CYCLE:
OSVAL 0
OVAL 0
SVAL false
VAL 0
0.ERROR_CODE:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
0.ERROR_OVERHEAT:
OSVAL no
OVAL false
SVAL no
VAL false
0.INSTALL_TEST:
OSVAL true
OVAL true
SVAL true
VAL true
0.OPERATING_VOLTAGE:
OSVAL 0.000000
OVAL 0.000000
SVAL 0.000000
VAL 0.000000
0.OPERATING_VOLTAGE_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
0.RSSI_DEVICE:
OSVAL -76
OVAL -73
SVAL 180
VAL -75
0.RSSI_PEER:
OSVAL -89
OVAL -81
SVAL 167
VAL -80
0.UNREACH:
OSVAL 1
OVAL 0
SVAL 1
VAL 0
0.UPDATE_PENDING:
OSVAL false
OVAL false
SVAL false
VAL false
3.ACTIVITY_STATE:
OSVAL down
OVAL 2
SVAL stop
VAL 3
3.LEVEL:
OSVAL 97.5
OVAL 0.975
SVAL 88.5
VAL 0.885
3.LEVEL_2:
OSVAL 0.815
OVAL 0.815
SVAL 0.0
VAL 0.0
3.LEVEL_2_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
3.LEVEL_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
3.PROCESS:
OSVAL 0
OVAL 1
SVAL 0
VAL 0
3.SECTION:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
3.SECTION_STATUS:
OSVAL 1
OVAL 1
SVAL 1
VAL 1
3.SELF_CALIBRATION_RESULT:
OSVAL ok
OVAL true
SVAL ok
VAL true
4.ACTIVITY_STATE:
OSVAL up
OVAL 1
SVAL stop
VAL 3
4.LEVEL:
OSVAL closed
OVAL 0.0
SVAL 89
VAL 0.89
4.LEVEL_2:
OSVAL 0.0
OVAL 0.0
SVAL 0.0
VAL 0.0
4.LEVEL_2_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
4.LEVEL_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
4.PROCESS:
OSVAL 0
OVAL 1
SVAL 0
VAL 0
4.SECTION:
OSVAL 4
OVAL 3
SVAL 4
VAL 4
4.SECTION_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
5.ACTIVITY_STATE:
OSVAL stop
OVAL 3
SVAL stop
VAL 3
5.LEVEL:
OSVAL closed
OVAL 0.0
SVAL closed
VAL 0.0
5.LEVEL_2:
OSVAL 0.0
OVAL 0.0
SVAL 0.0
VAL 0.0
5.LEVEL_2_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
5.LEVEL_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
5.PROCESS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
5.SECTION:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
5.SECTION_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
6.ACTIVITY_STATE:
OSVAL stop
OVAL 3
SVAL stop
VAL 3
6.LEVEL:
OSVAL closed
OVAL 0.0
SVAL closed
VAL 0.0
6.LEVEL_2:
OSVAL 0.0
OVAL 0.0
SVAL 0.0
VAL 0.0
6.LEVEL_2_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
6.LEVEL_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
6.PROCESS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
6.SECTION:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
6.SECTION_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
7.WEEK_PROGRAM_CHANNEL_LOCKS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
Attributes:
IODev d_ccu
alias Rollladen Küche
ccureadingfilter (ERROR_CODE|ERROR_OVERHEAT|ACTUAL_TEMPERATURE|LEVEL|ACTIVITY_STATE|SELF_CALIBRATION_RESULT)
ccureadingname 3.LEVEL:+control
ccuscaleval LEVEL:0:1:0:100
controldatapoint 4.LEVEL
eventMap /datapoint 4.STOP true:Stop/datapoint 4.LEVEL 0:down/datapoint 4.LEVEL 100:up/datapoint 3.SELF_CALIBRATION 0:stopCalibration/datapoint 3.SELF_CALIBRATION 1:startCalibration/
room Küche
statedatapoint 3.LEVEL
substexcl control|pct
substitute LEVEL!#0-0:closed,#100-100:open;ACTIVITY_STATE!0:unknown,1:up,2:down,3:stop;ERROR_OVERHEAT!(0|false):no,(1|true):yes;ACTUAL_TEMPERATURE_STATUS!0:normal,1:unknown,2:overflow,3:underflow;SELF_CALIBRATION_RESULT!(0|false):failed,(1|true):ok
webCmd up:down:Stop:control
widgetOverride control:slider,0,10,100
Wenn es da ein LEVEL_2 gibt, könnte es sein, dass darüber der Lamellenwinkel gesteuert wird. In dem Fall könnte dieser Datenpunkt einen anderen Weertebereich haben. Schau dir die HmIP Gerätedoku von EQ3 an, dort sollten die Datenpunkte beschrieben sein. Gibt es zum Download im Support Bereich bei EQ3. Hat mehr als 1000 Seiten, da alle Gerätetypen und Parameter beschrieben sind.
Das habe ich schon getan.
Es ist der gleiche Wertebereich wie für LEVEL.
Mein Problem ist. Wie kann ich mit einem Befehl "up" zwei Werte setzen?
Für LEVEL und LEVEL_2.
Mit set datapoint kann man mehrere Datenpunkte in einem Befehl setzen. Siehe commandref
Vielen Dank Zap.
Jetzt habe ich es hin bekommen. Es mussten auch noch Einstellungen per RaspberryMatc geändert werden.
Die Befehle up, down und Schatten tun jetzt was sie sollen.
Hallo zap und cornhoulio,
vielen Dank für den Thread, der mir sehr geholfen hat, mit meinem HmIP-BBL klar zu kommen.
Ich habe per eventmap die Befehle 'rauf', 'runter', 'mitte', und 'halb' definiert:
eventMap:
/datapoint 4.LEVEL 1:rauf/
/datapoint 4.LEVEL 0:runter/
/datapoint 4.LEVEL 0.5:mitte/
/datapoint 4.LEVEL_2 0 4.LEVEL 0.5:halb/
Alle Befehle funktionieren.
Mein Problem ist jetzt, dass bei mir der datapoint für 4.LEVEL_2 (Lamellenwinkel) nur ausgeführt wird, wenn anschließend auch der datapoint 4.LEVEL gesetzt wird (was natürlich ein workaround ist). Daher also die besondere Form der 4. Zeile der eventmap.
Allerdings möchte ich, dass die Raffstorehöhe bei einer Winkelverstellung nicht verändert wird.
Per Kommandozeile bekomme ich das hin:
{fhem "set Raffstore_GZ datapoint 4.LEVEL_2 0.5 4.LEVEL ".ReadingsVal("Raffstore_GZ","3.LEVEL",0)}
Aber ich weiß nicht, wie ich diesen Umweg über einen Perl-Aufruf von fhem in der eventmap eingeben könnte (bzw. ob das überhaupt geht).
Versucht habe ich (in eventmap):
/datapoint 4.LEVEL_2 0 4.LEVEL {ReadingsVal("Raffstore_GZ","3.LEVEL",0.5)}:halb/
aber das erzeugt dann den log-Eintrag:
2019.07.03 21:43:42 1: PERL WARNING: Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/datapoint 4.LEVEL_2 0 4.LEVEL { <-- HERE ReadingsVal("Raffstore_GZ","3.LEVEL",0.5)}/ at fhem.pl line 4237.
Vielleicht könnt ihr mir einen Tipp geben?
OK, hab's jetzt so hinbekommen:
{
usr=>{'^rauf' => 'datapoint 4.LEVEL 1',
'^runter' => 'datapoint 4.LEVEL 0',
'^mitte' => 'datapoint 4.LEVEL 0.5',
'^auf' => '".sprintf("datapoint 4.LEVEL_2 1.00 4.LEVEL %0.2f", ReadingsVal("Raffstore_GZ","3.LEVEL",1))."',
'^halb' => '".sprintf("datapoint 4.LEVEL_2 0.50 4.LEVEL %0.2f", ReadingsVal("Raffstore_GZ","3.LEVEL",1))."',
'^zu' => '".sprintf("datapoint 4.LEVEL_2 0.00 4.LEVEL %0.2f", ReadingsVal("Raffstore_GZ","3.LEVEL",1))."',
'(hoehe|h)\s(\d{1,3})' => '".sprintf("datapoint 4.LEVEL %0.2f", $2/100)."',
'(winkel|w)\s(\d{1,3})' => '".sprintf("datapoint 4.LEVEL_2 %0.2f 4.LEVEL %0.2f", $2/100, ReadingsVal("Raffstore_GZ","3.LEVEL",1))."'},
fw =>{'^rauf' => 'rauf',
'^runter' => 'runter',
'^mitte' => 'mitte',
'^auf' => 'auf',
'^halb' => 'halb',
'^zu' => 'zu',
'(hoehe|h)\s(\d{1,3})' => 'h',
'(winkel|w)\s(\d{1,3})' => 'w'}
}
Falls es einfacher geht: Nur zu mit den Tipps...
-Franz
Hallo @cornhoulio ,
Kannst du bitte deine Lösung hier posten? Ich beiße mit auch schon ein paar Wochen die Zähne aus mit dem aktor.
@alkazaa: mit deiner Lösung komme ich schon ein Stück weiter, allerdings wüsste ich gerne was Höhe und Winkel in eventmap macht. Hast du da readings angelegt?
Ich habe in deinem code den readingsval Namen durch $NAME ersetzt, so lässt es sich einfach in andere devices übertragen.
Gruß wscheff
Beim Homematic Jalousie-Aktor (nicht IP) läuft es über den Datenpunkt LEVEL_COMBINED:
set myBlind datapoint LEVEL_COMBINED "0x00,0x50"
Dabei sind die zwei Werte durch das Komma getrennt und stehen für Behanghöhe und Lamellenstellung. Die Prozentwerte werden dabei als HEX abgebildet:
Behanghöhe oder Lamellenstellung in % vs. Hex:
0% --- 0x00
10% --- 0x14
20% --- 0x28
30% --- 0x3C
40% --- 0x50
50% --- 0x64
60% --- 0x78
70% --- 0x8C
80% --- 0xA0
90% --- 0xB4
100% --- 0xC8
Läuft dies beim HMIP-BBL auch? Das wäre interessant zu wissen für die Weiterentwicklung von ASC: https://forum.fhem.de/index.php/topic,109424.0.html (https://forum.fhem.de/index.php/topic,109424.0.html)
CoolTux sammelt gerade Infos über verschiedene Aktoren und deren Funktionsweise.
Ich muss das jetzt echt mal in HMCCU einbauen. Wird im Rahmen Umbau 4.4 kommen.