Qubino Mini Dimmer

Begonnen von skyline, 05 Oktober 2021, 18:54:56

Vorheriges Thema - Nächstes Thema

skyline

Hallo,
ich habe mir zwei Qubino Mini Dimmer geholt.
Beide funktionieren!

Doch die Darstellung in der Weboberfläche, passt so gar nicht zu der Darstellung meiner Enocean Dimmer.
Bei den Qubino wird anstelle des DevStateIcon "On/Off" nur "Off" und der Dimmwert mit zum Beispiel "dim 78" angezeigt.
Ich habe schon versucht ein eigenes DevStateIcon zu erstellen, doch leider klappt es nicht, oder es wird der aktuelle Dimmwert beim wiedereinschalten nicht verwendet.

Ich hatte es erstmal so gemacht:
devStateIcon name off:off dim.*:on

Kann mir jemand einen kleinen Ansatz geben?

MfG Marco


skyline

Nachtrag:
Es sieht so aus, als ob der Qubino Mini Dimmer noch nicht ordentlich unterstützt wird.
Einschalten über den Schalter selbst -> aktuelle Dimmwert wird richtig gesetzt
Einschalten über FHEM -> es wird die höchste Dimmstufe verwendet und nicht die aktuelle

Es gibt im Device auch kein Reading, in dem die aktuelle Dimmstufe gespeichert/ausgelesen wird.

Der Qubino Mini Dimmer hat noch einige Baustellen offen.

MfG Marco

krikan

Qubino hat den Minidimmer mit FHEM getest und volle Kompatibilität ausgewiesen: https://qubino.com/manuals/Compatibility_with_gateways/Compatibility_manual_Mini_Dimmer_11092019.pdf

Deine Beschreibung lässt mich unvollständige Assoziation bzw. Konfigurationvermuten. Kannst Du bitte die Ausgabe von "list" wie in https://wiki.fhem.de/wiki/Z-Wave#Welche_Infos_sollten_Anfragen_im_ZWave-Forum_enthalten.3F posten; evtl. kann man dann mehr sagen.

Das EnOcean-Modul macht hinsichtlich Bildschirmanzeige devState.* mehr Vorgaben als das ZWave-Modul.

Gruß, Christian

skyline

#3
Hallo,
man könnte es ja vielleicht zusammen basteln, mit devSateIcon, Userreading und wenn es so etwas gibt mit anpassbarer webcmd.

Die Dinge in der Kompatibilität-Liste funktionieren sn sich ja.
Nur nicht so wie man es von den anderen Dimmer gewohnt ist.


Internals:
   Aeotec_USB_MSGCNT 617
   Aeotec_USB_RAWMSG 000400a10a32022134000000750000
   Aeotec_USB_TIME 2021-10-06 09:05:14
   DEF        eac0cb0c 161
   FUUID      6156f5ff-f33f-0c42-a7de-24f12904cfe15a9a
   IODev      Aeotec_USB
   LASTInputDev Aeotec_USB
   MSGCNT     617
   NAME       EG_EZ_LI1
   NR         677
   STATE      dim 30
   TYPE       ZWave
   ZWaveSubDevice no
   cmdsPending 0
   homeId     eac0cb0c
   isWakeUp   
   lastMsgSent 1633500902.46956
   nodeIdHex  a1
   READINGS:
     2021-10-02 09:17:33   IODev           Aeotec_USB
     2021-10-05 07:51:29   energy          0.1 kWh
     2021-10-05 14:45:34   model           Qubino (Goap) ZMNHHDx Mini Dimmer
     2021-10-05 14:45:34   modelConfig     qubino/ZMNHHDx.xml
     2021-10-05 14:45:34   modelId         0159-0001-0055
     2021-10-06 09:05:14   power           11.7 W
     2021-10-06 08:15:27   reportedState   dim 30
     2021-10-06 08:15:27   state           dim 30
     2021-10-06 08:15:02   timeToAck       0.103
     2021-10-06 08:15:02   transmit        OK
     2021-10-01 13:50:41   zwavePlusInfo   version:01 role:AlwaysOnSlave node:Z-Wave+Node installerIcon:0600 userIcon:0600
Attributes:
   alias      Deckenlicht Esszimmer
   classes    ZWAVEPLUS_INFO SWITCH_BINARY SWITCH_MULTILEVEL ASSOCIATION ASSOCIATION_GRP_INFO TRANSPORT_SERVICE VERSION MANUFACTURER_SPECIFIC DEVICE_RESET_LOCALLY CONFIGURATION METER ALARM POWERLEVEL SECURITY SECURITY_S2 SUPERVISION
   genericDeviceType light
   group      Licht
   homebridgeMapping Brightness=brightness,cmd=dim
   icon       light_downlight
   room       Wohn-Esszimmer
   vclasses   ALARM:5 ASSOCIATION:2 ASSOCIATION_GRP_INFO:2 CONFIGURATION:1 DEVICE_RESET_LOCALLY:1 MANUFACTURER_SPECIFIC:2 METER:4 POWERLEVEL:1 SECURITY:1 SECURITY_S2:1 SUPERVISION:1 SWITCH_BINARY:1 TRANSPORT_SERVICE:2 VERSION:2 ZWAVEPLUS_INFO:2
   webCmd     on:off:dim

rudolfkoenig

ZitatEinschalten über FHEM -> es wird die höchste Dimmstufe verwendet und nicht die aktuelle
Das "on" Befehl sendet "Einschalten auf maximaler Stufe", ein Befehl "Einschalten auf der letzten Stufe" ist mir nicht bekannt. Bei manchen Dimmer gibt es eine Konfiguration, was "Einschalten auf maximaler Stufe" anders interpretiert, ich habe auf https://qubino.com/mini-dimmer-tech-2/ nichts Vergleichbares gefunden.

Abhilfe koennte Folgendes schaffen:
define dm cmdalias set EG_EZ_LI1 on AS { fhem("set EG_EZ_LI1 ".ReadingsVal("EG_EZ_LI1","reportedState","on")) }
ich bin aber nicht sicher, ob es nicht unerwuenschte Nebeneffekte hat.

krikan

Zitat von: rudolfkoenig am 06 Oktober 2021, 10:21:46
Das "on" Befehl sendet "Einschalten auf maximaler Stufe", ein Befehl "Einschalten auf der letzten Stufe" ist mir nicht bekannt.
Laut ZWave-Specs bedeutet bei CC SWITCH_MULTILEVEL der Wert 255 (0xFF) "Restore most recent (non-zero) level." Genau das wird bei set-on hier doch verschickt. Darum kann ich die Verwunderung des TEs verstehen.

rudolfkoenig

Danke fuer die Korrektur.
Dann sollte man aber eher bei Qubino nachfragen, oder irre ich mich?

skyline

Hallo,
ich kann mich ja gerne am Qubino wenden, aber worauf soll ich genau verweisen?

Bei den Enocean Dimmer sendet der On Befehl die aktuelle Dimmstufe.
Deshalb hat mich das so verwundet.

define dm cmdalias set EG_EZ_LI1 on AS { fhem("set EG_EZ_LI1 ".ReadingsVal("EG_EZ_LI1","reportedState","on")) }
Was wird denn hierdurch erreicht?
Ich würde gerne wenigstens etwas dazulernen  ;)

Danke erstmal!

skyline

#8
Ahh, ich glaube ich habe den Code etwas verstanden.
Es wird damit der "on" Befehl des Devices umgeschrieben.

Das sollte in Verbindung mit einem Userreading klappen, da "reportedState" nicht dem letzten Dimmwert entspricht. (wird auch auf off gesetzt).

Da ich mich damit aber noch nicht auskenne, will ich vorher noch ein Backup machen.

skyline

#9
Hallo,

hat geklappt!

Hier die Lösung:

userReadings:
dimValueLast {
    my $state = ReadingsVal($name, "state", "");
    return $state if substr($state, 0, 3) eq "dim";
    return undef;
}


devStateIcon:
dim.*:on:off off:off:on

On-Befehl umschreiben mit Cmdalias:
define EG_EZ_LI1_DIM cmdalias set EG_EZ_LI1 on AS { fhem("set EG_EZ_LI1 ".ReadingsVal("EG_EZ_LI1","dimValueLast","on")) }

Nachtrag:
eventMap:
{ usr=>{'dim.100'=>'dim 99' } }

widgetOverride:
dim:slider,0,1,100


Danke! + Gruß
Marco

Damu

Hallo

Danke für den Code, werde das bei mir dann auch mal einbauen.
Hab da noch eine Frage.

Ist On bei Dimmer nicht immer 100% oder 255?
Kann das im Moment nicht testen, aber bei mir ist on ,,glaube" immer voll auf.
Habe Homematic und ZWave.
Mit ,,aktuelle Dimmstufe" ist dann die letzte Dimmstufe gemeint?

skyline

#11
Ja, damit ist die letzte Dimmstufe gemeint.

Bei Zwave gehen die Dimmer glaube alle nur bis "dim 99".

Da suche ich auch noch eine Lösung, da ich Alexa dann sage "dimm das Licht auf 100%".

Ein Ansatz wäre, wie hier schon verwendet, mit cmdalias.
Ich hätte dann aber auch gerne einen angepassten Slider mit 100., bin da aber mit Setlist noch nicht zum Ziel gekommen.
Vielleicht kommt man bei alle dem nicht um ein Dummy-Device herum.

krikan

Zitat von: Damu am 07 Oktober 2021, 16:09:12
Ist On bei Dimmer nicht immer 100% oder 255?
Kann das im Moment nicht testen, aber bei mir ist on ,,glaube" immer voll auf.
Habe Homematic und ZWave.
Mit ,,aktuelle Dimmstufe" ist dann die letzte Dimmstufe gemeint?
Für ZWave laut Specs (für HM wage ich keine Aussage) bei SWITCH_MULTILEVEL schau mal in https://www.silabs.com/documents/login/miscellaneous/SDS13781-Z-Wave-Application-Command-Class-Specification.pdf auf PDF-Seite 404 unter Value. Danach verstehe ich:
bei "set-on" verschickt FHEM 0xff -> das ist dann meinem Verständnis nach "letzte Dimmstufe vor Ausschalten" und eben nicht 100%
bei "set-dim 99" verschickt FHEM 0x63-> Schalte auf 100%

Die Interpretation der set-values hat sich mWn auch über die verschiedenen Versionen der Class in den Specs nicht verändert. Was jetzt die Praxis/Geräte-Firmware daraus macht, ist evtl. was anderes; müsste bei den Dimmern aber so sein. Bei Jalousien ist die Auswirkung von set-on (0xff) zB zumeist anders; meine das steht auch irgendwo in den Specs geregelt.

krikan

Zitat von: skyline am 07 Oktober 2021, 16:18:06
Bei Zwave gehen die Dimmer glaube alle nur bis "dim 99".

Da suche ich auch noch eine Lösung, da ich Alexa dann sage "dimm das Licht auf 100%".

Ein Ansatz wäre, wie hier schon verwendet, mit cmdalias.
Ich hätte dann aber auch gerne einen angepassten Slider mit 100., bin da aber mit Setlist noch nicht zum Ziel gekommen.
Vielleicht kommt man bei alle dem nicht um ein Dummy-Device herum.
Schau Dir mal das zwave.template https://svn.fhem.de/trac/browser/trunk/fhem/FHEM/lib/AttrTemplate/zwave.template hinsichtlich dim an. Vielleicht bringt Dir das Ideen.

Damu

#14
Hab leider im Moment nur mit einem IPad Zugriff auf mein FHEM.
Habe aber drei Dimmer ,,Mini Dimmer Qubino und Aeotec".
Die Qubino Dimmer gehen bei Ein über die Fernbedienung auf den Letzten Wert vor dem Ausschalten.
Der Aeotec weiss ich jetzt nicht mehr.
Bin mir aber echt nicht zu 100% sicher, kann sein das es nur ein Effekt vom längeren drücken beim Einschalten ist.
Kann ich aber im Moment nicht testen.
Der Mini Dimmer ist doch nur über Gruppe 1 (Z-Wave Plus Lifeline) mit FHEM verbunden.
Müsste Mann da nicht noch die Gruppe 4 (Multilevel set) hinzufügen?
Wobei wenn es die Fernbedienung (Devolo) richtig machen würde, sollte es FHEM doch auch ohne Gruppe 4 können?

skyline

Damit läuft es jetzt erstmal.
   
eventMap:
{ usr=>{'dim.100'=>'dim 99' } }

widgetOverride:
dim:slider,0,1,100


krikan

Zitat von: Damu am 07 Oktober 2021, 18:56:33
Der Mini Dimmer ist doch nur über Gruppe 1 (Z-Wave Plus Lifeline) mit FHEM verbunden.
Müsste Mann da nicht noch die Gruppe 4 (Multilevel set) hinzufügen?
Die Assoziation ist für die Steuerung unerheblich. Selbst wenn man alle Assoziationen von FHEM(Controller) und Minidimmer löscht, würde die Schaltung mMn funktionieren; nur die Rückmeldung an FHEM (Controller) fehlte dann.
Wichtig ist nur, was FHEM an den Aktor schickt. Bei set-on und set-dim ist das ein set-Command der Class SWITCH_MULTILEVEL

skyline

Zitat von: krikan am 07 Oktober 2021, 16:44:11
Schau Dir mal das zwave.template https://svn.fhem.de/trac/browser/trunk/fhem/FHEM/lib/AttrTemplate/zwave.template hinsichtlich dim an. Vielleicht bringt Dir das Ideen.

Da sind genau solche Dinge, die hier mit dem Dimmer auch nicht klappen behandelt.
Wenn ich das richtig sehe, wird doch für bestimmte Devices die Setting angepasst.

z.B:
attr DEVICE eventMap { usr=>{'dim.100'=>'dim 99' } }

attr CHANNEL01 userReadings dim:(dim|reportedState).* {$1 =~ /reportedState/ ? ReadingsNum($name,"reportedState",0):ReadingsNum($name,"state",0)}

Vielleicht muss man dieses Gerät auch einfach mit aufnehmen.

Gruß
Marco

Damu

#18
Hallo
Bin wieder Zuhause.
Hab es soeben getestet.
Mit der Devolo und dem Aeotec (4Touch) Fernbedienung.
Klappt das beim schalten von ON.
Das heisst wenn ich mit der FB einschalte geht der Dimmer auf die letzte Stufe die er vor den ausschalten hatte.
Das klappt immer, die FB kriegt ja nichts vom letzten Dimmerstand mit?
Entweder macht die FB direkt, ON.
Oder die FB fragt bei ON den Dimmer zuerst nach dem letzten Stand.
Und danach setzt die FB diesen Dimmwert.

Wie kann ich den Funkferkehr von der FB mithören?
ZWDongle auf vebose 5?

Beta-User

Zitat von: skyline am 08 Oktober 2021, 09:16:59
Vielleicht muss man dieses Gerät auch einfach mit aufnehmen.

"Müssen" vielleicht nicht, aber Vorschläge nehme ich gerne entgegen; in der Sammlung finden sich halt derzeit die Geräte, die ich auch selbst habe und nutze.

Vermutlich muss das ganze für einen Dimmer auch nicht ganz so komplex ausfallen wie für die Rollladen-Aktoren und was "generisches" (das also für alle möglichen Dimmer passen könnte) sollte eher machbar sein.

Bitte aber gleich nur den effektiv schaltbaren Bereich 0-99 in die Slider mit aufnehmen, sonst vergißt man ggf. nämlich, dass "voll an" eben gerade nicht 100 ist, sondern 99. Für Rollläden ist das zwar vermutlich deutlich wichtiger (weil sonst ggf. AutoShuttersControl z.B. nicht passend vergleicht), aber lieber gleich sauber arbeiten vermeidet erfahrungsgemäß hinterher Probleme, die man schlecht zuordnen kann...
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

rudolfkoenig

ZitatWie kann ich den Funkferkehr von der FB mithören?
Ich kenne nur die Moeglichkeit mit einem CUL bzw. das ZWCUL Modul im monitor mode (homeId 00000000).

Damu

Danke für die Antwort:
ZitatIch kenne nur die Moeglichkeit mit einem CUL bzw. das ZWCUL Modul im monitor mode (homeId 00000000).
Habe leider keinen CUL.

Damu

#22
Hier mal das schalten auf ON mit vebose 5 am ZWave Dongle
Der AEOTEC Dimmer (Dieser schaltet bei ON über FHEM nicht auf 100%)
Zitat2021.10.10 16:25:13 3: ZWave set Dim_03 on
2021.10.10 16:25:13 5: ZWDongle_Write 001351032501FF255c (eba3b9eb)
2021.10.10 16:25:13 5: DevIo_SimpleWrite POE_ZW_OG: 010a001351032501FF255c16
2021.10.10 16:25:13 5: ACK received, WaitForAck=>2 for 010a001351032501FF255c16
2021.10.10 16:25:13 4: ZWDongle_Read POE_ZW_OG: rcvd 011301 (answer ZW_SEND_DATA), sending ACK
2021.10.10 16:25:13 5: DevIo_SimpleWrite POE_ZW_OG: 06
2021.10.10 16:25:13 5: POE_ZW_OG: dispatch 011301
2021.10.10 16:25:13 4: ZWDongle_Read POE_ZW_OG: rcvd 00135c00000e01c37f7f7f7f0101031600000001010000 (request ZW_SEND_DATA), sending ACK
2021.10.10 16:25:13 5: DevIo_SimpleWrite POE_ZW_OG: 06
2021.10.10 16:25:13 5: device ack reveived, removing 010a001351032501FF255c16 from dongle sendstack
2021.10.10 16:25:13 5: POE_ZW_OG: dispatch 00135c00000e01c37f7f7f7f0101031600000001010000
2021.10.10 16:25:13 4: CMD:ZW_SEND_DATA ID:00 ARG:000e01c37f7f7f7f0101031600000001010000 CB:5c
2021.10.10 16:25:13 4: POE_ZW_OG transmit OK for CB 5c, target Dim_03
2021.10.10 16:25:13 5: Dim_03: timeToCb:0.14 repeaters:1 rssi0:-61 dBm rssi1:N/A ackCh:1 lastCh:1 scheme:LastWorkingRoute rep:SW_01 at 9.6kbps routeTries:1 lastFailed:
2021.10.10 16:25:14 4: ZWDongle_Read POE_ZW_OG: rcvd 000400510326030dc400 (request APPLICATION_COMMAND_HANDLER), sending ACK
2021.10.10 16:25:14 5: DevIo_SimpleWrite POE_ZW_OG: 06
2021.10.10 16:25:14 5: POE_ZW_OG: dispatch 000400510326030dc400
2021.10.10 16:25:14 4: CMD:APPLICATION_COMMAND_HANDLER ID:51 ARG:0326030dc400 CB:00
2021.10.10 16:25:27 3: ZWave set Dim_03 off

Hier das gleiche mit dem Qubino Mini Dimmer. (Schaltet bei ON über FHEM immer auf 100%)

Zitat2021.10.10 17:02:20 3: ZWave set Dim_02 on
2021.10.10 17:02:20 5: ZWDongle_Write 001368032501FF256e (eba3b9eb)
2021.10.10 17:02:20 5: DevIo_SimpleWrite POE_ZW_OG: 010a001368032501FF256e1d
2021.10.10 17:02:20 5: ACK received, WaitForAck=>2 for 010a001368032501FF256e1d
2021.10.10 17:02:20 4: ZWDongle_Read POE_ZW_OG: rcvd 011301 (answer ZW_SEND_DATA), sending ACK
2021.10.10 17:02:20 5: DevIo_SimpleWrite POE_ZW_OG: 06
2021.10.10 17:02:20 5: POE_ZW_OG: dispatch 011301
2021.10.10 17:02:20 4: ZWDongle_Read POE_ZW_OG: rcvd 00136e00001501ca7f7f7f7f0101034400000002024468 (request ZW_SEND_DATA), sending ACK
2021.10.10 17:02:20 5: DevIo_SimpleWrite POE_ZW_OG: 06
2021.10.10 17:02:20 5: device ack reveived, removing 010a001368032501FF256e1d from dongle sendstack
2021.10.10 17:02:20 5: POE_ZW_OG: dispatch 00136e00001501ca7f7f7f7f0101034400000002024468
2021.10.10 17:02:20 4: CMD:ZW_SEND_DATA ID:00 ARG:001501ca7f7f7f7f0101034400000002024468 CB:6e
2021.10.10 17:02:20 4: POE_ZW_OG transmit OK for CB 6e, target Dim_02
2021.10.10 17:02:20 5: Dim_02: timeToCb:0.21 repeaters:1 rssi0:-54 dBm rssi1:N/A ackCh:1 lastCh:1 scheme:LastWorkingRoute rep:BM_Lampe2 at 40kbps routeTries:2 lastFailed:BM_Lampe2 Dim_02
2021.10.10 17:02:21 4: ZWDongle_Read POE_ZW_OG: rcvd 000400680a32022134000000100000cf00 (request APPLICATION_COMMAND_HANDLER), sending ACK
2021.10.10 17:02:21 5: DevIo_SimpleWrite POE_ZW_OG: 06
2021.10.10 17:02:21 5: POE_ZW_OG: dispatch 000400680a32022134000000100000cf00
2021.10.10 17:02:21 4: CMD:APPLICATION_COMMAND_HANDLER ID:68 ARG:0a32022134000000100000cf00 CB:00
2021.10.10 17:02:21 4: ZWDongle_Read POE_ZW_OG: rcvd 000400680a32022134000000100000c400 (request APPLICATION_COMMAND_HANDLER), sending ACK
2021.10.10 17:02:21 5: DevIo_SimpleWrite POE_ZW_OG: 06
2021.10.10 17:02:21 5: POE_ZW_OG: dispatch 000400680a32022134000000100000c400
2021.10.10 17:02:21 4: CMD:APPLICATION_COMMAND_HANDLER ID:68 ARG:0a32022134000000100000c400 CB:00
2021.10.10 17:02:22 4: ZWDongle_Read POE_ZW_OG: rcvd 0004006803260363cf00 (request APPLICATION_COMMAND_HANDLER), sending ACK
2021.10.10 17:02:22 5: DevIo_SimpleWrite POE_ZW_OG: 06
2021.10.10 17:02:22 5: POE_ZW_OG: dispatch 0004006803260363cf00
2021.10.10 17:02:22 4: CMD:APPLICATION_COMMAND_HANDLER ID:68 ARG:03260363cf00 CB:00
2021.10.10 17:02:22 4: ZWDongle_Read POE_ZW_OG: rcvd 0004006803260363ca00 (request APPLICATION_COMMAND_HANDLER), sending ACK
2021.10.10 17:02:22 5: DevIo_SimpleWrite POE_ZW_OG: 06
2021.10.10 17:02:22 5: POE_ZW_OG: dispatch 0004006803260363ca00
2021.10.10 17:02:22 4: CMD:APPLICATION_COMMAND_HANDLER ID:68 ARG:03260363ca00 CB:00
2021.10.10 17:02:22 4: ZWDongle_Read POE_ZW_OG: rcvd 0004006803260363c400 (request APPLICATION_COMMAND_HANDLER), sending ACK
2021.10.10 17:02:22 5: DevIo_SimpleWrite POE_ZW_OG: 06
2021.10.10 17:02:22 5: POE_ZW_OG: dispatch 0004006803260363c400
2021.10.10 17:02:22 4: CMD:APPLICATION_COMMAND_HANDLER ID:68 ARG:03260363c400 CB:00
2021.10.10 17:02:24 4: ZWDongle_Read POE_ZW_OG: rcvd 000400680a320221340000001b0000cd00 (request APPLICATION_COMMAND_HANDLER), sending ACK
2021.10.10 17:02:24 5: DevIo_SimpleWrite POE_ZW_OG: 06
2021.10.10 17:02:24 5: POE_ZW_OG: dispatch 000400680a320221340000001b0000cd00
2021.10.10 17:02:24 4: CMD:APPLICATION_COMMAND_HANDLER ID:68 ARG:0a320221340000001b0000cd00 CB:00
2021.10.10 17:02:24 4: ZWDongle_Read POE_ZW_OG: rcvd 000400680a320221340000001b0000ca00 (request APPLICATION_COMMAND_HANDLER), sending ACK
2021.10.10 17:02:24 5: DevIo_SimpleWrite POE_ZW_OG: 06
2021.10.10 17:02:24 5: POE_ZW_OG: dispatch 000400680a320221340000001b0000ca00
2021.10.10 17:02:24 4: CMD:APPLICATION_COMMAND_HANDLER ID:68 ARG:0a320221340000001b0000ca00 CB:00
2021.10.10 17:02:24 4: ZWDongle_Read POE_ZW_OG: rcvd 000400680a320221340000001b0000c400 (request APPLICATION_COMMAND_HANDLER), sending ACK
2021.10.10 17:02:24 5: DevIo_SimpleWrite POE_ZW_OG: 06
2021.10.10 17:02:24 5: POE_ZW_OG: dispatch 000400680a320221340000001b0000c400
2021.10.10 17:02:24 4: CMD:APPLICATION_COMMAND_HANDLER ID:68 ARG:0a320221340000001b0000c400 CB:00
2021.10.10 17:02:27 4: ZWDongle_Read POE_ZW_OG: rcvd 000400460a32022134000000190000b900 (request APPLICATION_COMMAND_HANDLER), sending ACK
2021.10.10 17:02:27 5: DevIo_SimpleWrite POE_ZW_OG: 06
2021.10.10 17:02:27 5: POE_ZW_OG: dispatch 000400460a32022134000000190000b900
2021.10.10 17:02:27 4: CMD:APPLICATION_COMMAND_HANDLER ID:46 ARG:0a32022134000000190000b900 CB:00
2021.10.10 17:02:27 4: ZWDongle_Read POE_ZW_OG: rcvd 000400460a32022134000000190000c300 (request APPLICATION_COMMAND_HANDLER), sending ACK
2021.10.10 17:02:27 5: DevIo_SimpleWrite POE_ZW_OG: 06
2021.10.10 17:02:27 5: POE_ZW_OG: dispatch 000400460a32022134000000190000c300
2021.10.10 17:02:27 4: CMD:APPLICATION_COMMAND_HANDLER ID:46 ARG:0a32022134000000190000c300 CB:00
2021.10.10 17:20:58 3: ZWave set Dim_02 off


skyline

Zitat von: Beta-User am 10 Oktober 2021, 09:35:31
"Müssen" vielleicht nicht, aber Vorschläge nehme ich gerne entgegen; in der Sammlung finden sich halt derzeit die Geräte, die ich auch selbst habe und nutze.

Vermutlich muss das ganze für einen Dimmer auch nicht ganz so komplex ausfallen wie für die Rollladen-Aktoren und was "generisches" (das also für alle möglichen Dimmer passen könnte) sollte eher machbar sein.

Bitte aber gleich nur den effektiv schaltbaren Bereich 0-99 in die Slider mit aufnehmen, sonst vergißt man ggf. nämlich, dass "voll an" eben gerade nicht 100 ist, sondern 99. Für Rollläden ist das zwar vermutlich deutlich wichtiger (weil sonst ggf. AutoShuttersControl z.B. nicht passend vergleicht), aber lieber gleich sauber arbeiten vermeidet erfahrungsgemäß hinterher Probleme, die man schlecht zuordnen kann...

"Muss" war ja darauf gezogen, dass es ohne weiteres klappt  ;)

Ich hätte nicht gedacht, dass da bei einigen Zwave Geräten noch so nachgebessert werden muss.

Persönlich finde ich die 100% besser, da Alexa und auch andere Dimmer damit arbeiten.
Ist halt etwas unglücklich, dass der Standard es bis 100% und ein anderer bis 99% macht.
Das ist aber nur meine persönliche Meinung.

Ich habe es ja auch fast so laufen wie ich es gerne hätte.
Es gibt nur noch Probleme mit dem "Stateformat".
{
    my $state = ReadingsVal($name, "state", "");
    return "dim 100" if $state eq "dim 99";
    return $state if substr($state, 0, 3) ne "dim 99";
    return undef;
}


Die 100% werden immer erst angezeigt, nachdem ich im Browser die Seite aktualisiere.
Hat vielleicht jemand hierzu eine Idee.

Hier noch mal grob die Vorgehensweise:

Speichern des aktuellen Dimmwertes als userReadings
dimValueLast {
    my $state = ReadingsVal($name, "state", "");
    return $state if substr($state, 0, 3) eq "dim";
    return undef;
}


On-Befehl ersetzt durch aktuellen Dimmwert
define EG_EZ_LI1_DIM cmdalias set EG_EZ_LI1 on AS { fhem("set EG_EZ_LI1 ".ReadingsVal("EG_EZ_LI1","dimValueLast","on")) }

Für Sprachsteuerung durch Alexa (analog zu bereits eingesetzt Dimmern)
"Alexa, dimm das Licht auf 100%" (da würde bei 99% doch immer irgendwas fehlen  ;D )

widgetOverride
dim:slider,0,1,100
so kann Alexa die "dim 100" senden.

eventMap
{ usr=>{'dim.100'=>'dim 99' } }
da das Gerät ja keine "dim 100" unterstützt.

Jetzt soll stateformat aus optisch Gründen trotzdem nicht 99% sondern 100% anzeigen.
Ist sonst komisch, da ich den Slider auf 100% ziehen kann und dieser immer auf 99% zurückspringt.

Wie gesagt, sonst läuft es eigentlich  >:(

rudolfkoenig

Zitat2021.10.10 16:25:13 5: ZWDongle_Write 001351032501FF255c (eba3b9eb)
Das ist on von der Klasse SWITCH_BINARY, und nicht von SWITCH_MULTILEVEL (das waere 2601FF).
Bei beiden Geraeten.

Kannst Du bitte SWITCH_BINARY aus dem classes Attribut entfernen, und das Schalten erneut probieren?
Soweit ich sehe, sollte auch reichen, SWITCH_MULTILEVEL vor SWITCH_BINARY zu platzieren.

Damu

Genial
ZitatSoweit ich sehe, sollte auch reichen, SWITCH_MULTILEVEL vor SWITCH_BINARY zu platzieren.
reicht.
Vielen Dank

skyline


Damu

Mit dem Mini Dimmer:
Zitat2021.10.10 19:08:09 3: ZWave set Dim_01 on
2021.10.10 19:08:09 5: ZWDongle_Write 001346032601FF25d6 (eba3b9eb)
2021.10.10 19:08:09 5: DevIo_SimpleWrite POE_ZW_OG: 010a001346032601FF25d688
2021.10.10 19:08:09 5: ACK received, WaitForAck=>2 for 010a001346032601FF25d688
2021.10.10 19:08:09 4: ZWDongle_Read POE_ZW_OG: rcvd 011301 (answer ZW_SEND_DATA), sending ACK
2021.10.10 19:08:09 5: DevIo_SimpleWrite POE_ZW_OG: 06
2021.10.10 19:08:09 5: POE_ZW_OG: dispatch 011301
2021.10.10 19:08:09 4: ZWDongle_Read POE_ZW_OG: rcvd 0013d600000501ca7f7f7f7f0101034300000002010000 (request ZW_SEND_DATA), sending ACK
2021.10.10 19:08:09 5: DevIo_SimpleWrite POE_ZW_OG: 06
2021.10.10 19:08:09 5: device ack reveived, removing 010a001346032601FF25d688 from dongle sendstack
2021.10.10 19:08:09 5: POE_ZW_OG: dispatch 0013d600000501ca7f7f7f7f0101034300000002010000
2021.10.10 19:08:09 4: CMD:ZW_SEND_DATA ID:00 ARG:000501ca7f7f7f7f0101034300000002010000 CB:d6
2021.10.10 19:08:09 4: POE_ZW_OG transmit OK for CB d6, target Dim_01
2021.10.10 19:08:09 5: Dim_01: timeToCb:0.05 repeaters:1 rssi0:-54 dBm rssi1:N/A ackCh:1 lastCh:1 scheme:LastWorkingRoute rep:SW_02 at 40kbps routeTries:1 lastFailed:
2021.10.10 19:08:17 4: ZWDongle_Read POE_ZW_OG: rcvd 0004004603260316ca00 (request APPLICATION_COMMAND_HANDLER), sending ACK
2021.10.10 19:08:17 5: DevIo_SimpleWrite POE_ZW_OG: 06
2021.10.10 19:08:17 5: POE_ZW_OG: dispatch 0004004603260316ca00
2021.10.10 19:08:17 4: CMD:APPLICATION_COMMAND_HANDLER ID:46 ARG:03260316ca00 CB:00
2021.10.10 19:08:21 4: ZWDongle_Read POE_ZW_OG: rcvd 0004000406310501420891b600 (request APPLICATION_COMMAND_HANDLER), sending ACK
2021.10.10 19:08:21 5: DevIo_SimpleWrite POE_ZW_OG: 06
2021.10.10 19:08:21 5: POE_ZW_OG: dispatch 0004000406310501420891b600
2021.10.10 19:08:21 4: CMD:APPLICATION_COMMAND_HANDLER ID:04 ARG:06310501420891b600 CB:00
2021.10.10 19:08:22 3: ZWave set Dim_01 off

Klappt jetzt

Und das gleiche mit dem AEOTEC
Zitat2021.10.10 19:13:12 3: ZWave set Dim_03 on
2021.10.10 19:13:12 5: ZWDongle_Write 001351032601FF25dc (eba3b9eb)
2021.10.10 19:13:12 5: DevIo_SimpleWrite POE_ZW_OG: 010a001351032601FF25dc95
2021.10.10 19:13:12 5: ACK received, WaitForAck=>2 for 010a001351032601FF25dc95
2021.10.10 19:13:12 4: ZWDongle_Read POE_ZW_OG: rcvd 011301 (answer ZW_SEND_DATA), sending ACK
2021.10.10 19:13:12 5: DevIo_SimpleWrite POE_ZW_OG: 06
2021.10.10 19:13:12 5: POE_ZW_OG: dispatch 011301
2021.10.10 19:13:12 4: ZWDongle_Read POE_ZW_OG: rcvd 0013dc00000f01c17f7f7f7f0101031600000001010000 (request ZW_SEND_DATA), sending ACK
2021.10.10 19:13:12 5: DevIo_SimpleWrite POE_ZW_OG: 06
2021.10.10 19:13:12 5: device ack reveived, removing 010a001351032601FF25dc95 from dongle sendstack
2021.10.10 19:13:12 5: POE_ZW_OG: dispatch 0013dc00000f01c17f7f7f7f0101031600000001010000
2021.10.10 19:13:12 4: CMD:ZW_SEND_DATA ID:00 ARG:000f01c17f7f7f7f0101031600000001010000 CB:dc
2021.10.10 19:13:12 4: POE_ZW_OG transmit OK for CB dc, target Dim_03
2021.10.10 19:13:12 5: Dim_03: timeToCb:0.15 repeaters:1 rssi0:-63 dBm rssi1:N/A ackCh:1 lastCh:1 scheme:LastWorkingRoute rep:SW_01 at 9.6kbps routeTries:1 lastFailed:
2021.10.10 19:13:12 4: ZWDongle_Read POE_ZW_OG: rcvd 000400510326030dc300 (request APPLICATION_COMMAND_HANDLER), sending ACK
2021.10.10 19:13:12 5: DevIo_SimpleWrite POE_ZW_OG: 06
2021.10.10 19:13:12 5: POE_ZW_OG: dispatch 000400510326030dc300
2021.10.10 19:13:12 4: CMD:APPLICATION_COMMAND_HANDLER ID:51 ARG:0326030dc300 CB:00
2021.10.10 19:13:32 3: ZWave set Dim_03 off

Klappt immer noch

Beta-User

Zitat von: skyline am 10 Oktober 2021, 17:44:25
Persönlich finde ich die 100% besser, da Alexa und auch andere Dimmer damit arbeiten.
Ist halt etwas unglücklich, dass der Standard es bis 100% und ein anderer bis 99% macht.
Nach meinem Verständnis sind das eben gerade nicht 99%, sondern "dim 99". Das ist der Maximalwert und damit entspricht "dim 99" eben "100%". Das wäre zumindest die Logik, die auch RHASSPY anwendet. Das schaut, wie ist der Wertebereich und ist "pct" der setter. Nur wenn beides paßt, wird 100% mit "pct 100" übersetzt, sonst wird gerechnet ;) .

Bin also weiter der Meinung, dass man slider und setter so setzen sollte, dass es zum zulässigen Wertebereich paßt, und der geht eben nicht bis 100, selbst wenn man daran "künstlich" was ändert ;) .

(lieben muß man diese Logik nicht, aber so paßt es auch, wenn der Wertebereich eines setters von "-30" bis "42" geht...)
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Beta-User

Na ja, wie dem auch sei...

Habe mal einen "generischen Dimmer" in zwave.template eingebaut, Rückmeldung ist willkommen (dim 99 ist aber weiter bewußt der Maximalwert ;) ). Kommt dann mit dem morgigen update ab 8:00 Uhr.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

skyline

#30
Super!

Bin im Urlaub und kann aktuell nicht weiter testen.

Bei den "dim 99" bin ich trotzdem nicht bei dir  ;) , was aber nicht so tragisch ist.

Ich sehe Fhem als große Zentrale, welche die verschiedenen Standards unter sich vereint.
Da sollte Fhem doch sein eigenen Standard setzen und die Devices dementsprechend anpassen.
Es gibt ja sonst immer unterschiedliche Schnittstelle und somit mehr Probleme.
Aber wie schon gesagt.... ist meine Meinung  :)

Hier mal ein Beispiel für die Probleme
https://forum.fhem.de/index.php/topic,74583.msg663478.html#msg663478


Auch Structure wird dann doch nicht sauber funktionieren.

Du verwendest bei den Shuttern doch glaube auch schon "dim 100" und jetzt sollen wir Anwender verstehen, warum da so und da so....

Vielleicht wäre es ja auch eine Möglichkeit, ein Reading mit einem frei wählbaren Maxwert zu erstellen, als Vorgabe für den Slider. So könnten dann vielleicht Dimmer und Shutter mit einem generic Device abgefrühstückt werden.

Ist aber nur ein Vorschlag.

Vielen Dank für die Umsetzung des Dimmers!

Beta-User

Zitat von: skyline am 12 Oktober 2021, 09:37:55
Du verwendest bei den Shuttern doch glaube auch schon "dim 100" und jetzt sollen wir Anwender verstehen, warum da so und da so....
Das Setzen auf 100 wird zugelassen (wie auch beim Dimmer), aber die slider gehen nur bis 99, und bisher war meine Erfahrung, dass es mehr Probleme verursacht so zu tun, als verstünde das Gerät direkt 100%.

Dass man z.B. für structure dann weitere Lösungen braucht, steht auf einem anderen Blatt.

Zitat
Vielleicht wäre es ja auch eine Möglichkeit, ein Reading mit einem frei wählbaren Maxwert zu erstellen, als Vorgabe für den Slider. So könnten dann vielleicht Dimmer und Shutter mit einem generic Device abgefrühstückt werden.
Die ZWave-Shutter-templates sind sehr speziell, weil man darüber auch den Betriebsmodus (drehbare Lamellen oder nicht) festlegen kann. Macht m.E. keinen Sinn, das zusammenfassen zu wollen. Für "einfache" shutter ginge es evtl., aber da wäre dann der genericDeviceType wieder unterschiedlich zu "light". Ein einfaches shutter-Template nehme ich aber gerne auf, falls jemand was beisteuert bzw. bestätigt, dass es im Prinzip das dimmer auch täte!

Zitat von: skyline am 12 Oktober 2021, 09:37:55
Ich sehr Fhem als große Zentrale, welche die verschiedenen Standards unter sich vereint.
Da sollte Fhem doch sein eigenen Standard setzen und die Devices dementsprechend anpassen.
Es gibt ja sonst immer unterschiedliche Schnittstelle und somit mehr Probleme.
Das ist ja im Prinzip richtig, die Probleme fangen aber da an, wo die Hardware sich das anders vorstellt. Ein Modulautor muss zu allererst sehen, dass er die Hardware in den Griff bekommt, und das führt halt nicht zwangsläufig dazu, dass die Readings und setter "schön" oder gar "standardisiert" wären. Es wäre ja schon schön, wenn wir wenigstens sowas wie einheitliche Reading-Namen hinbekämen (unterstellt, es verbirgt sich hinter einem Etikett auch derselbe Inhalt...).
Hier ist es aber eben (leicht) unterschiedlicher Inhalt, eben "dim" und nicht "pct"....
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

skyline

Klar, die Funktion steht an erster Stelle!

Mit "set dim 100" hatte ich aber ohne die Anpassung durch das Userreading Probleme, vielleicht sollte man das auch mit aufnehmen.
So sollte dann auch vielleicht "Structure" passen.

Gruß Marco

Beta-User

Zitat von: skyline am 12 Oktober 2021, 13:39:17
Klar, die Funktion steht an erster Stelle!
Darum geht es: eine möglichst funktionale Lösung anzubieten (und möglichst noch Hinweise zu verlinken, warum es ggf. soherum gemacht wurde und nicht anders...)

ZitatMit "set dim 100" hatte ich aber ohne die Anpassung durch das Userreading Probleme, vielleicht sollte man das auch mit aufnehmen.
So sollte dann auch vielleicht "Structure" passen.
Da ist mir nicht klar, wie es im Detail gemeint ist:
- eventMap wird verwendet, um "versehentliche" dim 100-Befehle abzufangen;
- Rudi hatte vorgeschlagen, in "classes" für die "richtige" Reihenfolge zu sorgen, damit "on" funktioniert. Das sollte via attrTemplate gefixt sein;
- "dim" bekommt einen Wert via userReadings, und zwar (wenn eine Rückmeldung erfolgt) auch aus dem reportedState. Eventuell muss man da vorab noch Assoziationen fixen?
War noch was anderes gemeint?

Vermutlich wäre es besser, den Ball nach dem Urlaub aufzunehmen, Trockenübungen sind manchmal nicht zielführend?
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

skyline

Ich meinte diese eventMap (nicht userReading  :-[ )
{ usr=>{'dim.100'=>'dim 99' } }

Das würde vielleicht einige Fehler, wie zum Beispiel durch "Structure" abfangen.

Beta-User

...die ist drin...

Trotzdem bleibt dann uU. das Thema, dass der Status einer structure ggf. nicht richtig angezeigt wird, weil die einen Devices da drin dann eben auf "pct 100" stehen, und die anderen auf "dim 99". Muss man ggf. nacharbeiten.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

skyline

Zitat von: Beta-User am 10 Oktober 2021, 19:25:00
Nach meinem Verständnis sind das eben gerade nicht 99%, sondern "dim 99". Das ist der Maximalwert und damit entspricht "dim 99" eben "100%". Das wäre zumindest die Logik, die auch RHASSPY anwendet. Das schaut, wie ist der Wertebereich und ist "pct" der setter. Nur wenn beides paßt, wird 100% mit "pct 100" übersetzt, sonst wird gerechnet ;) .

Ich habe das heute noch mal getestet und "Dimm das Licht auf 100%" entspricht einem "dim 100".

Das eventMap { usr=>{'dim.100'=>'dim 99' } } ist dann also zwingend erforderlich.


Beta-User

 ;D nochmal: Es ist mir schon klar, dass das Sinn macht, dieses eventmapping so drin zu lassen ;D ;D ;D . Wie sonst sollte man "irregeleitete User-Kommandos" abfangen :P ...

Es ging bei "bis 99" "nur" um den slider, und den mache ich NICHT ohne Not auf bis 100, weil dim eben dim ist und nicht pct 8) .
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

skyline

Ich wollte das nur für andere Anwender noch mal niederschreiben.
Vielleicht stolpert jemand auch darüber.