Menù principale
 Notizie
 Grafica
 Forum
 Links
 Retro Trailer
 Recensioni
 Modelli Amiga
 Storia Amiga
 Retro-Gamers
 Lista Utenti
 Contatti
 Policy sito
Ricerca Google

Login

Nick


Password


10 Novembre 2018 Postato da: sampedenawa
HID2AMI - ADATTATORE UNIVERSALE PER MOUSE/JOYSTICK/JOYPAD
Immagine

(logo by Oge)



Per vedere la compatibility list, le istruzioni sull'utilizzo, e molto altro:

https://github.com/EmberHeavyIndustries/HID2AMI



In fondo al post le immagini della scheda completa e qualche filmatino (di pessima qualità) che mostra il funzionamento.

------------------------------


-- Cosa è:

HID2AMI è un adattatore che permette di utilizzare qualsiasi mouse usb sui nostri Amiga (supporta sia i mouse PS2 che i mouse HID).

A partire dal firmware 1.2.0 HID2AMI permette di collegare ed utilizzare con Amiga (quasi) qualsiasi joypad/gamepad HID .

Il convertitore nasce dal concetto base dello "Smallymouse", reingegnerizzando il progetto per utilizzare componenti del costo di quasi dieci volte inferiore ed aggiornati alle tecnologie più recenti.


-- Come funziona (in breve):

HID2AMI riconosce, inizializza e gestisce qualsiasi dispositio HID collegato alla sua porta USB; nel caso del mouse inizia poi ad acquisire le informazioni di movimento e pressione dei pulsanti, convertendole nelle 4 forme d'onda in quadratura che simulano le uscite digitali degli originali mouse Amiga.
Nel caso dei gamepad, HID2AMI interroga il dispositivo scoprendone mappatura e caratteristiche; assegna poi i tasti del gamepad ai due tasti joy Amiga e converte gli input direzionali nei corrispondenti input del joy Amiga.

-- A che punto è lo sviluppo dell'adattatore ?

La versione 1.1.0 del pcb, sia in versione DeLuxe è "in produzione".


-- Chi ha sviluppato HID2AMI ?

HID2AMI è un progetto di Sampedenawa, nato da una serie di discussioni, preziosi suggerimenti ed incoraggiamenti degli utenti di questo forum, in particolare Sukkopera e Majinga

->Continua<-

Commenti: 285  Aggiungi - Pagine: 1...-11-12-13-14-15

Indice: forum / Hardware Amiga in generale

Pagine: -1-2-3-4- [5] -6-7-8-9-10-11-12-13-14-15-

Post inviati: 771

Visulizza profilo Messaggio Personale
151.16.13.*** Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0
Commento 81
sampedenawa 6 Dicembre 2018    17:28:58
Citazione
Majinga wrote:
La gestione degli analogici mi intriga. Per cosa li vuoi usare?



In un futuro molto remoto, si potrebbe sperimentare di usarli per emulare i POT analogici (ammesso che esista qualche software che li abbia mai supportati per qualcosa).

PS: lo sai, vero, che come possessore dell'unico altro prototipo dell' HID2AMI esistente al mondo, sarai arruolato nel weekend per fare il betatest del nuovo firmware ?

Commento modificato il 06/12/2018 alle ore 17:33:26

Post inviati: 771

Visulizza profilo Messaggio Personale
151.16.13.*** Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0
Commento 82
sampedenawa 6 Dicembre 2018    17:30:49
Citazione

guardate gli schemi del pad del cd32 come gestisce i vari tasti



Giusto !
Ma perchè le sai sempre tutte ?

Post inviati: 1588

Visulizza profilo Messaggio Personale
79.44.13.*** Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:63.0) Gecko/20100101 Firefox/63.0
Commento 83
majinga 6 Dicembre 2018    17:36:54
Citazione


In un futuro molto remoto, si potrebbe sperimentare di usarli per emulare i POT analogici (ammesso che esista qualche software che li abbia mai supportati per qualcosa).

PS: lo sai, vero, che come possessore dell'unico altro prototipo dell' HID2AMI esistente al mondo, sarai arruolato nel weekend per fare il betatest del nuovo firmware ?



in realtà ci speravo. Ho dei pad wireless, a coppia, nel senso che un adattatore ne gestisce due, che dici, la cosa può causare problemi?

Post inviati: 771

Visulizza profilo Messaggio Personale
151.16.13.*** Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0
Commento 84
sampedenawa 6 Dicembre 2018    20:10:27
Citazione

Citazione


In un futuro molto remoto, si potrebbe sperimentare di usarli per emulare i POT analogici (ammesso che esista qualche software che li abbia mai supportati per qualcosa).

PS: lo sai, vero, che come possessore dell'unico altro prototipo dell' HID2AMI esistente al mondo, sarai arruolato nel weekend per fare il betatest del nuovo firmware ?



in realtà ci speravo. Ho dei pad wireless, a coppia, nel senso che un adattatore ne gestisce due, che dici, la cosa può causare problemi?




Non credo ... ma siamo nello sperimentale !
Intanto mi interessa capire se tutti i pad HID si presentano con gli stessi config descriptor e interface descriptor, oppure se bisognerà implementare qualche discovery più sofisticato.
Il protocollo USB non è proprio quello che si dice un esempio di chiarezza e semplicità...

Quindi se me lo provi con i tuoi pad e funziona ... siamo un passo avanti !
Vedo se riesco nel weekend ad assemblare un firmware decoroso anche dal punto di vista dell'architettura interna, faccio un pò di test e ti mando il pacchetto.

Post inviati: 771

Visulizza profilo Messaggio Personale
212.124.163.*** Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0
Commento 85
sampedenawa 8 Dicembre 2018    18:43:19
Test del sabato: ho provato un Logitech Wingman rumble e.... mappa gli assi ed i pulsanti in maniera differente dal Trustmaster ...

Ok.. ho studiato un pò e ho capito che devo imlpementare una decodifica del cosiddetto "report descriptor", che ogni device USB invia all'host secondo un certo protocollo, per dichiarare le sue "capabilities".

Il problema è che quello dei mouse è molto facile ed uguale per tutti i mouse .. quello dei gamepad è decisamente più complesso (es. quello del Thrustmaster sono 108 bytes ..).

Insomma, niente di concettualemente complicato, ma ci vorrà un pò di tempo (ma almeno a questo punto avremo la possibilità di connettere QUALSIASI gamepad ed il convertitore si autoconfigurerà sulle caratteristiche della periferica).

.... partiti dal nulla, stiamo creando un oggetto monstre .....

Commento modificato il 10/12/2018 alle ore 12:42:00

Post inviati: 771

Visulizza profilo Messaggio Personale
151.16.2.*** Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0
Commento 86
sampedenawa 10 Dicembre 2018    15:21:14
Progess report: decodificato il primo HID Report Descriptor (quello del trustmater).
Per i feticisti, è fatto così:

0x05, 0x01, // Usage Page (Generic Desktop Ctrls)
0x09, 0x05, // Usage (Game Pad)
0xA1, 0x01, // Collection (Application)
0x05, 0x01, // Usage Page (Generic Desktop Ctrls)
0x09, 0x01, // Usage (Pointer)
0xA1, 0x00, // Collection (Physical)
0x05, 0x09, // Usage Page (Button)
0x19, 0x01, // Usage Minimum (0x01)
0x29, 0x0C, // Usage Maximum (0x0C)
0x15, 0x00, // Logical Minimum (0)
0x25, 0x01, // Logical Maximum (1)
0x75, 0x01, // Report Size (1)
0x95, 0x0C, // Report Count (12)
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
0x75, 0x08, // Report Size (8)
0x95, 0x01, // Report Count (1)
0x81, 0x01, // Input (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position)
0x05, 0x01, // Usage Page (Generic Desktop Ctrls)
0x09, 0x39, // Usage (Hat switch)
0x25, 0x07, // Logical Maximum (7)
0x35, 0x00, // Physical Minimum (0)
0x46, 0x0E, 0x01, // Physical Maximum (270)
0x66, 0x40, 0x00, // Unit (Length: Degrees)
0x75, 0x04, // Report Size (4)
0x81, 0x42, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,Null State)
0x09, 0x30, // Usage (X)
0x09, 0x31, // Usage (Y)
0x15, 0x80, // Logical Minimum (-128)
0x25, 0x7F, // Logical Maximum (127)
0x46, 0xFF, 0x00, // Physical Maximum (255)
0x66, 0x00, 0x00, // Unit (None)
0x75, 0x08, // Report Size (8)
0x95, 0x02, // Report Count (2)
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
0x09, 0x35, // Usage (Rz)
0x95, 0x01, // Report Count (1)
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
0x09, 0x36, // Usage (Slider)
0x16, 0x00, 0x00, // Logical Minimum (0)
0x26, 0xFF, 0x00, // Logical Maximum (255)
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
0x09, 0xBB, // Usage (0xBB)
0x15, 0x35, // Logical Minimum (53)
0x00, // Unknown (bTag: 0x00, bType: 0x00)
0x00, // Unknown (bTag: 0x00, bType: 0x00)
0x26, 0xFF, 0x00, // Logical Maximum (255)
0x35, 0x00, // Physical Minimum (0)
0x46, 0xFF, 0x00, // Physical Maximum (255)
0x75, 0x08, // Report Size (8)
0x95, 0x04, // Report Count (4)
0x91, 0x02, // Output (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile)

// 108 bytes


Azzz....

Temibile Pirata

Post inviati: 2144

Visulizza profilo Messaggio Personale
151.91.34.*** Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0
Commento 87
SukkoPera 10 Dicembre 2018    15:25:52
Sì, avevo visto una roba del genere nella libreria Joystick di Arduino Leonardo.

Se non ricordo male, ci sono 2 forme del report: una più semplice ma limitata, e una più complessa ma più flessibile. Forse però mi confondo con qualcos'altro!

I miei progetti Retrogaming

Post inviati: 762

Visulizza profilo Messaggio Personale
151.95.136.*** Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0
Commento 88
RoC 10 Dicembre 2018    18:42:22
Bel progetto e mi prenoto sin da ora per prenderne una.

Sto cercando un adattatore per usare joystick e joypad USB sui miei amiga. Ho preso sia il Rys che Tom2, ma entrambi sono compatibili solo con pochi (e purtroppo i più scarsi) joypad e joystick.

Per capirsi, li ho provati su Sega Virtual Stick high grade, UltimArc, Dual Shock II, SNES con adattatore USB ed infine il solito scrauso SNES-compatibile.

Purtroppo entrambi sono compatibili con il NES-compatibile. Solo il Tom2 funziona anche con il SNES con adattatore..

Non menziono il migliore di tutti, XBox Elite, perchè da quel che capisco funziona solo su macchine windows, oltre ovviamente alla Xbox.

Post inviati: 771

Visulizza profilo Messaggio Personale
151.16.2.*** Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0
Commento 89
sampedenawa 10 Dicembre 2018    20:53:21
Citazione

Bel progetto e mi prenoto sin da ora per prenderne una.

Sto cercando un adattatore per usare joystick e joypad USB sui miei amiga. Ho preso sia il Rys che Tom2, ma entrambi sono compatibili solo con pochi (e purtroppo i più scarsi) joypad e joystick.

Per capirsi, li ho provati su Sega Virtual Stick high grade, UltimArc, Dual Shock II, SNES con adattatore USB ed infine il solito scrauso SNES-compatibile.

Purtroppo entrambi sono compatibili con il NES-compatibile. Solo il Tom2 funziona anche con il SNES con adattatore..

Non menziono il migliore di tutti, XBox Elite, perchè da quel che capisco funziona solo su macchine windows, oltre ovviamente alla Xbox.





Immagino che sia perchè gli sviluppatori non si sono sbattuti a decodificare gli HID Report come sto facendo io, ma piuttosto hanno scelto la via più comoda di mappare qualche joy/pad sniffando il protocollo (cosa che ho fatto anche io per iniziare a capirci qualcosa).
Ma qui siamo dei puristi ..

Post inviati: 771

Visulizza profilo Messaggio Personale
151.16.2.*** Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0
Commento 90
sampedenawa 11 Dicembre 2018    17:30:20
Signori ... diario di sviluppo della giornata: mappatura dinamica dei pulsanti di QUALSIASI gamepad implementata e funzionanteeeeeeeeeeeeeeeeeee !!!!

Sono già pronte anche le strutture per mappare gli assi .. oramai è solo questione di poche altre sessioni di programmazioneeeeee!

(malcelato entusiamo autoreferente)

Commento modificato il 11/12/2018 alle ore 23:31:59

Temibile Pirata

Post inviati: 2144

Visulizza profilo Messaggio Personale
151.91.34.*** Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0
Commento 91
SukkoPera 11 Dicembre 2018    17:36:56


Io nel frattempo mi sto "divertendo" con il Verilog...

Commento modificato il 11/12/2018 alle ore 17:37:37


I miei progetti Retrogaming

Post inviati: 4134

Visulizza profilo Messaggio Personale
79.10.159.*** Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Firefox/52.0
Commento 92
Mck 11 Dicembre 2018    17:45:59
Complimenti sampedenawa.

I MIEI AMIGA

4000T OS 3.9 PPC/68060 + CyberVisio 64/3D + HD 20g + DVD - 4000D in Tower OS 3.9 PPC/68060 Ram 128M + ram scheda 2+16M + zip 100M + Ide HD 40G + usb Deneb + V-Lab + Toccata + Mediator con: Woodoo 3 + Scheda rete + Impact Vision 24 - 4000D OS 3.9 68060 ram 32m + ram scheda 2+16M + HD 20g + zip 100 ide + DVD + V-lab + Seriale veloce + Scheda video EGS- 3000T OS 3.9 PPC/68060 128M + HD scsi 10G + Usb Deneb + CD sCSI + mediator con: scheda rete + controllo SCSI Adaptec + scheda audio + Voodoo 5 - 3000 OS 3.1 68040 + emulatore pc 286 - 2000 processore 68030 + genlock + espansione ram + emulatore pc 8080 - 1200 Tower OS 3.9 PPC/68060 + HD 20G + Mediator con: scheda rete - 1200 OS 3.1 68060 + HD 20G + Scheda rete pcmcia - 1000 espansione Ram 4M - 600 con espansione ram + HD5G - 500 Plus con espansione ram - 500 con espansione ram - CDTV - CD32

CLONI AMIGA

Sam440ep-Flex OS 4.1 - EFIKA MorphOS 2.6

Post inviati: 1588

Visulizza profilo Messaggio Personale
79.41.38.*** Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:63.0) Gecko/20100101 Firefox/63.0
Commento 93
majinga 11 Dicembre 2018    21:16:24
Complimenti veramente, ci stai mettendo davvero tanto impegno in questo progetto.

Post inviati: 2650

Visulizza profilo Messaggio Personale
95.250.200.*** Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36
Commento 94
Kyle 11 Dicembre 2018    23:13:17
Bravo!

Post inviati: 771

Visulizza profilo Messaggio Personale
151.16.28.*** Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0
Commento 95
sampedenawa 11 Dicembre 2018    23:29:18
Grassie, grassie.. vedo che il progetto interessa, e questo sprona a migliorarlo di continuo.
Salvo sorprese, conto entro il weekend di avere un firmware con la gestione completa dei gamepad.
Se poi arrivassero anche i pcb (ci siamo quasi) e funzionassero pure ...... ci si diverte per Natale !


Già che ci siamo, datemi un parere: al momento faccio mappare al firmware i pulsanti che trova sul gamepad alternativamente su "pulsante1" e "pulsante2" di Amiga (per intenderci .. se il pad ha 6 pulsanti, mappo 1-3-5 su Amiga1 e 2-4-6 su Amiga2.
Questo perchè a priori non posso sapere nè quanti pulsanti ogni diverso pad avrà, nè come saranno disposti fisicamente .. per cui mappandoli "un pò di qui ed un pò di là" ognuno dovrebbe trovare la disposizione delle dita di suo gusto.

Qualcuna ha qualche idea migliore ? Siamo in tempo !

Commento modificato il 11/12/2018 alle ore 23:50:07

Temibile Pirata

Post inviati: 2144

Visulizza profilo Messaggio Personale
62.11.180.*** Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.80 Safari/537.36
Commento 96
SukkoPera 12 Dicembre 2018    00:00:10
Sarebbe bella una funzione di apprendimento:
- accendi l'aggeggio tenendo premuto un pulsante
- lampeggia un led per farti capire che è entrato in questa modalità
- premi i pulsanti nell'ordine che preferisci
- ad ogni pressione c'è un lampeggio più rapido per segnalare che si passa al prossimo pulsante
- alla fine il tutto viene salvato e non più richiesto finché non si riavvia con un pulsante

Inoltre si entra in tale modalità alla prima accensione e, alle successive, se non si preme un tasto entro 10 secondi si va in modalità normale senza salvare.

Commento modificato il 12/12/2018 alle ore 00:00:35


I miei progetti Retrogaming

Post inviati: 762

Visulizza profilo Messaggio Personale
151.95.143.*** Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:64.0) Gecko/20100101 Firefox/64.0
Commento 97
RoC 12 Dicembre 2018    18:13:28
Citazione


Immagino che sia perchè gli sviluppatori non si sono sbattuti a decodificare gli HID Report come sto facendo io, ma piuttosto hanno scelto la via più comoda di mappare qualche joy/pad sniffando il protocollo (cosa che ho fatto anche io per iniziare a capirci qualcosa).
Ma qui siamo dei puristi ..




Che dire, mitico!

Hai centrato il problema. Tante potenzialità, ma poi non funziona nulla che valga la pena.

Il tuo progetto promette quello che veramente serve.

Post inviati: 771

Visulizza profilo Messaggio Personale
78.134.22.*** Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:64.0) Gecko/20100101 Firefox/64.0
Commento 98
sampedenawa 15 Dicembre 2018    22:14:41
Grandi novità

Date un'occhiata al primo post che ho aggiornato .......

Commento modificato il 15/12/2018 alle ore 23:30:40

Post inviati: 1588

Visulizza profilo Messaggio Personale
79.16.61.*** Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:64.0) Gecko/20100101 Firefox/64.0
Commento 99
majinga 15 Dicembre 2018    23:48:25
Grande. Io avevo iniziato a prendere i componenti ho quasi tutto, mi mancano gli STM32F105

Post inviati: 771

Visulizza profilo Messaggio Personale
78.134.22.*** Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:64.0) Gecko/20100101 Firefox/64.0
Commento 100
sampedenawa 16 Dicembre 2018    09:08:55
Citazione

Grande. Io avevo iniziato a prendere i componenti ho quasi tutto, mi mancano gli STM32F105



In settimana ci sentiamo .....

Pagine: -1-2-3-4- [5] -6-7-8-9-10-11-12-13-14-15-

Utenti Online
Utenti registrati: 1206 dal 1 Gennaio 2006
di cui online: 1 registrati - braian -
112 non registrati

Benvenuto all'ultimo utente registrato: zulu

Buon Compleanno a Yuppis Revange - jpp - pocketclouds - 

© Amigapage 1998 - 2007 - Sito italiano dedicato alla piattaforma Amiga ed evoluzioni varie.
Struttura del sito interamente ideata e realizzata da Marco Lovera e Alessandra Lovera - Tutto il materiale inserito all'interno del sito è dei rispettivi autori/creatori.
E' assolutamente vietata la riproduzione o la manipolazione di tutti i contenuti o parte di essi senza l'esplicito consenso degli amministratori e degli autori/creatori.

Eseguito in 0.12169909477234 secondi