NEWS
Wasserzähler - Version 2 - all-in-device
-
@jomjol Ja kein Thema vestehe ich natürlich.
Evtl. ein letzter Gedanke dazu noch, der jetzige error Wert den es schon gibt, kein leerer Wert wenn alles in Ordnung ist sondern ein true bzw. false? Wie gesagt ein leerer Wert lässt sich allgemein ungut ansprechen in scripten. -
-
@michmein Ja genau einfach ein Wert den man klar definieren kann. Nur nicht leer oder variabel.
-
Hallo,
jetzt habe ich mir ein ein Fischauge besorgt, könnte mir jemand sagen wo das Problem liegen könnte??Irgendwie hat es Probleme mit der zwei
-
-
-
-
Hallo jomjol,
@jomjol said in Wasserzähler - Version 2 - all-in-device:
@rupert-s Der Tip mit dem Grünstich könnte tatsächlich vom Speichern kommen, dem gehe ich mal nach.
Bezüglich dem um 180° gedrehten Bild: wenn du zu einem ungünstigen Zeitpunkt die Webseite abfragst, wird noch das Rohbild angezeigt, da die Berechnung der Drehung noch nicht abgeschlossen ist. Ca. 10-20 Sekunden später sollte das gedrehte Bild erscheinen.Das falsch oder nicht gedrehte Bild geht aber manchmal auch in die Analyse und ergibt dann NNNNN.N
Gerade habe ich wieder ein "seltsames" Bild aufgeschnappt:
- Es ist unterbelichtet.
- Das kleine Bildchen des analogen Zeiger ist kein Ausschnitt des großen: unten klein 4,3, im großen Bild etwa 5,8.
Ich bin kein Webprogrammierer und durchschaue Deinen Code bei weitem nicht. Aber kann es sein, dass da mehrere Webservices oder Prozesse um die Wette laufen (siehe Ende von main.cpp) und -- gerade wenn ich "zuschaue" -- sich gelegentlich in die Quere kommen? Beim Zugriff auf die SD-Karte vs. Blitzlicht, bei der Ausgabe des richtigen Bildes usw? Ließe sich das vielleicht mit Locking-Verfahren beheben?
-
@rupert-s sagte in Wasserzähler - Version 2 - all-in-device:
Hallo jomjol,
@jomjol said in Wasserzähler - Version 2 - all-in-device:
@rupert-s Der Tip mit dem Grünstich könnte tatsächlich vom Speichern kommen, dem gehe ich mal nach.
Bezüglich dem um 180° gedrehten Bild: wenn du zu einem ungünstigen Zeitpunkt die Webseite abfragst, wird noch das Rohbild angezeigt, da die Berechnung der Drehung noch nicht abgeschlossen ist. Ca. 10-20 Sekunden später sollte das gedrehte Bild erscheinen.Das falsch oder nicht gedrehte Bild geht aber manchmal auch in die Analyse und ergibt dann NNNNN.N
Gerade habe ich wieder ein "seltsames" Bild aufgeschnappt:
- Es ist unterbelichtet.
- Das kleine Bildchen des analogen Zeiger ist kein Ausschnitt des großen: unten klein 4,3, im großen Bild etwa 5,8.
Ich bin kein Webprogrammierer und durchschaue Deinen Code bei weitem nicht. Aber kann es sein, dass da mehrere Webservices oder Prozesse um die Wette laufen (siehe Ende von main.cpp) und -- gerade wenn ich "zuschaue" -- sich gelegentlich in die Quere kommen? Beim Zugriff auf die SD-Karte vs. Blitzlicht, bei der Ausgabe des richtigen Bildes usw? Ließe sich das vielleicht mit Locking-Verfahren beheben?
Eigentlich dürfte das nicht der Fall sein, da immer ein linearer Flow von der Bildaufnahme bis zur Versenden läuft. Da Problem könnte eher ein Thema der Kamera sein. Wenn diese gar kein Bild liefert, dann verwendet er je nach Status das Bild aus dem Speicher und dreht es einfach weiter. Das könnte dann so ein Effekt sein. Hast du eine andere OV2640, die du mal austauschen kannst? Dort gibt es riesige Qualitätsunterschiede und sie sind neben der SD-Karte oft die Ursache für komisches Verhalten.
-
@michmein sagte in Wasserzähler - Version 2 - all-in-device:
@rupert-s ich würde sie in einem issue auf GitHub machen, oder hier im Thread gezippt hochladen. @jomjol möchte sie glaub ich gerne sortiert und NUR 2-3 von jeder Zahl.
TOP - genauso brauche ich die Ziffern
-
@jomjol wäre es denn grundsätzlich möglich den Webzugriff zu blockieren wenn ein „Flow“ läuft, ohne den ESP dann dabei zu „stören“?
-
@michmein Dann ist er 2-3 Minuten nicht zugänglich und wirkt "tot". Man könnte den Status im Flow darstellen, dann weiß man, ob alles normal läuft (z.B. Bild noch nicht gedreht, ...).
-
@michmein sagte in Wasserzähler - Version 2 - all-in-device:
@xsev & @jomjol
Vielleicht ginge ja auch „i.O.“, „fehlerfrei“, „ok“ oder „keine Fehler“In der neueste Rolling (gerade hochgeladen) kommt jetzt "no error", falls alles okay ist.
-
@jomjol sehr geil danke!!!!
-
Wie ist den der beste Weg das System zu aktualisieren? Esp via OTA und SD einfach rüber kopieren?
Edit:
Alles klar! OTA Update ist ja selbsterklärend Hat bestens geklappt! Rückmeldung folgt. -
@jomjol sagte in Wasserzähler - Version 2 - all-in-device:
Dann ist er 2-3 Minuten nicht zugänglich und wirkt "tot". Man könnte den Status im Flow darstellen, dann weiß man, ob alles normal läuft (z.B. Bild noch nicht gedreht, ...).
Manchmal aber vielleicht „besser“ als dass der ESP neu startet wenn man zu nem unglücklichen Zeitpunkt einen Webzugriff durchführt. War auch nur irgendwie so ne Idee, wüsste nicht wirklich was man sonst sinnvolles machen könnte.
-
@michmein Der Neustart läßt sich dadurch nur bedingt verhindern. Ehrlich gesagt ist es mir auch nicht ganz klar, was ihn genau triggert. Aber muss halt im Blick haben, dass der Speicher und die Rechenkapa sehr begrenzt ist. Daher kann ich auch nicht alle Fehler abfangen. Insofern habe ich versucht, einen möglichst stabilen und reibungslosen "Restart" hinzubekommen.
Denke, dass ist ein guter Kompromiss. -
@jomjol said in Wasserzähler - Version 2 - all-in-device:
@michmein Dann ist er 2-3 Minuten nicht zugänglich und wirkt "tot". Man könnte den Status im Flow darstellen, dann weiß man, ob alles normal läuft (z.B. Bild noch nicht gedreht, ...).
Das fände ich durchaus akzeptabel. Jedenfalls besser als gestörte Bilder, Abstürze o.ä. Der Regelbetrieb soll ja dann sowieso nur das Empfangen der Daten per MQTT sein. Die "Overview"-Seite hat ja offensichtlich einen automatischen Refresh, das funktioniert sehr gut.
-
@jomjol, was genau lässt sich an der seriellen Schnittstelle alles auslesen und ist eine bidirektionale Kommunikation möglich?
Könnte man dort nen zweiten ESP anschließen auf dem ein Webserver läuft der über seine serielle Schnittstelle auf die des ersten ESP zugreift? -
@michmein Ja, technisch geht dass. Die serielle Schnittstelle ist eine bidirektionale RS232 mit Sender- und Empfangerleitung.