Servus,
Bei mir funktioniert soweit alles (danke für die Anleitungen) nur die charts wollen einfach nicht. Wie lange muss man den warten bis diese mal funktionieren?
Kann irgendwer Vermutungen anstellen wieso charts nicht angezeigt werden sollten?
Das sieht dann so aus - siehe Bild
Datenaufzeichnung läuft seit 26.08.18
Es werden ca. 200000 messungen am Tag durchgeführt - laut meiner Anzeige...
Danke
Fröling: [ANNOUNCE] p4d - Visualisierung und Einstellung der S-3200 via COM1
Es gibt 4.961 Antworten in diesem Thema, welches 1.508.140 mal aufgerufen wurde. Der letzte Beitrag () ist von ranseyer.
-
-
habe bei mir auch neu installieren müssen und hatte das selbe Problem.
Die pChar2 Lib wurde wohl ziemlich umgebaut: https://github.com/bozhinov/pChart2.0-for-PHP7
Ich muss mal schauen wann ich dazu komme den Code auf die neue pChart Version zu portieren oder ob ich einen anderen, ggf einfacheren Weg für die Charts finde.
man kann jedoch von "pChart2.0-for-PHP7" im Branch "7.x-compatible" die alte Version bekommen, mit der läuft es ohne Probleme.Ich habe das mal in das Makefile des p4d eingebaut sodass dieser bei der Installation über make automatisch verwendet wird.
Diese drei Kommandos genügen zur Installation des WEB Interface incl. pChart and apache configuration: https://github.com/horchi/linu…install-the-web-interface
Grüße Jörg
-
Musste in der neuesten Version folgendes ändern, damit die Charts liefen:
In chart.php und chart2.php:
-include("pChart/pData.php");
-include("pChart/pDraw.php");
-include("pChart/pImage.php");+include("pChart/class/pData.class.php");
+include("pChart/class/pDraw.class.php");
+include("pChart/class/pImage.class.php");In detail.php:
-include("pChart/pData.php");
-include("pChart/pDraw.php");
-include("pChart/pImage.php");
-include("pChart/pCache.php");+include("pChart/class/pData.class.php");
+include("pChart/class/pDraw.class.php");
+include("pChart/class/pImage.class.php");
+include("pChart/class/pCache.class.php"); -
@ horchi, geht das nur mit einer kompletten Neuinstallation oder kann man das seperat deinstallieren und neu installieren.
Ich habe mal die drei Kommandos ausgeführt aber das hat nix gebracht. Bei mir ist linux-p4d auch nicht unter
/usr/src/linux-p4dsondern unter/p4d/linux-p4d - könnte das der Fehler sein?@ Panzerknacker, ich hab in meinen *.php nachgeschaut und hatte mich schon gefreut. Aber bei mir waren die ...class.php bereits drinnen. Danke für eure Zeit. Gruß Ben -
@Patrick1701 ich schau die Woche mal nach, welche Einstellungen ich am S4 gemacht habe damit es lief. Hab es noch in Erinnerung, dass ich auch was umstellen musste. Wichtig bei mir war Das serielle Kabel oben hinten anzuschliessen.
Habe mich schonmal vor paar Wochen gemeldet, dass mein Raspi abgeflogen ist.
Habe jetzt folgendes Probiert.Installiert habe ich ein Raspian Stretch.
Punkt 2 War lediglich alles in Deutsch einstellen und den Fernzugriff einrichten.
Punkt 3 install.sh abgeändert.
Lediglich Apache2 und MariaDB
"Pakete Installieren"apt-get install apache2 phpmyadmin git
apt-get install libmariadbclient-devPunkt 4 sudo /tmp/install.sh
Bis dahin funktioniert alles. Leider bekomme ich ein paar Fehler.
1) Fehler siehe Bild bereits im Script.
https://ibb.co/h4QvwV2) Fehler Anleitung Punkt 60 nano /etc/p4d/p4d.conf nicht vorhanden
3) Fehler nano /p4d/linux-p4d/configs/p4d.con ist auch nicht vorhanden.
4) Per 192...xxxx/index.php wird nichts gefunden.
Könnt ihr mir bei der Fehlersuche helfen?
Ist leider echt nicht so easy. Evtl noch so nebenbei mit Winscp tu ich mich sehr hart, da mir immer Rechte mit dem User Pi fehlen. Vllt. hat da auch noch jemand ne Idee. -
Hi,
macht es doch bitte mach dem README mit git clone dann bauen nebst installation via make. Hintergrund, das install Skript kam hier aus dem Forum (hab den Namen des Autor gerade nicht im Kopf ... meine Altzheimer ) und wird AFAIK aktuell nicht mehr gepfegt.
Jörg
-
Hi,
habe es jetzt nochmal versucht nach der Anleitung Schritt für Schritt durchzugehen. Bin leider trotzdem gescheitert.
Bekomme die Fehlermeldung Page not found.
Was ich ändern musste:
Bei der Database Installation habe ich zwei Befehle abgesetzt:
apt-get installlibmariadbclient-dev
apt-get install mysql-serverDanach konnte ich die Datenbank anlegen nach Anleitung.
Bei Apache musste ich folgendes abändern:apt install apache2 libapache2-mod-php7.2 php7.2-mysql php7.2-gdapt install apache2 libapache2-mod-php7.0 php7.0-mysql php7.0-gdDanach konnte ich wieder alles ausführen.Der nächste step bei dem ich hängen geblieben bin ist Enable automatic p4d startup during boot.Da wusste ich leider gar nicht genau was ich machen musst ausser diese drei Befehle ausführen:cp contrib/p4d /etc/init.d/chmod 750 /etc/init.d/p4dupdate-rc.d p4d defaultsInstall the web interface konnte ich wieder reibungslos ausführen.Jetzt komm ich leider nicht mehr weiter. Da ich ja keine Startseite bekomme.Der Apache läuft aber, wenn ich die IP ohne Zusatz angebe. Sehe ich das Apache Works.Könnt ihr mir helfen?
-
dann mal Schritt für Schritt:
1) läuft der der p4d?
das testest du am einfachseb so:Code#> ps -ef | grep p4d root 2130 1 0 Okt07 ? 00:00:00 /bin/bash /usr/local/bin/runp4d -n root 3468 2130 4 Okt09 ? 18:30:14 /usr/local/bin/p4d -n root 13706 13685 0 13:32 pts/0 00:00:00 grep --color=auto p4d
dabei ist die zweite Ausgabezeile die entscheidende.
2) Fehler vom p4d im log?
Code
Alles anzeigen#> grep p4d /var/log/syslog Oct 28 13:32:44 raspberrypi p4d: Processed 26 samples, state is 'Abstellen Warten1' Oct 28 13:32:44 raspberrypi p4d: Updating error list Oct 28 13:32:45 raspberrypi p4d: Updating error list done Oct 28 13:32:45 raspberrypi p4d: Info: Found (0) pending errors Oct 28 13:32:53 raspberrypi p4d: Checking state ... Oct 28 13:32:53 raspberrypi p4d: ... got (11) 'Abstellen Warten 1' Oct 28 13:33:03 raspberrypi p4d: Checking state ... Oct 28 13:33:03 raspberrypi p4d: ... got (11) 'Abstellen Warten 1' Oct 28 13:33:13 raspberrypi p4d: Checking state ... Oct 28 13:33:13 raspberrypi p4d: ... got (11) 'Abstellen Warten 1' Oct 28 13:33:13 raspberrypi p4d: Time drift is -86057 seconds Oct 28 13:33:23 raspberrypi p4d: Checking state ... Oct 28 13:33:23 raspberrypi p4d: ... got (11) 'Abstellen Warten 1' Oct 28 13:33:33 raspberrypi p4d: Checking state ... Oct 28 13:33:33 raspberrypi p4d: ... got (11) 'Abstellen Warten 1'
das ist die 'normale' Ausgabe.
3) läuft der Apache
Code#> ps -ef | grep apache root 399 362 0 14:34 pts/3 00:00:00 grep --color=auto apache www-data 4448 26820 0 06:25 ? 00:00:00 /usr/sbin/apache2 -k start www-data 4449 26820 0 06:25 ? 00:00:00 /usr/sbin/apache2 -k start www-data 4450 26820 0 06:25 ? 00:00:00 /usr/sbin/apache2 -k start www-data 4451 26820 0 06:25 ? 00:00:00 /usr/sbin/apache2 -k start www-data 4452 26820 0 06:25 ? 00:00:00 /usr/sbin/apache2 -k start www-data 12989 26820 0 08:11 ? 00:00:00 /usr/sbin/apache2 -k start root 26820 1 0 Okt04 ? 00:00:49 /usr/sbin/apache2 -k start
4) kommst du mit dem Browser auf dei 'default' Seite vom Apache, da steht irgendwas vom Apache, Version und auf welchem System er läuft. Die Seite sollte kommen wenn du im browser nur auf dei IP des Raspi (oder wo auch immer dein Apache läuft) gehst. Zum Beispiel http://192.168.200.101 (mit deiner IP)5) kommt die Seite vom p4d wenn du an die ip noch ein /p4 anhänst? Also in der Art http://192.168.200.101/p4 (mit deiner IP)
dann melde dich und sag ab welchem Schritt es klemmt
Grüße Jörg
-
Punkt 1)
Bekomme folgende Ausgabe als User Pi:
pi 7796 7778 0 09:18 pts/0 00:00:00 grep --color=auto p4d
Bekomme folgende Ausgabe als User Sudo su(root):
root 7817 7815 0 09:19 pts/0 00:00:00 grep p4dPunkt 2)
User Pi oder Root es passiert gar nichts beim Pi.Punkt 3)
Ausgeführ als Pi:root 402 1 0 09:26 ? 00:00:00 /usr/sbin/apache2 -k start
www-data 505 402 0 09:26 ? 00:00:00 /usr/sbin/apache2 -k start
www-data 506 402 0 09:26 ? 00:00:00 /usr/sbin/apache2 -k start
www-data 507 402 0 09:26 ? 00:00:00 /usr/sbin/apache2 -k start
www-data 508 402 0 09:26 ? 00:00:00 /usr/sbin/apache2 -k start
www-data 509 402 0 09:26 ? 00:00:00 /usr/sbin/apache2 -k start
www-data 835 402 0 09:38 ? 00:00:00 /usr/sbin/apache2 -k start
pi 1050 1032 0 09:49 pts/0 00:00:00 grep --color=auto apacheAusgeführt als Root:
root 402 1 0 09:26 ? 00:00:00 /usr/sbin/apache2 -k start
www-data 505 402 0 09:26 ? 00:00:00 /usr/sbin/apache2 -k start
www-data 506 402 0 09:26 ? 00:00:00 /usr/sbin/apache2 -k start
www-data 507 402 0 09:26 ? 00:00:00 /usr/sbin/apache2 -k start
www-data 508 402 0 09:26 ? 00:00:00 /usr/sbin/apache2 -k start
www-data 509 402 0 09:26 ? 00:00:00 /usr/sbin/apache2 -k start
www-data 835 402 0 09:38 ? 00:00:00 /usr/sbin/apache2 -k start
root 1070 1068 0 09:50 pts/0 00:00:00 grep apachePunkt 4)
Nur die IP Ausgabe: kommt Apache 2 Default Page. It WorksPunkt 5)
Wenn ich nur P4 Anhänge, macht er mir noch ein /main.php dran und die Ausgabe: ErrorTable 'p4.config' doesn't existSchonmal danke für die Hilfe, ich weiss das sehr zu schätzen.
Gruß
Daniel -
Hi, kein Problem, gerne!
Die Kommandos oben als root User passt.
Als erstes müssen wir den p4d zum laufen bekommen, der ist bei dir nicht gestartet.
ich nehme an die Quellen liegen bei dir wie im README vorgeschlagen in /usr/src/linux-p4d. dann mach mal bitte folgendes und poste die Ausgaben hier komplett in einem oder mehreren Code Blöcken (die sind leichter lesbar )das letzte der Kommandos kommt nicht von selbst zurück, das kannst du nach ein paar Sekunden mit Ctrl-c abbrechen und auch davon dann die Ausgaben hier Posten.
Wenn eines der make schon einen Fehler meldet brauchst du nicht weiter machen, dann einfach die Ausgabe bis da hin posten.
Grüße Jörg
-
Er scheint schon was zu bekommen. Der Pfad war allerding linux-p4d.
Jetzt bekomme ich unter: http://192.168.178.200/p4/main.php ein sehr abgespecktes Fenster mit Achtung p4 Daemon offline.
Gruß
DanielCode
Alles anzeigenroot@HeizSV:~# cd /usr/src/linux-p4d root@HeizSV:/usr/src/linux-p4d# make -s root@HeizSV:/usr/src/linux-p4d# make -s install root@HeizSV:/usr/src/linux-p4d# root@HeizSV:/usr/src/linux-p4d# cd root@HeizSV:~# p4d -v Version 0.2.30-GIT9bc3c71 root@HeizSV:~# p4d -n -t Read 8 option from /etc/p4d/p4d.conf Info: Calling mysql_library_init() Dictionary '/etc/p4d/p4d.dat' loaded Info: No One-Wire sensors found, path '/sys/bus/w1/devices' not exist (No such file or directory) Opening '/dev/ttyUSB0' succeeded! Try conneting to database Checking database connection ... Calling mysql_init(2638) SQL client character now 'utf8' Checking table structure and indices ... Checking table 'config' Initialy creating table 'config' create table config(owner VARCHAR(40), name VARCHAR(40), inssp INT(11), updsp INT(11), value VARCHAR(100), PRIMARY KEY(owner DESC, name DESC)) ENGINE InnoDB; Checking table 'errors' Initialy creating table 'errors' create table errors(id INT(11) unsigned not null auto_increment, inssp INT(11), updsp INT(11), time1 DATETIME comment 'time gekommen', time4 DATETIME comment 'time gegangen', time2 DATETIME comment 'time quittiert', number INT(10), info INT(10), state VARCHAR(10), text VARCHAR(100), mailcnt INT(11), PRIMARY KEY(id DESC)) ENGINE InnoDB; Checking table 'hmsysvars' Initialy creating table 'hmsysvars' create table hmsysvars(id INT(11) unsigned, inssp INT(11), updsp INT(11), name VARCHAR(100), type INT(1) unsigned, unit VARCHAR(10), visible INT(1) unsigned, min VARCHAR(100), max VARCHAR(100), time DATETIME, value VARCHAR(100), address INT(4) unsigned, atype VARCHAR(2), PRIMARY KEY(id DESC)) ENGINE InnoDB; create index idxaddress on hmsysvars(address); Checking table 'jobs' Initialy creating table 'jobs' create table jobs(id INT(11) unsigned not null auto_increment, inssp INT(10), updsp INT(10), requestat DATETIME, doneat DATETIME, state VARCHAR(1), command VARCHAR(100), address INT(4) unsigned, result VARCHAR(100), data VARCHAR(100), PRIMARY KEY(id DESC)) ENGINE InnoDB; create index idxstate on jobs(state); create index idxrequestat on jobs(requestat); Checking table 'menu' Initialy creating table 'menu' create table menu(id INT(4) unsigned not null auto_increment, inssp INT(10), updsp INT(10), parent INT(5) unsigned, child INT(5) unsigned, type INT(1) unsigned, address INT(4) unsigned, title VARCHAR(100), state VARCHAR(1), unit VARCHAR(5), value VARCHAR(100), unknown1 INT(4), unknown2 INT(4), PRIMARY KEY(id DESC)) ENGINE InnoDB; Checking table 'samples' Initialy creating table 'samples' create table samples(address INT(4) unsigned, type VARCHAR(2), aggregate VARCHAR(1), time DATETIME, inssp INT(10), updsp INT(10), value FLOAT(14,2), text VARCHAR(50), samples INT(3), PRIMARY KEY(address DESC, type DESC, aggregate DESC, time DESC)) ENGINE InnoDB; create index idxtime on samples(time); create index idxtype on samples(type); Checking table 'schemaconf' Initialy creating table 'schemaconf' create table schemaconf(address INT(4) unsigned, type VARCHAR(2), inssp INT(10), updsp INT(10), state VARCHAR(1), kind VARCHAR(20), color VARCHAR(10), showunit INT(1), showtext INT(1), bg INT(2), fontsize INT(2), aleft INT(2), xpos INT(11), ypos INT(11), link VARCHAR(100), PRIMARY KEY(address DESC, type DESC)) ENGINE InnoDB; Checking table 'scripts' Initialy creating table 'scripts' create table scripts(id INT(11) unsigned not null auto_increment, inssp INT(11), updsp INT(11), name VARCHAR(100), visible VARCHAR(1) comment '\'Y\'es, \'N\'o', path VARCHAR(100), PRIMARY KEY(id DESC)) ENGINE InnoDB; create index idxpath on scripts(path); Checking table 'sensoralert' Initialy creating table 'sensoralert' create table sensoralert(id INT(11) unsigned not null auto_increment, inssp INT(10), updsp INT(10), kind VARCHAR(1), subid INT(11) unsigned, lgop INT(11) unsigned, address INT(4) unsigned, type VARCHAR(2), state VARCHAR(1), min INT(10), max INT(10), rangem INT(10), delta INT(10), maddress VARCHAR(100), msubject VARCHAR(100), mbody TEXT, lastalert INT(10), maxrepeat INT(10), PRIMARY KEY(id DESC)) ENGINE InnoDB; Checking table 'smartconfig' Initialy creating table 'smartconfig' create table smartconfig(address INT(4) unsigned, type VARCHAR(2), inssp INT(10), updsp INT(10), state VARCHAR(1), kind VARCHAR(20), color VARCHAR(10), showunit INT(1), showtext INT(1), bg INT(2), fontsize INT(2), aleft INT(2), xpos INT(11), ypos INT(11), link VARCHAR(100), PRIMARY KEY(address DESC, type DESC)) ENGINE InnoDB; Checking table 'timeranges' Initialy creating table 'timeranges' create table timeranges(address INT(4) unsigned, from1 VARCHAR(5), to1 VARCHAR(5), from2 VARCHAR(5), to2 VARCHAR(5), from3 VARCHAR(5), to3 VARCHAR(5), from4 VARCHAR(5), to4 VARCHAR(5), PRIMARY KEY(address DESC)) ENGINE InnoDB; Checking table 'valuefacts' Initialy creating table 'valuefacts' create table valuefacts(address INT(4) unsigned, type VARCHAR(2), inssp INT(10), updsp INT(10), state VARCHAR(1), unit VARCHAR(5), factor INT(4), name VARCHAR(100), title VARCHAR(100), usrtitle VARCHAR(100), res1 INT(4), PRIMARY KEY(address DESC, type DESC)) ENGINE InnoDB; Closing mysql connection and calling mysql_thread_end(2638) Checking table structure and indices succeeded Calling mysql_init(2638) Connection to database established Storing 'user' with value 'p4' Storing 'passwd' with value '141785a8765705819f5495b2c539c7b9' Storing 'mail' with value '' Storing 'htmlMail' with value '' Storing 'mailScript' with value '/usr/local/bin/p4d-mail.sh' Storing 'stateMailStates' with value '0,1,3,19' Storing 'stateMailTo' with value '' Storing 'errorMailTo' with value '' Storing 'tsync' with value '' Storing 'maxTimeLeak' with value '' Info: Script path '/etc/p4d/scripts.d' not exists - 'No such file or directory' Checking state ... ... got (5) 'Feuer aus' State changed to 'Feuer Aus' Reading values ... Processed 0 samples, state is 'Feuer Aus' Updating error list Updating error list done Info: Found (0) pending errors Checking state ... ... got (5) 'Feuer aus' Checking state ... ... got (5) 'Feuer aus'
-
okay dann ist der p4d installiert und lauffähig. Mit dem letzen Kommando hattest du ihn erfolgreich manuell Starten können.
Den Meldungen nach was das der erste Start auf dem System da er die Tabellen erst angelegt hat (macht er beim ersten Start).Offline heißt er läuft nicht, den Test-Start auf der Kommandozeile hattest du dann ja wieder beendet.
Was nun fehlt ist das init Skript. Was hats du für ein Sytem, einen Raspi mit raspian Stretch?
An welcher Stelle hatte das Installieren des Init Skripes geklemmt? -
Moin Moin,
um das einbinden in den Init Prozess (automatisches starten nach dem booten) zum vereinfachen habe ich jetzt das make Target "inst-sysv-init" erstellt.
Also zum einbinden in den Init Prozess (sofern man SystemV Init verwenden möchte einfach:
Ein Target für den systemd Init Prozess baue ich bei Gelegenheit noch ein.Sollte der mysql Server auf dem selben Host laufen empfiehlt es sich den p4d nach dem mysqld zu starten, dazu in der Datei /etc/init.d/p4d in der Zeile "Required-Start" noch mysql hinzufügen:
macht man das nicht sollte auch kein Problem sein da der p4d zyklisch versucht die Verbindung zu Datenbank aufzubauen.Grüße Jörg
-
Hi,
also mein Problem besteht jetzt eig. nur noch darin, dass der P4d Dienst nicht automatisch gestartet wird. Soll ich das über das SysV noch machen oder wie finde ich raus, warum der nicht startet?
Den C-Quellcode habe ich angepasst.
Gruß
Daniel -
Zitat
Den C-Quellcode habe ich angepasst
was musstest du anpassen?
ja versuch das mal über das im letzten Post beschriebene make inst-sysv-init
danach sollte man den pwd mittels "/etc/init.d/p4d start" starten und mit "/etc/init.d/p4d stop" beenden können, beim booten/runterfahren sollte das dann automatisch passieren -
Hi Sorry aber wie mache ich diesen Befehl?
make inst-sysv-init ich muss zuerst sysv installieren oder ?
Woher beziehe ich dann diese inst-sysv-init?Jetzt hab ich versucht das ganze zu intialisieren und bekomme folgende Fehlermeldungen:
Code
Alles anzeigenRead 8 option from /etc/p4d/p4d.conf Info: Calling mysql_library_init() Dictionary '/etc/p4d/p4d.dat' loaded Info: No One-Wire sensors found, path '/sys/bus/w1/devices' not exist (No such file or directory) Opening '/dev/ttyUSB0' succeeded! Try conneting to database Checking database connection ... Calling mysql_init(903) SQL client character now 'utf8' Checking table structure and indices ... Checking table 'config' Checking table 'errors' Checking table 'hmsysvars' Checking table 'jobs' Checking table 'menu' Checking table 'samples' Checking table 'schemaconf' Checking table 'scripts' Checking table 'sensoralert' Checking table 'smartconfig' Checking table 'timeranges' Checking table 'valuefacts' Closing mysql connection and calling mysql_thread_end(903) Checking table structure and indices succeeded Calling mysql_init(903) Connection to database established Info: Script path '/etc/p4d/scripts.d' not exists - 'No such file or directory' Processing WEBIF job 207 'updatemenu:0x0000/'
-
den Befehl einfach im Source Ordner (/usr/src/linux-p4d) eingeben und fertig
SystemV Init ist bei Raspbian bei und sollte m.E. auch unter stretch ohne weiteres verfügbar sein auch wenn stretch AFAIK schon den systemd nutzt.
-
gerade erst deine Log-Meldungen oben gesehen - die sehen soweit gut aus. sollte jetzt laufen.
BTW: Welche Fehlermeldungen?
-
Bekomme diese Fehlermeldung beim ausführen von make
root@HeizSV:/usr/src/linux-p4d# make inst-sysv-init
make: *** Keine Regel, um „inst-sysv-init“ zu erstellen. Schluss. -
du hast hiernach aktualisiert?
Moin Moin,
um das einbinden in den Init Prozess (automatisches starten nach dem booten) zum vereinfachen habe ich jetzt das make Target "inst-sysv-init" erstellt.Aktualisieren geht so:
Codecd /usr/src/linux-p4d/ git pull make install install-web und für systemV Init noch make inst-sysv-init
Aktualisieren ist immer dann nötig wenn es im git etwas neues gibt was man haben möchte
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!