Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

Come far riconoscere un dispositivo USB come keyboard

Tipologie, strumenti di sviluppo, hardware e progetti

Moderatore: Foto UtentePaolino

0
voti

[1] Come far riconoscere un dispositivo USB come keyboard

Messaggioda Foto UtentePes » 20 apr 2013, 11:55

Ciao a tutti, come dal titolo (sperando che sia comprensibile) sto cercando un metodo per far riconoscere un dispositivo USB collegato al PC come keyobard USB.

Per spiegarmi meglio, voglio costruire una tastiera USB, cosa devo fare per far capire al computer che il dispositivo collegato è una tastiera ? :D


Se potete darmi qualche informazione, link, input ecc ve ne sarei grato .. ho provato a googlare un po' ma non ho trovato nulla che facesse al caso mio


PS: ovviamente mi riferisco al fatto di costruirsi i "driver" attraverso un PIC, perché altrimenti ho già trovato dei moduli che fanno loro il lavoro, ma volevo essere io a programmare il PIC in modo da far riconscere il mio progetto come tastiera USB
Avatar utente
Foto UtentePes
10 2
 
Messaggi: 9
Iscritto il: 24 ago 2012, 15:56

2
voti

[2] Re: Come far riconoscere un dispositivo USB come keyboard

Messaggioda Foto UtenteTardoFreak » 20 apr 2013, 12:05

Devi utilizzare un microcontrollore con interfaccia USB ed implementare la classe HID (Human Interface Device).
Non è una passeggiata.
Alcuni sistemi di sviluppo per i microcontrollori PIC della Microchip (MikroC, MPLAB) hanno o le librerie già fatte (MicroC) oppure delle application funzionanti (MPLAB, MPLAB-X).
Ma anche sistemi di sviluppo per ARM come quello della IAR o della KEIL hanno del middleware già pronto ma non sono affatto semplici da utilizzare (non sono per hobbisti) e costano quanto un' automobile.
"La follia sta nel fare sempre la stessa cosa aspettandosi risultati diversi".
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
Avatar utente
Foto UtenteTardoFreak
73,9k 8 12 13
-EY Legend-
-EY Legend-
 
Messaggi: 15754
Iscritto il: 16 dic 2009, 11:10
Località: Torino - 3° pianeta del Sistema Solare

0
voti

[3] Re: Come far riconoscere un dispositivo USB come keyboard

Messaggioda Foto UtentePes » 20 apr 2013, 12:12

Capito,

proverò ad informarmi su come implemtare la classe HID, interessante il discorso delle librerie già pronte per il MikroC.

volevo "fare da me" per non spendere soldi in moduli già pronti e avere il controllo completo di quello che sto facendo (oltre al fatto che preferisco sempre arrangiarmi). Sto cercando di far riconoscere il mio joypad per lo SNES come tastiera USB in modo da poterlo collegare tranquillamente allo smartphone android per utilizzarlo con i vari emulatori :)

Ps: mi reputo un pelo di più che un semplice hobbista, ho studiato elettronica, sto studiando informatica e sono appassionato da sempre alle 2 cose. Se trovo qualcosa di interessate lo scriverò qua in modo che qualcun altro interessato trovi già del materiale

Grazie mille
Avatar utente
Foto UtentePes
10 2
 
Messaggi: 9
Iscritto il: 24 ago 2012, 15:56

1
voti

[4] Re: Come far riconoscere un dispositivo USB come keyboard

Messaggioda Foto UtenteTardoFreak » 20 apr 2013, 12:27

Per quel poco che ne so di Android, la sua USB non ha caratteristiche di HOST ne di OTG, quindi per collegare un qualsiasi dispositivo devi realizzare non un HID ma un HOST-OTG, e qui la cosa si complica.
Si complica perché non basta un micro delle balle ma bisogna prenderne uno che supporti almeno l' OTG e quindi si parla di PIC24, PIC32 o AT90USB1287 (ma in questo caso devi scriverti tutto il firmware da te).
Ovvio che queste pratiche non fanno risparmiare soldi, bisogna invece spenderne, ma sopratutto spendere decine se non centinaia di ore in programmazione.
E' fattibile, per carità, sopratutto se sai programmare bene in C ed hai dimestichezza con l' USB.
Se mi dici che non sei un neofita allora poi dare uno sguardo alla gamma dei PIC24, non ci sono librerie pronte ma ci sono applicativi belli pronti per gestire l' OTG (se non ricordo male per poterci collegare una pen-drive).
Sono abbastanza complessi e bisognerà modificare la classe.
"La follia sta nel fare sempre la stessa cosa aspettandosi risultati diversi".
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
Avatar utente
Foto UtenteTardoFreak
73,9k 8 12 13
-EY Legend-
-EY Legend-
 
Messaggi: 15754
Iscritto il: 16 dic 2009, 11:10
Località: Torino - 3° pianeta del Sistema Solare

0
voti

[5] Re: Come far riconoscere un dispositivo USB come keyboard

Messaggioda Foto UtentePes » 20 apr 2013, 13:26

No, da android 3.0 hanno implementato la possibilità di collegare device come tastiera e mouse USB nativamente (sempre che lo smartphone possieda l'USB host, gli ultimi dispositivi ce l'hanno quasi tutti come il mio galaxy S2) ho fatto delle prove collegando sia mouse sia tastiera USB direttamente al mio smartphone e le riconosce subito (compare pure il puntatore collegando il mouse :D ).


Quindi in teoria la faccenda non è così complicata, sono abbastanza pratico del C e della programmazione in generale. Però non ho mai avuto a che fare con la gestione dell'USB
Avatar utente
Foto UtentePes
10 2
 
Messaggi: 9
Iscritto il: 24 ago 2012, 15:56

0
voti

[6] Re: Come far riconoscere un dispositivo USB come keyboard

Messaggioda Foto UtenteTardoFreak » 20 apr 2013, 14:10

Allora non avrai problemi. :ok:
"La follia sta nel fare sempre la stessa cosa aspettandosi risultati diversi".
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
Avatar utente
Foto UtenteTardoFreak
73,9k 8 12 13
-EY Legend-
-EY Legend-
 
Messaggi: 15754
Iscritto il: 16 dic 2009, 11:10
Località: Torino - 3° pianeta del Sistema Solare

1
voti

[7] Re: Come far riconoscere un dispositivo USB come keyboard

Messaggioda Foto UtentePes » 20 apr 2013, 17:12

Se a qualcuno interessa QUI ci sono un bel po' di informazioni utili.

Appena sperimento qualcosa, scriverò qui
Avatar utente
Foto UtentePes
10 2
 
Messaggi: 9
Iscritto il: 24 ago 2012, 15:56

1
voti

[8] Re: Come far riconoscere un dispositivo USB come keyboard

Messaggioda Foto Utentebobina » 22 apr 2013, 20:51

Su questa pagina c'è un esempio, che usa un PIC18F2550 per emulare una tastiera ed un mouse contemporanemente. L'obiettivo dell'autore è scherzoso ma nulla vieta di modificare i sorgenti ed emulare solo una tastiera e fargli fare quello che vuoi.
Inoltre se usi un PIC con controller USB la microchip mette a disposizione degli esempi nella Libraries for Application, proprio per emulare un mouse o una tastiera, oppure una semplice periferica hid che scambia informazioni con un eseguibile che gira sul PC.
Avatar utente
Foto Utentebobina
212 6
Frequentatore
Frequentatore
 
Messaggi: 177
Iscritto il: 27 dic 2009, 14:22


Torna a Realizzazioni, interfacciamento e nozioni generali.

Chi c’è in linea

Visitano il forum: Nessuno e 12 ospiti

cron