Hallo Markus

ich habe mir schon einige Beiträge hier durchgelesen und versucht, mein Problem so zu lösen, allerdings habe ich es nicht ganz verstanden.
Es sind (meiner Meinung nach) eigentlich zwei Probleme die beim PollSwitch() auftreten. Zum einen können die ermittelten Werte durch Bauteilestreuung (oder falsche Bestückung) vom Soll abweichen. Dagegen hilft eine Anpassung der Tastenkalibierung in der Library (bei Versionen unter 2.7?) Die Formel dazu findet man am Ende der Funktion in der Datei asuro.c

Zweites Problem sind die Störungen durch laufende Motoren bei der Abfrage. Diese kann man meist durch mehrfaches Einlesen der Werte und Vergleich unterdrücken. Ein einfacher Ansatz zur Tastenabfrage (es könnte auch ein falsch erkannter Abgrund Ursache für das Drehen sein):

else if( (t>0) && (t==PollSwitch()) )

Nur wenn das zweite Einlesen den selben Wert wie t ergibt dreht der asuro (nicht getestet, weil mein asuro noch Urlaub hat ;)

Wie pinsel schreibt, gibt es zu diesem Thema aber mehrere Theorien...

Gruß

mic