iSpindel - Lokaler Server - iSpindle.py

Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 3755
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: München

Re: iSpindel - Lokaler Server - iSpindle.py

#251

Beitrag von Tozzi » Montag 8. Oktober 2018, 20:51

Top! Stell mir das dann am besten per Pull Request in den Github. :thumbup
Viele Grüße aus München
Stephan

flensdorfer
Posting Senior
Posting Senior
Beiträge: 484
Registriert: Freitag 5. Februar 2016, 09:26
Wohnort: Flensburg

Re: iSpindel - Lokaler Server - iSpindle.py

#252

Beitrag von flensdorfer » Donnerstag 11. Oktober 2018, 13:23

Hi Stephan,
wie funktioniert das denn mit der RemoteConfig? Spindel mit 6.0.1 schwimmt gerade in einem Weizen und aktueller lokaler Server mit 1.6.0 läuft problemlos.
Gruß, Arne

Anfänger in der 20l-Klasse

Klaus53123
Posting Klettermax
Posting Klettermax
Beiträge: 202
Registriert: Montag 30. Oktober 2017, 07:48

Re: iSpindel - Lokaler Server - iSpindle.py

#253

Beitrag von Klaus53123 » Donnerstag 11. Oktober 2018, 14:04

1.6.0 lokal Server??? Habe mir gerade die aktuelle "Out of the box" Version gezogen, da steht in der Readme 1.3.0.

Übersehe ich da etwas?

LG
Klaus
Liebe Grüße

Bild

Wir sind was wir denken. Alles um uns herum entsteht aus unseren Gedanken. Mit unseren Gedanken erschaffen wir die Welt. (Buddha)

flensdorfer
Posting Senior
Posting Senior
Beiträge: 484
Registriert: Freitag 5. Februar 2016, 09:26
Wohnort: Flensburg

Re: iSpindel - Lokaler Server - iSpindle.py

#254

Beitrag von flensdorfer » Donnerstag 11. Oktober 2018, 15:04

Moin Klaus,

ich ziehe das immer über Github:
https://github.com/DottoreTozzi/iSpindel-TCP-Server

Vielleicht ist das Komplett-Image schon länger nicht mehr aktualisiert worden?
[Edit] so ist es, das Image ist Version 1.3.0, siehe https://hobbybrauer.de/forum/viewtopic. ... 89#p275189

Und jetzt, wo ich noch einmal lese: Spindel 6.0.1 ist nicht nicht vorbereitet für die RemoteConfig... :Ahh schade. Aber wie das generell funktionieren würde, täte mich trotzdem interessieren :)
Gruß, Arne

Anfänger in der 20l-Klasse

Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 3755
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: München

Re: iSpindel - Lokaler Server - iSpindle.py

#255

Beitrag von Tozzi » Donnerstag 11. Oktober 2018, 19:14

So ist es. Das aktuelle Image ist leider schon was älter.
Ich mache demnächst ein neues, sobald ich die Änderungen von mrhyde drin habe.

Die Remote Config (zumindest das Intervall) hat Sam schon eingebaut, aber die aktuelle Firmware Binary reflektiert das noch nicht.
Wenn das dann mal funktioniert, erkläre ich nochmal genau, wie man das nutzen kann.
Viele Grüße aus München
Stephan

Klaus53123
Posting Klettermax
Posting Klettermax
Beiträge: 202
Registriert: Montag 30. Oktober 2017, 07:48

Re: iSpindel - Lokaler Server - iSpindle.py

#256

Beitrag von Klaus53123 » Freitag 12. Oktober 2018, 06:45

ich habe mal eine Frage zum update: ich habe letztes Jahr irgendwann im Oktober oder so das damals aktuelle image installiert und seitdem nichts mehr verändert.

Wie kann ich jetzt auf die aktuelle Version updaten. Geht das mit sudo nano update oder muss ich mehr machen? Sorry falls das hier schon irgendwo beschrieben ist, ich habe nichts gefunden und lese eigentlich auch zeitnah mit. Wenn es schon irgendwo erklärt ist, wäre ich für einen Link dankbar.

Im Moment fällt mir nichts besseres ein, als die SSD zu formatieren und ein neues Image aufzuspielen. Aber dann wäre ja von der Eichung bis zu anderen Daten alles weg.

Falls das mit sudo nano update (oder irgendeinem anderen Befehl) geht, werden dann Einstellungen wie Wlan, Token, Eichung etc überschrieben oder bleiben die erhalten?

Danke für etwas Hilfe.

LG
Klaus
Liebe Grüße

Bild

Wir sind was wir denken. Alles um uns herum entsteht aus unseren Gedanken. Mit unseren Gedanken erschaffen wir die Welt. (Buddha)

Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 3755
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: München

Re: iSpindel - Lokaler Server - iSpindle.py

#257

Beitrag von Tozzi » Freitag 12. Oktober 2018, 20:04

Ein Update zu machen ist je nach Version ein wenig tricky.
Ich schreibe dazu heute noch eine Anleitung.
Viele Grüße aus München
Stephan

Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 3755
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: München

Re: iSpindel - Lokaler Server - iSpindle.py

#258

Beitrag von Tozzi » Freitag 12. Oktober 2018, 21:26

OK also hier das Vorgehen zum Updaten, Schritt für Schritt.

Zunächst muss man eine Terminal Sitzung starten, mit ssh (Mac/Linux), putty (Windows) oder auf dem Raspbian Desktop mittels VNC oder Remote Desktop, dort Terminal öffnen.

Erst mal das Betriebssystem:

Code: Alles auswählen

sudo su
apt-get update
apt-get dist-upgrade
apt-get clean
apt-get autoclean
apt-get autoremove
reboot
Eventuelle Fragen zu automatischer Konfiguration (Samba etc.) mit "Nein" beantworten.

Nach dem Neustart überprüfen, ob die Datenbank up to date ist:

Code: Alles auswählen

mysql -u iSpindle -p
Passwort: ohyeah
use iSpindle;
show tables;
describe Data;
Für die folgenden Befehle nutzt Ihr am besten die Zwischenablage (Kopieren/Einfügen).
Falls das Feld "UserToken" nicht existiert, ist die Version älter als 1.3 und folgendes muss gemacht werden:

Code: Alles auswählen

ALTER TABLE Data MODIFY ID INT UNSIGNED NOT NULL;
ALTER TABLE Calibration MODIFY ID INT UNSIGNED NOT NULL;
ALTER TABLE Data ADD UserToken VARCHAR(64);
Falls "UserToken" drin ist, aber nicht die Felder "RSSI" und "Interval", handelt es sich um eine Version vor 1.4.
Folgendes machen:

Code: Alles auswählen

ALTER TABLE Data ADD `Interval` int;
ALTER TABLE Data ADD RSSI int;
Wer das letzte (aktuelle) Image einsetzt, muss hingegen nur folgendes ausführen:

Code: Alles auswählen

CREATE TABLE `Config` (
	`ID` int unsigned NOT NULL,
	`Interval` int NOT NULL,
	`Token` varchar(64) NOT NULL,
	`Polynomial` varchar(64) NOT NULL,
        `Sent` boolean NOT NULL,
	PRIMARY KEY (`ID`)
	) ENGINE=InnoDB DEFAULT CHARSET=ascii COLLATE=ascii_bin COMMENT='iSpindle Config Data';
	
	quit;
Die Datenbank ist jetzt aktuell. :Pulpfiction

Dann noch die Software selbst, das ist leicht:

Code: Alles auswählen

cd iSpindle-Srv
git pull
Skript an den richtigen Platz kopieren (installieren):

Code: Alles auswählen

cp iSpindle.py /usr/local/bin
Dann eventuell noch die Konfiguration überprüfen:

Code: Alles auswählen

 nano /usr/local/bin/iSpindle.py
Das war's. Neu starten, und sich an mrhyde's neuen Moving Average Diagrammen erfreuen.
Viele Grüße aus München
Stephan

Klaus53123
Posting Klettermax
Posting Klettermax
Beiträge: 202
Registriert: Montag 30. Oktober 2017, 07:48

Re: iSpindel - Lokaler Server - iSpindle.py

#259

Beitrag von Klaus53123 » Samstag 13. Oktober 2018, 07:00

Hallo Stephan,
Vielen Dank für die Anleitung. Ich denke das ist auch für mich als bekennenden Raspi Dummy machbar. Zwei Fragen hätte ich allerdings bevor ich mich ins Getümmel begebe (ich habe eine Version vor 1.3. die ich irgendwann Oktober letztes Jahr installiert habe)

1. Frage
Ich nehme mal an, ich muss alles ausführen so wie oben beschrieben. Also die Änderungen für “älter als 1.3” und für 1.4 und für “letztes Image”. Ist das korrekt?
2. Frage
Was genau ist gemeint mit “Konfiguration prüfen (iSpindle.py editieren)?

Lieben Dank an Dich Richtung München

Gruß
Klaus
Liebe Grüße

Bild

Wir sind was wir denken. Alles um uns herum entsteht aus unseren Gedanken. Mit unseren Gedanken erschaffen wir die Welt. (Buddha)

Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 3755
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: München

Re: iSpindel - Lokaler Server - iSpindle.py

#260

Beitrag von Tozzi » Samstag 13. Oktober 2018, 17:25

Hi Klaus,
Klaus53123 hat geschrieben:
Samstag 13. Oktober 2018, 07:00
Ich nehme mal an, ich muss alles ausführen so wie oben beschrieben. Also die Änderungen für “älter als 1.3” und für 1.4 und für “letztes Image”. Ist das korrekt?
Davon gehe ich aus, ja.
Aber Du siehst das ja, wenn Du "describe Data;" aufrufst.
Dann werden alle Felder der Tabelle angezeigt.
Klaus53123 hat geschrieben:
Samstag 13. Oktober 2018, 07:00
Was genau ist gemeint mit “Konfiguration prüfen (iSpindle.py editieren)?
Das ist nur nötig, wenn Du Weiterleitungen (Ubidots etc.) konfigurieren möchtest.
Per Default werden die Daten nur in die Datenbank geschrieben.
Editieren kannst Du das Skript (Konfiguration ist im oberen Teil) nach dem Kopieren mit dem Befehl "nano /usr/local/bin/iSpindle.py".
Ich habe das oben im Post nochmal geändert.
Viele Grüße aus München
Stephan

Klaus53123
Posting Klettermax
Posting Klettermax
Beiträge: 202
Registriert: Montag 30. Oktober 2017, 07:48

Re: iSpindel - Lokaler Server - iSpindle.py

#261

Beitrag von Klaus53123 » Samstag 13. Oktober 2018, 17:53

super... Das werde ich in einigen Tagen -wenn die Spindel wieder ans Tageslicht kommt- ausprobieren.....

Vielen Dank für Deine Mühen und die zeitnahen Antworten.

LG
Klaus
Liebe Grüße

Bild

Wir sind was wir denken. Alles um uns herum entsteht aus unseren Gedanken. Mit unseren Gedanken erschaffen wir die Welt. (Buddha)

Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 3755
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: München

Re: iSpindel - Lokaler Server - iSpindle.py

#262

Beitrag von Tozzi » Montag 15. Oktober 2018, 12:32

So, es gibt wieder ein Update:

Screenshot 2018-10-15 at 12.08.36.png
Auswahlseite
Screenshot 2018-10-15 at 12.08.36.png (27.51 KiB) 1786 mal betrachtet

Die seit Langem ersehnte Auswahlseite. :Pulpfiction
Treffenderweise namens index.php.
Standardmäßig werden die in den letzten 7 Tagen aktiven iSpindeln in der Auswahlbox angezeigt.
Man kann das aber auch beim Aufruf ändern (Parameter ?days=x).

Wer bereits die weiter oben beschriebenen Schritte durchgeführt hat und auf dem neuesten Stand ist, muss nur "git pull" ausführen (im "iSpindle-Srv" Verzeichnis) um dieses Update zu installieren.

Es bietet sich natürlich an, den Link als Lesezeichen zu speichern (bei Verwendung eines Touchscreens am besten direkt auf dem Desktop) oder gleich beim Start des Raspi anzeigen zu lassen.

Wer mag, darf das natürlich noch aufhübschen oder erweitern.
Auch weitere Funktionen (Kalibrierung, Remote Config, Daten löschen, Link zu phpMyAdmin) sollten langfristig noch rein.
Sobald ich rundrum zufrieden bin damit, werde ich auch ein neues Image basteln.
Viele Grüße aus München
Stephan

Benutzeravatar
Aeppler
Posting Senior
Posting Senior
Beiträge: 421
Registriert: Donnerstag 31. Dezember 2015, 17:58
Wohnort: Mengelse

Re: iSpindel - Lokaler Server - iSpindle.py

#263

Beitrag von Aeppler » Montag 15. Oktober 2018, 14:44

Super Stephan, vielen Dank dafür.
Beste Grüße aus Mengelse.
Ulrich

Klaus53123
Posting Klettermax
Posting Klettermax
Beiträge: 202
Registriert: Montag 30. Oktober 2017, 07:48

Re: iSpindel - Lokaler Server - iSpindle.py

#264

Beitrag von Klaus53123 » Donnerstag 18. Oktober 2018, 11:45

Hallo Stephan,
habe das Update so durchgeführt wie oben beschrieben. In usr/local/bin liegt jetzt die iSpindle.py in der Version 1.6.

Allerdings habe ich mal wieder das Problem, dass der Pi (vermutlich nach sudo update und sudo upgrade) nicht mehr ins Internet kommt. Wenn ich in das Wlan des PI gehe erhalte ich am Mac eine Meldung, dass kein Internet verfügbar ist.

Die Hinweise von Dir in Post #80 habe ich alle nochmal abgearbeitet, wenn ich den letzten Befehl eingebe erhalte ich diese Fehlermeldung

root@raspberrypi:/etc# sudo service dnsmasq restart
Job for dnsmasq.service failed. See 'systemctl status dnsmasq.service' and 'journalctl -xn' for details.


ich komme auch nicht mit 172.24.1.1/..... auf die Diagramme.

Wenn ich im Hausnetz bin (Pi über Lan verbunden), kann ich mit 192.xx.xx.xx/.... auf die Diagramme, auch auf das allerneuste Bild für die Auswahl, zugreifen.

ich habe dann auch noch versucht iSpindle.py manuell zu beenden mit sudo killall iSpindle.py und erhalte dann diese Fehlermeldung:

pi@raspberrypi:~ $ sudo killall iSpindle.py
iSpindle.py: no process found


Und wenn ich versuche iSpindle.py manuell zu starten, dann kommt diese Meldung:

pi@raspberrypi:~ $ ./iSpindle.py
Traceback (most recent call last):
File "./iSpindle.py", line 504, in <module>
main()
File "./iSpindle.py", line 494, in main
serversock.bind(ADDR)
File "/usr/lib/python2.7/socket.py", line 224, in meth
return getattr(self._sock,name)(*args)
socket.error: [Errno 98] Address already in use


Irgendwas läuft schief. Ich weiss bloss nicht was..... Hast du eine Idee?
Liebe Grüße

Bild

Wir sind was wir denken. Alles um uns herum entsteht aus unseren Gedanken. Mit unseren Gedanken erschaffen wir die Welt. (Buddha)

Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 3755
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: München

Re: iSpindel - Lokaler Server - iSpindle.py

#265

Beitrag von Tozzi » Donnerstag 18. Oktober 2018, 12:50

OK, wenn ich das richtig sehe, benutzt Du die Version mit Access Point.
Also PI über LAN im Internet, PI WLAN als Access Point konfiguriert.
Das ist leider ein ganz fieser Sonderfall, der bei mir auch irgendwann nicht mehr funktioniert hat und den ich eigentlich auch nicht mehr supporten wollte...
Dazu kommt wohl noch, dass Dein Raspi, wie ich annehme, noch auf "Jessie" läuft (der älteren Raspbian Version).

Aber ich schau mir das an und wir finden eine Lösung für Dich.
Gib mir ein paar Tage Zeit.
Viele Grüße aus München
Stephan

Klaus53123
Posting Klettermax
Posting Klettermax
Beiträge: 202
Registriert: Montag 30. Oktober 2017, 07:48

Re: iSpindel - Lokaler Server - iSpindle.py

#266

Beitrag von Klaus53123 » Donnerstag 18. Oktober 2018, 12:59

Hallo Stephan,

das muss nicht sein. Es ist ok wenn der Pi nicht ins Internet geht. Dann muss ich mich halt für die Bilder ins selbe Wlan einloggen wie die Spindel auch. Das macht nichts. Ubidots brauche ich nicht wirklich.....

Wenn es für dich einfacher ist, dann wäre es sehr schön, wenn du mir sagen könntest wie ich auf den Pi komme. Denn im Moment habe ich auch im selben Wlan von meinem PC aus keinen Zugriff auf den Pi. Auch nicht über SSH via Mac.
Liebe Grüße

Bild

Wir sind was wir denken. Alles um uns herum entsteht aus unseren Gedanken. Mit unseren Gedanken erschaffen wir die Welt. (Buddha)

Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 3755
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: München

Re: iSpindel - Lokaler Server - iSpindle.py

#267

Beitrag von Tozzi » Donnerstag 18. Oktober 2018, 15:25

Hallo Klaus,

das ist leider dasselbe Problem. Solange der Raspi kein Internet hat, kann man sich auch nicht ohne Weiteres dran anmelden.
Oder habe ich das falsch verstanden? Wie genau willst Du das denn konfiguriert haben?
Den PI als Access Point (eigenes WLAN) oder ganz einfach als weiteres Gerät im bestehenden Heim-(WLAN)-Netz?
Lass uns alles weitere per PN klären.
Viele Grüße aus München
Stephan

Klaus53123
Posting Klettermax
Posting Klettermax
Beiträge: 202
Registriert: Montag 30. Oktober 2017, 07:48

Re: iSpindel - Lokaler Server - iSpindle.py

#268

Beitrag von Klaus53123 » Dienstag 23. Oktober 2018, 10:05

so, nachdem bei mir nun alles wieder gut ist, meine beiden Spindeln auf die Version 6.0.1 aktualisiert sind und mein Pi mit der Version 1.6 am Start bin (vielen Dank an Stephan für die freundliche Hilfe), bleiben bei mir noch eine Frage:

In der Datenbank gibt es ja ein Feld "Polynomial". Ich verstehe nicht was da rein muss und wie die Syntax dazu ist. Kann ich hier zum Beispiel ein Polynom höheren Grades (also z.B. A*x^3+B*x^2+C*x+D) für die Umrechnung von Angle in Plato hinterlegen? Ein Polynom zweiten Grades lässt sich ja in den Konstanten const1-const3 in der Rubrik "Calibration" in der mysql Datenbank erfassen

Sorry falls ich Fragen stelle, die bereits irgendwo geklärt sind, ich habe diesen Faden hier komplett durch gelesen und natürlich auch die Readme in Stephan's Git aber irgendwie nicht gefunden oder überlesen.
Liebe Grüße

Bild

Wir sind was wir denken. Alles um uns herum entsteht aus unseren Gedanken. Mit unseren Gedanken erschaffen wir die Welt. (Buddha)

Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 3755
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: München

Re: iSpindel - Lokaler Server - iSpindle.py

#269

Beitrag von Tozzi » Mittwoch 24. Oktober 2018, 00:24

Das "Polynomial" Feld wird noch nicht verwendet.
Das gehört zur Tabelle "Config".
Sobald die aktuelle Firmware das auswertet, wird hier ganz einfach das Polynom als Text eingetragen, so wie es in der iSpindel Konfiguration erscheint.
Damit lässt sich dann eine "schwimmende" iSpindel im laufenden Betrieb kalibrieren, für Ubidots und andere Services, ohne dort jeweils eine eigene Formel hinterlegen zu müssen.
Hier haben wir ja eine davon unabhängige Lösung, mit der "Calibration" Tabelle und dem "plato4.php" Diagramm.

Ich habe das noch nicht dokumentiert, da es momentan noch gar nicht funktioniert.
Die Daten werden bereits gesendet, aber von der aktuellen iSpindel Firmware momentan noch nicht ausgewertet.
Sorry für die dadurch gestiftete Verwirrung. :puzz

Aber hier schonmal für die Poweruser, die das mit Sam zusammen testen wollen:

Wenn die iSpindel im laufenden Betrieb ihre Daten sendet, bekommt sie vom RasPySpindel Server eine Antwort.
Diese erfolgt sowieso und kostet nur wenige Mikrosekunden extra Zeit (geht also nicht auf die Batterie).
Bis jetzt war das ganz einfach ein ASCII Zeichen (ACK für OK, NAK für nicht OK).
In der neuen Version, wenn im Skript REMOTECONFIG=1 gesetzt ist, wird statt ACK ein JSON als Antwort übergeben, mit folgenden Inhalten:
  • Interval (Das Wakeup Intervall in Sekunden)
  • Token (Das User Token, kann ein Ubidots Token sein, ansonsten unbenutzt, siehe Docs)
  • Polynomial (Das Polynom zur Umrechnung Tilt Winkel->Plato bzw. %w/w)
Die weiteren Felder in besagter Tabelle:
  • ID: Die iSpindel Hardware ID, wie auch in den anderen Tabellen
  • Sent: True, falls diese Daten bereits abgeschickt wurden und demnach bereits aktiv sind
Ist noch völlig nackt, muss von Sam noch getestet werden, und wenn für gut befunden, basteln wir da noch eine Oberfläche dazu.
Aber an sich ist es nutzbar (halt mit phpMyAdmin oder MySQL Kommandozeile), sobald Sam die neueste Firmware freigibt (im ersten Schritt erst mal nur der "Interval" Parameter).
Viele Grüße aus München
Stephan

mrhyde
Posting Junior
Posting Junior
Beiträge: 42
Registriert: Mittwoch 7. Juni 2017, 14:16

Re: iSpindel - Lokaler Server - iSpindle.py

#270

Beitrag von mrhyde » Freitag 2. November 2018, 23:55

Hallo Stephan,

heute sind bei mir die Teile für eine wietere Spindel eingetroffen und ich musste sie natürlich gleich zusammenbauen. Dabei habe ich dann festgestellt, dass im Select für den Moving Average noch ein fehler ist, da dort nur bedingt nach dem Spindelname separiert wird. Ich habe das bei mir mal geändert, muss es aber noch testen. Es schient zu passen. Ich werde die nächsten Tage ein update ins GIT stellen.

Es handelt sich letzlich nur um eine kleine Anpassung in der common_db_querey.php

Gruß,
Alex

Klaus53123
Posting Klettermax
Posting Klettermax
Beiträge: 202
Registriert: Montag 30. Oktober 2017, 07:48

Re: iSpindel - Lokaler Server - iSpindle.py

#271

Beitrag von Klaus53123 » Montag 5. November 2018, 11:04

Hallo Gemeinde,

Hat schon mal jemand versucht den Wertebereich der Diagramme für Extrakt und Temperatur anzupassen. Derzeit sind die Standardmäßig auf 0-28 P und 0 bis 42 Grad Celsius eingestellt. Ich würde gerne beide Achsen vom Wertebereich deutlich einschränken.

Falls ja, wäre ich für einen kurzen Tipp wie das geht dankbar.
Liebe Grüße

Bild

Wir sind was wir denken. Alles um uns herum entsteht aus unseren Gedanken. Mit unseren Gedanken erschaffen wir die Welt. (Buddha)

mrhyde
Posting Junior
Posting Junior
Beiträge: 42
Registriert: Mittwoch 7. Juni 2017, 14:16

Re: iSpindel - Lokaler Server - iSpindle.py

#272

Beitrag von mrhyde » Dienstag 6. November 2018, 07:21

Klaus53123 hat geschrieben:
Montag 5. November 2018, 11:04
Hallo Gemeinde,

Hat schon mal jemand versucht den Wertebereich der Diagramme für Extrakt und Temperatur anzupassen. Derzeit sind die Standardmäßig auf 0-28 P und 0 bis 42 Grad Celsius eingestellt. Ich würde gerne beide Achsen vom Wertebereich deutlich einschränken.

Falls ja, wäre ich für einen kurzen Tipp wie das geht dankbar.
Wenn du in eine der php scripts gehst, kannst du das machen.

z.B. plato4_ma.php. Dort gibt es einen Teil, wo die y-achsen definiert werden:

Code: Alles auswählen

            
            yAxis: [                                                                                                                                                                                                                                                            
                {                                                                                                                                                                                                                                                               
                    startOnTick: false,                                                                                                                                                                                                                                         
                    endOnTick: false,                                                                                                                                                                                                                                           
                   // min: 0,                                                                                                                                                                                                                                                   
                   // max: 25,                                                                                                                                                                                                                                                  
                    title:                                                                                                                                                                                                                                                      
                    {                                                                                                                                                                                                                                                           
                        text: 'Extrakt %w/w'                                                                                                                                                                                                                                    
                    },            
Dort kannst du andere Werte für min und max definieren oder aber wir hier das ganze mit '//' auskommentieren. In dem Fall gibt es dann eine Autoskalierung.

Klaus53123
Posting Klettermax
Posting Klettermax
Beiträge: 202
Registriert: Montag 30. Oktober 2017, 07:48

Re: iSpindel - Lokaler Server - iSpindle.py

#273

Beitrag von Klaus53123 » Dienstag 6. November 2018, 07:36

Vielen Dank. Das kriege ich hin...

Im Moment habe ich einen Sud laufen und die Spindel schwimmt. Kann ich das während des laufenden Betriebs machen? Muss der Pi danach neu gestartet werden?
Liebe Grüße

Bild

Wir sind was wir denken. Alles um uns herum entsteht aus unseren Gedanken. Mit unseren Gedanken erschaffen wir die Welt. (Buddha)

mrhyde
Posting Junior
Posting Junior
Beiträge: 42
Registriert: Mittwoch 7. Juni 2017, 14:16

Re: iSpindel - Lokaler Server - iSpindle.py

#274

Beitrag von mrhyde » Dienstag 6. November 2018, 07:46

Klaus53123 hat geschrieben:
Dienstag 6. November 2018, 07:36
Vielen Dank. Das kriege ich hin...

Im Moment habe ich einen Sud laufen und die Spindel schwimmt. Kann ich das während des laufenden Betriebs machen? Muss der Pi danach neu gestartet werden?
Sollte gehen.

Ich habe das auf meiner NAS laufen und gerade mal während eines sudes getestet.

Du musst es aber eben bei allen php dateien machen, die du nutzt. Die Moving average Darstellungen haben noch ein Problem, wenn du mehrere Spindeln gleichzeitig nutzt. Da habe ich aber bereits einen pull request an Stephan gesendet. Das sollte dann mit dem nächsten Update gelöst sein.

Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 3755
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: München

Re: iSpindel - Lokaler Server - iSpindle.py

#275

Beitrag von Tozzi » Dienstag 6. November 2018, 09:34

OK, der Merge ist drin, danke, @mrhyde!
Klaus53123 hat geschrieben:
Dienstag 6. November 2018, 07:36
Kann ich das während des laufenden Betriebs machen? Muss der Pi danach neu gestartet werden?
Kannst Du und nein, muss er nicht. :Wink
Viele Grüße aus München
Stephan

mrhyde
Posting Junior
Posting Junior
Beiträge: 42
Registriert: Mittwoch 7. Juni 2017, 14:16

Re: iSpindel - Lokaler Server - iSpindle.py

#276

Beitrag von mrhyde » Donnerstag 8. November 2018, 23:40

Hallo Stephan,

beim letzten Brauen hat mich meine Frau auf eine Idee gebracht. Es wäre nicht schlecht, wenn man auch eine Information über das Rezep/Bier in der Datenbank, bzw. dem Diagramm hätte, was man gebraut hat oder gerade braut.

Ich habe mal eine extra Spalte in die dem Data Table eingefügt und in reset_now.php eine Möglichekeit ergänzt, um einen Rezeptnamen einzugeben, der dann in die DB geschrieben wird.
DB_Recipe.PNG
In der common_db_query.php habe ich eine Funtkion ergänzt, die dann den entsprechenden Rezeptnamen abfragen kann.

In den Diagrammen habe ich die Abfrage eingefügt, so dass zum aktuellen sud (nach dem letzen Reset) der Rezeptmname im Titel eingefügt wird.
Server_Recipe.PNG
Das geht bereits für jede Spindel, sofern man mehrere parallel bereibt.

Allerdings ist das jetzt ein erster Test und ich bin noch nicht ganz zufrieden, da man die Information nur beim Reset hat.

Vermutlich wäre es gut, wenn man mit dem Reset einen Rezeptnamen für die entsprechende Spindel schreibt der dann für jeden Eintrag der Spindel automatisch in die DB geschrieben wird, wenn auch Daten in die DB gehen.

Dann könnte man sich z.B. auch die Daten für ein Jahr im Diagramm anzeigen lassen und für jeden Sud die entsprechenden Daten sehen, wenn man mit der Maus über das Diagram geht. Hierzu benötige ich aber noch Zeit zum Nachdenken, was wirklich sinnvoll ist. Vermutlich benötige ich auch Hilfe, da dann das iSpindle.py script geändert werden muss, was für mich noch nicht ganz so einfach aussieht. Man müsste mit jedem Datenpunkt den letzten Reset und den entsprechenden Rezeptnamen abfragen und dann mit den daten der Spindel in die Datenbank schreiben.

Gruß,
Alex

Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 3755
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: München

Re: iSpindel - Lokaler Server - iSpindle.py

#277

Beitrag von Tozzi » Donnerstag 8. November 2018, 23:43

Klingt gut!
Spezifizier das mal genau und ich helf auf jeden Fall dann mit.
Genau sowas wollte ich, dass sich da Leute mit einbringen mit ihren Wünschen!
Die bisherige Lösung deckt wirklich nur das Nötigste mit ab.
Viele Grüße aus München
Stephan

Benutzeravatar
JeanH
Posting Junior
Posting Junior
Beiträge: 19
Registriert: Donnerstag 6. Oktober 2016, 21:38
Wohnort: Oberkirch
Kontaktdaten:

Re: iSpindel - Lokaler Server - iSpindle.py

#278

Beitrag von JeanH » Samstag 10. November 2018, 16:01

Hallo in die Runde.

Habe mein Raspi neu installieren müssen weil er plötzlich nicht mehr ins Netz wollte.
Also habe die neue Sofware installiert.Den Spindel bekam auch gleich eine auffrichung.
Nun habe ich folgendes Problem:das Programm PHPmyadmin liefert ein neuer Datensatz jede Sekunde.Im iSpindel habe ich schon 10s oder 600s probiert.
Es gibt keine Änderung. Was nun??

mrhyde
Posting Junior
Posting Junior
Beiträge: 42
Registriert: Mittwoch 7. Juni 2017, 14:16

Re: iSpindel - Lokaler Server - iSpindle.py

#279

Beitrag von mrhyde » Sonntag 11. November 2018, 18:07

JeanH hat geschrieben:
Samstag 10. November 2018, 16:01
Hallo in die Runde.

Habe mein Raspi neu installieren müssen weil er plötzlich nicht mehr ins Netz wollte.
Also habe die neue Sofware installiert.Den Spindel bekam auch gleich eine auffrichung.
Nun habe ich folgendes Problem:das Programm PHPmyadmin liefert ein neuer Datensatz jede Sekunde.Im iSpindel habe ich schon 10s oder 600s probiert.
Es gibt keine Änderung. Was nun??
Komisch, welche FW hast du auf der Spindel? Ichhabe 6.0.1 und bei zwei Spindeln je 600 sekunden eingegeben. Da kommen auch ca. alle 10 Minuten nur die Daten wie erwartet. Was ist denn für ein Wert bei Intervall in phpmydamin in der Data Tabelle zu sehen?

mrhyde
Posting Junior
Posting Junior
Beiträge: 42
Registriert: Mittwoch 7. Juni 2017, 14:16

Re: iSpindel - Lokaler Server - iSpindle.py

#280

Beitrag von mrhyde » Sonntag 11. November 2018, 18:26

Tozzi hat geschrieben:
Donnerstag 8. November 2018, 23:43
Klingt gut!
Spezifizier das mal genau und ich helf auf jeden Fall dann mit.
Genau sowas wollte ich, dass sich da Leute mit einbringen mit ihren Wünschen!
Die bisherige Lösung deckt wirklich nur das Nötigste mit ab.
Hallo Stephan,

ich bin ein wenig weiter gekommen.

1. Bei reset_now kann ich einen Rezeptnamen übergeben, der für die entsprechende Spindel in die Datenbank geschrieben wird.
2. Wenn iSpindel.py Daten von einer Spindel bekommt, wird für diese Spindel der letzte Reset und der entsprechende Rezeptname abgrufen. Dieser wird dann mit den aktuellen Daten wieder in die Spalte Recipe geschrieben. Somit hat man für jeden Datenpunkt nun auch den aktuellen Rezeptnamen. Das kann für jede Spindel ein anderer sein, wenn man mehrere Sude parallel hat.
3. Beim Tooltip kann ich nun auch den Rezeptnamen anzeigen. Aber leider nur als eine feste Variable vom letzten Reseet und nicht dynamisch.

Der aktuelle Sud ist jetzt ein Leffe Clone. Davor war es ein anderes Rezept, dass dann aber nicht angezeigt wird. Der Plan wäre jetzt, dass man eine Funktion einfügt, die zum entsprechenden Datenpunkt im Tooltip nun den Rezeptnamen anzeigt, der auch in der DB steht. Derzeit wird im Tooltip immer nur der letzte Rezeptname angezeigt. Eine andere Möglichkeit wäre das Anzeigen eines Markers beim Reset, der dann den entsprechenden Rezeptnamen anzeigt. Ich muss hier noch ein wenig nachdenken, da ich mit highcharts noch nicht wirklich vertraut bin. Wie es aussieht, benötigt man dann noch andere Module wie z.B. annotations,js.
SPindel_Label.PNG

Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 3755
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: München

Re: iSpindel - Lokaler Server - iSpindle.py

#281

Beitrag von Tozzi » Sonntag 11. November 2018, 19:00

Puh, da bin ich momentan wirklich überfragt.
Aber wenn Du Zeit und Lust hast, ich freu mich wirklich über jeden konstruktiven Beitrag.
Im Kern kümmere ich mich halt vor allem um die Kompatibilität mit den aktuellen iSpindel Firmwares und versuche, das alles anständig in der Datenbank abzubilden.
Die Abfragen werden dann durchaus manchmal komplex...
Viele Grüße aus München
Stephan

MartinLa
Neuling
Neuling
Beiträge: 3
Registriert: Montag 12. November 2018, 11:14

Re: iSpindel - Lokaler Server - iSpindle.py

#282

Beitrag von MartinLa » Montag 12. November 2018, 11:37

Hallo,

als erstes möchte ich mich bei Tozzi für seine Arbeit bedanken. Ich habe dein Script ein wenig für meine Zwecke angepasst. Ein Braukollege hat Interesse an dem erweiterten Script und würde das gerne übernehmen.
Ich habe mir zum Beispiel eine Index-Seite erstellt und eine "Emailüberwachung" hinzugefügt usw. Im Großen und Ganzen nichts wildes, nur habe ich den Code nicht neu geschrieben, sondern übernommen... :redhead
Ich bin mir nun jedoch unsicher, ob ich das Script überhaupt hätte so verwenden dürfen, bzw. ob ich das nun überhaupt weiter geben darf ohne Probleme zu bekommen?!

An den Anhängen kann man erkennen was geändert wurde und man sieht auch in welcher Art vorhandenes (z.B. Diagramme) übernommen wurde.

is_ueb.jpg
is_status.jpg
is_roh.jpg
is_con1.jpg
is_con2.jpg


Viele Grüße
Martin

mrhyde
Posting Junior
Posting Junior
Beiträge: 42
Registriert: Mittwoch 7. Juni 2017, 14:16

Re: iSpindel - Lokaler Server - iSpindle.py

#283

Beitrag von mrhyde » Montag 12. November 2018, 13:55

Das sieht super aus. Ich bin ja auch gerade dabei, die sudnamen in die Datenbank zu bekommen. Das hier sieht aber schon fortgeschrittener aus.

Klaus53123
Posting Klettermax
Posting Klettermax
Beiträge: 202
Registriert: Montag 30. Oktober 2017, 07:48

Re: iSpindel - Lokaler Server - iSpindle.py

#284

Beitrag von Klaus53123 » Montag 12. November 2018, 14:29

finde ich auch.... wenn ich doch nur programmieren könnte, dann würde ich auch gerne mitspielen. Aber der Zug ist glaube ich mit 59 Jahren schon vor einigen Donnerstagen abgefahren.
Liebe Grüße

Bild

Wir sind was wir denken. Alles um uns herum entsteht aus unseren Gedanken. Mit unseren Gedanken erschaffen wir die Welt. (Buddha)

Benutzeravatar
Dyrdlingur
Posting Freak
Posting Freak
Beiträge: 563
Registriert: Sonntag 17. November 2013, 08:31
Wohnort: Höhenkirchen bei München

Re: iSpindel - Lokaler Server - iSpindle.py

#285

Beitrag von Dyrdlingur » Montag 12. November 2018, 14:36

Hallo Martin,
dickes Lob, schaut toll aus.
Viele Grüße
Klaus

Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 3755
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: München

Re: iSpindel - Lokaler Server - iSpindle.py

#286

Beitrag von Tozzi » Montag 12. November 2018, 15:54

Hallo Martin,

das sieht in der Tat super aus!
Natürlich darfst Du meinen Code benutzen und auch weitergeben, solange ein Hinweis auf das Original Projekt beiliegt.
(Link auf GitHub reicht).
Auch würde es mich freuen, wenn Du mir die Sourcen zukommen lässt oder diese öffentlich verfügbar machst.
Und zu beachten ist, dass Highcharts nicht unter der GPL steht und nur zum privaten Gebrauch frei verfügbar ist.
Wer das kommerziell einsetzt, muss bezahlen.
Viele Grüße aus München
Stephan

MartinLa
Neuling
Neuling
Beiträge: 3
Registriert: Montag 12. November 2018, 11:14

Re: iSpindel - Lokaler Server - iSpindle.py

#287

Beitrag von MartinLa » Dienstag 13. November 2018, 12:20

Hallo und danke für die Info.

Was das Veröffentlichen angeht, so muss ich leider sagen das ich kein Programmierer bin und ursprünglich nie im Sinn hatte, diesen Code weiterzugeben. Der Code ist über längere Zeit Stück für Stück gewachsen, wobei mir immer nur wichtig war, dass es irgendwie funktioniert. Ich denke das jeder der auch nur etwas Ahnung von PHP hat die Hände über den Kopf zusammen schlagen wird. :redhead
Außerdem klappt das ganze auch nur, wenn eine mysql Datenbank zu Einsatz kommt.
Daher weis ich nicht, ob das Ganze der breiten Masse überhaupt etwas nützen würde. Wenn jedoch Interesse besteht, würde ich mich nochmal daran setzten den Code, soweit ich es vermag, aufbereiten.

Benutzeravatar
JeanH
Posting Junior
Posting Junior
Beiträge: 19
Registriert: Donnerstag 6. Oktober 2016, 21:38
Wohnort: Oberkirch
Kontaktdaten:

Re: iSpindel - Lokaler Server - iSpindle.py

#288

Beitrag von JeanH » Dienstag 13. November 2018, 17:15

So Sorry melde mich jetz wieder.
War beruflich weg.
Also FW iSpindel habe ich probiert 6.0.1 und 6.0.2 kein unterschied.
als Intervall in PHP steht 600.
was ich aber gesehen habe ist wenn ich die iSpindel starte laufen die Daten in PHP los.
Wenn ich dann die Ispindel auschalte lauden die Daten in PHP einfach weiter und so habe ich dann in paar Minuten 100erte neue Seiten.
Vermutlich liegt es nicht an der Ispindel

JeanH hat geschrieben: ↑
Samstag 10. November 2018, 16:01
Hallo in die Runde.

Habe mein Raspi neu installieren müssen weil er plötzlich nicht mehr ins Netz wollte.
Also habe die neue Sofware installiert.Den Spindel bekam auch gleich eine auffrichung.
Nun habe ich folgendes Problem:das Programm PHPmyadmin liefert ein neuer Datensatz jede Sekunde.Im iSpindel habe ich schon 10s oder 600s probiert.
Es gibt keine Änderung. Was nun??

Komisch, welche FW hast du auf der Spindel? Ichhabe 6.0.1 und bei zwei Spindeln je 600 sekunden eingegeben. Da kommen auch ca. alle 10 Minuten nur die Daten wie erwartet. Was ist denn für ein Wert bei Intervall in phpmydamin in der Data Tabelle zu sehen?

So schönen Abend noch
Hans

mrhyde
Posting Junior
Posting Junior
Beiträge: 42
Registriert: Mittwoch 7. Juni 2017, 14:16

Re: iSpindel - Lokaler Server - iSpindle.py

#289

Beitrag von mrhyde » Dienstag 13. November 2018, 21:32

Tozzi hat geschrieben:
Sonntag 11. November 2018, 19:00
Puh, da bin ich momentan wirklich überfragt.
Aber wenn Du Zeit und Lust hast, ich freu mich wirklich über jeden konstruktiven Beitrag.
Im Kern kümmere ich mich halt vor allem um die Kompatibilität mit den aktuellen iSpindel Firmwares und versuche, das alles anständig in der Datenbank abzubilden.
Die Abfragen werden dann durchaus manchmal komplex...
Stephan,

ich habe es endlich geschafft. Derzeit geht es mit einem script (angle.php). Ich muss in der common_db_query.php noch die anderen Abfragen und entsprechende Datenübergabe an die anderen scripte anpassen und die Verarbeitung der arrays dort noch anpassen. Das sollte aber recht fix gehen. Dann werde ich mal wieder was ins GITHUB einstellen.

letztlich hat mir dieses Beispiel geholfen:

Code: Alles auswählen

const chartData = [
  { timestamp: 1515059819853, value: 1, somethingElse: 'foo'},
  { timestamp: 1515059838069, value: 2, somethingElse: 'bar'},
  { timestamp: 1515059838080, value: 3, somethingElse: 'baz'},
  // you get the idea
]

const Chart = Highcharts.stockChart(myChart, {
  // ...options
  tooltip: {
    formatter () {
      // this.point.x is the timestamp in my original chartData array
      const pointData = chartData.find(row => row.timestamp === this.point.x)
      console.log(pointData.somethingElse)
    }
  },
  series: [{
      name: 'Numbers over the course of time',
      // restructure the data as an array as Highcharts expects it
      // array index 0 is the x value, index 1 is the y value in the chart
      data: chartData.map(row => [row.timestamp, row.value])
    }]
})

Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 3755
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: München

Re: iSpindel - Lokaler Server - iSpindle.py

#290

Beitrag von Tozzi » Dienstag 13. November 2018, 21:36

:thumbup
Viele Grüße aus München
Stephan

Benutzeravatar
JeanH
Posting Junior
Posting Junior
Beiträge: 19
Registriert: Donnerstag 6. Oktober 2016, 21:38
Wohnort: Oberkirch
Kontaktdaten:

Re: iSpindel - Lokaler Server - iSpindle.py

#291

Beitrag von JeanH » Freitag 16. November 2018, 16:42

Hallo und Hurra.
Habe mein Raspi neu installieren müssen weil er plötzlich nicht mehr ins Netz wollte.
Also habe die neue Sofware installiert.Den Spindel bekam auch gleich eine auffrichung.
Nun habe ich folgendes Problem:das Programm PHPmyadmin liefert ein neuer Datensatz jede Sekunde.Im iSpindel habe ich schon 10s oder 600s probiert.
Es gibt keine Änderung. Was nun??
Habe eine neue Speicherkarte genommen und jetz läuft es wie gewüncht.
Vielen Dank an das gesamte Team-

Tolle Grüße
Hans

Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 3755
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: München

Re: iSpindel - Lokaler Server - iSpindle.py

#292

Beitrag von Tozzi » Freitag 16. November 2018, 18:06

Interessant...
Aber vermutlich sind 99% aller "seltsamen" Probleme letztlich auf fehlerhafte Speicherkarten oder zu schwache Netzteile zurückzuführen.
Gerade der neue Pi3B+ ist da extrem anfällig.
Viele Grüße aus München
Stephan

Braumeister999
Posting Junior
Posting Junior
Beiträge: 12
Registriert: Samstag 25. Juni 2016, 09:15
Wohnort: Konstanz

Re: iSpindel - Lokaler Server - iSpindle.py

#293

Beitrag von Braumeister999 » Donnerstag 29. November 2018, 10:11

Hi Stephan,
erstmal danke für die tolle Arbeit die Du und Sam da so gemacht habt und immernoch dran arbeitet! Hut ab!
Leider hab ich Probleme das ganze zum Laufen zu bringen, vielleicht hast Du mir bei Gelegenheit einen heißen Tipp. Das ganze hab ich vom aktuellen Image installiert, doch kpmme ich da nicht drauf: Die Datenbank lässt sich komfortabel über phpmyadmin administrieren.
Die URL lautet:
http://raspberrypi/phpMyAdmin.php

Es kommt ne Meldung vom Firefox: Not Found

The requested URL /phpMyAdmin.php was not found on this server.

Muss ich da noch irgendetwas konfigurieren? Hab mir die Anleitung durchgelesen, aber irgendwie...
Also, falls Du mal Zeit hast...DANKE!
Schöne Grüße aus Konstanz, Andreas
Mit den besten Grüßen
Andreas

Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 3755
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: München

Re: iSpindel - Lokaler Server - iSpindle.py

#294

Beitrag von Tozzi » Donnerstag 29. November 2018, 10:20

"raspberrypi" kannst Du auch ersetzen durch die IP Nummer, die der Raspi in Deinem Heimnetzwerk hat.
Der Zugriff über den hostnamen funktioniert je nach Router mal gut, mal weniger gut.
Viele Grüße aus München
Stephan

Braumeister999
Posting Junior
Posting Junior
Beiträge: 12
Registriert: Samstag 25. Juni 2016, 09:15
Wohnort: Konstanz

Re: iSpindel - Lokaler Server - iSpindle.py

#295

Beitrag von Braumeister999 » Donnerstag 29. November 2018, 10:38

ok, das war es wohl, Danke! Nun werd ich mal schauen, ob da auch Daten kommen von der Spindel, danke nochmal für die schnelle Antwort!
grüße Andreas
Mit den besten Grüßen
Andreas

mrhyde
Posting Junior
Posting Junior
Beiträge: 42
Registriert: Mittwoch 7. Juni 2017, 14:16

Re: iSpindel - Lokaler Server - iSpindle.py

#296

Beitrag von mrhyde » Donnerstag 6. Dezember 2018, 11:40

Hallo Stephan,

ich bin gerade bei weiteren Tests in Kombination mit der Nutzung einer aktuelleren Datenbankversion in einem Docker. Die DB im Docker ist wohl im sog STRICT mode konfiguriert.

Dabei ensteht bei reset_now.php ein Poblem, weil keine Werte für Variablen in die DB eingetragen werden, die keinen default Wert haben (z.B. ID, Angle,Battery,....).

Ich habe das script mal so umgeschrieben, dass dort im Datensatz mit dem Reset in die anderen Felder der Wert '0' geschrieben wird. Für den Namen der Spindel wird noch die entsprechende letzte ID in der DB gesucht und dann in das Feld übertragen.

Spricht irgendetwas gegen diese Vorgehensweise?

Ich habe auch die Datei index.php angepasst. Wählt man dort 'Gärbeginn setzen' aus, so erscheint ein weiteres Feld, wo man den Sudnamen eingeben kann. Dieser wird dann in die DB geschrieben und in den Diagrammen angezeigt.

Wie schon geschrieben ist die Moving Average calculation nun so implemetiert, dass zunächst eine Berechnung über die sog. SQL Windows Funktionen gemacht wird. Das ist wesentlich schneller, als die jetzige Berechnung. Ist das nicht erfolgreich, so wird die derzeitige Berechnung herangezogen.

Ich teste das ganze noch ein wenig und werde es dann wieder per GIT hochladen.

Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 3755
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: München

Re: iSpindel - Lokaler Server - iSpindle.py

#297

Beitrag von Tozzi » Donnerstag 6. Dezember 2018, 19:31

Ja, das kann man sicherlich so machen.
Super Sache. :thumbup
Viele Grüße aus München
Stephan

JackFrost
Posting Klettermax
Posting Klettermax
Beiträge: 112
Registriert: Dienstag 15. Mai 2018, 18:10

Re: iSpindel - Lokaler Server - iSpindle.py

#298

Beitrag von JackFrost » Samstag 8. Dezember 2018, 07:44

JeanH hat geschrieben:
Freitag 16. November 2018, 16:42
Hallo und Hurra.
Habe mein Raspi neu installieren müssen weil er plötzlich nicht mehr ins Netz wollte.
Also habe die neue Sofware installiert.Den Spindel bekam auch gleich eine auffrichung.
Nun habe ich folgendes Problem:das Programm PHPmyadmin liefert ein neuer Datensatz jede Sekunde.Im iSpindel habe ich schon 10s oder 600s probiert.
Es gibt keine Änderung. Was nun??
Habe eine neue Speicherkarte genommen und jetz läuft es wie gewüncht.
Vielen Dank an das gesamte Team-

Tolle Grüße
Hans
Bei meinem Raspi , der die Daten vom Hausbus loggt , ist die Karte recht früh ausgefallen. Den hab ich auf HDD umgestellt mit einem aktiven Hub. Läuft seit 2 Jahren mit ca. 10 Datenpaketen pro Minute. Vorher hat die SD-Karte 4 Monate gehalten.
Wenn es also öfter vorkommt, kann man sich mit einer 2,5“ Festplatte behelfen.

Gruß JackFrost

mrhyde
Posting Junior
Posting Junior
Beiträge: 42
Registriert: Mittwoch 7. Juni 2017, 14:16

Re: iSpindel - Lokaler Server - iSpindle.py

#299

Beitrag von mrhyde » Montag 10. Dezember 2018, 08:54

Hallo Stephan,
ich habe einen neuen pull request erstellt. Da sind auch ein paar Änderungen in index.php

Für reset_now.php ist das bereits am laufen.

Du wolltest ja ggf auch die Kalibrierung über die Landing page machen.

Die Funktion einblenden könnte man einfach erweitern ('Calibrate'):

Code: Alles auswählen

 
 function einblenden(){                                                                                                                                                                  
        var select = document.getElementById('chart_filename').selectedIndex;                                                                                                               
        if(select == 8 ) document.getElementById('ResetNow').style.display = "block";                                                                                                       
        else document.getElementById('ResetNow').style.display = "none";                                                                                                                    
                                                                                                                                                                                            
        if(select == 10 ) document.getElementById('Calibrate').style.display = "block";                                                                                                   
        else document.getElementById('Calibrate').style.display = "none";                                                                                                                                                                                                                                                                                                   
    }                  
    
Dann noch die Felder einfügen und natürlich beim Select Feld einen entsprechenden Eintrag. So werden diese Felder nur angezeigt, wenn man die Kalibrierung im TCP Server machen möchte.

Code: Alles auswählen

<div id="Calibrate" style="display: none;">                                                                                                                                                 
<p>Konstanten eingeben:<br/>                                                                                                                                                                
Konstante 1: <input type = "text" name = "const1" />                                                                                                                                        
Konstante 2: <input type = "text" name = "const2" />                                                                                                                                        
Konstante 3: <input type = "text" name = "const3" />                                                                                                                                        
</p>                                                                                                                                                                                        
</div> 
Allerdings reicht hier der Name der SPindel meiner Meinung nach nicht aus. Man muss wie in der DB Tabelle dann die Spindel ID verwenden. Das habe ich aber ja auch schon bei Reset_now eingefügt.

Wenn du dir das so in etwa vorstellst, kann ich mich da mal dran machen.

Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 3755
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: München

Re: iSpindel - Lokaler Server - iSpindle.py

#300

Beitrag von Tozzi » Montag 10. Dezember 2018, 13:46

Ja, ein Frontend für die Kalibrierung wäre schon was Feines, denke ich.
Irgendwann wird das ja sogar mal im laufenden Betrieb möglich sein, muss "nur" noch in die Firmware eingebaut werden.
Viele Grüße aus München
Stephan

Antworten