iSpindel - Lokaler Server - iSpindle.py

Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 4768
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: Fasano (BR) - Puglia - IT

Re: iSpindel - Lokaler Server - iSpindle.py

#201

Beitrag von Tozzi »

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 Fasano
Stephan
mrhyde
Posting Senior
Posting Senior
Beiträge: 468
Registriert: Mittwoch 7. Juni 2017, 14:16

Re: iSpindel - Lokaler Server - iSpindle.py

#202

Beitrag von mrhyde »

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 :-)
Braumeister 20 | Gärung: SS Brewtech 7 Gal BME | Speidel 30 Liter (Konus)
https://github.com/PiBrewing
https://openbrewing.gitbook.io/craftbeerpi4_support/
Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 4768
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: Fasano (BR) - Puglia - IT

Re: iSpindel - Lokaler Server - iSpindle.py

#203

Beitrag von Tozzi »

Sehr schön, das gefällt mir sehr. :thumbup
Viele Grüße aus Fasano
Stephan
Benutzeravatar
Sura
Posting Freak
Posting Freak
Beiträge: 3489
Registriert: Montag 2. November 2015, 22:37

Re: iSpindel - Lokaler Server - iSpindle.py

#204

Beitrag von Sura »

Ich würde den ja gerne mal testen, aber irgendwie finde ich nur reihenweise tote Links. Könntest du die mal updaten, Stefan?
"Es ist schon alles gesagt, nur noch nicht von jedem."
(Karl Valentin)
mrhyde
Posting Senior
Posting Senior
Beiträge: 468
Registriert: Mittwoch 7. Juni 2017, 14:16

Re: iSpindel - Lokaler Server - iSpindle.py

#205

Beitrag von mrhyde »

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

http://www.ispindel.de/#ispindel-tcp-server
Braumeister 20 | Gärung: SS Brewtech 7 Gal BME | Speidel 30 Liter (Konus)
https://github.com/PiBrewing
https://openbrewing.gitbook.io/craftbeerpi4_support/
Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 4768
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: Fasano (BR) - Puglia - IT

Re: iSpindel - Lokaler Server - iSpindle.py

#206

Beitrag von Tozzi »

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 Fasano
Stephan
Benutzeravatar
Sura
Posting Freak
Posting Freak
Beiträge: 3489
Registriert: Montag 2. November 2015, 22:37

Re: iSpindel - Lokaler Server - iSpindle.py

#207

Beitrag von Sura »

Super, danke. Dann werde ich mir das mal anschauen :)
"Es ist schon alles gesagt, nur noch nicht von jedem."
(Karl Valentin)
Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 4768
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: Fasano (BR) - Puglia - IT

Re: iSpindel - Lokaler Server - iSpindle.py

#208

Beitrag von Tozzi »

Prima! Verbesserungsvorschläge und Bug Reports sind immer willkommen.
Viele Grüße aus Fasano
Stephan
Benutzeravatar
Sura
Posting Freak
Posting Freak
Beiträge: 3489
Registriert: Montag 2. November 2015, 22:37

Re: iSpindel - Lokaler Server - iSpindle.py

#209

Beitrag von Sura »

Dauert aber noch ein paar Tage, die Spindeln schwimmen grade noch ;)
"Es ist schon alles gesagt, nur noch nicht von jedem."
(Karl Valentin)
Benutzeravatar
ctiedtke
Posting Senior
Posting Senior
Beiträge: 435
Registriert: Samstag 24. September 2016, 12:58
Wohnort: Haan

Re: iSpindel - Lokaler Server - iSpindle.py

#210

Beitrag von ctiedtke »

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

Bier ist nicht die schlechteste Variante um Wasser zu sich zu nehmen :Drink
Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 4768
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: Fasano (BR) - Puglia - IT

Re: iSpindel - Lokaler Server - iSpindle.py

#211

Beitrag von Tozzi »

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 Fasano
Stephan
Benutzeravatar
ggansde
Moderator
Moderator
Beiträge: 7951
Registriert: Mittwoch 9. November 2005, 16:25
Wohnort: Rodgau

Re: iSpindel - Lokaler Server - iSpindle.py

#212

Beitrag von ggansde »

Moin,
wie kann ich schnell und einfach ALLE Messwerte aus der Datenbank löschen?
VG, Markus
>>Impfung rettet Leben und Kultur!<<
"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 Senior
Posting Senior
Beiträge: 468
Registriert: Mittwoch 7. Juni 2017, 14:16

Re: iSpindel - Lokaler Server - iSpindle.py

#213

Beitrag von mrhyde »

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.
Braumeister 20 | Gärung: SS Brewtech 7 Gal BME | Speidel 30 Liter (Konus)
https://github.com/PiBrewing
https://openbrewing.gitbook.io/craftbeerpi4_support/
Benutzeravatar
ggansde
Moderator
Moderator
Beiträge: 7951
Registriert: Mittwoch 9. November 2005, 16:25
Wohnort: Rodgau

Re: iSpindel - Lokaler Server - iSpindle.py

#214

Beitrag von ggansde »

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
>>Impfung rettet Leben und Kultur!<<
"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: 7951
Registriert: Mittwoch 9. November 2005, 16:25
Wohnort: Rodgau

Re: iSpindel - Lokaler Server - iSpindle.py

#215

Beitrag von ggansde »

Moin,
habe es hinbekommen, über phpMyAdmin "leeren".
VG, Markus
>>Impfung rettet Leben und Kultur!<<
"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: 4768
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: Fasano (BR) - Puglia - IT

Re: iSpindel - Lokaler Server - iSpindle.py

#216

Beitrag von Tozzi »

Genau. Oder SQL Klausel eingeben:
DELETE FROM Data;
Viele Grüße aus Fasano
Stephan
mrhyde
Posting Senior
Posting Senior
Beiträge: 468
Registriert: Mittwoch 7. Juni 2017, 14:16

Re: iSpindel - Lokaler Server - iSpindle.py

#217

Beitrag von mrhyde »

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.
Braumeister 20 | Gärung: SS Brewtech 7 Gal BME | Speidel 30 Liter (Konus)
https://github.com/PiBrewing
https://openbrewing.gitbook.io/craftbeerpi4_support/
Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 4768
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: Fasano (BR) - Puglia - IT

Re: iSpindel - Lokaler Server - iSpindle.py

#218

Beitrag von Tozzi »

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 Fasano
Stephan
clmnsk
Posting Klettermax
Posting Klettermax
Beiträge: 264
Registriert: Freitag 10. März 2017, 00:12
Wohnort: Berlin

Re: iSpindel - Lokaler Server - iSpindle.py

#219

Beitrag von clmnsk »

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
10L Topf BIAB - Kühlschlange - Ikea 10L PP-Container
Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 4768
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: Fasano (BR) - Puglia - IT

Re: iSpindel - Lokaler Server - iSpindle.py

#220

Beitrag von Tozzi »

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 Fasano
Stephan
mrhyde
Posting Senior
Posting Senior
Beiträge: 468
Registriert: Mittwoch 7. Juni 2017, 14:16

Re: iSpindel - Lokaler Server - iSpindle.py

#221

Beitrag von mrhyde »

Danke für das reinschauen. Mich würde natürlich auch eher die Änderug der Korrelation,... interessieren, als das Interval.
Braumeister 20 | Gärung: SS Brewtech 7 Gal BME | Speidel 30 Liter (Konus)
https://github.com/PiBrewing
https://openbrewing.gitbook.io/craftbeerpi4_support/
clmnsk
Posting Klettermax
Posting Klettermax
Beiträge: 264
Registriert: Freitag 10. März 2017, 00:12
Wohnort: Berlin

Re: iSpindel - Lokaler Server - iSpindle.py

#222

Beitrag von clmnsk »

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
10L Topf BIAB - Kühlschlange - Ikea 10L PP-Container
Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 4768
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: Fasano (BR) - Puglia - IT

Re: iSpindel - Lokaler Server - iSpindle.py

#223

Beitrag von Tozzi »

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 Fasano
Stephan
irrwisch
Posting Freak
Posting Freak
Beiträge: 1014
Registriert: Sonntag 21. Januar 2018, 08:33

Re: iSpindel - Lokaler Server - iSpindle.py

#224

Beitrag von irrwisch »

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: 4768
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: Fasano (BR) - Puglia - IT

Re: iSpindel - Lokaler Server - iSpindle.py

#225

Beitrag von Tozzi »

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 Fasano
Stephan
Benutzeravatar
ctiedtke
Posting Senior
Posting Senior
Beiträge: 435
Registriert: Samstag 24. September 2016, 12:58
Wohnort: Haan

Re: iSpindel - Lokaler Server - iSpindle.py

#226

Beitrag von ctiedtke »

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

Bier ist nicht die schlechteste Variante um Wasser zu sich zu nehmen :Drink
Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 4768
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: Fasano (BR) - Puglia - IT

Re: iSpindel - Lokaler Server - iSpindle.py

#227

Beitrag von Tozzi »

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 Fasano
Stephan
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: iSpindel - Lokaler Server - iSpindle.py

#228

Beitrag von JackFrost »

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
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 4768
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: Fasano (BR) - Puglia - IT

Re: iSpindel - Lokaler Server - iSpindle.py

#229

Beitrag von Tozzi »

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 Fasano
Stephan
irrwisch
Posting Freak
Posting Freak
Beiträge: 1014
Registriert: Sonntag 21. Januar 2018, 08:33

Re: iSpindel - Lokaler Server - iSpindle.py

#230

Beitrag von irrwisch »

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 Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: iSpindel - Lokaler Server - iSpindle.py

#231

Beitrag von JackFrost »

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
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
irrwisch
Posting Freak
Posting Freak
Beiträge: 1014
Registriert: Sonntag 21. Januar 2018, 08:33

Re: iSpindel - Lokaler Server - iSpindle.py

#232

Beitrag von irrwisch »

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 Freak
Posting Freak
Beiträge: 1014
Registriert: Sonntag 21. Januar 2018, 08:33

Re: iSpindel - Lokaler Server - iSpindle.py

#233

Beitrag von irrwisch »

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: 4768
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: Fasano (BR) - Puglia - IT

Re: iSpindel - Lokaler Server - iSpindle.py

#234

Beitrag von Tozzi »

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 Fasano
Stephan
Benutzeravatar
igami
Posting Junior
Posting Junior
Beiträge: 76
Registriert: Mittwoch 21. Februar 2018, 05:34
Wohnort: Gütersloh

Re: iSpindel - Lokaler Server - iSpindle.py

#235

Beitrag von igami »

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: 4768
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: Fasano (BR) - Puglia - IT

Re: iSpindel - Lokaler Server - iSpindle.py

#236

Beitrag von Tozzi »

Hallo Michael,

das ist sicherlich möglich. Ich schau mir das an, sobald ich wieder ein wenig Ruhe habe.
Viele Grüße aus Fasano
Stephan
Benutzeravatar
barti77
Posting Junior
Posting Junior
Beiträge: 78
Registriert: Sonntag 4. Oktober 2015, 18:54
Wohnort: Winterthur, Schweiz

Re: iSpindel - Lokaler Server - iSpindle.py

#237

Beitrag von barti77 »

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: 4768
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: Fasano (BR) - Puglia - IT

Re: iSpindel - Lokaler Server - iSpindle.py

#238

Beitrag von Tozzi »

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 Fasano
Stephan
Benutzeravatar
barti77
Posting Junior
Posting Junior
Beiträge: 78
Registriert: Sonntag 4. Oktober 2015, 18:54
Wohnort: Winterthur, Schweiz

Re: iSpindel - Lokaler Server - iSpindle.py

#239

Beitrag von barti77 »

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: 4768
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: Fasano (BR) - Puglia - IT

Re: iSpindel - Lokaler Server - iSpindle.py

#240

Beitrag von Tozzi »

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 Fasano
Stephan
Benutzeravatar
barti77
Posting Junior
Posting Junior
Beiträge: 78
Registriert: Sonntag 4. Oktober 2015, 18:54
Wohnort: Winterthur, Schweiz

Re: iSpindel - Lokaler Server - iSpindle.py

#241

Beitrag von barti77 »

Okay - super Danke. Funktioniert einwandfrei!

Gruss,
Axel
Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 4768
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: Fasano (BR) - Puglia - IT

Re: iSpindel - Lokaler Server - iSpindle.py

#242

Beitrag von Tozzi »

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 Fasano
Stephan
BiBr
Neuling
Neuling
Beiträge: 2
Registriert: Dienstag 2. Oktober 2018, 18:20

Re: iSpindel - Lokaler Server - iSpindle.py

#243

Beitrag von BiBr »

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: 4768
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: Fasano (BR) - Puglia - IT

Re: iSpindel - Lokaler Server - iSpindle.py

#244

Beitrag von Tozzi »

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 Fasano
Stephan
BiBr
Neuling
Neuling
Beiträge: 2
Registriert: Dienstag 2. Oktober 2018, 18:20

Re: iSpindel - Lokaler Server - iSpindle.py

#245

Beitrag von BiBr »

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 Freak
Posting Freak
Beiträge: 574
Registriert: Donnerstag 31. Dezember 2015, 17:58
Wohnort: Mengelse

Re: iSpindel - Lokaler Server - iSpindle.py

#246

Beitrag von Aeppler »

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 Senior
Posting Senior
Beiträge: 468
Registriert: Mittwoch 7. Juni 2017, 14:16

Re: iSpindel - Lokaler Server - iSpindle.py

#247

Beitrag von mrhyde »

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) 7608 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.
Braumeister 20 | Gärung: SS Brewtech 7 Gal BME | Speidel 30 Liter (Konus)
https://github.com/PiBrewing
https://openbrewing.gitbook.io/craftbeerpi4_support/
Benutzeravatar
Tozzi
Moderator
Moderator
Beiträge: 4768
Registriert: Montag 22. Februar 2016, 23:17
Wohnort: Fasano (BR) - Puglia - IT

Re: iSpindel - Lokaler Server - iSpindle.py

#248

Beitrag von Tozzi »

Super, danke!
Das baue ich natürlich ASAP ein!
Viele Grüße aus Fasano
Stephan
mrhyde
Posting Senior
Posting Senior
Beiträge: 468
Registriert: Mittwoch 7. Juni 2017, 14:16

Re: iSpindel - Lokaler Server - iSpindle.py

#249

Beitrag von mrhyde »

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) 81-mal heruntergeladen
Nächster Schritt ist noch einen Parameter zu definieren, wo man die Zeit des gleitenden Mittelwertes per Browser übergeben kann.
Braumeister 20 | Gärung: SS Brewtech 7 Gal BME | Speidel 30 Liter (Konus)
https://github.com/PiBrewing
https://openbrewing.gitbook.io/craftbeerpi4_support/
mrhyde
Posting Senior
Posting Senior
Beiträge: 468
Registriert: Mittwoch 7. Juni 2017, 14:16

Re: iSpindel - Lokaler Server - iSpindle.py

#250

Beitrag von mrhyde »

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) 7509 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);
    }
 }
 
Braumeister 20 | Gärung: SS Brewtech 7 Gal BME | Speidel 30 Liter (Konus)
https://github.com/PiBrewing
https://openbrewing.gitbook.io/craftbeerpi4_support/
Antworten