iSpindel - Lokaler Server - iSpindle.py

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

Re: iSpindel - Lokaler Server - iSpindle.py

#201

Beitrag von Tozzi » Dienstag 10. April 2018, 00:35

Servus zusammen,

seit Mitte März gibt es ein neues Raspberry Modell, den Pi 3B Plus.
Die wichtigsten Neuerungen: Etwa 20% schnellere CPU (für uns weitgehend uninteressant), aber auch ein neues integriertes WLAN Modul, welches nun auch im 5 GHz Band verbindet.

Leider funktioniert das noch nicht mit dem aktuellen Image.
Ich habe mir einen bestellt und werde es hoffentlich diese Woche noch schaffen, ein neues, aktuelles Image hochzuladen.
Wurde ja eh langsam Zeit. Ich will aber noch möglichst viele Bugfixes vorher fertigstellen.
Viele Grüße aus München
Stephan

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

Re: iSpindel - Lokaler Server - iSpindle.py

#202

Beitrag von mrhyde » Donnerstag 19. April 2018, 14:26

Ich habe es jetzt geschafft, die Daten vom lokalen Server der auf meiner QNAP 453A NAS in einem Container läuft in die reguläre MYSQL Datenbank zu bringen.

Somit kann dann der standard APAche Server einfach drauf zugreifen. Die Datne werden dann in meinem Wordpress blog dargestellt und ich kann von überall drauf zugreifen. Das ganze könnte ich dann auch noch mit Passwort schützen.

Hier mal ein link:
https://mrhyde.spdns.eu/WordPress/brewi ... eller-sud/

Details werde ich noch beschreiben. Ich muss erstmal auf eine Dienstreise und kann dann von unterwegs den Gärprozess verfolgen :-)

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

Re: iSpindel - Lokaler Server - iSpindle.py

#203

Beitrag von Tozzi » Donnerstag 19. April 2018, 19:24

Sehr schön, das gefällt mir sehr. :thumbup
Viele Grüße aus München
Stephan

Benutzeravatar
Sura
Posting Freak
Posting Freak
Beiträge: 2825
Registriert: Montag 2. November 2015, 22:37

Re: iSpindel - Lokaler Server - iSpindle.py

#204

Beitrag von Sura » Mittwoch 9. Mai 2018, 12:57

Ich würde den ja gerne mal testen, aber irgendwie finde ich nur reihenweise tote Links. Könntest du die mal updaten, Stefan?
In den meisten Fällen ist ein Post von mir genau so zu verstehen wie er geschrieben ist.

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

Re: iSpindel - Lokaler Server - iSpindle.py

#205

Beitrag von mrhyde » Mittwoch 9. Mai 2018, 13:12

Das ist alles auch unter den links zur normalen ISpindel zu finden:

http://www.ispindel.de/#ispindel-tcp-server

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

Re: iSpindel - Lokaler Server - iSpindle.py

#206

Beitrag von Tozzi » Mittwoch 9. Mai 2018, 18:40

Sura hat geschrieben:
Mittwoch 9. Mai 2018, 12:57
Ich würde den ja gerne mal testen, aber irgendwie finde ich nur reihenweise tote Links. Könntest du die mal updaten, Stefan?
Das Repo mit Anleitung zur Installation auf einem bestehenden Raspbian System findest Du unter:
https://github.com/DottoreTozzi/iSpindel-TCP-Server

Das aktuelle Image zum flashen (funktioniert dann out-of-the-box) ist hier zu finden:
https://sschreiber.de/download/Raspi-iS ... Latest.zip
oder hier:
https://www.dropbox.com/s/ocy8cn6gfowpx ... 0.zip?dl=0
Viele Grüße aus München
Stephan

Benutzeravatar
Sura
Posting Freak
Posting Freak
Beiträge: 2825
Registriert: Montag 2. November 2015, 22:37

Re: iSpindel - Lokaler Server - iSpindle.py

#207

Beitrag von Sura » Mittwoch 9. Mai 2018, 19:03

Super, danke. Dann werde ich mir das mal anschauen :)
In den meisten Fällen ist ein Post von mir genau so zu verstehen wie er geschrieben ist.

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

Re: iSpindel - Lokaler Server - iSpindle.py

#208

Beitrag von Tozzi » Mittwoch 9. Mai 2018, 20:36

Prima! Verbesserungsvorschläge und Bug Reports sind immer willkommen.
Viele Grüße aus München
Stephan

Benutzeravatar
Sura
Posting Freak
Posting Freak
Beiträge: 2825
Registriert: Montag 2. November 2015, 22:37

Re: iSpindel - Lokaler Server - iSpindle.py

#209

Beitrag von Sura » Donnerstag 10. Mai 2018, 08:07

Dauert aber noch ein paar Tage, die Spindeln schwimmen grade noch ;)
In den meisten Fällen ist ein Post von mir genau so zu verstehen wie er geschrieben ist.

Benutzeravatar
ctiedtke
Posting Senior
Posting Senior
Beiträge: 372
Registriert: Samstag 24. September 2016, 12:58
Wohnort: Haan

Re: iSpindel - Lokaler Server - iSpindle.py

#210

Beitrag von ctiedtke » Mittwoch 15. August 2018, 22:00

Guten Abend zusammen,

ich bin jetzt auch stolzer Besitzer eines Raspberrypi und einer iSpindel und habe den Server als Komplettimage von Stephan aufgesetzt. Nach 2 Tagen sich durchlesen und zusammensetzen der Informationen aus dem git von Dottore Tozzi und dem Forum hier hat es super geklappt. Da ich mich ein wenig mit Linux auskenne konnte ich mir viele Verfahrensschritt beim aufsetzen irgendwie aus den Beschreibungen zusammen suchen und letztendlich die Schlussfolgerungen daraus ziehen. Man brauch aber echt Geduld, aber das sollte für uns Brauer ja kein Problem sein :Wink :Drink . So viel Ahnung von Computer habe ich jetzt auch nicht, aber ich habe mich dadurch "gewurschtelt". Für den "einfachen" User müsste wahrscheinlich noch eine gut beschriebene Doku her um die Scheu vor diesem DIY Projekt zu nehmen. Ich finde das ist ein tolles Projekt und sollte weiter verfolgt werden. Vielen Dank an alle die daran beteiligt sind und ihre Freizeit darin investieren!!! Wenn es Probleme gibt bei mir melde ich mich einfach nochmal.
Eine Frage hätte ich da noch: Ich habe die Spindel gerade in einem Holunder Cider versenkt, ich nehme jetzt diese Werte zum kalibrieren. Und/Oder ist es sinnvoll nochmal einen echten Sud mit richtiger Würze dafür zu nehmen? Vielen Dank nochmal!

Edit: Ach ja ich habe den Rasp Solo laufen ohne Ubidots. Die Fernabfrage läuft über VNC auf meinem MacMini. XQuartz habe ich geteste und lief echt schleppend außerdem hatte XQuartz Problem mit der Browser Darstellung von Chromium.
---
Gruß Christian

Schwester Doris (Mallersdorfer Klosterbrauerei) zu IPA: "Das ist kein Bier zum normal trinken, vielleicht ein Apperetif".

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

Re: iSpindel - Lokaler Server - iSpindle.py

#211

Beitrag von Tozzi » Mittwoch 15. August 2018, 22:14

Freut mich dass es klappt!
Ich habe das Projekt leider in letzter Zeit etwas vernachlässigen müssen. :redhead
Aber ich mach weiter, versprochen.

Zu deiner Frage:
Für eine erste Kalibrierung ist das schon OK. Wirst ja dann sehen, wie weit das in Bierwürze abweicht.
Letztlich geht es ja vor allem um den Trend der Kurve. Ein ganz exaktes Messinstrument wird die iSpindel nie sein können, dazu gibt es einfach zu viele Faktoren wie Kräusen und so weiter.

Nachtrag: Ja, VNC ist optimal. RDP geht auch (Microsoft Remote Desktop).
Oder halt einfach die Diagramme per http remote aufrufen.
XQuartz ist super für einzelne Applikationen, aber einen ganzen Desktop würde ich da auch nicht drauf laufen lassen wollen.
Viele Grüße aus München
Stephan

Benutzeravatar
ggansde
Moderator
Moderator
Beiträge: 5257
Registriert: Mittwoch 9. November 2005, 16:25
Wohnort: 63110 Rodgau

Re: iSpindel - Lokaler Server - iSpindle.py

#212

Beitrag von ggansde » Samstag 18. August 2018, 09:01

Moin,
wie kann ich schnell und einfach ALLE Messwerte aus der Datenbank löschen?
VG, Markus
"Durst ist schlimmer als Heimweh"
Insofern dieser Beitrag nicht durch MOD MODE ON gekennzeichnet ist, enthält er lediglich die Meinung eines gewöhnlichen Benutzers

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

Re: iSpindel - Lokaler Server - iSpindle.py

#213

Beitrag von mrhyde » Samstag 18. August 2018, 09:11

Am besten wäre vermutlich phpmyadmin. Dort kann man Falle Zeilen anwählen und einfach löschen. Ggf kann man dort sogar einzelne Messwerte löschen.

Benutzeravatar
ggansde
Moderator
Moderator
Beiträge: 5257
Registriert: Mittwoch 9. November 2005, 16:25
Wohnort: 63110 Rodgau

Re: iSpindel - Lokaler Server - iSpindle.py

#214

Beitrag von ggansde » Samstag 18. August 2018, 09:19

Moin,
danke, ich möchte aber alle Daten auf einmal löschen und mich nicht durch zig Seiten phpadmin wälzen. Die Spindel läuft seit drei Monaten, das sind tausende Messwerte.
VG, Markus
"Durst ist schlimmer als Heimweh"
Insofern dieser Beitrag nicht durch MOD MODE ON gekennzeichnet ist, enthält er lediglich die Meinung eines gewöhnlichen Benutzers

Benutzeravatar
ggansde
Moderator
Moderator
Beiträge: 5257
Registriert: Mittwoch 9. November 2005, 16:25
Wohnort: 63110 Rodgau

Re: iSpindel - Lokaler Server - iSpindle.py

#215

Beitrag von ggansde » Samstag 18. August 2018, 09:28

Moin,
habe es hinbekommen, über phpMyAdmin "leeren".
VG, Markus
"Durst ist schlimmer als Heimweh"
Insofern dieser Beitrag nicht durch MOD MODE ON gekennzeichnet ist, enthält er lediglich die Meinung eines gewöhnlichen Benutzers

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

Re: iSpindel - Lokaler Server - iSpindle.py

#216

Beitrag von Tozzi » Samstag 18. August 2018, 17:20

Genau. Oder SQL Klausel eingeben:
DELETE FROM Data;
Viele Grüße aus München
Stephan

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

Re: iSpindel - Lokaler Server - iSpindle.py

#217

Beitrag von mrhyde » Sonntag 19. August 2018, 13:38

Gibt es eigentlich derzeit eine funktionierende Variante, wo man vom TCP Server die Settings der Spindel per remote config verändern kann? Da wurde ja mal etwas gestartet.

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

Re: iSpindel - Lokaler Server - iSpindle.py

#218

Beitrag von Tozzi » Sonntag 19. August 2018, 19:19

Das war angedacht, ist aber noch nicht verwirklicht. Sam arbeitet firmwareseitig noch dran, die Anpassungen am Server sind minimal.

//Nachtrag: Ich sehe gerade, er hat da schon was funktionsfähiges.
Muss ich mir baldigst ansehen. :redhead
Viele Grüße aus München
Stephan

clmnsk
Posting Klettermax
Posting Klettermax
Beiträge: 128
Registriert: Freitag 10. März 2017, 00:12

Re: iSpindel - Lokaler Server - iSpindle.py

#219

Beitrag von clmnsk » Sonntag 19. August 2018, 22:26

Tozzi hat geschrieben:
Sonntag 19. August 2018, 19:19
Das war angedacht, ist aber noch nicht verwirklicht. Sam arbeitet firmwareseitig noch dran, die Anpassungen am Server sind minimal.

//Nachtrag: Ich sehe gerade, er hat da schon was funktionsfähiges.
Muss ich mir baldigst ansehen. :redhead
Im Moment fragt er nur das interval ab.
Das basiert auf dem HTTP Endpunkt von Ubidots.
Ich würde mir da ein komplettes JSON wünschen, mit dem alle Werte der Config geändert werden könnten.
Grüße, Clemens
---
Hendi - 34L Topf - 32L Thermobehälter

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

Re: iSpindel - Lokaler Server - iSpindle.py

#220

Beitrag von Tozzi » Sonntag 19. August 2018, 23:20

Ja, das wäre klasse. Ich hab's mir inzwischen auch angesehen.
So bringt's im Moment eigentlich noch nichts.
Bei TCP Verbindung geben wir ja sowieso eine Antwort mit (in meinem Fall momentan halt einfach NAK oder ACK).
Die wird momentan noch ignoriert.
Das könnte aber genauso gut ein JSON sein.
Ich hau ihn nochmal an drauf. Das wär schon was, was man brauchen kann.
Viele Grüße aus München
Stephan

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

Re: iSpindel - Lokaler Server - iSpindle.py

#221

Beitrag von mrhyde » Montag 20. August 2018, 07:41

Danke für das reinschauen. Mich würde natürlich auch eher die Änderug der Korrelation,... interessieren, als das Interval.

clmnsk
Posting Klettermax
Posting Klettermax
Beiträge: 128
Registriert: Freitag 10. März 2017, 00:12

Re: iSpindel - Lokaler Server - iSpindle.py

#222

Beitrag von clmnsk » Montag 20. August 2018, 13:22

Tozzi hat geschrieben:
Sonntag 19. August 2018, 23:20
Ja, das wäre klasse. Ich hab's mir inzwischen auch angesehen.
So bringt's im Moment eigentlich noch nichts.
Bei TCP Verbindung geben wir ja sowieso eine Antwort mit (in meinem Fall momentan halt einfach NAK oder ACK).
Die wird momentan noch ignoriert.
Das könnte aber genauso gut ein JSON sein.
Ich hau ihn nochmal an drauf. Das wär schon was, was man brauchen kann.
Jo, ich glaube aber, dass eine Verarbeitung einer Antwort bei jedem Request zu rechenintensiv wäre.
Deshalb wollte er es wohl mit einem eigenen Endpunkt, der dann deutlich seltener aufgerufen wird, haben.
Könnte natürlich auch kombiniert sein und die Antwort eben nur dann verarbeiten.

In jedem Fall sollten mehr Werte als der Intervall zu ändern sein.
Ich hab auch nochmal unter die Issue geschrieben.
Grüße, Clemens
---
Hendi - 34L Topf - 32L Thermobehälter

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

Re: iSpindel - Lokaler Server - iSpindle.py

#223

Beitrag von Tozzi » Samstag 15. September 2018, 02:35

Kurzes Update zum Thema "Remote Config":

Sam hat eine neue Firmware gebastelt, und ich werde im Lauf der nächsten Tage eine neue Version des Python Skripts zugänglich machen, sobald alle Tests abgeschlossen sind.
Zu diesem Anlass werde ich auch neue Raspi Images basteln.

(OT Nebenbemerkung: Ich empfehle bei Neuanschaffung nach wie vor den Raspberry Pi 3 B, ohne "Plus", also nicht die aktuelle Generation. Die neueste Version arbeitet nach wie vor noch nicht stabil und stürzt gerne mal grundlos ab, während mein oller Pi3 im Keller seit einem halben Jahr ohne Update oder Neustart verlässlich läuft.)

Damit werden alle wichtigen Einstellungen künftig auch bei "schwimmender" iSpindel zugänglich sein.
Die Konfiguration der iSpindel erfolgt als Antwort vom Server auf die gesendeten Daten, d.h. bei jedem Aufwachen der iSpindel können neue Settings empfangen werden.
Der Stromverbrauch ändert sich dadurch praktisch nicht; der gemessene Unterschied beträgt nur 1-2 Millisekunden, da die bereits bestehende TCP Verbindung genutzt wird. Die zusätzliche Rechenzeit ist absolut vernachlässigbar bzw. eigentlich kaum messbar.

Hier zeigen sich die Vorteile eines dedizierten, generischen Protokolls nach OSI Level 4, ohne Overhead auf der Application Level Seite.
:Drink
Viele Grüße aus München
Stephan

irrwisch
Posting Klettermax
Posting Klettermax
Beiträge: 193
Registriert: Sonntag 21. Januar 2018, 08:33

Re: iSpindel - Lokaler Server - iSpindle.py

#224

Beitrag von irrwisch » Sonntag 16. September 2018, 15:32

Tozzi hat geschrieben:
Samstag 15. September 2018, 02:35
(OT Nebenbemerkung: Ich empfehle bei Neuanschaffung nach wie vor den Raspberry Pi 3 B, ohne "Plus", also nicht die aktuelle Generation. Die neueste Version arbeitet nach wie vor noch nicht stabil und stürzt gerne mal grundlos ab, während mein oller Pi3 im Keller seit einem halben Jahr ohne Update oder Neustart verlässlich läuft.)
Ja jetzt wo du es sagst.. Hat pünktlich heute meine Raspi 3 B Plus den Geist aufgegeben!
Der sollte heute eigentlich mit der iSpindel und deinem lokalen iSpindel Server die heute angesetzte Gärung überwachen :crying
Man muss echt für alles Ersatz vorrätig haben und alles redundant halten. :puzz

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

Re: iSpindel - Lokaler Server - iSpindle.py

#225

Beitrag von Tozzi » Sonntag 16. September 2018, 18:37

Ja das mit den neuen Raspis ist ein echtes Problem.
Es gibt im Raspi Forum auch einen ellenlangen Faden dazu.
Ich habe hier 3 Stück von den neuen 3B+ (aus unterschiedlichen Chargen) und alle hängen sich zufällig irgendwann auf.
Bei den älteren 3B passiert das nie.
Viele Grüße aus München
Stephan

Benutzeravatar
ctiedtke
Posting Senior
Posting Senior
Beiträge: 372
Registriert: Samstag 24. September 2016, 12:58
Wohnort: Haan

Re: iSpindel - Lokaler Server - iSpindle.py

#226

Beitrag von ctiedtke » Sonntag 16. September 2018, 20:33

Komisch bei mir ist das noch nicht passiert :Grübel . Ich habe auch den 3B+, der hat sich auch bisher nicht aufgehängt und alles brav aufgezeichnet. Aber ich bleibe mal aufmerksam und guck mal.
---
Gruß Christian

Schwester Doris (Mallersdorfer Klosterbrauerei) zu IPA: "Das ist kein Bier zum normal trinken, vielleicht ein Apperetif".

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

Re: iSpindel - Lokaler Server - iSpindle.py

#227

Beitrag von Tozzi » Sonntag 16. September 2018, 20:37

Dann sei froh! Manche scheinen problemlos zu funktionieren. Nur ist die Chance halt recht groß, einen zu erwischen, wo das nicht so ist.
Die Ursache ist wohl auch multifaktoriell und unter anderem abhängig vom Aufbau des Heimnetzwerks.
Wird noch fieberhaft dran geforscht.
Viele Grüße aus München
Stephan

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

Re: iSpindel - Lokaler Server - iSpindle.py

#228

Beitrag von JackFrost » Montag 17. September 2018, 20:54

Hi,

Hast du mal ein „anderes“ Linux probiert ? Ich hab leider nur einen RPi B und noch keine iSpindel sonnst hätte ich das mal mit Gentoo probiert.

Gruß JackFrost

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

Re: iSpindel - Lokaler Server - iSpindle.py

#229

Beitrag von Tozzi » Montag 17. September 2018, 20:59

Ja hab ich. Damit ist es meist noch schlimmer.
Raspbian wird ja eng zusammen mit der Hardware entwickelt, da gibt es also auch immer die aktuellsten Kernel Patches (die habe ich bis vor kurzem auch dringend gebraucht). Momentan läuft die aktuelle Version recht stabil, mein Media Server rennt jetzt seit 2 Wochen problemlos.
Es ist nicht sooooo schlimm, aber nervt halt, wenn's passiert, und man ist nicht zuhause (wenn sich der Raspi aufhängt muss man ihn tatsächlich "kalt" neustarten, also Strom ziehen).
Irgendwann ist das mit einem aktuellen Treiber dann gefixt und Vergangenheit.
Viele Grüße aus München
Stephan

irrwisch
Posting Klettermax
Posting Klettermax
Beiträge: 193
Registriert: Sonntag 21. Januar 2018, 08:33

Re: iSpindel - Lokaler Server - iSpindle.py

#230

Beitrag von irrwisch » Dienstag 18. September 2018, 06:31

Ich glaube mein aktuelles Problem ist ein anderes (wahrscheinlich SD Karte hin)

Der Rpi 3 B+ ist sehr empfindlich was die Spannungsversorgung angeht. Der will stabile 5.1 oder 5.2 V.
Wenn die Spannung unter Last runter geht stürzt er dann gerne ab.
Der funzt fast mit keinem „normalen“ 5V Netzteil. Irgendwann hab ich entnervt das Original Raspberry Netzteil gekauft und damit läuft das Teil.

Vielleicht ist auch das dein Problem. Die Problematik mit der Spannungsversorgung ist auch recht bekannt. Der Pi zeigt oben rechts einen kleinen Blitz an wenn die Versorgungsspannung zu weit runter geht.

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

Re: iSpindel - Lokaler Server - iSpindle.py

#231

Beitrag von JackFrost » Dienstag 18. September 2018, 06:51

irrwisch hat geschrieben:
Dienstag 18. September 2018, 06:31
Ich glaube mein aktuelles Problem ist ein anderes (wahrscheinlich SD Karte hin)
Ich hab meinen auf Ne USB Festplatte umgestellt da mir die SD Karte wegen zu viel Schreiben kaputt gegangen ist. Leide teilen sich die Festplatte und das Netzwerk den Controller. Mehr als 15 Mib/s sind nicht drin.

Gruß JackFrost

irrwisch
Posting Klettermax
Posting Klettermax
Beiträge: 193
Registriert: Sonntag 21. Januar 2018, 08:33

Re: iSpindel - Lokaler Server - iSpindle.py

#232

Beitrag von irrwisch » Dienstag 18. September 2018, 06:55

Ja ich weiß, SD Karten sind verdammt unzuverlässig.
Eigentlich mag ich den Mist auch nicht.
Hatten auf der Arbeit auch schon massive Probleme mit (industrial grade SLC) SD Karten.

Vllt steig ich mit meiner Brauanlage auch auf nen anderen SBC um. Es gibt mittlerweile schöne Alternativen zum Raspi mit SATA Port. Da kann man dann ne normale SSD dranhängen.

irrwisch
Posting Klettermax
Posting Klettermax
Beiträge: 193
Registriert: Sonntag 21. Januar 2018, 08:33

Re: iSpindel - Lokaler Server - iSpindle.py

#233

Beitrag von irrwisch » Freitag 21. September 2018, 07:38

Bei mir war (mal wieder) bloß die SD Karte kaputt. Dieser Consumer Kram ist einfach nicht zuverlässig. Vielleicht lags auch daran, dass CBPI ohne Ende Logfiles schreibt (da kommen schnell hunderte MB zusammen). Eventuell muss ich da mal schauen wie man das abstellen kann..

Jetzt ist auf jeden Fall erstmal alles neu eingerichtet, diesmal mit CraftBeerPi3 statt 2.

@Tozzi: Habe dir auf Github einen Patch gepusht um vom lokalen Server die Daten an CBPI3 weiterzuleiten.

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

Re: iSpindel - Lokaler Server - iSpindle.py

#234

Beitrag von Tozzi » Freitag 21. September 2018, 21:31

Hab's committed. Danke!
Ich muss mal die Feature Liste überarbeiten. Ist ja doch einiges dazugekommen.

Die SD Karte ist wirklich eine Achillesferse. Es sind nicht nur die Logfiles, es wird auch fleißig geswappt.
Ich benutze grundsätzlich die SD Karten von SanDisk (Ultra). Die sind recht zuverlässig.
Was natürlich hilft, ist, über USB eine billige Hard Disk anzuschließen und Swap sowie Logfiles dorthin auszulagern.
Viele Grüße aus München
Stephan

Benutzeravatar
igami
Posting Junior
Posting Junior
Beiträge: 54
Registriert: Mittwoch 21. Februar 2018, 05:34
Wohnort: Gütersloh

Re: iSpindel - Lokaler Server - iSpindle.py

#235

Beitrag von igami » Samstag 22. September 2018, 07:39

Hallo Stephan,

ist es möglich eine Weiterleitung per MQTT einzubauen?
Ich nutze bei mir FHEM und das wäre dann doch eine schöne Verbindung :)

Grüße
Michael

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

Re: iSpindel - Lokaler Server - iSpindle.py

#236

Beitrag von Tozzi » Montag 24. September 2018, 19:37

Hallo Michael,

das ist sicherlich möglich. Ich schau mir das an, sobald ich wieder ein wenig Ruhe habe.
Viele Grüße aus München
Stephan

Benutzeravatar
barti77
Posting Junior
Posting Junior
Beiträge: 28
Registriert: Sonntag 4. Oktober 2015, 18:54
Wohnort: Winterthur, Schweiz

Re: iSpindel - Lokaler Server - iSpindle.py

#237

Beitrag von barti77 » Donnerstag 27. September 2018, 21:35

Hi Tozzi,

also zuerst: Vielen Dank für Deinen Einsatz für diese Projekt - wirklich cool! Ich bin leider nicht so bewandert in Sachen Linux und Datenbaken (leider nur Grundkenntnisse). Zu meinem Problem:
Ich habe meine erste iSpindel erfoglreich zusammengesetzt und kalibriert. Die Verbindung zu Ubidots funktioniert einwandfrei. Auch Dein Image läuft gut auf einem Pi und die Daten werden in eine csv Datei geschrieben und an Ubidots weitergeleitet. Unter http://meinePi_IP/iSpindle/ werden alle Diagramme angezeigt, nur leider enthalten die Diagramme keinerlei Daten....

Hast Du einen Tipp was ich falsch mache?

Dank vorab!
Axel
Zuletzt geändert von barti77 am Samstag 29. September 2018, 08:32, insgesamt 1-mal geändert.

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

Re: iSpindel - Lokaler Server - iSpindle.py

#238

Beitrag von Tozzi » Donnerstag 27. September 2018, 22:54

Hi Axel,

hast Du den Namen der Spindel mit angegeben?
Also so z.B.: http://meinePi_IP_IP/iSpindle/plato.php?name=[spindelname]
Ansonsten: Kommen Daten in der Datenbank an?
http://meinePi_IP/phpmyadmin
Viele Grüße aus München
Stephan

Benutzeravatar
barti77
Posting Junior
Posting Junior
Beiträge: 28
Registriert: Sonntag 4. Oktober 2015, 18:54
Wohnort: Winterthur, Schweiz

Re: iSpindel - Lokaler Server - iSpindle.py

#239

Beitrag von barti77 » Freitag 28. September 2018, 19:48

Hi Stephan,

VIELEN DANK - es funktioniert! Der Name der Spindel im URL hat gefehlt - muss ich diesen noch irgendwo hinterlegen in der iSpindle.py ?

Gruss aus der Schweiz!
Axel

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

Re: iSpindel - Lokaler Server - iSpindle.py

#240

Beitrag von Tozzi » Sonntag 30. September 2018, 13:10

Nein, den musst Du nirgends hinterlegen.
Der wird nur verwendet um die Daten für die Diagramme auszuwählen.
Daher unbedingt jeder iSpindel einen eindeutigen Namen zuweisen!
Viele Grüße aus München
Stephan

Benutzeravatar
barti77
Posting Junior
Posting Junior
Beiträge: 28
Registriert: Sonntag 4. Oktober 2015, 18:54
Wohnort: Winterthur, Schweiz

Re: iSpindel - Lokaler Server - iSpindle.py

#241

Beitrag von barti77 » Sonntag 30. September 2018, 14:17

Okay - super Danke. Funktioniert einwandfrei!

Gruss,
Axel

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

Re: iSpindel - Lokaler Server - iSpindle.py

#242

Beitrag von Tozzi » Dienstag 2. Oktober 2018, 06:07

Falls es jemand testen will:
Die neue Version des Server Scripts ist jetzt auf dem Github verfügbar.
Das README und die INSTALL Anleitungen sind auch angepasst.

Damit kann die iSpindel künftig auch im laufenden Betrieb Änderungen an der Konfiguration empfangen.
Momentan ist das noch limitiert auf das "Intervall" und die passende Firmware hat Sam noch nicht freigegeben.
Wenn das soweit ist, gibt es auch ein neues Image. :thumbup
Viele Grüße aus München
Stephan

BiBr
Neuling
Neuling
Beiträge: 2
Registriert: Dienstag 2. Oktober 2018, 18:20

Re: iSpindel - Lokaler Server - iSpindle.py

#243

Beitrag von BiBr » Dienstag 2. Oktober 2018, 18:55

Gruß in die Runde.
Ich habe mit dem Bierbrauen Anfang des Jahres angefangen. Klappt soweit ganz gut, zumindest haben sich die Nachbarn, die als Verkoster herhalten müssen, bisher nicht beschwert.
Im Zusammenhang mit den Recherchen zum Bierbrauen bin ich auf die iSpindel gestoßen. Ich habe mir einen Bausatz bestellt zusammengebaut und getestet mit Ubidots. Soweit funktioniert alles.
Nun habe ich mir die Anforderung gestellt, die Daten Local zu halten und auszuwerten. Dabei bin ich auf die Einstellung MQTT gestoßen, die ich ausprobiert habe. Dies funktioniert soweit, allerding erhalte ich nur den Wert tilt.
Eigentlich hatte ich erwartet, dass ich auch die Werte Temperatur, Gravity, Batterie usw. erhalte.
Da sich wirkliche Kenner der Materie in der Runde befinde würde ich gerne die Fragen stellen, mache ich hier etwas falsch, oder habe ich etwas übersehen? Interessieren würde mich wie die Bezeichnungen der Topics für Temperatur, Gravity und Batterie sind? Der Topic für tilt ist wohl ispindel/iSpindel/tilt.
Für Antworten zu diesem Thema wäre ich der Runde sehr dankbar.
Mein Aufbau: PC mit win7, mosquitto als Broker, Fritzbox, iSpindel
Besten Dank im Voraus
Viele Grüße
Otfried

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

Re: iSpindel - Lokaler Server - iSpindle.py

#244

Beitrag von Tozzi » Dienstag 2. Oktober 2018, 21:22

Hallo Otfried,

da hast Du Dich ein wenig im Faden geirrt.
Hier geht es um eine lokale Serverlösung auf Basis eines speziellen Python Skripts, prinzipiell plattformunabhängig, aber meist auf einem Raspberry PI im Einsatz.
Es läuft aber auch unter Windows.
Viele Grüße aus München
Stephan

BiBr
Neuling
Neuling
Beiträge: 2
Registriert: Dienstag 2. Oktober 2018, 18:20

Re: iSpindel - Lokaler Server - iSpindle.py

#245

Beitrag von BiBr » Mittwoch 3. Oktober 2018, 08:53

Hallo Stephan,
sorry, habe schon geahnt, dass ich etwas falsch mache. Dass es bereits der Faden ist, konnte ich nicht wissen, da ich hier neu bin. Nichtsdestotrotz, welchen Faden sollte ich bitte aufnehmen?
Danke
Gruß
Otfried

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

Re: iSpindel - Lokaler Server - iSpindle.py

#246

Beitrag von Aeppler » Mittwoch 3. Oktober 2018, 15:23

Hallo Otfried,

Hier findest du den entsprechenden threat (Faden). Viel Spaß beim Durchwühlen.

Frag ruhig, alles unproblematisch. In Kombination mit der Forensuche bringt das den gewünschten Erfolg.
Beste Grüße aus Mengelse.
Ulrich

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

Re: iSpindel - Lokaler Server - iSpindle.py

#247

Beitrag von mrhyde » Sonntag 7. Oktober 2018, 16:05

Hallo Stephan,

da es gerade zum Start der Gärung einige Schwankungen beim Winkel und somit der berechnetet Gravity kommen kann habe ich mal einen SQL Select gebastelt, der über einen gewissen Zeitraum (in diesem Fall 1 Stunde / ich sende alle 10 Minuten einen Datenpunkt in die DB) einen gleitenden Mittelwert für den Winkel berechnet. Dabei ergibt sich ein schöner glatter Verlauf des Winkels oder der berechneten Gravity (siehe Bild).
Moving_Average.PNG
Moving_Average.PNG (16.71 KiB) 557 mal betrachtet
Dazu habe ich folgenden Select verwendet und fülle in Wordpress eine Tabelle, wo ich dann Diagramme darstellen kann. Theoretisch müsste das auch mit den sog. Window Funktionen einfacher gehen. Aber meine SQL Version unterstützt das noch nicht.

Code: Alles auswählen

SELECT  Data1.Timestamp, 
        Data1.Angle, 
        Data1.Gravity, 
        Data1.Temperature, 
        (SELECT SUM(Data2.Angle) / COUNT(Data2.Angle) 
        FROM Data AS Data2 
        WHERE TIMESTAMPDIFF(MINUTE, Data2.Timestamp, Data1.Timestamp) BETWEEN 0 and 60 ) AS MV_Angle 
        FROM Data AS Data1 
        WHERE Data1.Timestamp >= (Select max(Data1.Timestamp) FROM Data AS Data1 WHERE Data1.ResetFlag = 1);
Nun würde ich das ganze gerne auch einfach in den php Scripts umsetzen. Dort bin ich aber leider nicht weitergekommen. Wäre es möglich, dass du auch die Option für einen gleitenden Mittelwert in zukünftige Versionen mit einbaust (Angle und Plato4 z.B.)?

Insbesondere beim Winkel sehe ich den Vorteil für eine Kalibrierung, da man nicht auf einen einzelwert angewiesen ist.

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

Re: iSpindel - Lokaler Server - iSpindle.py

#248

Beitrag von Tozzi » Sonntag 7. Oktober 2018, 16:45

Super, danke!
Das baue ich natürlich ASAP ein!
Viele Grüße aus München
Stephan

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

Re: iSpindel - Lokaler Server - iSpindle.py

#249

Beitrag von mrhyde » Sonntag 7. Oktober 2018, 18:32

Danke für die schnelle Rückmeldung.

es hat mir einfach keine Ruhe gelassen und ich habe dann den Fehler gefunden. Nun funktioniert es. Es dauert halt ein wenig, bis das Diagramm dargestellt wird.

Ich habe in die common_db_query.php noch zwei weitere Funktionen eingebaut und angle.php bzw. plato4.php noch einmal unter anderem namen in das web verzeichnis kopiert. Dort werden dann die neuen Funktionen (.._ma) aufgerufen.
common_db_query.zip
(2.34 KiB) 8-mal heruntergeladen
Nächster Schritt ist noch einen Parameter zu definieren, wo man die Zeit des gleitenden Mittelwertes per Browser übergeben kann.

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

Re: iSpindel - Lokaler Server - iSpindle.py

#250

Beitrag von mrhyde » Montag 8. Oktober 2018, 19:36

Hallo Stephan,

ich habe den SQL select noch einmal leicht angepasst, damit mit der Auswahl 'reset=true' am Anfang nicht der Anstieg im Diagramm wie im Beitrag weiter oben zu sehen ist.
Moving_Average_new.PNG
Moving_Average_new.PNG (22.11 KiB) 456 mal betrachtet

Dazu habe ich die Variable 'where_ma' eingefügt. Unten ist das Beispiel für die Plato4 Berechnung zu sehen.

Vermutlich werde ich noch einen Parameter definieren, wo man das Zeitintervall für den gleitenden Mittelwert in Minuten wählen kann. Dann kann man das entsprechend seinen wünschen anpassen. Derzeit kommt es bei mir ganz gut mit 120 Minuten hin.

Code: Alles auswählen

function getChartValuesPlato4_ma($conn, $iSpindleID='iSpindel000', $timeFrameHours=defaultTimePeriod, $reset=defaultReset)
{
    $isCalibrated = 0;  // is there a calbration record for this iSpindle?
    $valAngle = '';
    $valTemperature = '';
    $valDens = '';
    $const1 = 0;
    $const2 = 0;
    $const3 = 0;
    $where_ma='';
   if ($reset)
   {
   	$where="WHERE Data1.Name = '".$iSpindleID."' 
            AND Data1.Timestamp >= (Select max(Timestamp) FROM Data  WHERE ResetFlag = true AND Name = '".$iSpindleID."')";
	$where_ma="Data2.Timestamp >= (Select max(Data2.Timestamp) FROM Data AS Data2  WHERE Data2.ResetFlag = true) AND";
   }  
   else
   {
   	$where ="WHERE Data1.Name = '".$iSpindleID."' 
            AND Data1.Timestamp >= date_sub(NOW(), INTERVAL ".$timeFrameHours." HOUR) 
            AND Data1.Timestamp <= NOW()";
   }  
   $q_sql = mysqli_query($conn, "SELECT UNIX_TIMESTAMP(Data1.Timestamp) as unixtime, Data1.temperature, Data1.angle,
                           (SELECT SUM(Data2.Angle) / COUNT(Data2.Angle)
							FROM Data AS Data2
                            WHERE "
				.$where_ma
				." TIMESTAMPDIFF(MINUTE, Data2.Timestamp, Data1.Timestamp) BETWEEN 0 and 120 ) AS mv_angle
						    FROM Data AS Data1 " 
                           .$where 
                          ." ORDER BY Data1.Timestamp ASC") or die(mysqli_error($conn));
                     
    // retrieve number of rows
    $rows = mysqli_num_rows($q_sql);
    if ($rows > 0)
    {
     // get unique hardware ID for calibration
     $u_sql = mysqli_query($conn, "SELECT ID FROM Data WHERE Name = '".$iSpindleID."' ORDER BY Timestamp DESC LIMIT 1") or die(mysqli_error($conn));
     $rowsID = mysqli_num_rows($u_sql);
     if ($rowsID > 0)
     {
        // try to get calibration for iSpindle hardware ID
        $r_id = mysqli_fetch_array($u_sql);
        $uniqueID = $r_id['ID'];
        $f_sql = mysqli_query($conn, "SELECT const1, const2, const3 FROM Calibration WHERE ID = '$uniqueID' ") or die(mysqli_error($conn));
        $rows_cal = mysqli_num_rows($f_sql);
        if ($rows_cal > 0)
        {
            $isCalibrated = 1;
            $r_cal = mysqli_fetch_array($f_sql);
            $const1 = $r_cal['const1'];
            $const2 = $r_cal['const2'];
            $const3 = $r_cal['const3'];
        }
     }
     // retrieve and store the values as CSV lists for HighCharts
     while($r_row = mysqli_fetch_array($q_sql))
     {
         $jsTime = $r_row['unixtime'] * 1000;
         $angle = $r_row['mv_angle'];
         $dens = $const1 * pow($angle, 2) + $const2 * $angle + $const3;   // complete polynome from database
                         
         $valAngle         .= '['.$jsTime.', '.$angle.'],';
         $valDens          .= '['.$jsTime.', '.$dens.'],';
         $valTemperature   .= '['.$jsTime.', '.$r_row['temperature'].'],';
     }
     // remove last comma from each CSV
     $valAngle         = delLastChar($valAngle);
     $valTemperature   = delLastChar($valTemperature);
     return array($isCalibrated, $valDens, $valTemperature, $valAngle);
    }
 }
 

Antworten