Enkodery jest to temat na który poświęciliśmy dużo czasu. Dla przypomnienia, MJoy miał ograniczenia co do ilości enkoderów (4). Były hardwarowe próby rozwiązań tego problemu (między innymi filtry). W ostateczności Damos zaprojektował układ MJoy-Enkoder.
Pojawił się następca MJoya DMKeys8 zaprojektowany przez Damosa. Tutaj na początku mieliśmy problemy, które zostały pokonane. Damos wprowadził możliwość programowego ustawienia dwóch parametrów tzw. encoder filter (0-10) oraz encoder idle time (0-255). Można tym kompensować niedoskonałość enkoderów. Wpływ na pracę enkoderów ma także długość przewodów oraz czasem pomaga zamiana żył.
Dlaczego tak się dzieje. Tanie enkodery generują zdegenerowane sygnały. Degeneracja polega na tym, że oba sygnały nie są przesunięte w czasie (nie wiadomo na którym zboczu). Może wstąpić jiter lub drgania na zboczach. Filtr RC ma wpływ na matrycę i może powodować problemy. Matryca diodowa w OC jest trochę inna od matrycy w DMKeys8, ale generalnie problemy są podobne. W uP na wejściu są tzw. rez. pull-up, które mogą pomóc, ale nie zawsze.
Tak jak wspomniałem mam drogie enkodery i z tymi nie ma problemu, ale w kokpicie mam tanie i dopuszczam pewien stopień przekłamań, ponieważ są w miejscach gdzie to nie jest tak istotne. Enkodery w ICP są dobrej jakości i podejrzewam, że są droższe. Testowałem ICP, ale nie pod tym kątem. Jak uruchomię mój kokpit to jeszcze to sprawdzę. ICP jest sterowane z DMKeys8, gdzie mogę dodatkowo w konfiguracji eliminować wady enkoderów. W OC może jest możliwość napisania jakiejś instrukcji warunkowej lub pętli loop w skrypcie. W moim przypadku OC steruje tylko kilkoma przełącznikami, enkodery są sterowane z DMKeys8.