Neueste Beiträge

#21
Solaranlagen / Aw: 76_SolarForecast - Informa...
Letzter Beitrag von DS_Starter - 19 Juni 2025, 14:59:19
ZitatDann habe ich das nur aus dem Beispiel im Wiki noch nicht verstanden:
Ja, das muß ich mir anschauen. Ich denke das passt nicht (mehr) und dort gehört ein anderer Befehl hinein.
Sage auf jeden Fall nochmal Bescheid wenn ich das reviewed habe.
#22
Solaranlagen / Aw: 76_SolarForecast - Informa...
Letzter Beitrag von bismosa - 19 Juni 2025, 13:50:04
Hallo!

Vielen Dank für die ausführliche Antwort!
Das hat mich nun zumindest ein Stück weiter gebracht.

interruptable=Firmata_Aussensteckdose:SF_Int:1
Zitat von: DS_Starter am 19 Juni 2025, 11:43:31Das bedeutet, sobald der Regex "1" im Device:Reading Firmata_Aussensteckdose:SF_Int matcht, schaltet die Pumpe ab, egal ob noch Überschuß da ist oder nicht.
So steht es auch in der Commandref:
ZitatVerbraucher wird temporär unterbrochen, wenn der Wert des angegebenen Device:Readings auf den Regex matched

interruptable=1
ZitatVerbraucher wird temporär ausgeschaltet falls der PV Überschuß die benötigte Energie unterschreitet

Das sind demnach ja ganz unterschiedliche Funktionen.
Ich habe das nun gesetzt und die Pumpe lief sofort (wie eigentlich erwartet) los.

Dann habe ich das nur aus dem Beispiel im Wiki noch nicht verstanden:
if ($mrest >= ($mneed - $msum)) {
          readingsSingleUpdate ($dhash, 'SF_Int', 1, 0);                        # Interrupt-Freigabe
      }
      else {
          readingsSingleUpdate ($dhash, 'SF_Int', 0, 0);                        # keine Interrupt-Freigabe
      }

Ich hatte gedacht, das dies dafür da ist, "interruptable=0" zu setzen, das die Pumpe nicht mehr ausgehen darf (damit diese lange genug am Tag läuft...auch bei Schlechtwetter). Aber nach der Beschreibung in der Commandref geht das nicht.?

Ich lasse jetzt mal die Werte $mrest $mneed $msum protokollieren. Vielleicht werde ich dann noch etwas schlauer.

Gruß
Bismosa
#23
Zigbee / Aw: Ich brauch mal Unterstützu...
Letzter Beitrag von rabehd - 19 Juni 2025, 13:26:03
Zitat von: eckhard scholz am 19 Juni 2025, 09:02:20Ich hab mir die Befehle aus Beispielen zusammengesucht.
Wenn es um den Bedingungsteil geht, dann ist ein Anfang über den Eventmonitor immer ganz gut.
#24
Zigbee / Aw: Ich brauch mal Unterstützu...
Letzter Beitrag von passibe - 19 Juni 2025, 13:20:06
Du brauchst auch gar keine Sonderzeichen.
Denn du brauchst auch gar keine Regex, weil du ja eh nur auf ein Reading triggerst. Deshalb kannst du auch ganz einfach sagen:
[Treppe_unten:occupancy] eq "true"
Ansonsten hat Laffer72 recht, wenn du sowieso on-for-timer nutzt, kannst du einfach attr do always verwenden. Du kannst dann auch den DOELSE-Zweig löschen.

Du solltest auch noch die Hierarchie der Bedingungen durch Klammern klar angeben, sodass klar ist, dass zunächst das "or" der Zeiten bearbeitet wird und dann das gesammelte Ergebnis des "or" mit "and" verknüpft wird (dann ist man nicht dem, was perl automatisch macht, ausgeliefert).

Ansonsten bietet es sich noch an, "Schaltbedingungen" von "Bedingungen, die nur geprüft werden sollen" zu trennen, damit jeweils klar ist, auf welche Events reagiert wird. Kann manchmal dazu führen, dass das DOIF erst gar nicht ausgeführt wird, weil FHEM die Events sequentiell abarbeitet und deshalb niemals zwei Events auf einmal vorliegen können.
Siehe dazu den Abschnitt Zeitintervalle, Readings und Status ohne Trigger in der commandref:
ZitatAngaben in eckigen Klammern, die mit einem Fragezeichen beginnen, führen zu keiner Triggerung des Moduls, sie dienen lediglich der Abfrage.

Anwendungsbeispiel: Licht soll zwischen 06:00 und 10:00 angehen, getriggert wird nur durch den Taster nicht um 06:00 bzw. 10:00 Uhr und nicht durch das Device Home

define di_motion DOIF ([?06:00-10:00] and [button] and [?Home] eq "present")(set lamp on-for-timer 600)
attr di_motion do always

Insgesamt ergibt sich damit für dich:
defmod TrepT_BewUnt DOIF (([?06:00-09:59] or [?19:00-21:59]) and [Treppe_unten:occupancy] eq "true") \
(set TreppeLi_Ure on-for-timer 60, set TreppeLi_Ure brightness 150, set TreppeLi_Ure ct 300 )
attr TrepT_BewUnt do always
#25
FHEM Code changes / Revision 30053: www/images: ad...
Letzter Beitrag von System - 19 Juni 2025, 13:00:43
Revision 30053: www/images: added batteries with 10% levels. Thx Wzut

www/images: added batteries with 10% levels. Thx Wzut

Source: Revision 30053: www/images: added batteries with 10% levels. Thx Wzut
#26
Zigbee / Aw: Ich brauch mal Unterstützu...
Letzter Beitrag von Laffer72 - 19 Juni 2025, 12:59:16
Hallo,

nach meinem Verständnis, fehlt in Deinen DOIFs durch das Ausschalten per Timer im set-Befehl der Statuswechsel.
Die Lampe schaltet nach 60 Sekunden aus, das DOIF bleibt aber im ersten DOIF-Zweig.
Ein erneutes Auslösen durch den Bewegungsmelder spricht dann nicht mehr an, da das DOIF ja bereits in diesem Zweig ist.

Versuch mal in den Attributen do-always zu setzen, dann sollte es klappen.

Viel Erfolg

Reinhard
#27
Frontends / Aw: Icons
Letzter Beitrag von Wuppi68 - 19 Juni 2025, 12:45:36
Danke

sind eingecheckt
#28
MQTT / Aw: Solarbatterieen von Marste...
Letzter Beitrag von AlexMuc - 19 Juni 2025, 12:39:16
Hallo Rudi,
du schriebst ungetestet und prompt kommt bei mir der Fehler
Global symbol "%ret" requires explicit package name (did you forget to declare "my %ret"?) at ./FHEM/99_myUtils_B2500.pm line 35.

Damit andere nicht blind in den gleichen Fehler laufen, hier die Korrektur:
Korrekt muß in der Schleife die Zeile
$ret{$map{$key}} = $val if($map{$key});lauten
$ret[b]->[/b]{ $map{$key}} = $val if ($map{ $key});
Auf jeden Fall ist die Funktion jetzt deutlich übersichtlicher.
Ich bin gespannt, ob ich eine Lösung zu Umschreibung diverser Werte herausbekomme. Meine Perlkentnisse beziehe ich nämlich zu 90% aus google :-)
#29
Unterstützende Dienste / Aw: Neues Modul: Signalbot (In...
Letzter Beitrag von HarryT - 19 Juni 2025, 12:30:21
Hi

I use an automatic install for my raspberry which includes install_signal.sh

Is it possible to include a quiet switch in the install_signal.sh for "all" and "restore" ?

In my procedure I now use to download the latest install_signal.sh and apply the patch below.

After that I use:
install_signal.sh all -y
install_signal.sh restore -y

This works fine for me as long as install_signal.sh is not changed.


Thanks


--- signal_install.sh 2025-04-29 09:09:57.000000000 +0200
+++ signal_install.t 2025-06-15 19:23:11.798898509 +0200
@@ -662,7 +662,10 @@
  echo "You chose the following option: $OPERATION"
 fi
 echo
-if [ -z "$OPERATION" ] || [ "$OPERATION" = "system" ] || [ "$OPERATION" = "install" ] || [ "$OPERATION" = "all" ]; then
+
+
+if ((( [ "$OPERATION" = "install" ] || [ "$OPERATION" = "all" ] ) && ( ! [ "$2" = '-y' ] )) ||
+     ( [ -z "$OPERATION" ] || [ "$OPERATION" = "system" ]  )); then
   echo -n "Proceed (Y/n)? "
   read REPLY
   if [ "$REPLY" = "n" ]; then
@@ -712,14 +715,16 @@
  echo "Make sure signal-backup.tar.gz is in current directory"
  exit
  fi
- echo "Are you sure you want to restore all signal-cli configuration files?"
- echo -n "Any existing configuration will be lost (y/N)? "
- read REPLY
- if ! [ "$REPLY" = "y" ]; then
+        if ! [ "$2" = '-y' ]; then 
  echo "Are you sure you want to restore all signal-cli configuration files?"
+   echo -n "Any existing configuration will be lost (y/N)? "
+   read REPLY
+   if ! [ "$REPLY" = "y" ]; then
  echo "Aborting..."
  exit
- fi
- stop_service
+   fi
+   stop_service
+        fi
  echo -n "Restoring backup..."
  tar xPf signal-backup.tar.gz
  chown -R $SIGNALUSER: $SIGNALVAR
#30
FRITZ!Box / Fritzbox 7490 doesn´t call fro...
Letzter Beitrag von HarryT - 19 Juni 2025, 12:19:18
Hi

I used to make calls to **9 from my fritzbox 7490 in some events.

Unfortunately after a fresh install this call doesn´t work anymore.

To be clear, the command is "set FritzBox ring 9"

During the start of FHEM I get:
  PERL WARNING: Use of uninitialized value $val[0] in string eq at ./FHEM/72_FRITZBOX.pm line 1825.
but that doesn´t seem a big deal to me.

The logging doesn´t give me any information even with verbose = 5

I can see the debug info, but that is to complex for me.

In fhem.cfg I have

attr FritzBox INTERVAL 300
attr FritzBox boxUser fritz8145

What can be wrong?

Thanks

 I changed this post because it works again. I updated again and did a reboot. Something has fixed the issue.