Das ist doch mit Taster bzw. Knopf, oder?
Also wieder ein technischer Umbau nötig.
Das mit der Maus ist dagegen mega praktisch.
Das ist doch mit Taster bzw. Knopf, oder?
Also wieder ein technischer Umbau nötig.
Das mit der Maus ist dagegen mega praktisch.
Hallo ihr alle.
Ich müsste das hier nochmal aufwärmen. An meinem DatenPi hat es damals mit Triggerhappy und der Maus geklappt.
Habe jetzt im Neuen System wieder beide Dateien erstellt, alles eingetragen und ist auch gespeichert.
Dann, wie unten zu sehen, den Nutzer "pi" bei den DAEMON_OPTS eingetragen.
( sudo nano /etc/default/triggerhappy)
Neustart gemacht und der Prozess "thd" läuft auch. Allerdings noch immer als "nobody" und die Tastenkombi mit der Maus geht nicht.
Wie kann ich den Fehler finden bzw den Nutzer richtig eintragen/ändern?
Oder haben sich die Befehle in der *.conf geändert? Die Dateien in den Pfade gibts jedenfalls noch.
SystemOS ist übrigens Bullseye lite.
Vielen Dank und viele Grüße ![]()
htop:
Daemon_opts:
Hallo meigrafd,
Ich würde das eher nicht machen,...
Der Grund:
Um für Korrekturen einfacher und schneller den richtigen Eintrag in der Tabelle zu finden.
Das ist mit "timestamp" leider recht mühsam.
Hin und wieder kommt es bei mir zu "falschen" Einträgen. Warum auch immer.
Dann stehen keine plausiblen Werte in der Datenbank.
Um diese dann von Hand in der DB zu ändern ist es mit Timstamp recht mühsam gewesen.
...Datum umrechnen in Timstamp.
...Timestamp in der DB suchen...
So geht es jetzt viel einfacher! ![]()
Timestamp ist nach wie vor vorhanden und wird auch verarbeitet.
Datum und Zeit sind nur zusätzlich vorhanden.
Das sind jetzt halt Erfahrungswerte aus der Praxis.
Das wurde beim Erstellen des Skriptes nicht bedacht. Leider kann ich das nicht selbst ändern.
Sind übrigens die Highcharts von dir damals ![]()
Wäre natürlich super bombastisch wenn man das Skript daraufhin erweitern könnte ![]()
Viele Grüße
Update.
Es hängt wohl am Webhoster.
Hatte alles nochmal auf meiner Synology DS eingerichtet. Dort klappt, wie auf dem Raspi, ebenfalls alles reibungslos.
Nur das der Pi eben etwas langsamer ist.
Somit sollte zu Fehlersuche ein eigenes Thema her.
Evtl kann es ein Mod ab Beitrag 87 abtrennen?!
Überschrift: Highcharts werden nicht vollständig geladen.
Viele Grüße
Hallo,
gibt es die folgende Funktion in PhpMyAdmin?
Einen vorhandenen TIMESTAMP -Eintrag in ein neues leeres Feld, als lesbares Datum, eintragen.
Siehe Beispiel ganz unten.
Lässt sich das mittels PhpMyAdmin erledigen, oder braucht es dazu ein externes Skript?
Suchte mir schon einen Wolf, finde dazu aber keinen passenden Sql Befehl.
Aktueller Stand:
Ich habe eine Tabelle (data) in einer Datenbank mit 5 Spalten vorliegen.
QuoteTabelle: data
id - location - timestamp - temp - hum
Mittels ALTER TABLE data ADD zeit DATETIME AFTER hum; habe ich die neue Spalte "zeit" eingefügt.
Quoteid - location - timestamp - temp - hum - zeit
Nun soll in der Spalte "zeit" der umgerechnete Wert aus "timestamp" eingetragen werden.
Der Grund:
Um für Korrekturen einfacher und schneller den richtigen Eintrag in der Tabelle zu finden.
Das ist mit "timestamp" leider recht mühsam.
Beispiel:
Quoteid ....... location ......... timestamp ....... temp ....... hum ........ zeit
1........ irgendwo ........ 1453836607 ....... 20 ............ 60 ........ 26.01.2016 20:30:07
Hat hierzu jemand eine brauchbare Idee, Tipps, Vorschläge?
Ich hoffe es gibt hier schon soweit fertige Beispiele im Netzt welche nur noch angepasst werden müssten.
Am schönsten wäre es natürlich das per PhpMyAdmin & einem SQL-Befehl zu erledigen, da ich kein Programmierer bin und kaum Ahnung habe von dem allem.
Vorab schonmal herzlichen Dank! ![]()
Entschuldige erstmal für die super späte Rückmeldung!
Privat und Arbeit wars wiedermal sehr angespannt!
. Und Grippe war auch dazwischen ![]()
Ein Error-Log hat es nicht ausgegeben.
Auf dem Webserver ist auch kein Error-Log eingetragen.
Evtl mach ich da was falsch.
Ich hatte die Tage mit dem Support gesprochen. Er vermutete zu wenig Speiche (48MB).
Also wurde testweise auf 256MB erhöht. Keine Änderung!
Nun wurde in der ini-Datei die "max_execution_time" von 5 auf 30 erhöht. Auch keine Änderung!
Die Datenbank wird doch ohnehin vollständig eingelesen (etwa11MB) um die gewünschte Zeit aus zu geben, richtig?
Dann spielt der Speicher und die Zeit doch gar keine Rolle, oder??
Viele Grüße!
Ein Stück weiter bin ich gekommen. Nur noch zu keiner Lösung.
Es liegt wohl an der Größe der Datenbank.
Ich habe zum Testen eine neue erstellt und diese manuell gefüllt. Mit weniger Daten über 12 Monate.
Da klappt die Anzeige problemlos auf dem Webserver.
Es scheint also das hier das Problem zu suchen ist.
Gibt es denn irgendwo eine Zeitbegrenzung?
Evtl. wird dann wohl ein eigenes Thema besser sein?
Aus verschiedenen Gründen mußte ich HighCharts neu installieren.
1. habe ich mysql-server mysql-client php5-mysql, dann
2. Apache2, und
3. das Script von meigrafd installiert
System RaspiB1 mit Jessie,
Hi,
Die Frage ist bei mir leider unter gegangen.
Soweit ich mich noch erinnere hat sich mit Jessie einiges geändert. Das alles wurde noch auf und für Wheezy erstellt.
Ich denke da gibt es sogar dazu einen Kommentar in diesem Thema. Bin mir nicht sicher.
Ich hoffe das hilft dir schon mal weiter.
Weiterhin hatte ich mir mal eine kleine *liesmich* als Hilfe geschrieben.
Ich füge die mal hier mit an.
//Einrichten lighttpd , php, mysql , phpmyadmin ,
sudo apt-get update
sudo apt-get install lighttpd
sudo /etc/init.d/lighttpd restart
sudo apt-get install php5-cgi
sudo apt-get install mysql-server
sudo nano /var/www/info.php #Server und PHP testen bzw anzeigen
<?php
phpinfo();
?>
sudo lighty-enable-mod fastcgi
sudo lighty-enable-mod fastcgi-php
sudo /etc/init.d/lighttpd restart
sudo nano /etc/lighttpd/lighttpd.conf
server.dir-listing = "enable"
dir-listing.external-css = "/dir.css"
dir-listing.hide-dotfiles = "enable"
dir-listing.exclude = ( "dir.css" )
dir-listing.encoding = "utf-8"
sudo apt-get install phpmyadmin
sudo /etc/init.d/lighttpd restart
sudo cp /etc/phpmyadmin/lighttpd.conf /etc/lighttpd/phpmyadmin.conf
sudo /etc/init.d/lighttpd restart
sudo nano /etc/modules #Module für den Systemstart laden. Siehe auch weiter unten.
w1-gpio pullup=1
w1-therm
sudo apt-get install htop # Prozesse besser anzeigen und auch filtern.
sudo apt-get install python-mysqldb #für Python
Ich habe weiter keine Extraschritte durchgeführt.
Keine Config wegen fast-cgi oder php bearbeitet bzw erweitert.
################## Ausschalten und Neustart per Mausklick (USB) #########################
sudo nano /etc/triggerhappy/triggers.d/halt.conf #Datei erstellen und mit folgendem Inhalt
BTN_LEFT+BTN_MIDDLE 1 /usr/bin/sudo /sbin/halt
sudo nano /etc/triggerhappy/triggers.d/reboot.conf
BTN_RIGHT+BTN_MIDDLE 1 /usr/bin/sudo /sbin/reboot
Es muß die zuletzt angegebene Taste zuerst gedrückt werden.
Also erst mittlere Maus, dann rechte/linke Taste.
Der Benutzer "pi" ist bereits in /etc/sudoers entsprechend eingetragen.
Daher ist es am sinnvollsten, triggerhappy mit den Rechten von pi zu starten:
sudo nano /etc/default/triggerhappy
DAEMON_OPTS="--user pi"
Es gibt Raspian-Versionen, die haben modifizierte Start-Skripte,
und in einem dieser Skripte wird der Start von Triggerhappy annulliert.
Oder er wird nach kurzer Zeit wieder gestoppt.
Achte also darauf, ob "/usr/sbin/thd" einige Minuten nach dem Start noch in der Prozesstabelle auftaucht.
Hierfür ist htop sehr gut geeignet!
############## für 1-wire vorbereiten #############
//http://www.kompf.de/weather/pionewiremini.html
1-wire Softwaretreiber
Die für die Ansteuerung des 1-wire Temperatursensors erforderlichen Kernelmodule
sind Bestandteil der Linux-Distribution Raspbian "wheezy".
Man muss sie allerdings explizit laden:
Neuere Versionen des Raspbian Betriebssystems ab Kernel 3.18 (Februar 2015)
erfordern zusätzlich die Aktivierung des Device Tree Overlay für 1-wire.
Dazu editiert man (per sudo nano oder einem anderen Editor Ihrer Wahl) die Datei
/boot/config.txt und fügt folgende Zeile hinzu:
# Aktivierung des Device Tree Overlay fuer 1-Wire
dtoverlay=w1-gpio,gpiopin=4,pullup=on
Nach dem erforderlichen Reboot gelingt nun auch das Laden der erforderlichen Module per Kommandozeile:
sudo modprobe w1-gpio pullup=1
sudo modprobe w1-therm
Wichtig ist der Parameter pullup=1, der dem Modul mitteilt, dass eine parasitäre Speisung über einen Pullup-Widerstand vorhanden ist.
Die Module legen im Verzeichnis /sys/bus/w1/devices jeweils ein Unterverzeichnis für jeden gefundenen Sensor an.
Der Name des Verzeichnisses setzt sich aus dem Family-Code des Sensors und seiner eindeutigen Identifikationsnummer zusammen.
In jedem Unterverzeichnis gibt es die Datei w1_slave, die Sensorstatus und gemessenen Temperaturwert enthält.
cd /sys/bus/w1/devices
cd 28-000801b5*
cat w1_slave
0f 00 4b 46 ff ff 06 10 0c : crc=0c YES
0f 00 4b 46 ff ff 06 10 0c t=2375
Die Datei besteht aus zwei Zeilen, die jeweils den hexadezimalen Registerdump des Sensor-ICs enthalten. Am Ende der ersten Zeile steht die Prüfsumme (CRC) und die Information, ob es sich um einen gültigen Messwert handelt (YES). Die zweite Zeile endet mit dem Temperaturmesswert in tausendstel Grad Celsius. Im Beispiel beträgt die Temperatur also 7,375 °C. Die Genauigkeit auf drei Stellen hinter dem Komma ist natürlich nur scheinbar; dem Datenblatt des DS18S20 entnimmt man zum Beispiel, dass die Messgenauigkeit ±0,5 °C beträgt. Die tatsächliche Temperatur liegt also irgendwo zwischen 6,8 und 7,9 °C.
###################### Module beim Systemstart laden #######################
Wenn alles soweit funktioniert, dann sollte man die beiden erforderlichen Module in die Datei
/etc/modules eintragen, damit sie der Kernel in Zukunft automatisch beim Systemstart lädt:
# /etc/modules
w1-gpio pullup=1
w1-therm
###################### crontab ######################
crontab -e #Eintragen von Cronjobs
*/40 * * * * ping -c 1 192.168.22.1
führt alle 40 Minuten 1 Ping an die IP aus
Zum Beispiel um den Wlan-Adapter von edimax nicht in den Energiesparmodus zu lassen.
*/40 * * * * ping -c 1 192.168.22.1
*/15 * * * * /home/pi/temp.py > /home/pi/templog.log
*/15 * * * * sudo /usr/local/sbin/dht.py > /home/pi/humlog.log
BZW
*/40 * * * * ping -c 1 192.168.22.1
0,15,30,45 * * * * /home/pi/temp.py > /home/pi/templog.log
0,15,30,45 * * * * sudo /usr/local/sbin/dht.py > /home/pi/humlog.log
58,13,28,43 * * * * sudo /home/pi/lol_dht22/loldht 6 > /home/pi/humlog-loldht-6.log
57,12,27,42 * * * * sudo /home/pi/lol_dht22/loldht 3 > /home/pi/humlog-loldht-3.log
##################### WLan-Adapter Edimax ####################
sudo nano /etc/network/interfaces #sollte etwa so aussehen. Lan ist hier fest, wlan dhcp
auto lo
iface lo inet loopback
auto eth0
allow-hotplug eth0
iface eth0 inet manual
auto wlan0
allow-hotplug wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
iface default inet dhcp
Netzwerk neu starten mit:
/etc/init.d/networking restart
WPA_GUI mit root-Rechten öffnen. > Menü > Run > gksu wpa_gui
Dann den Adapter auswählen, scannen und Netzwerk wählen. Passwort eingeben und hinzufügen.
###################### #####################
Hallo Meigrafd und Gemeinde,
es hat mit dem Projekt ja soweit alles geklappt. Ich konnte alles verbauen und messen.
Die Tage wird es sogar wieder an den nächsten Platz versetzt.
Ich schreibe weil ich 2 Fragen zu der Ausgabe habe. Ich hoffe sehr das mir da jemand helfen kann.
1.
Die Ausgabe der Temperatur-Chart über 4 Wochen hinaus klappt nicht auf meinem Webserver. Auf dem Raspberry wird es nach einer Denkpause angezeigt. (Die Datenbank bzw der Datensatz ist 10MB groß)
Die Feuchtemessung hingegen wird bis 6Montate korrekt ausgegeben (12 wiederum nicht).
Könnte das am Webserver liegen und der Rechenzeit oder am Skript, oder beides?
Den Quell-Code habe ich schon verglichen, mir ist kein Unterschied aufgefallen. Das ein oder andere Fragezeichen hab ich allerdings schon.
Im Grunde sollte ja nichts über 4 Monate erfasst werden. Jetzt ist aber doch mal 1 Jahr (354 Tage) draus geworden. ![]()
Bei den anderen beiden Datensätzen ist mir das nicht aufgefallen. Die haben nur 47 & 82 Tage.
2.
Wäre es sehr kompliziert die Charts so anzeigen zu lassen?
.....Demo: https://www.highcharts.com/stock/demo/compare
Die Zeitleiste unten ist sehr komfortabel!
Ich hoffe es findet sich jemand der hier unterstützen kann.
Hier die Bilder...
Ich gehe mal davon aus das es ohne weitere Hardware nicht so einfach umsetzen lässt. Ist das richtig?
Was ist das denn überhaupt für ein Stecker? 20 (polig)
Schauen wir mal ob das klappt. Wäre sehr froh wenn ich es anschließen könnte.
Ansonst reden wir per PN mal drüber.
Ich hab auch noch die Tastatur hier liegen.
Falls man diese auch ohne großen Aufwand am PI verwenden kann, dann wäre das schon nett.
Hallo.
Ich habe hier ein Display von meinem alten eeePC (4G 701) übrig. 7 Zoll mit 800x480 Pixel.
Kenne mich nur mit den Anschlüssen nicht aus. Ist das DSI?
Kann ich dieses am PI verwenden und wenn ja, wie?
Stromversorgung wird sicher extra nötig sein, oder?
Vielen Dank.
Hi.
Super das du noch da noch dabei bist!
Sogar eine neue Version. Finde ich Toll!! :thumbs1:
An dem DHT-Skript ist ja einiges geändert worden.
Das alte läuft ja bei mir, gibt so jetzt also keinen Grund da etwas zu ändern.
Neugierig bin ich da aber schon. Warum gehts bei mir und nicht bei 'ilovepis'?
Hat deine Bottle-Version eigentlich das Sunset/Sunrise mit drin? ![]()
Hm, ich wollte ja eigentlich "nur" die ganze Ausgabe, welche auch in der Konsole erschein wenn ich es dort mache, in eine log/txt-Datei schreiben.
Ala : dump.sql ________ 100% 546KB 545.6KB/s 00:00
Die Umleitung mit 2> klappt nicht. (Wird nur eine leere Datei erstellt)
Auf ein Skript und die Statuscodes würd ich gern verzichten. Und wenn dann soll schon dann die ganze Fehlermeldung als Text kommen
.
Hi.
Ich schiebe per Cronjob mit scp eine Datei von meinem Raspi auf meinen Webserver.
Allerdings *scheint* das nicht immer zu klappen.
Aus dem Grund wollte ich ein log erstellen und die Ausgabe der Konsole in eine Datei schreiben. (&> scp.log zum Beispiel)
Da das nicht klappte (Datei wird erstellt, bleibt aber leer) hab ich im Netz gesucht.
Fragen zu dem Thema habe ich gefunden, nur keine gelösten Antworten darauf.
Gibt es dazu eine Lösung oder geht das für SCP so nicht ? ![]()