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

Es gibt 4.961 Antworten in diesem Thema, welches 1.501.268 mal aufgerufen wurde. Der letzte Beitrag () ist von ranseyer.

  • Code
    time=$(/usr/local/bin/p4 getp -a 0x003c | grep '=>' | sed 's/=> //')

    Danke. :thumbup: Das funktioniert schon mal.


    Aber da habe ich noch Fragen dazu.


    Warum steht der Ausdruck rechts neben dem "=" in Klammern?
    Warum steht beim Ausdruck rechts neben dem "=" ein "$" davor?


    Bei mir findet er den Pfad zum p4 nicht.
    Muss in einem bash-Skript der Pfad unbedingt mit angegeben werden?


    So funktioniert es bei mir:

    Code
    $ time=$(p4 getp -a 0x003c | grep '=>' | sed 's/=> //')
    $ echo ${time}
    720

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


    fraenk for friends Code: MATF103

  • bei dir licht p4 in /usr/bin/ nicht in /usr/local/bin/ weir du selbst compiliert/installierst schau mal wohin du installiert.


    of topic (hat nichts mit dem p4d oder p4 zu tun):
    $() hat bei der bash die selbe Funktion wie back-quotes ``, es führt ein Kommando aus.

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

  • die vom syslogd (oder rsyslogd) geschriebenen logs liegen unter /var/log/, das des p4d heißt p4d.log.
    Lass doch mal in einem Fenster ein tail -f /var/log/p4d.log laufen währen die die MQTT Message abschickst.


    Deutlicher Fortschritt meinerseits, ich hab jetzt die Logeinträge hinbekommen:

    Code
    Jan 17 12:10:15 raspberrypi p4d: <- (mqtt2p4d/command) [{ "command" : "parstore", "address" : 0, "value" : "6" }]Jan 17 12:10:15 raspberrypi p4d: Perform MQTT command 'parstore' for address 0 with value '6'Jan 17 12:10:15 raspberrypi p4d: Storing value '6' for parameter at address 0x0Jan 17 12:10:15 raspberrypi p4d: Stored parameter

    Und mit Deinen Beispieldaten wird auch der Wert gespeichert :)


    Wenn ich dann allerdings die Adresse und den Wert der Vorlauf-Solltemp. einsetze, gibts eine Fehlermeldung, scheint an der Stelle der Hex-Adresse zu, wenn das recht verstehe.

    Code
    Jan 17 12:10:31 raspberrypi p4d: <- (mqtt2p4d/command) [{ "command" : "parstore", "address" : 0x58, "value" : "36" }]Jan 17 12:10:31 raspberrypi p4d: Error: Ignoring invalid json in [{ "command" : "parstore", "address" : 0x58, "value" : "36" }]Jan 17 12:10:31 raspberrypi p4d: Error decoding json: '}' expected near 'x' (<string>, line 1 column 40, position 40)


    Aber insgesamt sieht das ja schon mal ganz gut aus.

  • okay noch ein Versuch auf den Hinweis das hex nicht unterstützt wird was daran liegt das JSON 'number das nicht unterstützt.
    Du kannst auch vor den Senden das JSON prüfen, nahezu jeder beliebige JSON Parser wird die verraten das dein JSON 'invalid' bzw. 'malformed' ist. Das hat hier nichts mit dem p4d zu tun.


    Zu Beispiel mit json_pp:

    Code
    root@gate~> echo '{ "command" : "parstore", "address" : 0x58, "value" : "36" }' | json_pp  
    malformed number (leading zero must not be followed by another digit), at character offset 39 (before "x58, "value" : "36" ...") at /usr/bin/json_pp line 45.

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

  • okay noch ein Versuch auf den Hinweis das hex nicht unterstützt wird was daran liegt das JSON 'number das nicht unterstützt.
    Du kannst auch vor den Senden das JSON prüfen, nahezu jeder beliebige JSON Parser wird die verraten das dein JSON 'invalid' bzw. 'malformed' ist. Das hat hier nichts mit dem p4d zu tun.

    Nach längerem Nachdenken, hab ich dann auch endlich begriffen, was Deine Bemerkung mit der HexAdresse sollte. ich hatte einfach die Angabe übernommen, die Dein WebIF für den entsprechenden Kanal im Fenster für die Werteeingabe ausgibt, und das ist nun mal:

    Code
    Gewünschte Vorlauf-temperatur bei +10°C Außentemperatur
    Bereich: 10 - 110°C
    °C(Default 40 °C, Adresse 0x58, Typ 0x7)


    Auf die Idee, den Adresswert in Dezimal umzurechnen, bin ich erst gar nicht gekommen, ich dachte, wenn Du das so angibst, dann erwartet das Programm auch wieder Hex-Adressen. Und mit den Feinheiten von JSON Parsern beschäftige ich mich normalerweise nicht :)


    Wenn ich nun statt 0x58 den Wert 88 nehme, kommt auch hier tatsächlich der richtige Wert an und wird gespeichert.
    Super!!!!


    Damit kann ich jetzt mal weiter herumspielen, und versuchen, das in Openhab einzubauen.


    Vielen Dank erst mal, ich berichte, wenn es was Neues gibt.


    Wilfried

  • Hallo,
    ich bin der Neue.
    Ich möchte bei mir in Haus und Hof in erster Linie Temperaturen "einsammeln" um daraus abgeleitet dann "irgendwann" einmal die Temperaturregelung im Haus zu optimieren. Da die Heizung in einem Nebengebäude steht und ich natürlich keine Leerrohre für eine Verkabelung von Thermostaten etc. habe, muss ich Temperaturen (auch Raumtemperaturen) autark erfassen und per WLAN auf einem Raspi o. ä. wieder einsammeln.
    Soviel zur Vorrede.
    Das p4d-Projekt ist beeindruckend! Nach der Installation auf einem Raspi ist es quasi auf Anhieb gelaufen. Allerdings habe ich ein grundsätzliches Problem mit der Ankopplung der COM1 zu haben. Im syslog gibt es jede Menge Fehler der Schnittstelle:
    Jan 18 14:24:57 raspberrypi p4d: Error reading serial interface, reopen now!
    Jan 18 14:24:57 raspberrypi p4d: Read word failed, aborting


    der Befehl p4 state sagt ähnliches:
    root@raspberrypi:/home/pi# p4 state
    Read word failed, aborting


    Was allerdings auf Anhieb funktionierte, war das Einlesen des Anlagenschemas. Wie kann das sein, wenn die Kommunikation nicht funktioniert? Oder gibt es ein "Default"-Schema, welches immer angezeigt wird.
    Aus früheren Beiträgen habe ich entnommen, das p4 die Schnittstellenparameter selbst einstellt.


    Über den Touchscreen habe ich im Service-Mode die COM1 auf Modem "ein" und wieder "aus" eingestellt.


    Viele Grüße
    Uli

  • Hallo Uli,


    hast Du denn prinzipiell die richtige Kabelbelegung gewählt? Die Adern des seriellen Kabels müssen so verbunden sein:


    2 <-> 3
    3 <-> 2
    5 <-> 5


    Mit "Schema" meinst Du vermutlich das hier:



    Ja, das scheint Standard zu sein und man findet es unter Setup -> Allg. Konfiguration -> Schematische Darstellung.


    Grüße
    Frank

  • Hallo Frank,
    das Anlagenbild sehe ich ohne die Messwerte. Das erklärt das Verhalten bei mir. Ich habe zum Test mal RX/TX getauscht, allerdings ohne Erfolg. Dann ist es wohl mein RS232/USB Interface (FTDI Adapter FT232RL), welcher dann nicht korrekt bedient wird. Ich mache mich mal auf die Suche nach Raspi-kompatiblen Treibern. Wenn alle Stricke reißen, muss halt ein neuer RS232-Adapter her.
    Viele Grüße
    Uli

  • Hallo Frank,
    das Anlagenbild sehe ich ohne die Messwerte. Das erklärt das Verhalten bei mir. Ich habe zum Test mal RX/TX getauscht, allerdings ohne Erfolg. Dann ist es wohl mein RS232/USB Interface (FTDI Adapter FT232RL), welcher dann nicht korrekt bedient wird. Ich mache mich mal auf die Suche nach Raspi-kompatiblen Treibern. Wenn alle Stricke reißen, muss halt ein neuer RS232-Adapter her.
    Viele Grüße
    Uli

    Hallo Uli,
    ich verwende diesen Adapter:


    BENFEI USB auf seriell Adapter, USB auf RS-232 Stecker (9-polig) DB9 Serielles Kabel, Prolific Chipset, Windows 10/8.1/8/7, Mac OS X 10.6 und höher, 1,5M https://www.amazon.de/dp/B0753HBT12/ref=cm_sw_r_u_apa_i_q5BbGb4Q1BAJ7


    Der funktioniert bei mir ohne Probleme!


    Gruß
    Stefan

  • Hi Uli,


    ziehe den RS232/USB mal vom Raspi ab und beende den p4d sudo systemctl stop p4d
    Dann lass mal ein tail auf das syslog laufen: sudo tail -f /var/log/syslog


    dann stecke den Stick wieder an und poste was dabei im Log kommt.


    Ergänzung: Das du für einen FTDI einen extra Treiber benötigst halte ich für nahezu ausgeschlossen, der wird seit Generationen vom Kernel (bzw. den Kernel Modulen) unterstützt. Außer es gibt einen neuen FTDI Chip der noch nicht unterstützt wird aber das glaube ich nicht.
    Die FTDI sind nach meiner Erfahrung die einzigen mit denen man keinen Ärger hat. Die meisten anderen Chipsets zicken schon eher mal.

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

  • habe die 0.6.18 hochgeladen.
    Diese Version unterstützt auch https, siehe Readme


    Meine Tests mit dem Google Chrome waren alle positiv jedoch mit dem Firefox klemmt es noch.
    Der http Zugang funktioniert wenn es im Setup nicht auf https umgestellt ist mit der Version 0.6.18 wie vorher! Nach einem Versuch mit https kann man es mit einem klick wieder auf http umstellen.


    Sofern ihr nach dem Umstellen nicht mehr auf das Web Interface kommt könnt ihr es so wieder zurückstellen:
    update config set value = '0' where name = 'webSsl'; commit; Das am SQL Promt ausführen!
    Dann noch sudo systemctl restart p4d und alles ist beim alten.

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

  • Hui, hier hat sich ja so einiges an der Software geändert in den letzten Tagen. :)


    TLSv1.3 funktioniert prima mit Vivaldi 3.5 (Chromium Unterbau) und Firefox 84.0.2 (hatte ich noch als Portable rumliegen).

    verstehe ich dich richtig, du hast die neue Version schon getestet und TLS klappt bei dir auch mit dem FF?

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

Jetzt mitmachen!

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