FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: michisa86888 am 10 Februar 2023, 20:18:40

Titel: Shelly 2 lässt sich nicht kalibrieren
Beitrag von: michisa86888 am 10 Februar 2023, 20:18:40
Hallo zusammen,
ich benutze seid einiger Zeit einen Shelly 2 mit Rolladenmotor für unsere Hühnerklappe. Der Shelly ist über die Funktion OPEN/CLOSE WORKING TIME so eingestellt das ganz geschlossen und geöffnet wird. Habe nun in FHEM aber ohne Kalibrierung keine Statusanzeigen ob geöffnet oder geschlossen.
Will ich den Shelly kalibrieren beachtet er die OPEN/CLOSE Time nicht und der Motor dreht einfach weiter. Die Endanschläge vom Motor lassen sich leider auch nicht einstellen wenn er überhaupt welche hat. Wie könnte ich den Shelly trotzdem kalibrieren evtl. über die Fahrzeiten?

Oder wäre es möglich in FHEM Userattribut schreiben zu lassen auf Grundlage vom Shelly Reading
current
Hier könnte ich die Meldungen opens und closes als Trigger verwenden?
Titel: Antw:Shelly 2 lässt sich nicht kalibrieren
Beitrag von: Sany am 11 Februar 2023, 13:08:16
Hi,
automatisch Kalibrieren geht wohl nur, wenn die Motoren Endschalter haben und auch eine gewisse Leistung ziehen, vielleicht so ab 3-5W? Bei der Kalibrierung fährt der Shelly einen Rollo erst mal auf, dann ganz zu, dann wieder auf, dann in Schritten 0 25% 50% (75%)? Weiss es nicht mehr genau, ist ne Weile her. Die Fahrten werden recht schnell umgeschaltet. Im Shelly-Forum wurde mal beschrieben, wie man das mit Glühlampen "simulieren" kann, denke aber, das ist nicht unbedingt nötig.
Das Reading current kennt bei mir opens, closes und stop. Das sollte doch genügen, einen definierten Stand festzustellen. (Ich betreibe mit dem Shelly Umschaltrelais für einen Sonnenschutz, die laufen mit 24V und geringer Leistung, deshalb geht die Autokalibration gar nicht. Habe die Zeiten gestoppt und im Shelly eingetragen, die Rollos stoppen von alleine am Endanschlag).
Ich würde den Eventmonitor mit Filter auf den Shelly laufen lassen, evtl die event-on-xxx Attribute vorübergehend löschen und dann die Hühnerklappe auf und zufahren. Damit bekommst Du alles, was der Shelly beim öffnen/schliessen so von sich gibt und Du kannst für die Weiterverarbeitung gleich entsprechende Trigger für notify/DOIF/... erzeugen lassen.


Gruß


Sany
Titel: Antw:Shelly 2 lässt sich nicht kalibrieren
Beitrag von: michisa86888 am 15 Februar 2023, 20:48:49
Ja so in der Art habe ich mir das gedacht, mit Notify oder DOIF ein Status setzen über das reading current. Finde da nur überhaupt kein Ansatz wie das aussehen kann? Soll das DOIF ein Dummy schalten? Oder kann das DOIF z.B. dann direkt in ein Userrreading den aktuellen Status rein schreiben?
Titel: Antw:Shelly 2 lässt sich nicht kalibrieren
Beitrag von: Sany am 17 Februar 2023, 15:24:43
Ich hatte es ja schon geschrieben:
ZitatIch würde den Eventmonitor mit Filter auf den Shelly laufen lassen, evtl die event-on-xxx Attribute vorübergehend löschen und dann die Hühnerklappe auf und zufahren. Damit bekommst Du alles, was der Shelly beim öffnen/schliessen so von sich gibt und Du kannst für die Weiterverarbeitung gleich entsprechende Trigger für notify/DOIF/... erzeugen lassen.
Gut wäre es vorher noch
Zitatattr global mseclog 1
in die fhem Eingabezeile einzugeben, dann werden die Millisekunden bei den Events mit angezeigt.
Du kannst dann z.B. mit einem DOIF und DOIF_Readings dir die Zustände sehr einfach in ein Reading schreiben lassen und zur Anzeige oder Triggerung zu verwenden.
Mach mal das mit dem Eventmonitor, lass ruhig ne Minute oder so zwischen öffnen->off und schliessen->geschlossen verstreichen, damit man gut erkennen kann, wie sich die Readings vom Shelly ändern. Das postest Du hier und dann kann man da was draus machen. UNd ein List vom Shelly bitte auch.

Gruß


Sany

P.S. ich schlage hier (dann) eine Lösung mit DOIF vor, weil ich es so machen würde. Das geht natürlich auch anders, genauso wie es viele Wege nach Rom gibt. Aber erst mal auf die Eventmonitor-Daten warten.....
Titel: Antw:Shelly 2 lässt sich nicht kalibrieren
Beitrag von: michisa86888 am 20 Februar 2023, 13:15:20
Okay hier mal das Log von ein paar Fahrten....

2023-02-20 13:12:10.664 MQTT2_DEVICE Huehnerklappe set_open
2023-02-20 13:12:11.028 MQTT2_DEVICE Huehnerklappe opening
2023-02-20 13:12:11.028 MQTT2_DEVICE Huehnerklappe current: opens
2023-02-20 13:12:11.034 MQTT2_DEVICE Huehnerklappe pct: 101
2023-02-20 13:12:11.034 MQTT2_DEVICE Huehnerklappe 101
2023-02-20 13:12:11.038 MQTT2_DEVICE Huehnerklappe roller_0_stop_reason: normal
2023-02-20 13:12:11.230 MQTT2_DEVICE Huehnerklappe roller_0_power: 138.32
2023-02-20 13:12:11.235 MQTT2_DEVICE Huehnerklappe power: 138.32
2023-02-20 13:12:11.240 MQTT2_DEVICE Huehnerklappe roller_0_energy: 11723
2023-02-20 13:12:11.244 MQTT2_DEVICE Huehnerklappe energy: 11723
2023-02-20 13:12:14.196 MQTT2_DEVICE Huehnerklappe roller_0_energy: 11723
2023-02-20 13:12:14.207 MQTT2_DEVICE Huehnerklappe energy: 11723
2023-02-20 13:12:20.524 MQTT2_DEVICE Huehnerklappe current: stop
2023-02-20 13:12:20.530 MQTT2_DEVICE Huehnerklappe pct: 101
2023-02-20 13:12:20.530 MQTT2_DEVICE Huehnerklappe 101
2023-02-20 13:12:20.535 MQTT2_DEVICE Huehnerklappe roller_0_stop_reason: normal
2023-02-20 13:12:50.537 MQTT2_DEVICE Huehnerklappe current: stop
2023-02-20 13:12:50.543 MQTT2_DEVICE Huehnerklappe pct: 101
2023-02-20 13:12:50.543 MQTT2_DEVICE Huehnerklappe 101
2023-02-20 13:12:50.548 MQTT2_DEVICE Huehnerklappe roller_0_stop_reason: normal
2023-02-20 13:12:50.553 MQTT2_DEVICE Huehnerklappe roller_0_power: 0.00
2023-02-20 13:12:50.557 MQTT2_DEVICE Huehnerklappe power: 0.00
2023-02-20 13:12:50.562 MQTT2_DEVICE Huehnerklappe roller_0_energy: 11723
2023-02-20 13:12:50.566 MQTT2_DEVICE Huehnerklappe energy: 11723
2023-02-20 13:12:50.571 MQTT2_DEVICE Huehnerklappe input1: 0
2023-02-20 13:12:50.576 MQTT2_DEVICE Huehnerklappe input0: 0
2023-02-20 13:12:50.580 MQTT2_DEVICE Huehnerklappe temperature: 32.28
2023-02-20 13:12:50.585 MQTT2_DEVICE Huehnerklappe temperature_f: 90.11
2023-02-20 13:12:50.589 MQTT2_DEVICE Huehnerklappe overtemperature: 0
2023-02-20 13:12:50.594 MQTT2_DEVICE Huehnerklappe temperature_status: Normal
2023-02-20 13:12:50.598 MQTT2_DEVICE Huehnerklappe voltage: 242.68
2023-02-20 13:12:50.999 MQTT2_DEVICE Huehnerklappe set_close
2023-02-20 13:12:51.375 MQTT2_DEVICE Huehnerklappe closing
2023-02-20 13:12:51.375 MQTT2_DEVICE Huehnerklappe current: closes
2023-02-20 13:12:51.381 MQTT2_DEVICE Huehnerklappe pct: 101
2023-02-20 13:12:51.381 MQTT2_DEVICE Huehnerklappe 101
2023-02-20 13:12:51.386 MQTT2_DEVICE Huehnerklappe roller_0_stop_reason: normal
2023-02-20 13:12:51.575 MQTT2_DEVICE Huehnerklappe roller_0_power: 141.01
2023-02-20 13:12:51.580 MQTT2_DEVICE Huehnerklappe power: 141.01
2023-02-20 13:12:51.585 MQTT2_DEVICE Huehnerklappe roller_0_energy: 11723
2023-02-20 13:12:51.590 MQTT2_DEVICE Huehnerklappe energy: 11723
2023-02-20 13:13:00.474 MQTT2_DEVICE Huehnerklappe current: stop
2023-02-20 13:13:00.479 MQTT2_DEVICE Huehnerklappe pct: 101
2023-02-20 13:13:00.479 MQTT2_DEVICE Huehnerklappe 101
2023-02-20 13:13:00.484 MQTT2_DEVICE Huehnerklappe roller_0_stop_reason: normal
2023-02-20 13:13:16.234 MQTT2_DEVICE Huehnerklappe set_open
2023-02-20 13:13:16.520 MQTT2_DEVICE Huehnerklappe opening
2023-02-20 13:13:16.520 MQTT2_DEVICE Huehnerklappe current: opens
2023-02-20 13:13:16.526 MQTT2_DEVICE Huehnerklappe pct: 101
2023-02-20 13:13:16.526 MQTT2_DEVICE Huehnerklappe 101
2023-02-20 13:13:16.532 MQTT2_DEVICE Huehnerklappe roller_0_stop_reason: normal
2023-02-20 13:13:16.715 MQTT2_DEVICE Huehnerklappe roller_0_power: 137.56
2023-02-20 13:13:16.720 MQTT2_DEVICE Huehnerklappe power: 137.56
2023-02-20 13:13:16.725 MQTT2_DEVICE Huehnerklappe roller_0_energy: 11862
2023-02-20 13:13:16.729 MQTT2_DEVICE Huehnerklappe energy: 11862
2023-02-20 13:13:20.976 MQTT2_DEVICE Huehnerklappe roller_0_energy: 11862
2023-02-20 13:13:20.981 MQTT2_DEVICE Huehnerklappe energy: 11862
2023-02-20 13:13:26.012 MQTT2_DEVICE Huehnerklappe current: stop
2023-02-20 13:13:26.018 MQTT2_DEVICE Huehnerklappe pct: 101
2023-02-20 13:13:26.018 MQTT2_DEVICE Huehnerklappe 101
2023-02-20 13:13:26.023 MQTT2_DEVICE Huehnerklappe roller_0_stop_reason: normal

Dazu noch das list vom Device

Internals:
   CID        shellyswitch25_98F4ABF3686D
   DEF        shellyswitch25_98F4ABF3686D
   FUUID      62246674-f33f-487e-b8db-38c9e4b0087ee4c8
   FVERSION   10_MQTT2_DEVICE.pm:0.268600/2022-12-16
   IODev      MQTT2_FHEM_Server
   LASTInputDev MQTT2_FHEM_Server
   MQTT2_FHEM_Server_CONN MQTT2_FHEM_Server_172.17.0.1_57746
   MQTT2_FHEM_Server_MSGCNT 698
   MQTT2_FHEM_Server_TIME 2023-02-20 13:14:56
   MSGCNT     842
   NAME       Huehnerklappe
   NR         83
   STATE      <a href="http://192.168.178.205" target="_blank">
true
</a>
101/stop
   TYPE       MQTT2_DEVICE
   eventCount 223
   mqtt_io_MSGCNT 144
   mqtt_io_TIME 2023-02-20 12:57:11
   READINGS:
     2023-02-20 12:50:31   IODev           MQTT2_FHEM_Server
     2023-02-20 12:50:41   actions_stats_skipped 0
     2023-02-20 12:50:41   cfg_changed_cnt 4
     2023-02-20 12:50:41   cloud_connected false
     2023-02-20 12:50:41   cloud_enabled   false
     2023-02-20 13:14:56   current         stop
     2023-02-20 13:14:56   energy          11994
     2023-02-20 12:50:41   fs_free         145329
     2023-02-20 12:50:41   fs_size         233681
     2023-02-20 12:50:41   fw_ver          20221027-092056/v1.12.1-ga9117d3
     2023-02-20 12:50:41   has_update      false
     2023-02-20 12:50:41   id              shellyswitch25-98F4ABF3686D
     2023-02-20 13:14:56   input0          0
     2023-02-20 13:14:56   input1          0
     2023-02-20 12:50:41   inputs_1_event 
     2023-02-20 12:50:41   inputs_1_event_cnt 0
     2023-02-20 12:50:41   inputs_1_input  0
     2023-02-20 12:50:41   inputs_2_event 
     2023-02-20 12:50:41   inputs_2_event_cnt 0
     2023-02-20 12:50:41   inputs_2_input  0
     2023-02-20 12:50:41   ip              192.168.178.205
     2023-02-20 12:50:41   mac             98F4ABF3686D
     2023-02-20 12:50:41   meters_1_counters_1 0.000
     2023-02-20 12:50:41   meters_1_counters_2 0.000
     2023-02-20 12:50:41   meters_1_counters_3 0.000
     2023-02-20 12:50:41   meters_1_is_valid true
     2023-02-20 12:50:41   meters_1_overpower 0.00
     2023-02-20 12:50:41   meters_1_power  0.00
     2023-02-20 12:50:41   meters_1_timestamp 1676897441
     2023-02-20 12:50:41   meters_1_total  5748
     2023-02-20 12:50:41   meters_2_counters_1 0.000
     2023-02-20 12:50:41   meters_2_counters_2 0.000
     2023-02-20 12:50:41   meters_2_counters_3 0.000
     2023-02-20 12:50:41   meters_2_is_valid true
     2023-02-20 12:50:41   meters_2_overpower 0.00
     2023-02-20 12:50:41   meters_2_power  0.00
     2023-02-20 12:50:41   meters_2_timestamp 1676897441
     2023-02-20 12:50:41   meters_2_total  5837
     2023-02-20 12:50:41   mode            roller
     2023-02-20 12:50:41   model           SHSW-25
     2023-02-20 12:50:41   mqtt_connected  true
     2023-02-20 12:50:41   new_fw          false
     2023-02-20 12:50:41   online          true
     2023-02-20 13:14:56   overtemperature 0
     2023-02-20 13:14:56   pct             101
     2023-02-20 13:14:56   power           0.00
     2023-02-20 12:50:41   ram_free        37112
     2023-02-20 12:50:41   ram_total       50728
     2023-02-20 13:14:56   roller_0_energy 11994
     2023-02-20 13:14:56   roller_0_power  0.00
     2023-02-20 13:14:56   roller_0_stop_reason normal
     2023-02-20 12:50:41   rollers_1_calibrating false
     2023-02-20 12:50:41   rollers_1_current_pos 106
     2023-02-20 12:50:41   rollers_1_is_valid true
     2023-02-20 12:50:41   rollers_1_last_direction open
     2023-02-20 12:50:41   rollers_1_overtemperature false
     2023-02-20 12:50:41   rollers_1_positioning false
     2023-02-20 12:50:41   rollers_1_power 0.00
     2023-02-20 12:50:41   rollers_1_safety_switch false
     2023-02-20 12:50:41   rollers_1_source mqtt
     2023-02-20 12:50:41   rollers_1_state stop
     2023-02-20 12:50:41   rollers_1_stop_reason normal
     2023-02-20 12:50:41   serial          1166
     2023-02-20 13:14:56   state           101
     2023-02-20 13:14:56   temperature     31.39
     2023-02-20 13:14:56   temperature_f   88.51
     2023-02-20 13:14:56   temperature_status Normal
     2023-02-20 12:50:41   time            12:50
     2023-02-20 12:50:41   tmp_is_valid    true
     2023-02-20 12:50:41   tmp_tC          37.65
     2023-02-20 12:50:41   tmp_tF          99.77
     2023-02-20 12:50:41   unixtime        1676893841
     2022-10-25 17:40:03   update_beta_version 20221014-081716/v1.12.1-rc1-gd2158aa
     2023-02-20 12:50:41   update_has_update false
     2023-02-20 12:50:41   update_new_version 20221027-092056/v1.12.1-ga9117d3
     2023-02-20 12:50:41   update_old_version 20221027-092056/v1.12.1-ga9117d3
     2023-02-20 12:50:41   update_status   idle
     2023-02-20 12:50:41   uptime          3215809
     2023-02-20 13:14:56   voltage         242.15
     2023-02-20 12:50:41   wifi_sta_connected true
     2023-02-20 12:50:41   wifi_sta_ip     192.168.178.205
     2023-02-20 12:50:41   wifi_sta_rssi   -77
     2023-02-20 12:50:41   wifi_sta_ssid   MiSAMI-WLAN
   hmccu:
Attributes:
   alias      Huehnerklappe
   cmdIcon    open:fts_shutter_up close:fts_shutter_down stop:fts_shutter_manual half:fts_shutter_50
   comment    Shelly 2.5 in Roller-Mode. 0=opened / 100=closed
   devStateIcon .*/open:fts_shutter_up@red .*/close:fts_shutter_down@red true:10px-kreis-gruen false:10px-kreis-rot 0/stop:fts_shutter_100 100/stop:fts_shutter_10 9\d/stop:fts_shutter_10 8\d/stop:fts_shutter_20 7\d/stop:fts_shutter_30 6\d/stop:fts_shutter_40 5\d/stop:fts_shutter_50 4\d/stop:fts_shutter_60 3\d/stop:fts_shutter_70 2\d/stop:fts_shutter_80 1\d/stop:fts_shutter_90 0\d/stop:fts_shutter_100 set_.*:fts_shutter_updown
   eventMap   open:opens close:closes
   genericDeviceType blind
   icon       fts_shutter_30
   model      shelly25_roller_invert_1
   readingList shellies/shellyswitch25-98F4ABF3686D/roller/0/pos:.* {'pct' => 100-$EVENT}
  shellies/shellyswitch25-98F4ABF3686D/status/0/rollers:.* power
  shellies/shellyswitch25-98F4ABF3686D/online:.* online
  shellies/shellyswitch25-98F4ABF3686D/announce:.* { json2nameValue($EVENT) }
  shellies/announce:.* { $EVENT =~ m,..id...shellyswitch25-98F4ABF3686D...mac.*, ? json2nameValue($EVENT) : return }
  shellies/shellyswitch25-98F4ABF3686D/roller/0:.* current
  shellies/shellyswitch25-98F4ABF3686D/roller/0:open {{'state' => 'opening'}}
  shellies/shellyswitch25-98F4ABF3686D/roller/0:close {{'state' => 'closing'}}
  shellies/shellyswitch25-98F4ABF3686D/roller/0/pos:.* {'state' => 100-$EVENT}
  shellies/shellyswitch25-98F4ABF3686D/input/1:.* input1
  shellies/shellyswitch25-98F4ABF3686D/input/0:.* input0
  shellies/shellyswitch25-98F4ABF3686D/relay/power:.* power
  shellies/shellyswitch25-98F4ABF3686D/relay/energy:.* energy
  shellies/shellyswitch25-98F4ABF3686D/temperature:.* temperature
  shellies/shellyswitch25-98F4ABF3686D/overtemperature:.* overtemperature
  shellies/shellyswitch25-98F4ABF3686D/roller/0/power:.* roller_0_power
  shellies/shellyswitch25-98F4ABF3686D/roller/0/energy:.* roller_0_energy
  shellies/shellyswitch25-98F4ABF3686D/temperature_f:.* temperature_f
shellyswitch25_98F4ABF3686D:shellies/shellyswitch25-98F4ABF3686D/info:.* { json2nameValue($EVENT) }
shellyswitch25_98F4ABF3686D:shellies/shellyswitch25-98F4ABF3686D/roller/0/stop_reason:.* roller_0_stop_reason
shellyswitch25_98F4ABF3686D:shellies/shellyswitch25-98F4ABF3686D/temperature_status:.* temperature_status
shellyswitch25_98F4ABF3686D:shellies/shellyswitch25-98F4ABF3686D/voltage:.* voltage
   room       21_Garten
   setList    open:noArg shellies/shellyswitch25-98F4ABF3686D/roller/0/command open
  close:noArg shellies/shellyswitch25-98F4ABF3686D/roller/0/command close
  half:noArg shellies/shellyswitch25-98F4ABF3686D/roller/0/command/pos 50
  stop:noArg shellies/shellyswitch25-98F4ABF3686D/roller/0/command stop
  pct:slider,0,1,100 {"shellies/shellyswitch25-98F4ABF3686D/roller/0/command/pos ".(100-$EVTPART1)}
  x_recalibration:noArg shellies/shellyswitch25-98F4ABF3686D/roller/0/command rc
  x_update:noArg shellies/shellyswitch25-98F4ABF3686D/command update_fw
  x_mqttcom shellies/shellyswitch25-98F4ABF3686D/command $EVTPART1
   setStateList open close half stop pct
   stateFormat <a href="http://ip" target="_blank">
online
</a>
state/current
   webCmd     :open:close:half:stop:pct
Titel: Antw:Shelly 2 lässt sich nicht kalibrieren
Beitrag von: kabanett am 20 Februar 2023, 17:31:02
Zitat von: michisa86888 am 10 Februar 2023, 20:18:40
Die Endanschläge vom Motor lassen sich leider auch nicht einstellen wenn er überhaupt welche hat.

Hallo michisa86888,
würdest du verraten, was für einen Motor das ist?!
Ich kenne welche die mechanisch oder elektr(on)isch einzustellen sind, aber ganz ohne...
Nur interesse halber.

Gruß 
Titel: Antw:Shelly 2 lässt sich nicht kalibrieren
Beitrag von: Sany am 25 Februar 2023, 22:16:47
Sorry für die späte Rückmeldung, ich war mal einige Tage "offline"....

Wenn ich Dich recht verstehe willst Du ja nur den Zustand angezeigt bekommen, ob die Klappe nun offen oder zu ist. Das geht prima per userReadings, da braucht es gar nix weiter.
Ein Vorschlag:
attr Huehnerklappe userReadings Klappe:current.* {(ReadingsVal($name,"Klappe","--") eq "open" and ReadingsVal($name,"current","++") eq "stop")?"OPEN":(ReadingsVal($name,"Klappe","--") eq "close" and ReadingsVal($name,"current","++") eq "stop")?"CLOSED":ReadingsVal($name,"current","xx")}

Es wird das userReadings Klappe erzeugt und bei current: opens/closes mit opens/closes befüllt, bei current: stop aber abhängig ob es auf opens oder closes war mit OPEN oder CLOSED. Damit hast Du im Reading Klappe alle 4 Zustände.

Probier das mal.



Viel Erfolg!


Sany

Edit: userReadings Abfragen korrigiert, da EventMap im Device gesetzt ist
Titel: Antw:Shelly 2 lässt sich nicht kalibrieren
Beitrag von: michisa86888 am 01 März 2023, 21:41:14
Vom Prinzip her, genau das was ich brauche.
Aber das userreading mach so immer genau das was im reading current steht, also open - stop - close -stop
Titel: Antw:Shelly 2 lässt sich nicht kalibrieren
Beitrag von: Sany am 01 März 2023, 22:10:23
ich habe bei mir dieses am laufen (Rollo entspricht Klappe):
Rollo:current.* {(ReadingsVal($name,"Rollo","--") eq "open" and ReadingsVal($name,"current","++") eq "stop")?"OPEN":(ReadingsVal($name,"Rollo","--") eq "close" and ReadingsVal($name,"current","++") eq "stop")?"CLOSED":ReadingsVal($name,"current","xx")}
eventMap    open:opens close:closes
ein Shelly 2.5 mit dem template shelly25_roller_invert_1
Also eigentlich wie bei Dir, oder?
Es sieht so aus, dass die Abfragen bei "stop" nicht greifen, weil wohl das Reading Klappe bei dir was anderes enthält als in der Bedingung auf open oder close abgefragt wird. Das musst Du mal genau beobachten und anpassen. Die EventMap spielt da irgendwie eine Rolle, kann aber gerade nicht sagen, was der shelly als Wert liefert und was eventmap daraus macht.
Sonst poste noch mal ein list von Deinem Shelly mit dem userReadings.


Gruß


Sany
Titel: Antw:Shelly 2 lässt sich nicht kalibrieren
Beitrag von: michisa86888 am 02 März 2023, 20:10:32
Ich habe jetzt mal ein paar Varianten probiert. Auch mal eventmap gelöscht, dafür dann closes und opens benutzt. Bin noch nicht zur Lösung gekommen.
Hier mal ein list meines Shelly´s.
Internals:
   CID        shellyswitch25_98F4ABF3686D
   DEF        shellyswitch25_98F4ABF3686D
   FUUID      62246674-f33f-487e-b8db-38c9e4b0087ee4c8
   IODev      MQTT2_FHEM_Server
   LASTInputDev mqtt_io
   MQTT2_FHEM_Server_CONN MQTT2_FHEM_Server_172.27.0.1_53642
   MQTT2_FHEM_Server_MSGCNT 37275
   MQTT2_FHEM_Server_TIME 2023-03-02 20:07:49
   MSGCNT     66563
   NAME       Huehnerklappe
   NR         80
   STATE      <a href="http://192.168.178.205" target="_blank">
true
</a>
101/stop
   TYPE       MQTT2_DEVICE
   eventCount 66555
   mqtt_io_MSGCNT 29288
   mqtt_io_TIME 2023-03-02 20:07:49
   READINGS:
     2023-03-01 21:59:14   IODev           MQTT2_FHEM_Server
     2023-03-02 20:07:49   Klappe          stop
     2023-03-01 21:59:30   actions_stats_skipped 0
     2023-03-01 21:59:30   cfg_changed_cnt 8
     2023-03-01 21:59:30   cloud_connected false
     2023-03-01 21:59:30   cloud_enabled   false
     2023-03-02 20:07:49   current         stop
     2023-03-02 20:07:49   energy          18260
     2023-03-01 21:59:30   fs_free         145329
     2023-03-01 21:59:30   fs_size         233681
     2023-03-01 21:59:30   fw_ver          20221027-092056/v1.12.1-ga9117d3
     2023-03-01 21:59:30   has_update      false
     2023-03-01 21:59:30   id              shellyswitch25-98F4ABF3686D
     2023-03-02 20:07:49   input0          0
     2023-03-02 20:07:49   input1          0
     2023-03-01 21:59:30   inputs_1_event 
     2023-03-01 21:59:30   inputs_1_event_cnt 0
     2023-03-01 21:59:30   inputs_1_input  0
     2023-03-01 21:59:30   inputs_2_event 
     2023-03-01 21:59:30   inputs_2_event_cnt 0
     2023-03-01 21:59:30   inputs_2_input  0
     2023-03-01 21:59:30   ip              192.168.178.205
     2023-03-01 21:59:30   mac             98F4ABF3686D
     2023-03-01 21:59:30   meters_1_counters_1 0.000
     2023-03-01 21:59:30   meters_1_counters_2 0.000
     2023-03-01 21:59:30   meters_1_counters_3 0.000
     2023-03-01 21:59:30   meters_1_is_valid true
     2023-03-01 21:59:30   meters_1_overpower 0.00
     2023-03-01 21:59:30   meters_1_power  0.00
     2023-03-01 21:59:30   meters_1_timestamp 1677707972
     2023-03-01 21:59:30   meters_1_total  8625
     2023-03-01 21:59:30   meters_2_counters_1 0.000
     2023-03-01 21:59:30   meters_2_counters_2 0.000
     2023-03-01 21:59:30   meters_2_counters_3 0.000
     2023-03-01 21:59:30   meters_2_is_valid true
     2023-03-01 21:59:30   meters_2_overpower 0.00
     2023-03-01 21:59:30   meters_2_power  0.00
     2023-03-01 21:59:30   meters_2_timestamp 1677707972
     2023-03-01 21:59:30   meters_2_total  9238
     2023-03-01 21:59:30   mode            roller
     2023-03-01 21:59:30   model           SHSW-25
     2023-03-01 21:59:30   mqtt_connected  true
     2023-03-01 21:59:30   new_fw          false
     2023-03-01 21:59:30   online          true
     2023-03-02 20:07:49   overtemperature 0
     2023-03-02 20:07:49   pct             101
     2023-03-02 20:07:49   power           0.00
     2023-03-01 21:59:30   ram_free        36896
     2023-03-01 21:59:30   ram_total       50728
     2023-03-02 20:07:49   roller_0_energy 18260
     2023-03-02 20:07:49   roller_0_power  0.00
     2023-03-02 20:07:49   roller_0_stop_reason normal
     2023-03-01 21:59:30   rollers_1_calibrating false
     2023-03-01 21:59:30   rollers_1_current_pos 106
     2023-03-01 21:59:30   rollers_1_is_valid true
     2023-03-01 21:59:30   rollers_1_last_direction close
     2023-03-01 21:59:30   rollers_1_overtemperature false
     2023-03-01 21:59:30   rollers_1_positioning false
     2023-03-01 21:59:30   rollers_1_power 0.00
     2023-03-01 21:59:30   rollers_1_safety_switch false
     2023-03-01 21:59:30   rollers_1_source mqtt
     2023-03-01 21:59:30   rollers_1_state stop
     2023-03-01 21:59:30   rollers_1_stop_reason normal
     2023-03-01 21:59:30   serial          1741
     2023-03-02 20:07:49   state           101
     2023-03-02 20:07:49   temperature     21.43
     2023-03-02 20:07:49   temperature_f   70.57
     2023-03-02 20:07:49   temperature_status Normal
     2023-03-01 21:59:30   time            21:59
     2023-03-01 21:59:30   tmp_is_valid    true
     2023-03-01 21:59:30   tmp_tC          22.27
     2023-03-01 21:59:30   tmp_tF          72.08
     2023-03-01 21:59:30   unixtime        1677704372
     2023-03-01 21:59:30   update_has_update false
     2023-03-01 21:59:30   update_new_version 20221027-092056/v1.12.1-ga9117d3
     2023-03-01 21:59:30   update_old_version 20221027-092056/v1.12.1-ga9117d3
     2023-03-01 21:59:30   update_status   idle
     2023-03-01 21:59:30   uptime          4026319
     2023-03-02 20:07:49   voltage         237.72
     2023-03-01 21:59:30   wifi_sta_connected true
     2023-03-01 21:59:30   wifi_sta_ip     192.168.178.205
     2023-03-01 21:59:30   wifi_sta_rssi   -73
     2023-03-01 21:59:30   wifi_sta_ssid   MiSAMI-WLAN
   hmccu:
Attributes:
   alias      Huehnerklappe
   cmdIcon    open:fts_shutter_up close:fts_shutter_down stop:fts_shutter_manual half:fts_shutter_50
   comment    Shelly 2.5 in Roller-Mode. 0=opened / 100=closed
   devStateIcon .*/open:fts_shutter_up@red .*/close:fts_shutter_down@red true:10px-kreis-gruen false:10px-kreis-rot 0/stop:fts_shutter_100 100/stop:fts_shutter_10 9\d/stop:fts_shutter_10 8\d/stop:fts_shutter_20 7\d/stop:fts_shutter_30 6\d/stop:fts_shutter_40 5\d/stop:fts_shutter_50 4\d/stop:fts_shutter_60 3\d/stop:fts_shutter_70 2\d/stop:fts_shutter_80 1\d/stop:fts_shutter_90 0\d/stop:fts_shutter_100 set_.*:fts_shutter_updown
   eventMap   open:opens close:closes
   genericDeviceType blind
   icon       fts_shutter_30
   model      shelly25_roller_invert_1
   readingList shellies/shellyswitch25-98F4ABF3686D/roller/0/pos:.* {'pct' => 100-$EVENT}
  shellies/shellyswitch25-98F4ABF3686D/status/0/rollers:.* power
  shellies/shellyswitch25-98F4ABF3686D/online:.* online
  shellies/shellyswitch25-98F4ABF3686D/announce:.* { json2nameValue($EVENT) }
  shellies/announce:.* { $EVENT =~ m,..id...shellyswitch25-98F4ABF3686D...mac.*, ? json2nameValue($EVENT) : return }
  shellies/shellyswitch25-98F4ABF3686D/roller/0:.* current
  shellies/shellyswitch25-98F4ABF3686D/roller/0:open {{'state' => 'opening'}}
  shellies/shellyswitch25-98F4ABF3686D/roller/0:close {{'state' => 'closing'}}
  shellies/shellyswitch25-98F4ABF3686D/roller/0/pos:.* {'state' => 100-$EVENT}
  shellies/shellyswitch25-98F4ABF3686D/input/1:.* input1
  shellies/shellyswitch25-98F4ABF3686D/input/0:.* input0
  shellies/shellyswitch25-98F4ABF3686D/relay/power:.* power
  shellies/shellyswitch25-98F4ABF3686D/relay/energy:.* energy
  shellies/shellyswitch25-98F4ABF3686D/temperature:.* temperature
  shellies/shellyswitch25-98F4ABF3686D/overtemperature:.* overtemperature
  shellies/shellyswitch25-98F4ABF3686D/roller/0/power:.* roller_0_power
  shellies/shellyswitch25-98F4ABF3686D/roller/0/energy:.* roller_0_energy
  shellies/shellyswitch25-98F4ABF3686D/temperature_f:.* temperature_f
shellyswitch25_98F4ABF3686D:shellies/shellyswitch25-98F4ABF3686D/info:.* { json2nameValue($EVENT) }
shellyswitch25_98F4ABF3686D:shellies/shellyswitch25-98F4ABF3686D/roller/0/stop_reason:.* roller_0_stop_reason
shellyswitch25_98F4ABF3686D:shellies/shellyswitch25-98F4ABF3686D/temperature_status:.* temperature_status
shellyswitch25_98F4ABF3686D:shellies/shellyswitch25-98F4ABF3686D/voltage:.* voltage
   room       21_Garten
   setList    open:noArg shellies/shellyswitch25-98F4ABF3686D/roller/0/command open
  close:noArg shellies/shellyswitch25-98F4ABF3686D/roller/0/command close
  half:noArg shellies/shellyswitch25-98F4ABF3686D/roller/0/command/pos 50
  stop:noArg shellies/shellyswitch25-98F4ABF3686D/roller/0/command stop
  pct:slider,0,1,100 {"shellies/shellyswitch25-98F4ABF3686D/roller/0/command/pos ".(100-$EVTPART1)}
  x_recalibration:noArg shellies/shellyswitch25-98F4ABF3686D/roller/0/command rc
  x_update:noArg shellies/shellyswitch25-98F4ABF3686D/command update_fw
  x_mqttcom shellies/shellyswitch25-98F4ABF3686D/command $EVTPART1
   setStateList open close half stop pct
   stateFormat <a href="http://ip" target="_blank">
online
</a>
state/current
   userReadings Klappe:current.* {(ReadingsVal($name,"Klappe","--") eq "open" and ReadingsVal($name,"current","++") eq "stop")?"OPEN":(ReadingsVal($name,"Klappe","--") eq "close" and ReadingsVal($name,"current","++") eq "stop")?"CLOSED":ReadingsVal($name,"current","xx")}

   webCmd     :open:close:half:stop:pct
Titel: Antw:Shelly 2 lässt sich nicht kalibrieren
Beitrag von: Sany am 02 März 2023, 21:20:23
Das Problem ist: der Shelly sendet current stop mehrfach hintereinander. Wenn du ein event-on-change-reading auf current und Klappe und alle weiteren von dir als Trigger benötigten readings setzt sollte es gehen.
Bestimmt kann man im userReadings auch den dritten Teil so schreiben, dass stop nicht durchkommt, kann ich aber grad nicht testen....

ja man kann:
Klappe:current.* {(ReadingsVal($name,"Klappe","--") eq "opens" and ReadingsVal($name,"current","++") eq "stop")?"OPEN":(ReadingsVal($name,"Klappe","--") eq "closes" and ReadingsVal($name,"current","++") eq "stop")?"CLOSED":(ReadingsVal($name,"current","xx") =~ "(opens|closes)")? ReadingsVal($name,"current","xx"):undef}
so funktioniert es in meiner Testumgebung, auch wenn mehrfach "stop" kommt.
Titel: Antw:Shelly 2 lässt sich nicht kalibrieren
Beitrag von: Sany am 10 März 2023, 17:51:08
@michisa86888

"Klappts" denn jetzt?  ;)