Se senti che i mouse hanno perso qualità negli ultimi anni, non sei solo. Gli interruttori muoiono da un giorno all'altro, nessuna pulizia li aiuta, e non manca mai un sensore di scarsa qualità. Alexander Nadeau, noto anche come «wareya» su GitHub e YouTube, spiega che è già al suo terzo Logitech G203, e ha deciso di sfuggire a quella spirale creando un mouse open source, basato sul popolare sensore Pixart PMW3360… con tutte le sfide che questo comporta.

Come creare un mouse open source
Come creare un mouse open source

La figura dell'«accessorio gamer» ha dato vita a una quantità enorme di prodotti, ma allo stesso tempo è più difficile identificare opzioni di qualità. Troviamo persino marchi popolari che sembrano aver perso slancio, e ciò che una volta era noto per offrire esperienze robuste e stabili, oggi delude da ogni punto di vista.

Alexander «wareya» Nadeau ha un problema con i mouse. Nel suo video ammette di essere già al suo terzo Logitech G203, sostituendo gli interruttori ogni sei mesi perché smettono di funzionare. Personalmente capisco come si sente, dato che mi sono trovato costretto a trapiantare due interruttori nel mio Logitech G300s (e a disattivare due pulsanti nel processo), ma la soluzione di «wareya» è molto più avanzata: Costruire un mouse DIY open source.

La sfida di costruire un mouse open source

«wareya» spiega i principali modi in cui un interruttore fallisce: il «bounce» (quando lo stato On/Off dell'interruttore cambia molto rapidamente, creando effetti come il falso doppio clic) e il «chatter» (quando l'interruttore smette di funzionare se lo si tiene premuto). Entrambe le condizioni possono essere corrette dal firmware, ma ciò genera latenza aggiuntiva. Ora, gli interruttori hanno in realtà tre stati: On, Off e la posizione tra i due. Il chatter lascia l'interruttore intrappolato in quello stato intermedio, ma con l'aiuto di un algoritmo è possibile ignorarlo e conservare lo stato precedente.

«wareya» si è occupato di progettare sia il PCB che la scocca del mouse, ma la cosa più complicata è stata trovare un sensore. Il Pixart PMW3360 ha un eccellente rapporto prezzo/prestazioni, e molti mouse economici lo hanno adottato, tuttavia è quasi impossibile acquistarlo separatamente. A questo si aggiunge un altro inconveniente: il firmware associato al PMW3360 non è open source, quindi dobbiamo clonarne il contenuto da un altro mouse… e tollerare la presenza di quel blob.

In sintesi, costruire un mouse DIY richiede il sacrificio di un altro mouse, estrarre il firmware compatibile con il sensore e progettare un PCB basato su RP2040 per eseguire tutto il codice rilevante. «wareya» ha provato a utilizzare un ESP32, ma un bug gli impedisce di uscire dalla modalità di sospensione. Link più sotto!

Accedi al progetto su GitHub: Clicca qui.