iSpindel - Public Server - Mitstreiter gesucht!

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

Re: iSpindel - Public Server - Mitstreiter gesucht!

#51

Beitrag von Tozzi » Freitag 1. September 2017, 01:05

Danke, Sam, ja, ich denke das wird über kurz oder lang Sinn machen.
Das erleichtert dann künftig auch die Updates für Raspi- oder sonstige local Server Installationen.
Aber das Unterverzeichnis in Deinem Branch sollten wir dennoch weiterhin aktuell halten, da das für die meisten die erste Anlaufstation ist.

Der Witz an dem Python Skript ist ja, wie simpel das eigentlich ist.
Gerade für solche Anwendungen bietet sich das wirklich an.
Es gibt kaum potentielle Fehlerquellen. Ich werd noch zum Python Fan... :Wink
Nächste Woche häng ich mich nochmal rein, mal schauen, wie weit ich komme.
Für den Public Server steht da noch etwas Refactoring an. :Pulpfiction
Viele Grüße aus München
Stephan

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

Re: iSpindel - Public Server - Mitstreiter gesucht!

#52

Beitrag von clmnsk » Sonntag 22. Oktober 2017, 10:55

Wieder mal ein Update:
https://github.com/ckrack/ispindel-publ ... ee/develop

Ich hab den TCP-Server jetzt auch in PHP geschrieben und dabei gleich die Features eingekürzt.
Ist praktischer, das alles in einer Sprache zu haben, zumal es sich so die Konfig teilt.
Weiterleitung zu Ubidots gibt's erstmal nicht.

Das Teil kann so wie es jetzt ist Daten empfangen und darstellen.
Der Anlegeprozess einer Spindel ist auch drin, die Doku muss noch etwas ergänzt werden.

Ich habe die DB nochmal überarbeitet.
Die Entität heißt jetzt "Hydrometer" statt "iSpindle" (Unterstützung für andere Geräte auch angedacht).

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

Re: iSpindel - Public Server - Mitstreiter gesucht!

#53

Beitrag von Tozzi » Montag 23. Oktober 2017, 23:46

Da hast Du ja anscheinend ganze Arbeit geleistet, Chapeau.
Wenn Du mich kontaktiert hättest, hätten wir sicherlich auch so eine gemeinsame Config hinbekommen, aber was soll's.
Du scheinst konkrete Vorstellungen zu haben und machst das offenbar lieber alles alleine.

Nachdem ja nun wohl keine einzige Codezeile von mir mehr drin ist, übergebe ich Dir das Projekt gerne und konzentriere mich künftig auf die Weiterentwicklung des "lokalen" (RaspberryPi) Servers.

Auf meinem Server hosten kann ich das leider nicht, denn da behalte ich gerne die Hoheit über den Code der da drauf läuft und PHP kann ich nicht beurteilen.
Aber da hatten sich ja andere schon angeboten.
Die Domain "ispindle.de" übertrage ich dann jederzeit, wobei natürlich Sam die Entscheidung trifft an wen.

Du solltest dann eventuell beizeiten auch einen eigenen Faden aufmachen, dann können wir diesen hier schließen.
Zuletzt geändert von Tozzi am Mittwoch 25. Oktober 2017, 04:14, insgesamt 1-mal geändert.
Grund: Ein paar Gedanken ergänzt.
Viele Grüße aus München
Stephan

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

Re: iSpindel - Public Server - Mitstreiter gesucht!

#54

Beitrag von clmnsk » Sonntag 29. Oktober 2017, 00:50

Hi Stephan,
sollte jetzt nicht nach nem Alleingang aussehen.
Deine Unterstützung bei meinen Fragen und mit der Spindel selber war sehr hilfreich, danke!

Ich wollte gerne eine fertige Version haben, um selber damit "arbeiten" zu können.
Und es ist einfach sauberer, den Schreibzugriff dann auch in der gleichen Sprache, mit der gleichen ORM und auf Basis der gleichen Config umzusetzen.
Ist jetzt für denjenigen, der sich das selber hosten möchte, deutlich einfacher als PHP und Python aufsetzen zu müssen.

Ich habe grade Version 1.0.0 gepusht.
Statt eigener Authentifizierung habe ich jetzt OAuth2 eingesetzt, so ist es in jedem Fall sattelfest.
Es kann jeder hier aufgeführte OAuth2 Provider genutzt werden, der eine Email zurückgibt (Instagram & Github z.B. tun dies nicht).
Wenn jemand ein Code Review machen will, gerne.

Ich habe mal eine Instanz auf Uberspace aufgesetzt:
https://hydro.avior.uberspace.de/

Diese ist zum testen gedacht, kann jederzeit offline gehen und wird voraussichtlich nicht dauerhaft betrieben werden.
Eine Spindel funkt tatsächlich grade aus einem Gäreimer dorthin.

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

Re: iSpindel - Public Server - Mitstreiter gesucht!

#55

Beitrag von Tozzi » Sonntag 29. Oktober 2017, 01:42

Hi Clemens,

Du hast da wirklich eine Menge Arbeit reingesteckt, und ich werde mir das natürlich sehr gerne anschauen, zumal es als 1.0 Version jetzt fertig ist und Du es bereits im Einsatz hast!
Die Raspberry Version werde ich aber unabhängig davon weiterentwickeln; die könnte dann das Bindeglied werden, um künftig alle Welten (Deinen Server, Ubidots und lokale Installationen) zusammenzuführen und als lokales Relay den Batteriebedarf der iSpindel und Reichweitenprobleme (Edelstahltanks) zu minimieren.
Die Community profitiert davon, und das wollen wir ja letztlich alle.
Erweiterungen lassen sich dann auch sicherlich (mit Absprache) modular gestalten.
Gelegenheiten zu ausgiebigen Tests sollten sich bieten; ich habe durchaus vor, dieses Jahr noch den einen oder anderen Sud anzustellen.
Viele Grüße aus München
Stephan

Benutzeravatar
DerDerDasBierBraut
Posting Freak
Posting Freak
Beiträge: 4036
Registriert: Donnerstag 2. Juni 2016, 20:51
Wohnort: Ahrensburg

Re: iSpindel - Public Server - Mitstreiter gesucht!

#56

Beitrag von DerDerDasBierBraut » Sonntag 29. Oktober 2017, 14:07

Moin Clemens,

ich habe testweise eine Spindel mit dem PublicServer verbunden und möchte Dir Feedback dazu geben.
Erstmal vorab - sieht schon sehr gut und vielversprechend aus :thumbup

Bugs:
  • Hydrometer > "meine Spindel" > Status wirft eine Nullpointer Exception, wenn von der Spindel noch keine Daten empfangen wurden
  • OAuth über Google funktioniert beim iPhone nur aus Chrome. Der Safari stellt die Seite "accounts.google.com" nicht dar (weiß, ohne Fehlermeldung)
  • Fermentation > Startdatum kann hinter dem Enddatum liegen
  • im Chart "Fermentation Details" wird nur der erste Datenpunkt angezeigt
  • H1 Font auf der Login Page wird auf dem iPhone nicht passend verkleinert bzw. umgebrochen
offen / unklar
  • Fermentation löschen > 404
  • "Fermentation Ende" ist ein Pflichtfeld > kennt man aber nicht zwangsläufig beim Anlegen der Fermentation, nachträglich bearbeiten fehlt.
Wünsche
  • optional Angle (tilt) anstatt °P in den Diagrammen anzeigen
  • optional von der WebApp berechneter °P Wert
  • Fermentation > °P Werte neu berechnen anhand von frei eingebbarem Polynom
  • Wenn aktive Fermentations vorhanden sind, dann Fermentations als Landing-Page verwenden
  • In den Fermentation-Details optionale "Last-Value Widgets" für Akkuspannung, Temperatur, Angle und °P
  • auto-refresh des Charts, wenn neue Datapoints vorhanden sind
"Da braut sich was zusammen ... "
"Oh, Bier ;-) !"
"Nein! Was Böses!"
"Alkoholfreies Bier??? ..."
-----------
Viele Grüße
Jens

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

Re: iSpindel - Public Server - Mitstreiter gesucht!

#57

Beitrag von clmnsk » Montag 30. Oktober 2017, 11:58

Hallo Jens,
danke schonmal für den Test!

Die Exceptions werde ich noch sinnvoller abfangen und logischerweise nicht mehr in der Debug-Form anzeigen.

Die Datenpunkte werden für die Charts über 1800 Sekunden gruppiert - daher zeigt er dir in deinem Testsud 1 nur einen an.
Ich hatte zwei UG-Gärungen von Stephan zum testen und fand, dass aufgrund der vielen Datenpunkte in der Chart der Browser recht langsam wurde. Ist also eher eine Frontend-Performance Frage.

Um die Bugs und Requests kümmere ich mich, lediglich den OAuth-Bug bei Google kann ich nicht beheben, tritt bei mir aber auch nicht auf. Das müsstest du an Google melden.
Eine Calibration (wie bei Stephan) ist eingebaut, ich muss noch das Formular bauen für die Eingabe der Werte.

Ein Update für neue Datenpunkte würde Websockets erfordern. Ich glaube es ist einfacher da alle paar Minuten nach neuen Daten zu pollen.

Das UI werde ich wohl nochmal dahingehend umbauen, dass die aktiven Fermentations im Vordergrund stehen.

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

Re: iSpindel - Public Server - Mitstreiter gesucht!

#58

Beitrag von clmnsk » Dienstag 14. November 2017, 17:11

Hätte jemand Lust, eine Funktion zu basteln, mit der man die Kalibrierung berechnen kann?
Sie sollte einen Array mit Wertpaaren: gemessen / tatsächlich empfangen und als Rückgabe am Besten einen Array mit den drei Konstanten liefern, die auch in der Version von Stephan in der Kalibrierung auftauchen.

Ziel ist: Anhand von ausgewählten Datenpunkten (Anfang / Ende einer Gärung) soll die Kalibrierung durchgeführt werden können.
Die wird dann im Tool direkt abgelegt, ohne Sie auf der Spindel eintragen zu müssen und kann dann mit jeder Gärung verfeinert werden.

Antworten