Salve a tutti, essendo un appassionato di videogames di simulazione mi sono comprato un volante da gioco(Logitech Driving Force GT) ma una cosa che mi dispiace è che non abbia il cambio ad H come il Logitech G27.
Ho pensato quindi di usare arduino per farmene uno utilizzando il joytick e con xpadder assegnargli diversi tasti della tastiera a seconda della posizione.
Lascio 2 video di riferimento:
Come risulterebbe il cambio : DIY H-Shifter PC - USB - YouTube
Come andrebbero assegnati i tasti alle varie posizioni: - YouTube
Il mio problema è che non ho la minima idea di come fare ammesso che si possa fare, ho iniziato da poco a programmare su arduino e quasi solo sulla domotica. Ricordo che uso Arduino UNO e non posso usare nessun'altra scheda.
Puoi utilizzare UnoJoy, ma dovrai riprogrammare l'ATmega16U2:
In quel modo la Uno potrà apparire come un Joystick USB al PC. Sarebbe decisamente più semplice usare una Leonardo o una (Pro) Micro, che hanno USB nativo, e con l'IDE 1.6.6, uscito ieri, che supporta il PluggableHID, sarebbe davvero un gioco da ragazzi.
di UnoJoy ne ho sentito parlare, una volta riprogrammato l'ATImega16u2 mi basterebbe caricarci uno sketch qualsiasi che lo faccia funzionare o devo usare la sua libreria e un codice diverso?
Se ti basta un coso così piccolo, può sicuramente andare.
Uno sketch qualsiasi? Direi di no... L'ATmega16U2 riprogrammato scambia comandi con lo sketch che carichi sul 328, per cui dovrai scrivere uno sketch che legge il tuo joystick e invia i comandi giusti all'U2, ma questo si fa semplicemente usando la "libreria" di UnoJoy.
Il 328 non gestisce direttamente l'USB. Quello che "parla" col PC quando ci colleghi Arduino è un altro chip. Sulla Uno dovrebbe essere un ATmega16U2, che è in realtà un microcontrollore più che degno, ma che su tali schede è normalmente programmato con un firmware che lo "declassa" a convertitore USB-Seriale.
Proprio perché è un microcontrollore più che degno, è un componente che ha un suo costo, per cui è spesso la prima cosa che viene sostituita sui cloni, dove il risparmio è imperativo. Al suo posto si usano altri chip, tipo il CH340G o l'FT232L (se ben ricordo), che sono più economici ma fanno comunque degnamente il lavoro di conversione USB-Seriale, sebbene non siano riprogrammabili.
UnoJoy funziona cambiando il firmware del 16U2 con uno che non lo fa più funzionare da USB-Seriale, ma da joystick. Se la tua scheda non ha tale chip, non puoi usare UnoJoy. Guarda cosa c'è montato, solitamente è un chip piccolo nelle vicinanze del connettore USB.
Se non va bene, le schede alternative, sempre Arduino, te le ho suggerite sopra.
aspetta...avevo confuso il 328 con l'u2 pensando fossero la stessa cosa invece no
comunque è un 16u2, ora mi resta da capire come porgrammarlo. Se voglio posso anche usare il sample che trovo nel pacchetto di unojoy con 2 analogici attaccati?
Ti invitiamo a presentarti (dicci quali conoscenze hai di elettronica e di programmazione) qui: Presentazioni
e a leggere il regolamento se non lo hai già fatto: Regolamento
Qui una serie di link utili, non inerenti al tuo problema: