Il developer moslevin realizza un semplice client per Linux che permette di connettere in WiFi la console portatile 3DS al PC che potrà essere utilizzata come un normale controller di gioco.
Attraverso il client è possibile controllare un qualsiasi dispositivo basato su Linux (come anche un Raspberry Pi con Retropie) utilizzando la console portatile 3DS.
Caratteristiche
- Supporto DPAD, supporto circle-pad, supporto c-stick (su New 3DS), e tutti i pulsanti, che risultano correttamente mappati.
- Accelerometro (X/Y/Z).
- Giroscopio (X/Y/Z).
- Touchscreen.
Preparazione
Su host Linux
- Costruire netstickd per il proprio dispositivo Linux ed eseguirlo (vedere le istruzioni su https://github.com/moslevin/netstick). Prendere nota dell’indirizzo IP e della porta del dispositivo.
Sulla console portatile 3DS
[stextbox id=’info’]Prerequisito: Netstick richiede l’installazione di Homebrew Launcher su 3DS; per ulteriori informazioni, fare riferimento alla guida presente su https://3ds.hacks.guide/.[/stextbox]
- Sul PC host, modificare il file
config.txt
incluso e impostare il server e le linee della porta sull’indirizzo IP/porta del dispositivo Linux che esegue netstickd. - Creare una cartella denominata
/3ds/netstick-3ds
sulla console portatile 3DS e copiare i filenetstick-3ds.3dsx
,netstick-3ds.smdh
econfig.txt
modificato al suo interno.
Esecuzione
- Avviare Netstick dall’Homebrew Launcher, simile a qualsiasi altra app homebrew. Se tutto va bene, dovresti vedere il 3DS indicare che la connessione all’host Linux è riuscita e gli eventi indirizzati a un dispositivo chiamato “Nintendo 3DS” appaiono sotto
/dev/input
. Utilizzare evtest su Linux per verificare che gli eventi vengano elaborati correttamente.
Configurazione
Il formato del file di configurazione è molto semplice e consiste di righe nel formato key:value
. Le opzioni supportate sono descritte di seguito:
server
– L’indirizzo IP del server sulla rete locale.port
– La porta del server sulla rete locale.invert_cstick_x
– Inverte i valori riportati nativamente dal 3DS sull’asse X del C-stick (Ignorato su Old 3DS).invert_cstick_y
– Inverte i valori riportati in modo nativo dal 3DS sull’asse Y del C-stick (Ignorato su Old 3DS).invert_circle_pad_x
– Inverte i valori riportati in modo nativo dal 3DS sull’asse X del pad circolare.invert_circle_pad_y
– Inverte i valori riportati in modo nativo dal 3DS sull’asse Y del pad circolare.use_touch
– Abilita il dispositivo touchscreen se impostato su “true”.use_accel
– Abilita l’accelerometro se impostato su “true”.use_gyro
– Abilita il giroscopio se impostato su “true”.send_touch_event
– Invia un evento “touch” linux (oltre alle coordinate X/Y) quando il touchscreen è attivo.touch_offset
– Restringe la superficie del touchscreen di un numero di pixel su ciascun lato, facilitando il raggiungimento dei suoi limiti.swap_ab
– Scambia i pulsanti e nel report del joystick (consente la mappatura corretta dei pulsanti quando si utilizza un 3DS come controller per Steam, ecc..).swap_xy
– Scambia i pulsanti e nel report del joystick (consente la mappatura corretta dei pulsanti quando si utilizza un 3DS come controller per Steam, ecc..).
Changelog
- Aggiunte le opzioni di configurazione
swap_ab
eswap_xy
per consentire la mappatura dei nomi dei pulsanti su altri controller (XBOX, Dreamcast, ecc..). - Revisionato il codice base + fonte documentata per una più facile manutenibilità in futuro.
Download: netstick-3ds v5
Download: Source code netstick-3ds v5
Fonte: reddit.com
test