FHEM Forum

FHEM - Hausautomations-Systeme => Sonstige Systeme => Thema gestartet von: andies am 03 Januar 2020, 18:56:29

Titel: ShellyFlood
Beitrag von: andies am 03 Januar 2020, 18:56:29
Hat den irgendjemand im Betrieb? Ich bin gespannt, wie lange die Batterie durchhält. Ansonsten liefert er
Internals:
   CFGFN     
   CID        shellyflood_765AC7
   DEF        shellyflood_765AC7
   DEVICETOPIC shellyflood
   FUUID      5e0f7294-f33f-0211-ee2c-d400a99fa450e3ff
   IODev      Mosquitto
   LASTInputDev Mosquitto
   MSGCNT     6
   Mosquitto_MSGCNT 6
   Mosquitto_TIME 2020-01-03 18:44:31
   NAME       shellyflood
   NR         3530
   STATE      false (bat 93%)
   TYPE       MQTT2_DEVICE
   Helper:
     DBLOG:
       temperature:
         DbLog:
           TIME       1578073471.13653
           VALUE      14.62
   READINGS:
     2020-01-03 18:44:31   battery         93
     2020-01-03 18:44:31   flood           false
     2020-01-03 18:44:31   online          false
     2020-01-03 18:44:31   temperature     14.62
Attributes:
   IODev      Mosquitto
   readingList shellyflood_765AC7:shellies/shellyflood/online:.* online
shellyflood_765AC7:shellies/shellyflood/sensor/temperature:.* temperature
shellyflood_765AC7:shellies/shellyflood/sensor/flood:.* flood
shellyflood_765AC7:shellies/shellyflood/sensor/battery:.* battery
   stateFormat flood (bat battery%)
Titel: Antw:ShellyFlood
Beitrag von: enno am 03 Januar 2020, 19:01:58
Moin

seit ca drei Monaten zwei Stück:
Internals:
   CID        shellyflood_76527C
   DEF        shellyflood_76527C
   DEVICETOPIC EG_K_Wassermelder
   FUUID      5db9c0a1-f33f-9270-e9fd-92e0bda444a89534
   IODev      myBroker
   LASTInputDev myBroker
   MSGCNT     56
   NAME       EG_K_Wassermelder
   NR         888
   STATE      false
   TYPE       MQTT2_DEVICE
   myBroker_MSGCNT 56
   myBroker_TIME 2020-01-03 15:06:50
   Helper:
     DBLOG:
       temperature:
         MYSQL:
           TIME       1578060393.52629
           VALUE      18.50
   READINGS:
     2019-11-21 10:42:42   battery         ok
     2020-01-03 15:06:33   batterylevel    100
     2020-01-03 15:06:33   flood           false
     2020-01-03 15:06:33   fw_ver          20190917-131645/v1.5.5@45259d52
     2020-01-03 15:06:33   id              shellyflood-76527C
     2020-01-03 15:06:33   ip              192.168.1.20
     2020-01-03 15:06:33   mac             DC4F2276527C
     2020-01-03 15:06:33   new_fw          false
     2020-01-03 15:06:50   online          false
     2020-01-03 15:06:33   temperature     18.50
Attributes:
   DbLogExclude .*
   DbLogInclude flood,temperature
   IODev      myBroker
   devStateIcon .*false:humidity@grey .*:humidity@red
   event-on-change-reading .*
   readingList shellyflood_76527C:shellies/shellyflood-76527C/online:.* online
shellyflood_76527C:shellies/announce:.* { json2nameValue($EVENT) }
shellyflood_76527C:shellies/shellyflood-76527C/sensor/temperature:.* temperature
shellyflood_76527C:shellies/shellyflood-76527C/sensor/flood:.* flood
shellyflood_76527C:shellies/shellyflood-76527C/sensor/battery:.* batterylevel
   stateFormat flood

Gruss
  Enno
Titel: Antw:ShellyFlood
Beitrag von: Beta-User am 03 Januar 2020, 19:29:56
attrTemplate-Vorschlag:

# shellyflood using original firmware
name:shellyflood
filter:TYPE=MQTT2_DEVICE:FILTER=readingList=.*shellies.*
desc:shellyht using original firmware <br>Just adds stateFormat and icon
order:A_16a
par:ICON;ICON as set, defaults to temperature_humidity;{ AttrVal("DEVICE","icon","temperature_humidity") }
attr DEVICE icon ICON
attr DEVICE setList \
  x_update:noArg shellies/DEVNAME/command update_fw\
  x_mqttcom shellies/DEVNAME/command $EVTPART1
attr DEVICE readingList \
  shellies/DEVNAME/online:.* online\
  shellies/DEVNAME/sensor/temperature:.* temperature\
  shellies/DEVNAME/sensor/flood:.* flood\
  shellies/DEVNAME/sensor/battery:.* batteryPercent
attr DEVICE stateFormat flood (bat batteryPercent%)
deletereading -q DEVICE (?!associatedWith).*
set DEVICE x_mqttcom announce
attr DEVICE model shellyflood
Das icon ist kein ernst gemeinter Vorschlag, Vorschläge erbeten ;) ; batteryPercent sollte "kompatibler" sein (siene diese Vereinheitlichungsdiskussion (https://forum.fhem.de/index.php/topic,87575.0.html)).
Wenn das Zustimmung findet, würde ich auch den ht entsprechend anpassen (da war das feedback zur Batterielebensdauer aber eher durchwachsen, soweit ich mich entsinne).

Gruß, Beta-User
Titel: Antw:ShellyFlood
Beitrag von: TomLee am 03 Januar 2020, 19:41:03
Zitat
seit ca drei Monaten zwei Stück:

Und noch 100%. Sind das noch die ersten Batterien ?

Wie oft kommt denn die Temperatur rein, bei jeder Änderung ?

Gruß

Thomas
Titel: Antw:ShellyFlood
Beitrag von: enno am 03 Januar 2020, 19:47:55
Moin Thomas,

Wie oft kommt denn die Temperatur rein, bei jeder Änderung ?

Ja ist noch die erste Batterie und nein nur zwei mal pro Tag bei mir.

Gruss
  Enno
Titel: Antw:ShellyFlood
Beitrag von: Mad am 21 März 2020, 22:34:46
Hallo zusammen, ich habe auch zwei shellyflood, bekomme sie aber nicht in FHEM eingebunden.
Hab mehrere MQTT Geräte im Einsatz und sehe den shellyflood auch im MQTT.fx. Wie binde ich die floods in FHEM ein?
Bräuchte da etwas starthilfe :-)
Titel: Antw:ShellyFlood
Beitrag von: andies am 21 März 2020, 22:39:14
hier meine Konfiguration. Deine wird anders sein, weil das devices anders heisst:
defmod shellyflood MQTT2_DEVICE shellyflood_765AC7  # <== aendern
attr shellyflood IODev Mosquitto  # <=== aendern!!!
attr shellyflood readingList shellyflood_765AC7:shellies/shellyflood/online:.* online\
shellyflood_765AC7:shellies/shellyflood/sensor/temperature:.* temperature\
shellyflood_765AC7:shellies/shellyflood/sensor/flood:.* flood\
shellyflood_765AC7:shellies/shellyflood/sensor/battery:.* battery_no
attr shellyflood stateFormat flood
attr shellyflood userReadings battery {if (ReadingsNum($name,  "battery_no", 0)>80) {return "ok"} else {return "low"}}
Titel: Antw:ShellyFlood
Beitrag von: andies am 21 März 2020, 22:40:41
ach so, Beta-User hat ja ein template, das sollte sich von selbst anlegen!
Titel: Antw:ShellyFlood
Beitrag von: Mad am 22 März 2020, 09:54:11
Danke für die flotte Antwort. Ich habe das Problem, dass wenn ich den shellyflood als mqtt2 device anlege, mir kein shellyflood in den templates angezeigt wird. Es wird u.a. nur ein shelly1 angezeigt...

Wie und wo füge ich denn das template von beta-user ein?
Einfach in die mqtt2.template datei einfügen? Hab es so versucht, nach Neustart, kann ich dieses template auch nicht im device auswählen...
Titel: Antw:ShellyFlood
Beitrag von: TomLee am 22 März 2020, 10:56:26
Hallo,

das Template wird nicht angezeigt weil du das Device von Hand angelegt hast und somit kein passendes ReadingList-Attribut existiert.
In dem Fall kannst du einfach das Template über die Kommandozeile aufrufen/anwenden:

set shellyflood attrTemplate shellyflood
Oder das von Hand angelegte Device wieder löschen und den Shellyflood automatisch anlegen lassen, indem du in vermutlich (hab keinen) einmal auslösen lässt.
Dann wird auch das Template angezeigt.

Gruß

Thomas
Titel: Antw:ShellyFlood
Beitrag von: Mad am 22 März 2020, 11:41:52
Tja, auch das funktioniert irgendwie nicht...
Hab den shelly auch mehrfach "aufgeweckt". Im MQTT.fx taucht er direkt auf. Fhem reagiert gar nicht...
Titel: Antw:ShellyFlood
Beitrag von: Beta-User am 22 März 2020, 11:50:03
Da fehlte was (bei dem HT auch...), s.u....

Hab's eben gefixt, update kommt morgen, bzw., wer's gleich haben will:
{ Svn_GetFile("FHEM/lib/AttrTemplate/mqtt2.template", "FHEM/lib/AttrTemplate/mqtt2.template", sub(){ AttrTemplate_Initialize() }) }
ach so, Beta-User hat ja ein template, das sollte sich von selbst anlegen!
Das template war auch schon länger in der file, allerdings wird damit auch nichts "von selbst" angelegt, schon gleich nicht, wenn man das Device selbst von Hand anlegt und keine readingList vorhanden ist...

(@mad hat das vermutlich von Hand gemacht, weil er einen anderen Server nutzt als MQTT2_SERVER und das "Sortiertemplate" nicht nutzen will...? Wenn du das so machst wie von TomLee vorgeschlagen, mußt du halt jeweils den DEVNAME eingeben können (das hatte gefehlt...). Wert sollte aus den Infos zu entnehmen sein, die du in MQTT.fx siehst, in dem RAW von andies ist das "shellyflood").
Titel: Antw:ShellyFlood
Beitrag von: Mad am 22 März 2020, 11:56:31
Hallo Beta-User,
danke für die Nachricht. Schau dir doch bitte mal meine screenshots an. Vielleicht erkennst du das Problem?!
Titel: Antw:ShellyFlood
Beitrag von: TomLee am 22 März 2020, 12:06:36
Steht was im LogFile ?

Passwort (wenn eingerichtet) vergessen in den MQTT-Einstellungen des Shellyflood einzutragen ?
Titel: Antw:ShellyFlood
Beitrag von: Mad am 22 März 2020, 12:13:42
Im Logfile steht nichts zum flood. Passwort ist gesetzt, sonst könnte ich ihn ja nicht im MQTT.fx sehen.
Titel: Antw:ShellyFlood
Beitrag von: Beta-User am 22 März 2020, 12:24:31
Hmm, alleine aus dem screenshot werde ich nicht schlau. Du hast versucht, "nichts" an den shelly zu senden, deswegen steht was in "state"?

Für den Rest (z.B., warum kein "online"-Status kommt), kann ich wenig sagen, da fehlen m.E. wesentliche Infos betreffend die "Elemente" zwischen dem mosquitto-Server (den ich hier nur indirekt als Schilderung aus MQTT.fx "zu sehen" bekomme) und dem MQTT2_DEVICE.
Das wären aber vermutlich Dinge, die nichts mit dem spezifischen Gerät zu tun haben, und daher m.E. hier OT sind (Mad ist nicht der TE! Sonst wäre es ok.).
Also: Wenn es ein MQTT2-"Erstling" ist (?), dann wäre meine Empfehlung, im Wiki bei MQTT2_CLIENT (das ist hoffentlich der TYPE von "mosquitto"?) anzufangen und da mal autocreate "simple" anzuschalten. Wenn es da schon Probleme gibt, bitte neuen Thread aufmachen.
Titel: Antw:ShellyFlood
Beitrag von: Mad am 23 März 2020, 21:38:09
So, konnte das Problem lösen. Einfach alles mal neustarten und es funktioniert.
Vielen Dank für die Hilfe!