Hauptmenü

Shelly Button1 mit Fhem

Begonnen von Kurt77, 28 Juli 2020, 16:46:42

Vorheriges Thema - Nächstes Thema

Beta-User

#15
Sorry, das bezog sich überhaupt nicht auf dich (oder irgendeinen anderen "speziellen" Kurt).

Ich wollte nur @Otto123 hier eigentlich nicht beim helfen stören (er kann dir hier sicher gut helfen, keine Frage!), sondern nur mitteilen, dass dieser Shelly-Button1 etwas "speziell" zu sein scheint, weil er eben vermutlich (völlig unnötigerweise und soweit ersichtlich wie andere Shelly-Devices auch) ständig Events erzeugt (was @Otto123 konkret bezogen auf dieses Device bzw. die aktuelle Firmware vermutlich noch nicht wußte; wir (Otto und ich) hatten aber schon ein paar Mal das Vergnügen, die "richtige" Variante der Konfiguration mancher Devices miteinander auszufeilen). In dem anderen Thread ist btw. auch ein "fix" zu finden, und wenn du dem Link gefolgt wärst, müßte es eigentlich auch klar gewesen sein, dass es da um ein sachliches Thema ging ::) . (Die Diskussion da ist aber zugegebenermaßen dann auf einem Niveau, das man als Einsteiger nicht zwangsläufig verstehen muß, sonst hätte ich dich selbst dann direkt dahin "geschickt").
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

Kurt77

Zitat von: Otto123 am 31 Juli 2020, 12:56:40
Hallo Kurt,

das sieht doch gut aus. Kann man sicher erstmal so verwenden und später noch schön machen.
Du siehst den Batteriestatus - 78% ?
Du siehst event S - sicher kommt also S für short?

Dann kannst Du entweder den Eventmonitor aufmachen MQTT2_shellybutton1_A4CF12F44F70.* als Filter eingeben und Dir ein notify erzeugen lassen. Das müsste  dann in etwa so aussehen:
define n_MQTT2_shellybutton1_A4CF12F44F70 notify MQTT2_shellybutton1_A4CF12F44F70:event:.S {}
bzw: was Du eigentlich wolltest:
define n_MQTT2_shellybutton1_A4CF12F44F70 notify MQTT2_shellybutton1_A4CF12F44F70:event:.S set Sonos_Esszimmer Pause

Wenn mein Code nicht funktioniert, musst Du im Eventmonitor schauen und eventuell mal die Events posten :)
Bitte nimm dazu die Codetags (hier beschrieben)

gruß Otto
Hallo Otto,
der Code funktioniert leider nicht und obwohl ich verbose auf 5 gesetzt habe, sehe ich im event-Monitor leider nichts.

Danke und Gruß,
Kurt

Otto123

#17
Es geht nicht um Dich - es geht um die shelly Firmware ;)

Edit geantwortet ohne die weiter Seite zu lesen  ::)
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Otto123

#18
verbose 5 brauchst Du nicht.

Du hast den Eventmonitor offen und der Filter lautet? MQTT2_shellybutton1_A4CF12F44F70.*

Oder siehst Du auch mit Filter .* nichts? Dann wäre was im Eventmonitor "kaputt"  ???
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Kurt77

Hallo Otto,
Handlingfehler mit dem Event-Monitor, sorry!

2020-07-31 15:16:26 MQTT2_DEVICE Shelly1Button1 battery: 78
2020-07-31 15:16:26 MQTT2_DEVICE Shelly1Button1 event: S
2020-07-31 15:16:26 MQTT2_DEVICE Shelly1Button1 event_cnt: 12

Ich habe das Gerät umbenannt.

Danke und Gruß,
Kurt

Kurt77

Otto, guck Dir das bitte mal an.

Ich habe mal alle Möglichkeiten ausprobiert:


2020-07-31 15:16:26 MQTT2_DEVICE Shelly1Button1 battery: 78
2020-07-31 15:16:26 MQTT2_DEVICE Shelly1Button1 event: S
2020-07-31 15:16:26 MQTT2_DEVICE Shelly1Button1 event_cnt: 12
2020-07-31 15:38:06 MQTT2_DEVICE Shelly1Button1 battery: 78
2020-07-31 15:38:06 MQTT2_DEVICE Shelly1Button1 event: L
2020-07-31 15:38:06 MQTT2_DEVICE Shelly1Button1 event_cnt: 13
2020-07-31 15:39:57 MQTT2_DEVICE Shelly1Button1 battery: 78
2020-07-31 15:39:57 MQTT2_DEVICE Shelly1Button1 event_cnt: 14
2020-07-31 15:39:57 MQTT2_DEVICE Shelly1Button1 event: SS
2020-07-31 15:40:58 MQTT2_DEVICE Shelly1Button1 battery: 78
2020-07-31 15:40:58 MQTT2_DEVICE Shelly1Button1 event_cnt: 15
2020-07-31 15:40:58 MQTT2_DEVICE Shelly1Button1 event: SSS

Danke und Gruß,
Kurt

Prof. Dr. Peter Henning

Ich sehe den Use Case für MQTT hier nicht - das nudelt den Akku viel zu schnell leer.

LG

pah

Beta-User

Zitat von: Prof. Dr. Peter Henning am 31 Juli 2020, 15:45:59
Ich sehe den Use Case für MQTT hier nicht - das nudelt den Akku viel zu schnell leer.
Na ja, Akku und ESP8266 war eh' so ein Thema.

Dass hier vermutlich tatsächlich der Akku ziemlich schnell aufgibt, ist aber eigentlich kein MQTT-Problem, sondern eine mMn. "fehlerhafte" (=nicht "light weight") Implementierung des Protokolls in der firmware; Details dazu im verlinkten Thread. (Vielleicht findest du ja irgendwann Zeit, den guten Draht zu nutzen und die Jungs da zu einer "besseren" MQTT-Implementierung zu verhelfen).
Das mittelfristige Problem wird so oder so sein, dass es eben zwei Welten gibt, und wer sowieso MQTT nutzt, wird vermutlich nicht auf den Gedanken kommen, dass es bei dieser Type ein Problem ist (?)...
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

Otto123

Hallo Kurt,

Du musst mit den Codetags besser zielen :)
[code ]Hier dazwischen muss Dein Code nicht dahinter[ /code]
Damit die sichtbar bleiben hab ich die Tags modifiziert. ;)
Also Code kopieren und dann markieren und die # Taste drücken, oder die # Taste drücken, Cursor stehen lassen und dann einfügen. :)

Verstehe ich Dich richtig, dass pro Drücken eine 3 Serie von Events kommt und sonst nicht? Dann mach Dein notify wie schon am Anfang vorgeschlagen:
define n_Shelly1Button1 notify Shelly1Button1:event:.S set Sonos_Esszimmer Pause

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Kurt77

Hallo Otto,
aber genau dieses notify funktioniert nicht!

Zum Thema Code einfügen: Da muss ich wohl noch ein bisschen rumprobieren, bin blind.

Danke und Gruß,
Kurt

Otto123

Wenn Du im Eventmonitor diese Zeile siehst, markierst und Dir ein notify erzeugen lässt. Wie sieht das aus?

2020-07-31 15:16:26 MQTT2_DEVICE Shelly1Button1 event: S

Siehst Du jedesmal diesen Event wenn Du den Buttton kurz drückst?

Wie sieht aktuell ein list Shelly1Button1  aus?
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Kurt77

Hallo Otto,
inzwischen hat das nach langem Rumspielen funktionert. Aber es funtioniert zuverlässig nur nach einem "shutdown Restart" von fhem für einen begrenzten Zeitraum. Das war, wi Du Dich vielleicht erinnerst, auch mein anfängliches Problem. Der  Event-Manger zeigt in jedem Fall ein Event.

ad1 Hier ist das notify:
[Code

Change wizard

Change the condition:


Shelly1Button1_notify_1  addRegexpPart
513158f5322078b3bde891685cf16de8 CF7C30A8FD64469D82D458583BE5C02B FHEMWEB HM4_oben_links MeineAnwesenheit NdrInfoEin SVG_d_dect200kaffeemaschine SVG_d_dect200sonosbad SVG_d_dect200sonoswohnzi Shelly1Button1 Shelly1Button1_notify_1 Sonos Sonos_Bad Sonos_BadRC_Notify Sonos_Buero Sonos_BueroRC_Notify Sonos_Buero_2 Sonos_Buero_3 Sonos_Esszimmer Sonos_Fernsehzimmer Sonos_Kueche Sonos_KuecheRC_Notify Sonos_Schlafzimmer Sonos_SchlafzimmerRC_Notify Sonos_Terrasse Sonos_TerrasseRC_Notify Sonos_Unnamed_Room Sonos_Unnamed_Room_X Sonos_Wohnzimmer Sonos_WohnzimmerRC_Notify WEB atsonosReconnect d_callmonitor d_ccu1 d_dash1 d_dash2 d_dect200kaffeemaschine d_dect200sonosbad d_dect200sonoswohnzi d_fb7490 d_fritzbox d_kaffeemaschine_temp d_sonosbad_temp d_unwetterzentrale do_rebootsonosbad dow du_inforadio hm_Bewegungsmelder hm_Funkstecker2 mqtt2s n_Kueche_ndr2 n_Kueche_ndrinfo n_NdrInfoEin_on n_Shelly1Button1 n_Shelly1Button1SS n_anrufer_sonos n_dash1 n_dash2 n_einbruch n_einbruch2 n_fritzbox_anrufende n_fritzbox_anrufstartcall n_fritzbox_anrufstartring n_inforadioein n_kaffeemaschine n_sonos_temp n_sonosbad n_unwetterwarnung n_wetter plex pushover test .*state:.*volume:.*
 
Change the executed command:

Shelly1Button1_notify_1 Shelly1Button1:battery:.872020-08-01.10:57:38.MQTT2_DEVICE.Shelly1Button1.event:.S set
513158f5322078b3bde891685cf16de8 CF7C30A8FD64469D82D458583BE5C02B FileLog_Shelly1Button1 FileLog_d_dect200kaffeemaschine FileLog_d_dect200sonosbad FileLog_d_dect200sonoswohnzi Logfile MeineAnwesenheit NdrInfoEin SVG_d_dect200kaffeemaschine SVG_d_dect200sonosbad SVG_d_dect200sonoswohnzi Shelly1Button1 Sonos Sonos_Bad Sonos_BadRC Sonos_BadRC_Notify Sonos_BadRG Sonos_BadRG_Favourites Sonos_BadRG_Playlists Sonos_BadRG_Radios Sonos_Buero Sonos_BueroRC Sonos_BueroRC_Notify Sonos_BueroRG Sonos_BueroRG_Favourites Sonos_BueroRG_Playlists Sonos_BueroRG_Radios Sonos_Buero_2 Sonos_Buero_2RG_Favourites Sonos_Buero_2RG_Playlists Sonos_Buero_2RG_Queue Sonos_Buero_2RG_Radios Sonos_Buero_3 Sonos_Buero_3RG_Favourites Sonos_Buero_3RG_Playlists Sonos_Buero_3RG_Queue Sonos_Buero_3RG_Radios Sonos_Esszimmer Sonos_EsszimmerRG_Favourites Sonos_EsszimmerRG_Playlists Sonos_EsszimmerRG_Queue Sonos_EsszimmerRG_Radios Sonos_Fernsehzimmer Sonos_FernsehzimmerRG_Favourites Sonos_FernsehzimmerRG_Playlists Sonos_FernsehzimmerRG_Queue Sonos_FernsehzimmerRG_Radios Sonos_Kueche Sonos_KuecheRC Sonos_KuecheRC_Notify Sonos_KuecheRG Sonos_KuecheRG_Favourites Sonos_KuecheRG_Playlists Sonos_KuecheRG_Radios Sonos_Schlafzimmer Sonos_SchlafzimmerRC Sonos_SchlafzimmerRC_Notify Sonos_SchlafzimmerRG Sonos_SchlafzimmerRG_Favourites Sonos_SchlafzimmerRG_Playlists Sonos_SchlafzimmerRG_Radios Sonos_Terrasse Sonos_TerrasseRC Sonos_TerrasseRC_Notify Sonos_TerrasseRG Sonos_TerrasseRG_Favourites Sonos_TerrasseRG_Playlists Sonos_TerrasseRG_Radios Sonos_Unnamed_Room Sonos_Unnamed_RoomRG_Favourites Sonos_Unnamed_RoomRG_Playlists Sonos_Unnamed_RoomRG_Queue Sonos_Unnamed_RoomRG_Radios Sonos_Wohnzimmer Sonos_WohnzimmerRC Sonos_WohnzimmerRC_Notify Sonos_WohnzimmerRG Sonos_WohnzimmerRG_Favourites Sonos_WohnzimmerRG_Playlists Sonos_WohnzimmerRG_Radios WEB WEBphone WEBtablet atsonosReconnect d_callmonitor d_ccu1 d_dect200kaffeemaschine d_dect200sonosbad d_dect200sonoswohnzi d_fb7490 d_fritzbox d_kaffeemaschine_temp d_sonosbad_temp d_unwetterzentrale do_rebootsonosbad dow du_inforadio eventTypes initialUsbCheck mqtt2s n_Kueche_ndr2 n_Kueche_ndrinfo n_NdrInfoEin_on n_Shelly1Button1 n_Shelly1Button1SS n_anrufer_sonos n_dash1 n_dash2 n_einbruch n_einbruch2 n_fritzbox_anrufende n_fritzbox_anrufstartcall n_fritzbox_anrufstartring n_inforadioein n_kaffeemaschine n_sonos_temp n_sonosbad n_unwetterwarnung n_wetter plex pushover temp test autocreateplayMediaresumemirrorhomemusicunwatchedwatched






Shelly1Button1_notify_1
active addRegexpPart inactive removeRegexpPart


Internals


CFGFN


DEF 
Shelly1Button1:battery:.872020-08-01.10:57:38.MQTT2_DEVICE.Shelly1Button1.event:.S {}







FUUID

5f252eb8-f33f-7695-bb8e-4523916a3714e75c


NAME

Shelly1Button1_notify_1


NOTIFYDEV

Shelly1Button1


NR

1870


NTFY_ORDER

50-Shelly1Button1_notify_1


REGEXP

Shelly1Button1:battery:.872020-08-01.10:57:38.MQTT2_DEVICE.Shelly1Button1.event:.S


STATE

active


TYPE

notify


Readings


state

active

2020-08-01 10:58:32



Shelly1Button1_notify_1
addStateEvent alias cmdIcon comment devStateIcon devStateStyle disable disabledAfterTrigger disabledForIntervals eventMap fhem_widget_command forwardReturnValue genericDeviceType group homebridgeMapping icon ignoreRegexp readLog room showtime siriName sortby suppressReading userReadings userattr verbose webCmd webCmdLabel widgetOverride 
Probably associated with


Shelly1Button1
??? 
MQTT2_DEVICE

 

Select icon

Extend devStateIcon

Raw definition

Delete this device (Shelly1Button1_notify_1)

Device specific help
]


ad2) Ja, ich sehe jedesmal diesen Event.

ad3 Und hier das List.
[Code
Internals:
   CID        shellybutton1_A4CF12F44F70
   DEF        shellybutton1_A4CF12F44F70
   DEVICETOPIC Shelly1Button1
   FUUID      5f23f183-f33f-7695-72f7-f697ee862ebf5109
   IODev      mqtt2s
   LASTInputDev mqtt2s
   MSGCNT     57
   NAME       Shelly1Button1
   NR         150
   STATE      ???
   TYPE       MQTT2_DEVICE
   mqtt2s_MSGCNT 57
   mqtt2s_TIME 2020-08-01 10:57:38
   READINGS:
     2020-08-01 10:57:38   battery         87
     2020-08-01 10:57:38   event           S
     2020-08-01 10:57:38   event_cnt       29
     2020-07-31 22:38:40   fw_ver          20200625-102446/v1.7.3@2aa0993a
     2020-07-31 22:38:40   id              shellybutton1-A4CF12F44F70
     2020-07-31 22:38:40   ip              192.168.178.64
     2020-07-31 22:38:40   mac             A4CF12F44F70
     2020-07-31 22:38:40   new_fw          false
     2020-07-31 22:38:39   online          true
Attributes:
   IODev      mqtt2s
   readingList shellybutton1_A4CF12F44F70:shellies/shellybutton1-A4CF12F44F70/online:.* online
shellybutton1_A4CF12F44F70:shellies/announce:.* { json2nameValue($EVENT) }
shellybutton1_A4CF12F44F70:shellies/shellybutton1-A4CF12F44F70/announce:.* { json2nameValue($EVENT) }
shellybutton1_A4CF12F44F70:shellies/shellybutton1-A4CF12F44F70/sensor/battery:.* battery
shellybutton1_A4CF12F44F70:shellies/shellybutton1-A4CF12F44F70/input_event/0:.* { json2nameValue($EVENT) }
   room       MQTT2_DEVICE
   verbose    5
][/code]

Danke und Gruß,
Kurt

Otto123

#27
Moin Kurt,

findest Du deinen Post gut lesbar? Also ich nicht  :'(
Du kannst mit der Vorschau deinen Post ansehen, bevor Du ihn abschickst.
Du kannst jeden deiner Posts ändern um Fehler zu korrigieren.

Wenn das hier wirklich die DEF von deinem notify ist - dann habe ich keine Ahnung wie das erzeugt wurde
DEF
Shelly1Button1:battery:.872020-08-01.10:57:38.MQTT2_DEVICE.Shelly1Button1.event:.S {}


Ich bin der Meinung, dass diese notify richtig wäre
define n_Shelly1Button1 notify Shelly1Button1:event:.S set Sonos_Esszimmer Pause

Es gibt einen guten Wiki Artikel https://wiki.fhem.de/wiki/Notify vielleicht kannst Du mit Hilfe von dem Artikel das Problem eingrenzen.

Jetzt habe ich noch Deine lange erste Zeile bis zum Schluss gelesen.  Dein ursprüngliches Problem ist also mit dem notify und mit der ursprünglichen Lösung in gleicher Ausprägung vorhanden?

Da gibt es zwei Möglichkeiten:
Geht denn der Befehl set Sonos_Esszimmer Pause auch von Hand immer zuverlässig oder nur eine begrenze Zeit (Also wenn der Button nicht mehr funktioniert - geht er von Hand?)
Geht der Button selbst nur eine begrenzte Zeit? Wobei das keinen Grund für einen Shutdown Restart hätte.
Ich bin ratlos und weiß nicht mehr weiter.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Kurt77

Hallo Otto,
Du hast es getroffen!
"Von Hand" geht auch nicht!
Also gucke ich mir jetzt mal Sonos an.

Danke und Gruß,
Kurt

Wzut

Zitat von: Otto123 am 01 August 2020, 11:52:10
findest Du deinen Post gut lesbar? Also ich nicht  :'(
Du kannst mit der Vorschau deinen Post ansehen, bevor Du ihn abschickst.
@Otto, IMHO war das
Zitat von: Kurt77 am 31 Juli 2020, 17:10:25
muss ich wohl noch ein bisschen rumprobieren, bin blind.
kein "Witz" , seine Posts sehen stark nach Kampf mit einem Screenreader aus. 
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher