Fröling: [ANNOUNCE] p4d - Visualisierung und Einstellung der S-3200 via COM1

Es gibt 4.970 Antworten in diesem Thema, welches 1.562.909 mal aufgerufen wurde. Der letzte Beitrag () ist von Panzerknacker.

  • diff --git a/lib/thread.c b/lib/thread.c

    index fde6c63..9058367 100644

    --- a/lib/thread.c

    +++ b/lib/thread.c

    @@ -12,6 +12,7 @@

    #include <sys/time.h>

    #include <unistd.h>

    #include <stdarg.h>

    +#include <pthread.h>


    #include "thread.h"

  • Perfekt, vielen Dank, das war die Lösung !


    Nochmal zusammengefasst die nötigen Änderungen:


  • Hallo,
    ich habe seit März diesen Jahres einen PE1 laufen und mir letze Woche einen Raspberry mit p4d drangeklemmt. Soweit hat das auch alles gut geklappt. Das einizige woran ich momentan scheitere sind die Widgtes auf dem Dashboard.
    Mein Dashboard ist leer und ich konnte bisher nicht herausfinden, wie man das konfiguriert. Leider habe ich im Wiki/Git und hier im Forum nichts konkretes dazu gefunden...
    Für Hinweise bin ich dankbar ;)

  • Hallo,


    gibt es noch eine Datei in der die P4B Config abgelegt wird? Früher gab es wohl mal eine unter /etc/p4d/p4d.conf.

    Mir geht es darum, den SSL Zugriff wieder zu deaktivieren, da ich mich damit selbst aus dem Webinterface ausgesperrt habe....

  • Hallo zusammen,


    da mehrere Stunden des Lesens und Probierens nichts gebracht haben möchte ich jetzt hier an dieser Stelle um Hilfe bitten!


    Nach einem Server-Crash bin ich von einen Banana-Pi auf einen Futro 740 mit Ubuntu 22.04 umgestiegen und dabei auch gleich einen Mega-Versionssprung des P4D gemacht (0.2.28 -> 0.9.47).


    Nun habe ich zwei Probleme, bei denen ich einfach nicht weiterkomme und Hilfe brauche:

    1.

    Ich würde gerne das P4D Web-Interface in meinen NGINX "integrieren" - funktioniert weder per Symlink in mein www-root, noch als reverse proxy mit Umleitung auf IP:1111 - beide Male erhalte ich nur eine schwarze Seite, der Seitenquelltext sieht aber auf den ersten Blick gleich aus wie der Quelltext von IP:1111.

    Gibt es hierfür eine Anleitung? Was bitte geht denn da bei mir schief bzw. was mach ich falsch?


    2.

    Die Bilder vom Status-Widget "stimmen" nicht bei allen Status - insbesondere kommt bei mir bei "SH Heizen" nur das "SP Dual"-Bild (aber mit "SH Heizen" Unterschrift).

    Der "Wert" des Status stimmt, es wird eine 72 angezeigt, wenn ich das Widget auf "Value" umstelle.

    Recherchen/Tests haben ergeben, dass bei der Bild-Link-Erzeugung tasächlich nur ein {null} von der Funktion "FroelingService::toState(text)" zurückkommt, was dann natürlich "img/type/heating-'heatingType'.png" erzeugt.

    Antwort von "p4 state -d /dev/ttyUSB_HEAT":

    Version: 50.04.05.15

    Time: Monday, 27. Nov. 2023 19:47:43

    5 - Ausgeschaltet

    72 - SH Heizen

    Mangels funktionierendem Stokerschnecke ist die Pellets-Einheit aktuell ausgeschaltet und ich kann auch nicht das Bild von "Heizen" prüfen, das "Tür offen" Bild wird aber zum Beispiel korrekt angezeigt, ein Teil geht also.


    Hat hier jemand ne Idee? Kann mir bitte jemand weiterhelfen?


    Vorab vielen Dank!


    Liebe Grüße

    Cobraball

  • Hallo,


    gibt es noch eine Datei in der die P4B Config abgelegt wird? Früher gab es wohl mal eine unter /etc/p4d/p4d.conf.

    Mir geht es darum, den SSL Zugriff wieder zu deaktivieren, da ich mich damit selbst aus dem Webinterface ausgesperrt habe....

    Hat sich erledigt, ich habe den Server noch mal komplett neu installiert.

    Die MQTT Anbindung an Home Assistant scheint auch ganz gut zu funktionieren.

    Tolle Software!

  • Mir geht es darum, den SSL Zugriff wieder zu deaktivieren, da ich mich damit selbst aus dem Webinterface ausgesperrt habe....

    Schau mal hier:

    Fröling Pelletskessel PE1 25 kW, Fröling Hygiene-Solarschichtspeicher H3 850, 4x Buderus Flachkollektor SKN4.0-w


    fraenk for friends Code: MATF103

  • Hallo zusammen,


    Ich bin neu hier und möchte zukünftig p4d nutzen.

    Dazu habe ich mir einen Pi Zero 2 W gekauft und versucht alles zu installieren.


    Dazu habe ich mir ein Raspbian Buster image (2023-05-03-raspios-buster-armhf.img.xz) runtergeladen und mit Raspberry Pi Imager auf eine SD-Karte gespielt. Diese dann in den Zero2W gesteckt und mit allem begonnen.

    p4d habe ich über das installer-Skript installiert (Installation by package).


    Das läuft auch soweit alles durch, anschließender Neustart auch okay.


    Status p4d sagt enabled und Running, mariadb sagt ebenfalls Running.

    Bei mariadb hab ich den Host % mit User p4 entfernt (somit bleiben jeweils bei localhost die zwei User p4 und Root), hat auch nichts gebracht.

    Ich hab auch schon einen USB-Serial-Converter dran, aber bin noch nicht mit COM1 verbunden (wollte alles erst „sicher“ einrichten). Kann das bereits mein Problem sein?


    Denn das Problem ist: Wenn ich nun über http://192.168.178.128:1111 (.128 fix vergeben) auf die Webconfig zugreifen möchte bleibt die Seite einfach komplett schwarz. (Irgendeine „Verbindung“ kommt aber wohl zustande, da der Tab mit Logo und „Home Control“ versehen wird.

    Es erscheint aber kein Login oder sonst irgendein Button.



    Könnt ihr mir weiterhelfen?


    Viele Grüße

    Florian

  • Auch der Burger-Button war nicht vorhanden.


    Gerade eben kam kurz die Anzeige (mit Burger-Button und den anderen Reitern), aber Anmelden hat nicht funktioniert, da ist nach Eingabe (beides mal p4) und Klick auf anmelden nichts mehr passiert. Seite neu geladen, alles wieder schwarz und weg.

  • Kurzes Update:


    Hab es inzwischen ans Laufen bekommen. Ein reiner microUSB auf USB Adapter funktioniert wohl am Zero 2 nicht zuverlässig, mit USB Hub dazu gehts halbwegs. Allerdings bekomme ich in den Logs immer noch Serial Read Errors, müsste ich mal genauer anschauen.


    Habe aber auch direkt vier neue Punkte:


    1. Kann es sein, dass in den Charts ein Bug ist? Wenn ich auf jetzt klicke geht er immer auf den gestrigen Tag?!?


    2. Ist eventuell ein weitere Bug in den Charts vorhanden?!? Die Wertanzeige (beim drüberfahren) hat scheinbar einen Zeitversatz zu den Graphen?!? So ca 45-60 min würde ich sagen.

    EDIT: Lag evtl. an zu wenig Datensätzen, jetzt scheint beides zu funktionieren.


    3. Kann man bei den Dashboard-Charts den angezeigten Zeitraum und die Anzahl an Datenpunkten anpassen?


    4. Ein kleiner Wunsch: wäre es möglich beim Schema auswählbar zu machen welche Werte drin sind? Ich meine komplett, die Option einblenden habe ich gefunden und genutzt, aber mir geht beim Anpassen fast der Platz aus :D

    Alternativ evtl. bei IO Setup ne dritte Häkchen-Spalte?

    Aber wäre nur ein nice to have ;)


    Sorry für so viele Fragen, und soll auch kein Gemecker sein, finde das Projekt total genial! Kann ja auch einfach sein dass ich etwas falsch konfiguriert habe oder schlicht zu doof bin…


    Viele Grüße

    Flo

  • Hallo nochmals,


    da niemand auf meine Fragen geantwortet hat, habe ich selbst nochmals den Code untersucht und einen Bug bzw. die Lösung für mein Problem 2 mit den falschen/nicht vorhandenen Status-Widget Bildern gefunden.

    Falls jemand an dem Bugfix interessiert ist, darf er sich gerne bei mir melden. (ich hab keine Ahnung, wie 'git' funktioniert und wie ich den Bugfix "zurückspielen" kann, falls das überhaupt geht)


    Und wenn mich noch jemand bei meinem NGINX-Problem unterstützen könnte, wäre ich sehr dankbar darüber.


    Siehe #4.832


    Liebe Grüße

    Cobraball

  • da niemand auf meine Fragen geantwortet hat, habe ich selbst nochmals den Code untersucht

    Ja, geben und nehmen, danke für die Mühe.

    Falls jemand an dem Bugfix interessiert ist,

    Vermutlich alle hier, es sollten evtl. auch mehr Augen draufschauen.


    Hast Du das git-Repository mit git clone ausgecheckt?

    Wenn Du dann darin Deine Änderungen gemacht hast, kannst Du "git diff" aufrufen und das Ergebnis hier einstellen.

  • Hallo Panzerknacker,


    vielen Dank für Deine Antwort!


    Das "diff" ist im Anhang zu finden, allerdings hab ich da noch ne Frage:

    warum hat stateInfos[] in service.c eigentlich die (nicht fortlaufende) Status in der ersten Spalte?

    Die Tatsache, dass nach "State 23" plötzlich "State 32" kommt hat "mir" das Genick gebrochen!

    Die toState() gibt nämlich aktuell den Laufindex "i" zurück, statt richtigerweise "stateInfos[i].code".


    Und ein zweites Problem war noch, dass meine Steuerung "Feuer Aus" ausgibt, was erfolglos mit "Feuer aus" verglichen wird -> wieder kein Bild.


    Und wer kann mir jetzt bei NGINX helfen?


    Liebe Grüße

    Cobraball


    git_diff.txt

  • danke für den Patch, den Heizungs-Status 71 (SH Anheizen) habe ich nun dem Status 2 (Anheizen) gleich gesetzt, nicht wie im Patch (9 - Zünden) was unterm Strich aufs selbe rauskommt da es das selbe GIF ist.


    Die Umstellung von state-shfire auf gif noch nicht hierzu benötige ich zuerst das entsprechende gif.


    Zu "Feuer Aus". das ist Status 1, auch bei dir oder? Da bekommst du auch kein Bild?


    stateInfos ist über 15 Jahre so gewachsen, ich wollte mit den 3-4 mir initial bekannten Status keine Liste mit ~70 Elementen anlegen in welcher fast alles leer ist. Inzwischen gibt es wenig Lücken da könnte man es ggf. mal umstellen.

    Das 'i' statt 'code' zurückgegeben wird ist es Bug, ist mir nie aufgefallen da ich selten Status > 23 habe und es bis 23 noch identisch ist. Fehler ist behoben, danke für den Hinweis.

    Zu NGINX, den verwendest du einfach als Proxy um Anfragen vom Browser zum p4d zu routen?
    Wenn du von einer ganz alten p4d Version gewechselt hast bei der das WEBIF noch mit PHP realisiert war und ein Apache nötig war ....
    geändert hat sich das der p4d nun selbst den WEB Server stellt und die Kommunikation des WEB Client (nun JavaScript) und dem p4d über Websockets erfolgt. Ggf. musst du dem Proxy für die Verbindung noch Websockets erlauben?

    Grüße
    Jörg

    Seit Oktober 2009:
    Fröling P4 mit 1000l Pufferspeicher

  • Hallo Jörg,


    erstmal frohe Weihnachten Dir und allen anderen, die sich hier am 24.12. so rumtreiben!


    Und Danke für die Rückmeldung!


    den Heizungs-Status 71 (SH Anheizen) habe ich nun dem Status 2 (Anheizen) gleich gesetzt

    Hier hab ich einfach nach dem Bildnamen "state-heatup.gif" geschaut statt im stateInfos-Array zu kucken. "Status 2" passt da schon besser.

    Die Umstellung von state-shfire auf gif noch nicht hierzu benötige ich zuerst das entsprechende gif.

    Hier war ich faul und hab einfach eine Kopie von state-fire.gif verwendet (-> state-shfire.gif, reicht mir auch als SH-Bild).

    Für den Fall, dass mal jemand so eine coole Flamme mit Stückholz darunter baut, kann man das das einfach ersetzen - ich kann so ein gif nicht bauen und Internetrecherchen blieben bisher erfolglos.

    Zu "Feuer Aus". das ist Status 1, auch bei dir oder? Da bekommst du auch kein Bild?

    Im "Ruhezustand" bekomme ich Status 5, die Heizung meldet dann "Feuer Aus" (mit großen "A") zurück. Der Vergleich mit "Deinem" kleinen "a" schläft dann fehl und es kommt kein Bild. Hab ich gelöst mit "strcasecmp(t, title)".

    Meine Pelletseinheit ist bei mir dauerhaft ausgeschaltet und wird nur bei Bedarf aktiviert, vielleicht bekomme ich deswegen keinen "Status 1"!?


    Zu NGINX ...

    NGINX und p4d laufen (inzwischen wieder) auf der selben Kiste. Ich mag einfach den p4d vom Internet erreichbar machen.

    In einer Übergangszeit waren zwei verschiedene Kisten am Start und der alte (PHP-)p4d konnte per NGINX "proxy_pass 192.168.x.y:1111" problemlos aufgerufen werden.

    Das funktioniert jetzt nicht mehr ("proxy_pass localhost:1111" bzw. "proxy_pass 192.168.x.z:1111"), ebenso wenig ein Symlink von /var/lib/p4d in mein www-root (auch zum Test mit 777-Rechten).

    Alles führt zu einer "schwarzen" Seite, den gleichen Hintergrund wie bei einem funktionierden Direktaufruf 192.168.x.z:1111, nur gibt's weder ein Menü, noch Widgets.

    Der Tipp mit Websockets ist hilfreich, damit kann ich mal entsprechende NGINX Configs suchen.


    Vielen Dank!


    Liebe Grüße

    Cobraball

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!