Pool Controller

Begonnen von bugster_de, 01 Mai 2014, 22:34:49

Vorheriges Thema - Nächstes Thema

dadoc

Super, danke für die Info.
Mal noch eine Frage an die Experten: Zum einen dürften ja bei vielen ein erheblicher Teil der Komponenten des Poolcontrollers ungenutzt sein (Relais, bestimmte Sensoren usw.)
Zum anderen sind aus meiner Sicht die meisten Readings (wie etwa ph, Redox, Wassertemperatur...) nur dann relevant, wenn auch die Filterpumpe läuft.
Dennoch landet immer alles im Log, was die Logfile einerseits anschwellen lässt, andererseits die on-the-fly-Generierung von Charts in FTUI über den Tag hinweg immer weiter verlangsamt.
Ich bin kein Programmierer, daher: Was wäre denn der beste Weg, um
a) nur die tatsächlich genutzten Komponenten zu loggen, und
b) (als Option) die Werte nur dann zu loggen, wenn Filterpumpe = 1?
Direkt im Modul filtern oder an der Logfile herumbasteln oder...?
Danke & Grüße
Martin
Standort 1: FS20 mit CUL und FHEM auf Raspi. HM-Komponenten (Heizung, Rollladen, Schalter). HM IP über Raspimatic (testweise)
Standort 2: Homematic (Wired) über CCU2 und PocketHome HD
3 x Raspi3 mit piCorePlayer/Kodi für Multiroom Audio (+ Tablets/iPeng/iPods

dadoc

Ich habe mir nun mal provisorisch etwas im Modul zurecht gedengelt, das die von mir nicht benötigten Logeinträge rausfiltert und nur bei laufender Pumpe loggt.
Will mich nun noch einarbeiten, wie ich das am Besten als setzbare Attribute umsetze. Ideal wäre m.E. eines dieser attr-Popups (wie bei room), wo man einfach die fürs Log gewünschten Readings an- oder abwählt.
Grüße
Martin
Standort 1: FS20 mit CUL und FHEM auf Raspi. HM-Komponenten (Heizung, Rollladen, Schalter). HM IP über Raspimatic (testweise)
Standort 2: Homematic (Wired) über CCU2 und PocketHome HD
3 x Raspi3 mit piCorePlayer/Kodi für Multiroom Audio (+ Tablets/iPeng/iPods

dadoc

So, ich habe das Modul etwas an meine individuellen Bedürfnisse angepasst, vielleicht kann's ja noch jemand brauchen, daher hänge ich es mal an:

  • Module/Komponenten, die im Poolcontroller ,,n.a." heißen, werden nicht mehr gelogged. Das habe ich nicht als Option ausgelegt, da mir kein Anwendungsfall einfiel, in dem jemand wollen würde, dass mehrer gleich Komponenten gleichen Namens und ohne Daten das Log zumüllen...
  • Attribut pc-log-only-on-flow (no/yes): Wer einen Durchflussgeber am Poolcontroller hat, kann damit festlegen, ob nur bei laufender Filterpumpe gelogged wird oder immer. Ich habe das deshalb am Durchflussgeber festgemacht und nicht an der Pumpe, weil der Durchflussgeber afaik immer an derselben Stelle im Datensatz (index 24) steht, während die Pumpe ja an eines von vier Relais angeschlossen sein kann (bei mir z.B. index 19). Wenn man keinen Durchflussgeber hat, kann man die betreffende Zeile im Modul ja auf sein Pumpenrelais abändern.
  • Attribut pc-log-sysdata (no/yes): Da ich persönlich es für nicht hilfreich hielt, dass mir alle paar Minuten z.B. die Softwareversion des Poolcontrollers ins Log geschrieben wird, habe ich mir dieses Attribut gebastelt. Bei ,,no" werden uptimeTime, poolControllerTime, Pool SW_Version nicht gelogged.
  • Attribut pc-log-ph-cl-consumption (no/yes): Werte, die mich persönlich in fhem nicht interessieren, werden bei ,,no" nicht gelogged, nämlich Cl Rest, pH- Rest, pH+ Rest, Cl consumption, pH- consumption, pH+ consumption
Im Ergebnis habe ich nun schlanke Logfiles mit den Daten, die ich wirklich will, was den Grafikaufbau der Chart-Ansichten deutlich beschleunigen sollte.
Da ich kein Programmierer bin, könnte man das vermutlich besser bzw. eleganter lösen. Charlie: vielleicht magst Du ja mal drübergucken, ob ich irgendwo groben Unfug gemacht habe? Änderungen sind mit # insert dadoc gekennzeichnet

Grüße
Martin

Standort 1: FS20 mit CUL und FHEM auf Raspi. HM-Komponenten (Heizung, Rollladen, Schalter). HM IP über Raspimatic (testweise)
Standort 2: Homematic (Wired) über CCU2 und PocketHome HD
3 x Raspi3 mit piCorePlayer/Kodi für Multiroom Audio (+ Tablets/iPeng/iPods

choetzu

Hey Charlie71

ich hoffe dir gehts gut. Dein Modul schnurrt immer noch wie ein Kätzchen. ;) Ich habe nur eine Kosmetik-Frage. Ist es evtl möglich das Login und Passwort zu verschlüsseln? Jetzt ist es relativ offensicht in der fhem.cfg gespeichert... 

Gäbe es eine Möglichkeit?

lg und viel Gesundheit
c
Raspi3, EnOcean, Zwave, Homematic

choetzu

 
Zitat von: choetzu am 05 April 2020, 20:27:40
Hey Charlie71

ich hoffe dir gehts gut. Dein Modul schnurrt immer noch wie ein Kätzchen. ;) Ich habe nur eine Kosmetik-Frage. Ist es evtl möglich das Login und Passwort zu verschlüsseln? Jetzt ist es relativ offensicht in der fhem.cfg gespeichert... 

Gäbe es eine Möglichkeit?

lg und viel Gesundheit
c

darf ich da nochmals schüchtern nachfragen?
Raspi3, EnOcean, Zwave, Homematic

dadoc

Hi,
danke für Deine PNs, ich fühlte mich allerdings nicht angesprochen, da Du Dich an Charlie71 gewandt hattest (der das Modul ja auch geschrieben hat).
Habe aber mal für Dich im Forum gesucht - Passwörter verschlüsselt abzulegen scheint nicht machbar bzw. nicht sinnvoll, da die Entschlüsselung dann ja ebenfalls zugänglich sein muss, siehe  https://forum.fhem.de/index.php?topic=85982.0
Standort 1: FS20 mit CUL und FHEM auf Raspi. HM-Komponenten (Heizung, Rollladen, Schalter). HM IP über Raspimatic (testweise)
Standort 2: Homematic (Wired) über CCU2 und PocketHome HD
3 x Raspi3 mit piCorePlayer/Kodi für Multiroom Audio (+ Tablets/iPeng/iPods

choetzu

Hi,
super, danke für die Antwort. Passt...
Was anderes: Ist es möglich, dass man den Zustand von den Digital Input Geräten anzeigen kann? Ich möchte in FHEM gerne darauf triggern, kann aber die Werte als Reading nicht auslesen.
Danke für die Antwort.
Lg C
Raspi3, EnOcean, Zwave, Homematic

dadoc

Bei mir holt sich das Modul die Stati der vier digitalen Eingänge, und ich triggere auch teilweise darauf, s. Screenshot (nicht wundern, Pool ist leer).
Du musst halt darauf achten, dass sie im PoolController nicht die Default-Namen "n.a." haben (oder im Modul den betreffenden Part, der Readings von "n.a."-Komponenten auslässt, auskommentieren.
Standort 1: FS20 mit CUL und FHEM auf Raspi. HM-Komponenten (Heizung, Rollladen, Schalter). HM IP über Raspimatic (testweise)
Standort 2: Homematic (Wired) über CCU2 und PocketHome HD
3 x Raspi3 mit piCorePlayer/Kodi für Multiroom Audio (+ Tablets/iPeng/iPods

choetzu

Zitat von: dadoc am 12 Mai 2021, 12:40:25
Bei mir holt sich das Modul die Stati der vier digitalen Eingänge, und ich triggere auch teilweise darauf, s. Screenshot (nicht wundern, Pool ist leer).
Du musst halt darauf achten, dass sie im PoolController nicht die Default-Namen "n.a." haben (oder im Modul den betreffenden Part, der Readings von "n.a."-Komponenten auslässt, auskommentieren.

Super, danke. Bei mir hat das nun auch geklappt. Ich musste das Modul entfernen und wieder neu installieren. Keine Ahnung warum. ;)

Ich habe 2 weitere Fragen, sorry...


  • Auf dem PoolController WeBIF kann man in der Phase 2 Digital Inputs triggern/auslöse (siehe Anhang). Wäre dies via FHEM möglich?
    Es gibt die Möglichkeit Relais für ein paar Milisekunden zu schalten (siehe Code). Wäre ein solches Feature nicht auch via FHEM denkbar, im Sinne von "set PoolController Abdeckung on 5000". Wäre dann wie ein Taster...

http://CONTROLLER_IP/SetState.pl?R1=1&RT1=5000
schaltet Relais1 für 5000ms ein, dann wieder automatisch aus.


Raspi3, EnOcean, Zwave, Homematic

misux

Hi!

Ist dieses Modul für die ProconIp noch aktuell??

Ich würde gerne meine ProconIp ins FHEM einbinden und eigentlich NUR werte auslesen um diese in der FTUI darstellen zu können..

Oder gibt es noch eine bessere/andere Alternative?

marvin78

#100
Lies dir mal diesen Thread durch. Ich meine, die aktuellste Version ist auch darin zu finden (nicht auf der ersten Seite). Macht, was es soll, läuft stabil und bringt alle Werte nach FHEM (und kann noch mehr).

https://www.poolsteuerung.de/viewtopic.php?f=29&t=148&hilit=fhem

marvin78


misux

Klasse! Vielen Dank! 8)

misux

#103
Hmm... Habe die .pm Datei installiert...

installiert habe ich es indem ich die .pm in den ../fhem/FHEM Ordner kopiert habe und dann mit reload "installiert...

Leider bekomme ich in der Logdatei mehrere Fehler:

[Mon May 30 19:49:59 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 19:50:00 2022] fhem.pl: Use of uninitialized value $a[1] in subtraction (-) at ./FHEM/99_Utils.pm line 21.
[Mon May 30 19:50:00 2022] fhem.pl: Argument "null" isn't numeric in subtraction (-) at ./FHEM/99_Utils.pm line 21.
[Mon May 30 19:50:00 2022] fhem.pl: Use of uninitialized value in subroutine entry at ./FHEM/99_Utils.pm line 21.
[Mon May 30 19:50:00 2022] fhem.pl: Use of uninitialized value in subroutine entry at ./FHEM/99_Utils.pm line 21.
[Mon May 30 19:50:00 2022] fhem.pl: Use of uninitialized value in subroutine entry at ./FHEM/99_Utils.pm line 21.
[Mon May 30 19:50:00 2022] fhem.pl: Use of uninitialized value in subroutine entry at ./FHEM/99_Utils.pm line 21.
[Mon May 30 19:50:14 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 19:50:29 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 19:50:44 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 19:50:59 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 19:51:14 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 19:51:29 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 19:51:44 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 19:51:59 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 19:52:14 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 19:52:29 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 19:52:44 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 19:52:59 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 19:53:14 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 19:53:29 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 19:53:44 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 19:53:59 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 19:54:14 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 19:54:29 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 19:54:44 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 19:54:59 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 19:55:00 2022] fhem.pl: Use of uninitialized value $a[1] in subtraction (-) at ./FHEM/99_Utils.pm line 21.
[Mon May 30 19:55:00 2022] fhem.pl: Argument "null" isn't numeric in subtraction (-) at ./FHEM/99_Utils.pm line 21.
[Mon May 30 19:55:00 2022] fhem.pl: Use of uninitialized value in subroutine entry at ./FHEM/99_Utils.pm line 21.
[Mon May 30 19:55:00 2022] fhem.pl: Use of uninitialized value in subroutine entry at ./FHEM/99_Utils.pm line 21.
[Mon May 30 19:55:00 2022] fhem.pl: Use of uninitialized value in subroutine entry at ./FHEM/99_Utils.pm line 21.
[Mon May 30 19:55:00 2022] fhem.pl: Use of uninitialized value in subroutine entry at ./FHEM/99_Utils.pm line 21.
[Mon May 30 19:55:14 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.


Was kann ich tun? Hat jemand einen Tipp?

Jetzt bekomme ich im Log alle 15sek das:  :-[
[Mon May 30 20:06:46 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 20:07:01 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 20:07:16 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 20:07:31 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 20:07:46 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.


Also per

define name myPoolcontroller IP-Adresse:Port Benutzername Passwort abfrageintervall in sekunden

konnte ich alles schön einbinden.. Aber die Fehlermeldung bekomme ich immernoch alle 15 sek... wie bekomme ich die nun weg?
[Mon May 30 20:22:31 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 20:22:46 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 20:23:01 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 20:23:16 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 20:23:31 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 20:23:46 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 20:24:01 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.
[Mon May 30 20:24:16 2022] fhem.pl: Invalid conversion in sprintf: end of string at lib/FHEM/HTTPMOD/Utils.pm line 422.


marvin78

#104
Hat das denn mit dem PoolController zu tun? Mach mal stacktrace. FHEM neu gestartet?