FHEM Forum

FHEM - Hausautomations-Systeme => Homematic => Thema gestartet von: Horti am 07 April 2020, 22:48:02

Titel: HMCCU und hmscript
Beitrag von: Horti am 07 April 2020, 22:48:02
Guten Abend,

ich versuche immer noch mit einem für mich vertretbaren Aufwand mein HB-Dis-EP-42BW mit FHEM ans Laufen zu kriegen. Da mein letzter Versuch (https://forum.fhem.de/index.php/topic,109254.msg1039235.html#msg1039235), das Ding direkt mit FHEM in Betrieb zu nehmen scheiterte, versuche ich es nun mit HMCCU. Dank des genialen Scripts (https://github.com/TomMajor/SmartHome/tree/master/HB-Dis-EP-42BW/Script_Helper) von TomMajor muss das Ding ja theoretisch noch nicht mal in FHEM über HMCCU eingerichtet sein, denn zur Ausgabe auf dem Display muss "nur" ein Einzeiler ausgeführt werden, z.B.:
system.Exec("tclsh /usr/local/addons/epaper42.tcl " # "JPDISEP000 /5 'Test ABC ÄÖÜäöüß' 1");
wobei nur "/5 'Test ABC ÄÖÜäöüß' 1" dynamisch ist, der Rest ist statisch, zumindest bei nur einem HB-Dis-EP-42BW im System.

Meine naive Vorstellung wäre nun, dass ich diese Zeichenkette in FHEM berechne und mittels HMCCU an die CCU zur Ausführung übergebe. Doch lt. Wiki muss das Script als Datei vorliegen, damit das an die CCU übergeben werden kann:
set d_ccu hmscript /opt/fhem/sysvars.scr

Versuche ich die Anweisung doch als Zeichenkette zu übergeben:
set d_ccu hmscript "system.Exec("tclsh /usr/local/addons/epaper42.tcl " # "JPDISEP000 /5 'Test ABC ÄÖÜäöüß' 1");"
sagt HMCCU:
HMCCU: d_ccu Usage: set d_ccu hmscript {file|!function|'['code']'} ['dump'] [parname=value [...]]

Auch Hochkommata und Doppelhochkommata anstelle der Anfürungszeichen funktionieren nicht, obwohl ich so die Ausgabe von HMCCU interpretieren würde. Kann es so funktionieren, wie ich es mir vorstelle? Wie müsste dann die Syntax lauten?

Danke schon mal!
Titel: Antw:HMCCU und hmscript
Beitrag von: zap am 08 April 2020, 10:16:40
Wenn, dann so:

set d_ccu hmscript [system.Exec("tclsh /usr/local/addons/epaper42.tcl JPDISEP000 /5 'Test ABC ÄÖÜäöüß' 1");]

HMScript Code in der Kommandozeile muss in [] angegeben werden. Vermutlich wird es wegen der " trotzdem nicht funktionieren, da FHEM diese interpretiert, bevor sie ans Modul übergeben werden.

Bzw. Versuche es erst mal ohne die Umlaute. Das bit garantiert Probleme.
Titel: Antw:HMCCU und hmscript
Beitrag von: Horti am 08 April 2020, 12:18:20
Auch ohne Umlaute kommt leider
Unknown command ], try help.

Kann man die Anführungszeichen für FHEM irgendwie maskieren? Oder muss HMCCU dafür angepasst werden?
Titel: Antw:HMCCU und hmscript
Beitrag von: zap am 08 April 2020, 13:37:47
Kannst Du nicht ein Script-File mit Parametern verwenden?

Wenn ich mich rechte erinnere, werden Parameter mit $ eingeleitet, also:

system.Exec("tclsh /usr/local/addons/epaper42.tcl $Device /5 '$Text' 1");

und dann

set d_hccu hmscript <File> Device=JPDISEP000 Text="Test ABC"
Titel: Antw:HMCCU und hmscript
Beitrag von: Horti am 08 April 2020, 13:54:50
Hm, sieht nach "Von hinten durch die Brust ins Auge" aus, aber wenn's funktioniert  ;D

Ich werd's später versuchen, aber so wie ich das sehe, kann ich auch den kompletten Befehl als Parameter übergeben und in der Datei nur
$PARAM
stehen haben?
Titel: Antw:HMCCU und hmscript
Beitrag von: zap am 08 April 2020, 20:45:54
Dann bist Du aber wieder in der Hochkommahölle
Titel: Antw:HMCCU und hmscript
Beitrag von: Horti am 08 April 2020, 21:53:07
Zitat von: zap am 08 April 2020, 20:45:54
Dann bist Du aber wieder in der Hochkommahölle

Das habe ich auch schon bemerkt :) Ich habe das jetzt so gelöst, in der scr-Datei steht Folgendes:
system.Exec("tclsh /usr/local/addons/epaper42.tcl $Device $Text");
und in FHEM rufe ich auf
set d_hccu hmscript <File> Device=JPDISEP000 Text="/5 'Test ABC' 1"

Damit sollte ich alles abbilden können, was ich mir vorgestellt habe und was das Display und TomMajors Script so hergibt. Zugegeben, ich habe noch nicht alle möglichen Parameter- und Sonderzeichenkombinationen ausprobiert, aber das ergibt sich dann, Learning by Doing :) Das Nonplusultra wäre, wenn ich mit einem Aufruf auch mehrere Zeilen setzen könnte, wie TomMajors Script das ja auch unterstützt:
usage: epaper42 serial /line text [icon number] [/nextline text [icon number]] ...

D.h. im Prinzip würde ich gerne Folgendes in FHEM aufrufen (zum Beispiel):
set d_hccu hmscript <File> Device=JPDISEP000 Text%1="/5 'Test ABC' 1" Text%2="/6 'Test XYZ' 2"

Wie müsste die dazugehörige scr-Datei aussehen? Ich weiss, die Frage ist nicht mehr HMCCU-spezifisch, aber vielleicht ist sie doch hier am Besten aufgehoben, wg. dem Kontext.

@zap: Danke für das HMCCU-Modul und Deine Unterstützung!
Titel: Antw:HMCCU und hmscript
Beitrag von: zap am 09 April 2020, 07:15:28
Muss ich mal drüber nachdenken ...

Andere Frage: inwiefern unterscheidet sich die Ansteuerung des Displays von HM Dis-EP-WM55?

Falls es sich nicht unterscheidet, könnte ich es kurzfrisitg direkt in HMCCU unterstützen?
Titel: Antw:HMCCU und hmscript
Beitrag von: Horti am 09 April 2020, 22:17:18
Zitat von: zap am 09 April 2020, 07:15:28
Andere Frage: inwiefern unterscheidet sich die Ansteuerung des Displays von HM Dis-EP-WM55?

Falls es sich nicht unterscheidet, könnte ich es kurzfrisitg direkt in HMCCU unterstützen?

Nach Jerome's Aussage so gut wie gar nicht: https://forum.fhem.de/index.php/topic,73954.msg962094.html#msg962094 (https://forum.fhem.de/index.php/topic,73954.msg962094.html#msg962094).

Aber würde sich dann irgendwas bzgl. der Ansteuerung ändern? Oder Würde man dann TomMajors-Script quasi nach FHEM reinziehen und HMCCU nur noch fertige HM-Messages übergeben und hätte den Salat mit den Anführungszeichen nicht?
Titel: Antw:HMCCU und hmscript
Beitrag von: zap am 10 April 2020, 08:55:18
Du brauchst das Script dann gar nicht mehr. Die Parameter (Texte, Farben, Icons) werden einfach per Set Befehl übergeben. Das Script wird benötigt, um die Angaben in ein Display-Konformes Format zu wandeln. Das macht dann HMCCU, wie jetzt schon bei dem anderen Display.

Ich trage mal den Typ in HMCCU nach und du kannst dann testen, ob es einfach so ohne weitere Anpassung funktioniert.
Titel: Antw:HMCCU und hmscript
Beitrag von: tndx am 01 Juni 2020, 20:26:57
Guten Abend,

ich habe mein HB-DIS-EP-42BW seit einiger Zeit mit FHEM im Betrieb, im Prinzip genau so, wie hier (https://forum.fhem.de/index.php/topic,109968.msg1040009.html#msg1040009) beschrieben. Da die direkte FHEM-Unterstützung trotz einiger Nachfragen wohl nicht geplant ist, könnte ich zufrieden sein, wenn nicht ein Problem wäre: ich habe sporadische Verbindungsstörungen zwischen der CCU und dem Display. Das bekomme ich aber nur mit, wenn ich mich mal wieder auf die Weboberfläche der CCU verirre oder wenn ich mal wieder einen falschen Status auf dem Display sehe. Leider bekommt FHEM nicht mit, wenn das tcl-Script auf der CCU auf eine Störung läuft. Da ich einige Status nur sehr selten aktualisiere, bleiben sie u.U. sehr lange falsch.

Zitat von: zap am 10 April 2020, 08:55:18
Ich trage mal den Typ in HMCCU nach und du kannst dann testen, ob es einfach so ohne weitere Anpassung funktioniert.

Ist das schon geschehen? Würde mir diese Integration bei meinem Problem helfen? Oder gibt es irgendeinen anderen Mechanismus, um die Störung zu detektieren und das Script ggf. erneut auszuführen?
Titel: Antw:HMCCU und hmscript
Beitrag von: zap am 01 Juni 2020, 21:09:05
Ist noch nicht integriert. Du kannst das Gerät aber trotzdem mit HMCCUDEV oder HMCCUCHN in FHEM anlegen. In Kanal 0 hast Du dann die Standard Datenpunkte wie UNREACH usw und bekommst es mit, wenn das Gerät nicht erreichbar ist.
Titel: Antw:HMCCU und hmscript
Beitrag von: tndx am 29 Juni 2020, 23:20:30
Guten Abend,

ich habe mein Display heute endlich per HMCCU in FHEM angebunden. Hauptsächlich um die Verbindungsprobleme mitzubekommen, aber auch um die Tasterkanäle nutzen zu können.

Ich bin ein ziemlicher Anfänger in Sachen HMCCU und hätte eigentlich erwartet, dass spätestens nach
ccureadingfilter             .*
alle Datenpunkte angezeigt werden, doch das scheint nicht der Fall zu sein?! Jedenfalls sind erst die 0-Datenpunkte angelegt worden, aber nicht die 1-11-Datenpunkte. Erst nachdem ich die Taster 1-10 kurz und lang betätigt habe, kamen auch die entsprechenden Datenpunkte an. Allerdings fehlt der Datenpunkt 11.SUBMIT aber auch 0.UNREACH.

Ich habe nun künstlich für ein Verbindungsproblem gesorgt, in der Hoffnung, dass wenigstens 0.UNREACH auf diese Art noch nachkommt, leider vergeblich. An folgenden Datenpunkten/Readings hat sich dann aber was geändert:
0.STICKY_UNREACH             1
activity             dead
hmstate             unreachable


Wo kommen denn die "activity" und "hmstate" her? Was ist der Unterschied zw. 0.UNREACH und 0.STICKY_UNREACH? Ist vermutlich nicht HB-Dis-EP-42BW spezifisch, oder?

Ich bin im Moment noch etwas ratlos, wie ich in meinen DOIFs die Verbindungsprobleme abfangen und darauf reagieren soll. Einfach noch mal senden? Solange bis es klappt? Oder auf die Änderung von einem der 3 Datenpunkten/Readings warten (oder einer Kombination von denen)?

Sorry, viele Fragen, die hier teilweise OT sind, sollte das noch weitern ausufern, werde ich einen neuen Thread aufmachen.

Edit:
Nachdem das Verbindungsproblem "behoben" ist, sieht die Kombination so aus:
0.STICKY_UNREACH             1
activity             alive
hmstate             Initialized

0.STICKY_UNREACH ist also eher nicht zu gebrauchen.
Titel: Antw:HMCCU und hmscript
Beitrag von: zap am 30 Juni 2020, 07:31:16
Ein list vom Device wäre hilfreich.

Sticky Unreach bedeutet: Das Gerät war nicht erreichbar.
Titel: Antw:HMCCU und hmscript
Beitrag von: tndx am 30 Juni 2020, 09:38:28
Hier das List:
Internals:
   CFGFN     
   DEF        4CZ0VF0VOG
   FUUID      5efa4493-f33f-7a7c-b7e5-11dd2ce1b29d9f22
   IODev      myHMCCU
   NAME       ePaper_1
   NR         2097
   STATE      Initialized
   TYPE       HMCCUDEV
   ccuaddr    4CZ0VF0VOG
   ccudevstate active
   ccuif      BidCos-RF
   ccuname    ePaper_1
   ccutype    HB-DIS-EP-42BW
   channels   12
   statevals  devstate
   READINGS:
     2020-06-29 21:57:10   0.AES_KEY       off
     2020-06-29 21:57:10   0.CONFIG_PENDING false
     2020-06-29 21:57:10   0.DEVICE_IN_BOOTLOADER false
     2020-06-29 21:57:10   0.RSSI_DEVICE   183
     2020-06-29 21:57:10   0.RSSI_PEER     60
     2020-06-30 03:15:02   0.STICKY_UNREACH 1
     2020-06-29 21:57:10   0.UPDATE_PENDING false
     2020-06-29 22:40:11   1.INSTALL_TEST  1
     2020-06-29 22:24:40   1.PRESS_CONT    1
     2020-06-29 22:24:39   1.PRESS_LONG    1
     2020-06-29 22:24:40   1.PRESS_LONG_RELEASE 1
     2020-06-29 22:40:11   1.PRESS_SHORT   1
     2020-06-29 22:25:02   10.INSTALL_TEST 1
     2020-06-29 22:25:03   10.PRESS_CONT   1
     2020-06-29 22:25:02   10.PRESS_LONG   1
     2020-06-29 22:25:03   10.PRESS_LONG_RELEASE 1
     2020-06-29 22:24:19   10.PRESS_SHORT  1
     2020-06-29 22:24:41   2.INSTALL_TEST  1
     2020-06-29 22:24:43   2.PRESS_CONT    1
     2020-06-29 22:24:41   2.PRESS_LONG    1
     2020-06-29 22:24:43   2.PRESS_LONG_RELEASE 1
     2020-06-29 22:24:05   2.PRESS_SHORT   1
     2020-06-29 22:24:44   3.INSTALL_TEST  1
     2020-06-29 22:24:45   3.PRESS_CONT    1
     2020-06-29 22:24:44   3.PRESS_LONG    1
     2020-06-29 22:24:45   3.PRESS_LONG_RELEASE 1
     2020-06-29 22:24:07   3.PRESS_SHORT   1
     2020-06-29 22:24:47   4.INSTALL_TEST  1
     2020-06-29 22:24:48   4.PRESS_CONT    1
     2020-06-29 22:24:47   4.PRESS_LONG    1
     2020-06-29 22:24:48   4.PRESS_LONG_RELEASE 1
     2020-06-29 22:24:09   4.PRESS_SHORT   1
     2020-06-29 22:24:49   5.INSTALL_TEST  1
     2020-06-29 22:24:50   5.PRESS_CONT    1
     2020-06-29 22:24:49   5.PRESS_LONG    1
     2020-06-29 22:24:50   5.PRESS_LONG_RELEASE 1
     2020-06-29 22:24:10   5.PRESS_SHORT   1
     2020-06-29 22:24:51   6.INSTALL_TEST  1
     2020-06-29 22:24:53   6.PRESS_CONT    1
     2020-06-29 22:24:51   6.PRESS_LONG    1
     2020-06-29 22:24:53   6.PRESS_LONG_RELEASE 1
     2020-06-29 22:24:12   6.PRESS_SHORT   1
     2020-06-29 22:24:54   7.INSTALL_TEST  1
     2020-06-29 22:24:55   7.PRESS_CONT    1
     2020-06-29 22:24:54   7.PRESS_LONG    1
     2020-06-29 22:24:55   7.PRESS_LONG_RELEASE 1
     2020-06-29 22:24:14   7.PRESS_SHORT   1
     2020-06-29 22:24:57   8.INSTALL_TEST  1
     2020-06-29 22:24:58   8.PRESS_CONT    1
     2020-06-29 22:24:56   8.PRESS_LONG    1
     2020-06-29 22:24:58   8.PRESS_LONG_RELEASE 1
     2020-06-29 22:24:15   8.PRESS_SHORT   1
     2020-06-29 22:24:59   9.INSTALL_TEST  1
     2020-06-29 22:25:01   9.PRESS_CONT    1
     2020-06-29 22:24:59   9.PRESS_LONG    1
     2020-06-29 22:25:01   9.PRESS_LONG_RELEASE 1
     2020-06-29 22:24:18   9.PRESS_SHORT   1
     2020-06-29 21:46:11   R-DEVICE_LED_MODE 1
     2020-06-29 21:46:11   R-DISPLAY_INVERTING 0
     2020-06-29 21:46:11   R-HB_CRITICAL_BAT_LIMIT 1.000000
     2020-06-29 21:46:11   R-HB_DISPLAY_REFRESH_WAIT_TIME 0.000000
     2020-06-29 21:46:11   R-KEY_TRANSCEIVER 0
     2020-06-29 21:46:11   R-LOW_BAT_LIMIT 1.000000
     2020-06-29 21:46:11   R-POWERUP_ACTION 0
     2020-06-30 03:15:02   activity        alive
     2020-06-29 21:57:10   battery         ok
     2020-06-30 03:15:02   hmstate         Initialized
     2020-06-29 21:44:19   state           Initialized
   hmccu:
     devspec    4CZ0VF0VOG
     dp:
       0.AES_KEY:
         OSVAL      off
         OVAL       0
         SVAL       off
         VAL        0
       0.CONFIG_PENDING:
         OSVAL      false
         OVAL       false
         SVAL       false
         VAL        false
       0.DEVICE_IN_BOOTLOADER:
         OSVAL      false
         OVAL       false
         SVAL       false
         VAL        false
       0.LOWBAT:
         OSVAL      ok
         OVAL       false
         SVAL       ok
         VAL        false
       0.RSSI_DEVICE:
         OSVAL      183
         OVAL       183
         SVAL       183
         VAL        183
       0.RSSI_PEER:
         OSVAL      60
         OVAL       60
         SVAL       60
         VAL        60
       0.STICKY_UNREACH:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       0.UNREACH:
         OSVAL      dead
         OVAL       1
         SVAL       alive
         VAL        0
       0.UPDATE_PENDING:
         OSVAL      false
         OVAL       false
         SVAL       false
         VAL        false
       1.INSTALL_TEST:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       1.PRESS_CONT:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       1.PRESS_LONG:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       1.PRESS_LONG_RELEASE:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       1.PRESS_SHORT:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       10.INSTALL_TEST:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       10.PRESS_CONT:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       10.PRESS_LONG:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       10.PRESS_LONG_RELEASE:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       10.PRESS_SHORT:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       2.INSTALL_TEST:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       2.PRESS_CONT:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       2.PRESS_LONG:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       2.PRESS_LONG_RELEASE:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       2.PRESS_SHORT:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       3.INSTALL_TEST:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       3.PRESS_CONT:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       3.PRESS_LONG:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       3.PRESS_LONG_RELEASE:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       3.PRESS_SHORT:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       4.INSTALL_TEST:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       4.PRESS_CONT:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       4.PRESS_LONG:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       4.PRESS_LONG_RELEASE:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       4.PRESS_SHORT:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       5.INSTALL_TEST:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       5.PRESS_CONT:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       5.PRESS_LONG:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       5.PRESS_LONG_RELEASE:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       5.PRESS_SHORT:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       6.INSTALL_TEST:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       6.PRESS_CONT:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       6.PRESS_LONG:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       6.PRESS_LONG_RELEASE:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       6.PRESS_SHORT:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       7.INSTALL_TEST:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       7.PRESS_CONT:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       7.PRESS_LONG:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       7.PRESS_LONG_RELEASE:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       7.PRESS_SHORT:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       8.INSTALL_TEST:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       8.PRESS_CONT:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       8.PRESS_LONG:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       8.PRESS_LONG_RELEASE:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       8.PRESS_SHORT:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       9.INSTALL_TEST:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       9.PRESS_CONT:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       9.PRESS_LONG:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       9.PRESS_LONG_RELEASE:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
       9.PRESS_SHORT:
         OSVAL      1
         OVAL       1
         SVAL       1
         VAL        1
Attributes:
   IODev      myHMCCU
   ccureadingfilter .*
   ccureadingformat datapoint
   event-on-update-reading .*
   room       Flur_OG


Diese Stelle
       0.UNREACH:
         OSVAL      dead
         OVAL       1
         SVAL       alive
         VAL        0

lässt mich vermuten, dass hier offenbar automatisch eine Ersetzung stattfindet von "0.UNREACH" nach "activity"?
Titel: Antw:HMCCU und hmscript
Beitrag von: zap am 30 Juni 2020, 12:02:57
wie sehen denn die Attribute vom I/O device aus? (Bitte kein list, das wird zu lang).
Titel: Antw:HMCCU und hmscript
Beitrag von: tndx am 30 Juni 2020, 13:00:26
OK, jetzt wird mir einiges klar, zumindest was "0.UNREACH" und Ersetzung angeht:

Attributes:
   ccudef-readingfilter .*
   ccudef-readingname ^(.+\.)?LOW_?BAT$:battery;^(.+\.)?UNREACH$:activity
   ccudef-substitute AES_KEY!(0|false):off,(1|true):on;LOWBAT,LOW_BAT!(0|false):ok,(1|true):low;UNREACH!(0|false):alive,(1|true):dead;MOTION!(0|false):noMotion,(1|true):motion;DIRECTION!0:stop,1:up,2:down,3:undefined;WORKING!0:false,1:true;INHIBIT!(0|false):unlocked,(1|true):locked
   ccuflags   procrpc
   cmdIcon    on:general_an off:general_aus
   eventMap   /rpcserver on:on/rpcserver off:off/
   room       VCCU
   rpcinterfaces BidCos-RF,HmIP-RF
   rpcport    2001,2010
   rpcserver  on
   stateFormat rpcstate/state


Ich habe mal die Definition vor ca. 2 Jahren mehr oder weniger 1:1 aus dem Wiki oder aus dem Forum übernommen und mich nie wieder damit befasst.

Aber was ist mit "11.SUBMIT"?
Titel: Antw:HMCCU und hmscript
Beitrag von: zap am 30 Juni 2020, 21:16:56
Schau Dir mal die Ausgabe von "get deviceinfo" an. Ich nehme an, hinter dem SUBMIT steht nur ein W. Das steht für Write, d.h. dieser Datenpunkt ist nur beschreibbar. Wenn dort ein E für Event oder R für Read steht, gibt es auch Readings.
Titel: Antw:HMCCU und hmscript
Beitrag von: tndx am 30 Juni 2020, 21:41:42
OK, dort steht in der Tat nur ein "W". Danke für Deine Geduld, es scheinen nun alle Fragen bzgl. der Einrichtung geklärt zu sein. Kannst Du absehen, ob Du je dazu kommst, die Funktion zum Befüllen des Displays ohne Umweg über hmscript zu implementieren?

Kannst Du mir hier auch noch einen Tipp geben:
ZitatIch bin im Moment noch etwas ratlos, wie ich in meinen DOIFs die Verbindungsprobleme abfangen und darauf reagieren soll.

Im Moment befülle ich mit hmscript, bei Verbindungsproblemen springt das Ding auf "dead", d.h. im selben DOIF nach 2-3 s den Status prüfen und gegebenenfalls das Senden alle 10 Min wiederholen? Hört sich das nach einer vernünftigen Vorgehensweise? Oder gibt es was eleganteres in Verbindung mit HMCCU?