Zur “Beruhigung”, ich habe das – Absturz und reboot – beim Drehen des rotarys auch und denke, es liegt nicht an der fliegenden Verkabelungen oder anderen Dingen, und es liegt auch nicht an den 41%, sondern an Problemen in Zusammenhang mit dem rotary / hardware interrupts und der “neuen” Arduino ESP32 core ≥ 2.0, siehe auch: Was muss ich bei Verwendung von zwei Netzteilen (eines für Servo, zweites für Microcontroller) beachten? - #9 by clemens
Bei mir läuft der code stabil, wenn ich die Zeile ca. 307 (je nach code-Version) auskommentiere
// if ( rotating ) delay (1); // wait a little until the bouncing is done
Das delay
in der ISR-Funktion ist an sich schon eine schlechte Idee, stammt allerdings aus code snippets, die wir damals gefunden haben und die bisher auch funktioniert haben.
Ob mit der Auskommentierung das bouncing nun schlimmer wird kann ich noch nicht eindeutig sagen, konnte da nix beobachten, allerdings habe ich ja immer noch das Problem mit der allgemeinen Reaktionszeit, was ggf. auch ein bouncing verhindert. Sprich wir müssen erst die Geschichte mit der Reaktionszeit lösen.
Sorry, typo, meine Datei war falsch benannt, habe die 0.2.9 verwendet! Bibliotheken sind alle identisch, ob 0.2.8, 0.2.9 … 0.2.12 …
Ich befürchte noch nicht!!
Produktiv würde ich das noch nicht nutzen, die Waage reagiert so träge, dass vermutlich die Abfüllung ungenau oder mit Honigüberlauf “funktioniert”. Den Fehler müssen wir noch finden … werde dafür nochmal die verwendeten pins für die Waage tauschen und mir die ISR-Abfrage anschauen und auch nochmal den Zeitverbrauch für einen Mess-Durchlauf ansehen. @aholzhammer meinte, dass im Handbetrieb eine Schleife 180 ms inkl. Messung dauert. Mal schauen wie weit wir davon weg sind. Dann würde ich zu debug-Zwecken die Messung deaktivieren, um zu schauen, ob das der Grund der Verzögerung ist oder die Abfrage des rotary / irgendwas mit ISR. Wer mittesten möchte, gerne!