Jeśli czujesz, że myszy w ostatnich latach straciły na jakości, nie jesteś sam. Przełączniki padają z dnia na dzień, żadne czyszczenie nie pomaga, a sensor bywa kiepskiej jakości. Alexander Nadeau, znany jako „wareya” na GitHubie i YouTube, przyznaje, że ma już trzeciego Logitecha G203 i postanowił wyrwać się z tej spirali, tworząc mysz open source, opartą na popularnym sensorze Pixart PMW3360 – ze wszystkimi wyzwaniami, jakie to niesie.

Jak stworzyć mysz open source
Jak stworzyć mysz open source

Wyzwanie stworzenia myszy open source

Postać „akcesorium gamingowego” doprowadziła do ogromnej liczby produktów, ale jednocześnie trudniej jest znaleźć opcje dobrej jakości. Nawet popularne marki zdają się tracić impet, a to, co kiedyś słynęło z solidnych i stabilnych konstrukcji, dziś rozczarowuje pod każdym względem.

Alexander „wareya” Nadeau ma problem z myszami. W swoim filmie przyznaje, że jest już przy trzecim Logitechu G203, wymieniając przełączniki co sześć miesięcy, bo przestają działać. Osobiście rozumiem to uczucie, bo sam musiałem przeszczepić dwa przełączniki w swoim Logitechu G300s (i przy okazji wyłączyć dwa przyciski), ale rozwiązanie „wareyi” jest znacznie bardziej zaawansowane: budowa własnej myszy DIY open source.

„wareya” wyjaśnia główne sposoby, w jakie zawodzą przełączniki, „bounce” (gdy stan On/Off przełącznika zmienia się bardzo szybko, powodując efekty takie jak fałszywe podwójne kliknięcie) oraz „chatter” (gdy przełącznik przestaje działać, jeśli przytrzymamy go wciśnięty). Oba stany można skorygować w oprogramowaniu układowym, ale generuje to dodatkowe opóźnienie. Przełączniki mają tak naprawdę trzy stany: On, Off oraz pozycję pomiędzy nimi. Chatter pozostawia przełącznik uwięziony w tym stanie pośrednim, ale dzięki algorytmowi można go zignorować i zachować poprzedni stan.

„wareya” zaprojektował zarówno płytkę PCB, jak i obudowę myszy, ale najtrudniejsze było znalezienie sensora. Pixart PMW3360 ma doskonały stosunek ceny do wydajności i wiele tanich myszy go stosuje, ale niemal niemożliwe jest kupienie go osobno. Do tego dochodzi kolejny problem: oprogramowanie układowe powiązane z PMW3360 nie jest open source, więc trzeba sklonować jego zawartość z innej myszy… i tolerować obecność tego blobu.

Krótko mówiąc, zbudowanie myszy DIY wymaga poświęcenia innej myszy, wyciągnięcia oprogramowania układowego zgodnego z sensorem oraz zaprojektowania PCB opartego na RP2040, aby uruchomić cały istotny kod. „wareya” próbował użyć ESP32, ale błąd uniemożliwia mu powrót z trybu uśpienia. Link poniżej!

Dostęp do projektu na GitHubie: Kliknij tutaj