# [APORTE] Joystick USB (6 ejes - 32 Botones - Hat Switch) + PCB & Firmware.



## Ericktronik (Feb 5, 2012)

*--- Edit por Chico3001 ---
Circuito Original
http://www.xtremeracers.info/forums/viewtopic.php?p=118396#p118396

---------------------------*

Tras buscar mucho por la red y trabajar en una tarjeta para simuladores y video juegos, hoy traigo para todos ustedes una tarjeta que permite conectar 6 ejes, 32 botones (todos con actuacion individual) y un hat switch(maximo 8 posiciones). Posteo dos versiones, la version total que contiene la matriz de botones para una facil instalacion; y la version compacta que solo contiene los ejes y conecciones de columnas para poder crear la matriz(con su respectiva aclaracion de como hacer la matriz).


Como un ejemplo en donde puede ser usada esta tarjeta:

Un simulador de conduccion donde usamos minimo 4 ejes y algunos botones(recomiendo Live for Speed para PC).
Eje 1 = Volante
Eje 2 = Acelerador
Eje 3 = Freno
Eje 4 = Embrague
Eje 5 = Freno de mano(opcional, aunque mejora el realismo)

Boton 1 = Encendido del motor
Boton 2 = Claxon
Boton 3 = Marcha neutral
Boton 4 = Marcha 1
Boton 5 = Marcha 2
Boton 6 = Marcha 3(si se usa secuencial = Marcha Arriba)
Boton 7 = Marcha 4(si se usa secuencial = Marcha Abajo)
Boton 8 = Marcha 5
Boton 9 = Marcha 6
Boton 10 = Marcha Reversa
Boton 11 = Luces Altas
Boton 12 = Direccional Izq
Boton 13 = Direccional Der
Boton 14 = Luces de emergencia(estacionarias o de aviso)
etc...

El Hat Switch es opcional dependiendo a que consola se conecte la tarjeta o con que simulador o juego este funcionando.

Aca una imagen del Joystick funcionando:


otra imagen de la simulacion y como queda:






otra imagen de la simulacion y como queda la tarjeta compacta:







> En los PDFs que adjunto esta toda la informacion con respecto a las tarjetas [PCBs(normales y espejo), listado de materiales y tips de construccion] total y compacta.
> 
> En el archivo .rar esta el firmware para el PIC 18F2550.



Este es mi primer aporte, creo que es algo muy bueno; porfavor comenten y suban sus fotos del joystick armado.

Nota: no subo fotos de mi tarjeta armada porque ya esta dentro del timon que arme y es muy dificil destaparlo.

Gracias y saludos.


----------



## DJ T3 (Feb 5, 2012)

Está muy bueno, pero creo que tendrías que poner un esquema teórico, y alguna sugerencia de conexiones, porque no entendí cual es cual...

Saludos....


----------



## J2C (Feb 5, 2012)

Habra que hacer la "Ingenieria Inversa".



Saludos, JuanKa.-


----------



## fernandoae (Feb 5, 2012)

Es un buen aporte, pero como dijo el compañero deberias subir el esquematico, ya que no todos desean implementar todos los botones o todos los ejes y sacar el esquema desde las fotos es medio complejo.
De paso tambien si lo deseàs podès compartir el codigo fuente.

Saludos


----------



## chapin (Feb 6, 2012)

una pregunta, que lenguaje empleaste para hacer este joystick , solo curiosidad. gracias por el aporte voy a tratar de armarlo y te comento


----------



## Ericktronik (Feb 6, 2012)

chapin dijo:


> una pregunta, que lenguaje empleaste para hacer este joystick



Utilice lenguaje C.
y de mi parte, muchas malas palabras(hasta que funciono)


----------



## DJ T3 (Feb 7, 2012)

Como dijo fernadoae


> De paso tambien si lo deseàs podès compartir el codigo fuente.



Sería interesante por si no consiguen el mismo PIC, o si ya tienen otro, y no hay ganas de comprar el que va...

Saludos...

Buen aporte...


----------



## Ericktronik (Feb 7, 2012)

En caso de no usar el PIC 18F2550 tambien pueden usar el PIC 18F2455.
pero recomiendo el PC 18F2550
a mi me funciono perfecto con ese.


----------



## Ericktronik (Feb 10, 2012)

aca unas fotos nuevas de otra placa que estoy haciendo para otro timón.


----------



## Sinkins (Feb 12, 2012)

cres que puedas subir el codigo fuente del pic no el hex si no el .c y un diagrama del circuito. Gracias


----------



## Ericktronik (Feb 12, 2012)

Sinkins dijo:


> cres que puedas subir el codigo fuente del pic no el hex si no el .c y un diagrama del circuito. Gracias



Lamento decirte que no publicare el codigo fuente, es de uso privado.
El PIC-C traduce de .hex a C(aunque nunca lo he hecho).

No publico el diagrama ya que publique dos versiones de la tarjeta.


----------



## Ericktronik (Feb 13, 2012)

avance de la nueva tarjeta.


----------



## fernandoae (Feb 16, 2012)

Todo muy lindo pero no tengo cristal de 20mhz... me lo compilas para uno de 4mhz?


----------



## Ericktronik (Feb 16, 2012)

fernandoae dijo:


> Todo muy lindo pero no tengo cristal de 20mhz... me lo compilas para uno de 4mhz?



Puedes comprar cristal de 20...


----------



## fernandoae (Feb 17, 2012)

No consigo de 20Mhz...  ya que no vas a compartir el codigo fuente deberias subir varias versiones para diferentes cristales 
Igual estuve leyendo y ya tengo algo funcionando, por lo menos me lo detecta con todos los ejes y todos los botones... me faltan algunos detalles pero ya casi está.


----------



## DJ T3 (Feb 17, 2012)

Ericktronik dijo:


> Lamento decirte que no publicare el codigo fuente, es de uso privado.
> El PIC-C traduce de .hex a C(aunque nunca lo he hecho).
> 
> No publico el diagrama ya que publique dos versiones de la tarjeta.



*Es solo una opinión, no lo tomes a mal...​*
Disculpame, pero no me parece justo que no publiques, aunque sea el diagrama (puedes poner "Diagrama 1.0", y "Diagrama 2.0", por ejemplo...), como ya te dije más arriba, hay gente que NO va a usar TODOS los botones y ejes, así que con el diagrama puede modificarlo a su antojo, y adaptarlo a sus necesidades... (aparte de saber para qué sirva cada cosa)...

Con respecto al código fuente, no es problema, sino lamentable, ya que hay gente que podría mejorar el mismo haciéndolo mas eficiente (OJO, no dudo de su eficiencia)... Pero si dices que es de uso *privado*, no entiendo cuál es el uso privado, si publicas el .hex...

*Solo es una opinión...*​


----------



## fernandoae (Feb 17, 2012)

Opinamos lo mismo... igual sacar el esquema del pcb no es dificil... despues veo si lo hago. Necesito tiempo nomàs.
Yo estoy peleando un poquito con el Proton IDE, ya me lo detecta y todo pero no me envia los datos a la pc, debe ser alguna pavada que en cuanto la solucione y tenga todo funcionando lo subo... y de paso capaz que hasta les explico un poco como crear un descriptor para personalizarlo a gusto


----------



## DJ T3 (Feb 18, 2012)

fernandoae dijo:


> Opinamos lo mismo... igual sacar el esquema del pcb no es dificil... despues veo si lo hago. Necesito tiempo nomàs.
> Yo estoy peleando un poquito con el Proton IDE, ya me lo detecta y todo pero no me envia los datos a la pc, debe ser alguna pavada que en cuanto la solucione y tenga todo funcionando lo subo... y de paso capaz que hasta les explico un poco como crear un descriptor para personalizarlo a gusto



Menos mal que no soy el único......

¿Conseguiste el cristal de 20Mhz, o modificaste el firmware... ?

En la espera del progreso de fernandoae...


----------



## Meta (Feb 18, 2012)

Hola:

Doy por hecho qu esabes manejar el USB.

Si te propones hacer cosas como estas indicada abajo, ¿te sientes capaz de hacerlo?

PIC18F4550
8 Entradas digitales
8 Salidas digitales
1 Entrada analógica o las que se puedan.
1 LCD 20x4

¿Lo vez fácil o complicado?

Aún no me he metido al mundo de los USB. Antes de ello, empezaré hacerlo poco después de que me llegue en una semana una DemoBoard. Desde el 2008 era casi imposible saber de USB, apenas había tutoriales que se entendiera, ahora en el 2012 habrá más, y Moyano tiene uno pero con problemas a Windows 64 bits pero en el 32 bits va de perlas.

Un cordial saludo.


----------



## Ericktronik (Feb 18, 2012)

Meta dijo:


> Hola:
> 
> Doy por hecho qu esabes manejar el USB.
> 
> ...



las entradas y salidas tanto analogicas como digitales no son problema, pero todavia no tengo experiencia con una LCD de 20x4 ni una libreria que la controle.
para la comunicacion USB es muy facil aunque no paresca, hay demaciados tutoriales en la red(hay aprendi yo), en la universidad trabaje con el famoso 877 pero el rs-232 no me parece tan bueno.


----------



## Meta (Feb 18, 2012)

Hola:

¿Usas el C18 oel CCS?

El RS232 es anticuado  y lento. Aún así, muchas industrias lo usan. Es mejor que el USB una sóla cosa, el problemas de ruidos en zonas industriales, no les afecta como si los USB.

Con el tiempo aparecerán USB 3.0 en los PIC, espero que no sea otro mundo de programarlo y menos complicado.

El tema del LCD es más fácil de lo que crees, ejjejej, ya verás.

Gracias por responder campeón.


----------



## fernandoae (Feb 18, 2012)

Meta estudia el tema con Google, vas a ver que no es nada dificil después que entendes los conceptos basicos, como el tema de los descriptores, los endpoint, clases... etc. 
Yo en dos dias de lectura ya consegui hacer mi propio gamepad con 10 analogicos, 32 botones y hat switch, la parte del pic la programé en Proton...
Aunque se vaya un poco del tema, estás armando una placa de adquisicón usb? 
Para que la necesitas con lcd? porque si buscas lcd usb backpack ya esta hecho.


----------



## Ericktronik (Feb 18, 2012)

Meta dijo:


> Hola:
> 
> ¿Usas el C18 oel CCS?
> 
> ...



Uso CCS, espero tener oportunidad de trabajar con una LDC asi, solo he practicado con una 16x2.





fernandoae dijo:


> Yo en dos dias de lectura ya consegui hacer mi propio gamepad con 10 analogicos, 32 botones y hat switch, la parte del pic la programé en Proton...



con respecto las 10 analogas, tienes que crear un software o alguna interfaz; ya que windows no reconoce un gamepad o joystick con mas de 6 entradas analogicas(en 10bits) ó 8 (en 12 y 16 bits).
por si quieres intentar con mas de 32 botones tienes que usar el UVmaper(creo que se llama asi), porque windows tampoco reconoce gamepads o joysticks con mas de 32 botones.


----------



## fernandoae (Feb 18, 2012)

Lo de los 32 botones lo sabia, lo que me suena raro es lo que me comentàs de los analogicos... No me cierra que:
10 bits = maximo 6
12 y 16 bits= maximo 8
O sea que si uso 24 bits meto diez? jaja 
En 8 bits hay limite? yo lo estoy probando con 8 canales de 8 bits y funcionaron todos, mas adelante voy a editar el descriptor.


----------



## Ericktronik (Feb 18, 2012)

fernandoae dijo:


> Lo de los 32 botones lo sabia, lo que me suena raro es lo que me comentàs de los analogicos... No me cierra que:
> 10 bits = maximo 6
> 12 y 16 bits= maximo 8
> O sea que si uso 24 bits meto diez? jaja
> En 8 bits hay limite? yo lo estoy probando con 8 canales de 8 bits y funcionaron todos, mas adelante voy a editar el descriptor.



lo que pasa es que los PICs que tienen resolucion a/d de 12 y 16 bits son muy caros y son de superficie(lamentable), la resolucion de 10 bits es la recomendable, si usas 8bits entre paso y paso hay una brecha grande(si lo vas a usar para un simulador).

por ejemplo, los volantes logitech G25/27 utilizan recolucion de 16bits y los momo de 12 bits con micro controladodes de superficie, por eso la conduccion es muy real.

ojala se pudiera usar una resolucion de 24bits, esperar que Microchip saque un DSPIC con esas caracteristicas y que maneje USB


----------



## fernandoae (Feb 18, 2012)

Mas allá de los precios, por que decis que no se puede hacer un gamepad de 10 canales de 10 bits? cuales son las limitaciones?


----------



## Ericktronik (Feb 18, 2012)

fernandoae dijo:


> Mas allá de los precios, por que decis que no se puede hacer un gamepad de 10 canales de 10 bits? cuales son las limitaciones?



de hacerse, se puede hacer.
el problema es windows...
el no reconoce gamepads de mas de 8 ejes.
necesitarias algun tipo de software que te lea las 10 entradas.


----------



## chapin (Feb 18, 2012)

Fernadoae seria posible que compartieras por lo menos una parte de el codigo realizado en proton para que los que no tenemos experiecia con usb tratemos de entender el concepto el cual tu ya manejas gracias


----------



## fernandoae (Feb 18, 2012)

Lo prometido es deuda, acá terminé de subir el video.
En cuanto acomode un poco las cosas subo todo.


----------



## Meta (Feb 19, 2012)

Buenísimo, cuando empecé con el foro en el 2008, practicamente nadie sabía manejar los USB con el 18F, y mira ahora, jejejej.


----------



## ragaman (Feb 19, 2012)

interesante proyecto, se les tiene en cuenta esos aportes , seria bueno compartieron el codigo.


----------



## Meta (Feb 19, 2012)

Ahora mismo lo comparte, ejejjjjee.

No se que pasa, desde hace tiempo es difícil que compartan códigos basados en USB. Eso si, cada vez y con el tiempo, lo terminan haciendo.

Cosas que pasan.


----------



## fernandoae (Feb 19, 2012)

Eso depende de cada uno, yo por ejemplo comparto cualquier proyecto por mas pequeño que sea, tengo esa filosofía.
Esto es lo que tengo hecho, usenlo a gusto... lo unico que les pido es que citen al autor por si alguien me quiere contactar o cosas asi 
El código está hecho para un pic 18F2550 con cristal a 4Mhz que es el más común y seguro que todos tienen uno, si lo quieren para otro modelo de pic es sencillo de hacer en Proton.
En el ejemplo estan implementados un par de ejes solamente ya que es una prueba, pero cada uno que lo adapte a sus necesidades...


----------



## fernandoae (Feb 20, 2012)

Ningun comentario? dudas? sugerencias?


----------



## Meta (Feb 20, 2012)

Hola:

Pusiste un hex sin un proteus. 

Saludo.


----------



## fernandoae (Feb 20, 2012)

Ah es que practicamente ni uso los simuladores, por ahi me ha pasado que las simulaciones fallan y en la realidad no tengo problemas, por eso, prefiero la realidad 
Igual ese hex usa AN0-3 para los ejes y hace titilar un led para mostrar que el dispositivo fuè enumerado correctamente.
Cada uno que lo modifique a gusto, es sencillo programar en Protón... y el código está bien comentado.
BOTONES= valor de 0 a 255
EJES= valores de -127 hasta 127
POV= 0 a 4

Erick, como podés hacer lo de las salidas digitales con hid? que tenés que usar en el descriptor? se podrá hacer un dispositivo compuesto que sea gamepad y a su vez me de algunas salidas? para un simulador estaria bueno para hacer algo como lo que hice acá para las rpm's por puerto paralelo:


----------



## Ericktronik (Feb 20, 2012)

fernandoae dijo:


> Erick, como podés hacer lo de las salidas digitales con hid? que tenés que usar en el descriptor? se podrá hacer un dispositivo compuesto que sea gamepad y a su vez me de algunas salidas? para un simulador estaria bueno para hacer algo como lo que hice acá para las rpm's por puerto paralelo



Bueno fernandoae...
aunque se ve muy lindo el hecho que obtengas los RPMs por medio de leds, estoy tratando de hacer algo (tambien por USB) para que por medio de unos servomotores muevan las manecillas de algun tacometro. pero todavia no me sale nada...
aunque en http://www.xtremeracers.info/forums/viewtopic.php?f=84&t=9058 encontraras un display que puede hacerlo, utilizando un 18f4550, y tiene una cantidad de funciones extras que no imaginarias.(lo malo es que no funca con LFS)

yo tambien corro en Live for Speed, mi usuario es "Ericktronik"
y tengo un equipo de racing y drifting.
aca puedes ver algunas fotos de mi equipo:
http://www.facebook.com/media/set/?set=a.315953051782667.78283.150076695036971&type=3


----------



## fernandoae (Feb 20, 2012)

Yo creo que se como hacerlo, negociemos jaja, vos enseñame a mandar datos desde la pc al pic con hid (digo hid porque es lo que no me ha dado problemas con los benditos 64 bits, porque en xp lo tengo solucionado, envio y recibo )... y yo me encargo de tus servos, tengo bastante boludeo invertido en el tema de leer datos de simuladores (quiero leer el force feedback para hacer un buen volante, todavia no me animo al usb PID physical interface device que si lo hace).


----------



## chapin (Feb 21, 2012)

fernadoae gracias vamos a chequearlo y te comento


----------



## fernandoae (Mar 1, 2012)

Erick, sabés que usando los bits que sean el limite es 8 analogicos, tenes idea de como hacer para que lo tome como dispositivo compuesto usb y permita que el mismo pic aparezca como 2 o mas gamepads?


----------



## Ericktronik (Mar 1, 2012)

fernandoae dijo:


> Erick, sabés que usando los bits que sean el limite es 8 analogicos, tenes idea de como hacer para que lo tome como dispositivo compuesto usb y permita que el mismo pic aparezca como 2 o mas gamepads?



pensaria que repitiendo el codigo y poner otro nombre, de tal manera que multiplexe los dos codigos muy rapido, con cristal de 20mhz me pareceria bueno.

aunque no se si eso funcione, es como la solucion mas superficial.


----------



## fernandoae (Mar 26, 2012)

Buenas gente! les muestro unas fotos de lo que he hecho estos dias, armé el gamepad usb con 32 botones y 5 analógicos y le puse dos fichas, una db9 para la parte de los analógicos(con + y -), y una db15 para la matriz de botones... usé una disposición de 8*4 para aprovechar el puerto B como entrada con pullups para simplificar mas el circuito.
En fin, quedo bien simple, el circuito está compuesto por el pic, el cristal, el capacitor y las dos fichas 
Lo bueno de hacerlo asi es que se puede usar un solo pic para conectar lo que sea a la pc... yo lo tengo funcionando con mi pad arcade casero, funciona de lujo y respecto a la simultaneidad de teclas... va perfecto, se pueden pulsar 32 botones y los detecta a todos.Esa es la ventaja respecto a usar un hack de teclado, ademas de la velocidad de respuesta(el pic envia cada 4 milisegundos).
Ah y si tienen un padre al que le gusta el tetris ni le muestren el invento


----------



## Meta (Mar 26, 2012)

Buenísimo.

Lo del Tetris me chifla con PIC,ajjajjaa.
http://www.colinfahey.com/tetris/tetris_es.html

Lo bueno es crear cosas con PIC señales de vídeo para hacer cosas, lo hacen en ASM, aún no he visto un Tetris o decir ¡Hola Mundo! con el lenguaje C almenos con un 16F88 aunque sea, ya que tiene más memoria que el 16F84A.







https://www.forosdeelectronica.com/f24/generar-senal-video-ntsc-usando-pic-15460/


----------



## fernandoae (Mar 26, 2012)

Y se podria implementar en el 18f2550 que tiene mi interfaz y usar los pines sobrantes para la generacion de video  seria una consola portatil jeje.


----------



## Meta (Mar 26, 2012)

Se qu eel 18F es bueno para señales de vídeo a 16 colores máximo he visto. ¿Lo de interfaz del puerto paralelo te refieres del 18F2550?

No lo tiene, lo tiene el hermano mayor PIC18F4550. Lo pone en la hoja de datos.

Para vídeos a todo color comoun movil son los PIC32, ya los vende tipo DIP y de 28 y 40 patillajes.

Tengo el 18F2550 y el 18F4550 para hacer temas de vídeos. El problema quien es capaz de pasar el ASM al C así sin más, menuda paciencia.


----------



## fernandoae (Mar 26, 2012)

¿?¿? yo no dije nada de un puerto paralelo ni cosas similares


----------



## Meta (Mar 26, 2012)

Sorry, leí más despacio el mensaje ahora.


----------



## maezca (Mar 27, 2012)

me gustaria hacer un mixer para el virtual dj con esto, he visto muchos que modificaban un gamepad comercial pero me gusta mas esto. Puedo poner en una entrada analogica un potenciometro como el scroll del mouse (no tiene fin) para hacer de bandeja?


----------



## fernandoae (Mar 27, 2012)

Yo ya armé un controlador usb para virtual dj con los compañeros del foro, funciona mucho mejor que usando un gamepad, ademas podés enviar señales a los leds del mixer y demas.

https://www.forosdeelectronica.com/f24/controlador-midi-usb-pic-virtual-dj-39371/

Pd: el scroll del mouse no es un potenciometro sin fin, es un ENCODER, busca en google.
Fijate los videos de la consola que armé:

www.youtube.com/user/fernandoae?feature=mhum#g/u


----------



## maezca (Mar 27, 2012)

esta interesante el tema ya lo hojee y mañana lo leo con atencion.

no sabia que era un encoder, gracias!


----------



## lubeck (Abr 8, 2012)

Saludos....

una pregunta....

como se definen los descriptores para un hat-switch de 8 posiciones?....

segun el msdn de windows seria asi:

```
RETLW  0x09  
    RETLW  0x39                     ;     USAGE (Hat switch) 
    RETLW  0x15  
    RETLW  0x00                     ;     LOGICAL_MINIMUM (0) 
    RETLW  0x25  
    RETLW  0x07                     ;     LOGICAL_MAXIMUM (7) 
    RETLW  0x75  
    RETLW  0x08                     ;     REPORT_SIZE (8) 
    RETLW  0x95  
    RETLW  0x01                     ;     REPORT_COUNT (1) 
    RETLW  0x81  
    RETLW  0x42                     ;     INPUT (Data Var Abs Null)
```

donde:
 0 es norte
 1 es noreste
 2 es este
 3 es sureste
 4 es sur
 5 es suroeste
 6 es oeste
 7 es noroeste....

pero no me queda... solo me reconoce de 4 posiciones norte, sur, este y oeste... 

me podrian orientar.... que le falta?


----------



## Meta (Abr 8, 2012)

Hola:

Cuesta mucho encontrar tutoriales para el USB, más bien puerto serie y paralelo. @lubeck, ¿Puedes poner el enlace del msdn que dices?

Salu2.


----------



## lubeck (Abr 8, 2012)

Hola Meta.....

EL Link donde supuestamente dice como es, es este(ver tabla 2), y en este encontraras un manual muy completo.... de echo creo que es el oficial no estoy seguro


----------



## fernandoae (Abr 8, 2012)

Hagamos un descriptor para un gamepad compuesto!!! estaria bueno que tome al pic 18f2550 como si fuesen 2 o 3 gamepads para evitar la limitacion de 8 analogicos y 32 botones por gamepad... porque para uno solo es pic de sobra.


----------



## lubeck (Abr 8, 2012)

si se puede fer....

no lo he echo pero supuestamente se tienen que dar de alta ambos descriptores(de los dos dispositivos)...

con esta herramienta es relativamente sencillo elaborarlos...

pero no sean malas gentes ayudeeeeenme con eso del HAT.. que no? 



No habia visto esto ni si ya publico el codigo completo.... eh! 

Ericktronik Dijo->



> Lamento decirte que no publicare el codigo fuente, es de uso privado.
> El PIC-C traduce de .hex a C(aunque nunca lo he hecho).
> 
> No publico el diagrama ya que publique dos versiones de la tarjeta.



 como me dan risa aquellos que primero se roban el trabajo de los demas y despues lo hacen "PRIVADO"

Lo siento Erik pero estas mal.... aunque estas en todo tu derecho de no dar lo de los demas...


----------



## fernandoae (Abr 8, 2012)

Si se que se puede... pero no se como se hace 
Esa herramienta la bajé hace tiempo, pero me falta estudio para poder hacer un descriptor compuesto... repitiendo el descriptor al final del primero funcionará?  que se yo, por proponer algo!
Yo después pruebo lo del hat de 8 posiciones, tengo el codigo en proton ide.

PD: probá con el código que subi mas atras, esta en proton y funciona perfecto  y es open source hecho casi todo por mi


----------



## lubeck (Abr 8, 2012)

Oki... fer deja checo eso de tu codigo, y de paso leo este tema completo... 

deja ver si encuentro donde lei eso de poner mas de un dispositivo... ya me entro mas curiosidad ... empiezo a trabajar en ello y si lo logro lo comento por aqui... saludos!



*Fer....*

del manual que puse checa el apartado A5 el que dice multiples instancias de control... te pude servir... (fue donde lo lei y no lo he probado)


----------



## fernandoae (Abr 8, 2012)

Gracias compañero, ahora lo reviso.


----------



## lubeck (Abr 8, 2012)

a ver... 

ya me confundi ... dices que de un pic se hagan 3 game pads.... hasta ahi ok...

entonces con el 2550 si no me equivoco tiene 24 puertos menos los 6 analogos para los ejes X e Y de cada uno, nos quedan 18 digitales para los 3, entonces le quedan 6 digitales para cada uno...

entonces lo que yo propongo segun lo que puse es que se haga un control con 3 instancias de control(x e Y) y 18 botones... y pues lo unico es que los botones y los potenciometros se pongan en tarjetas diferentes... si me explique? o no va por ahi la idea....


----------



## fernandoae (Abr 8, 2012)

Para algo estan los multiplexores analogicos como en 4051 (ocho entradas a una) y los registros de carga paralela y salida serie  yo quiero dos o mas gamepads con ocho analogicos y 32 botones cada uno... para que no se, pero es para decir "se puede hacer en casa"..
Bahh en realidad si se para que... es para armar un pad de mame como el que puse arriba pero para 4 jugadores con muuuchos botones por jugador, entrada para el contador de fichas, botones para salir del juego, seleccionar, que se yo... lo que se me ocurra.


----------



## lubeck (Abr 8, 2012)

Oki... ya voy entendiendo...

y solo me queda una duda...he oido acerca del mame pero no lo he estudiado y por ende no se como se configura, pero si un solo joystick o gamepad lo puedes "dividir" no creo que haya ningun problema con el metodo que te suguiero y habria que hacer pruebas, si este(el mame) requiere que se identifiquen por separado(que me parece que no), o sea que en el panel de control->Dispositivos de juego aparezcan como Joystick 1, Joystick 2 etc con un solo micro... yo creo que si sera muy complicado y de echo no creo que se pueda.... o eso es lo que pienso yo...


----------



## fernandoae (Abr 8, 2012)

En el mame se puede hacer que con un solo gamepad se controlen los comandos de todos los jugadores, el problema es que no se puede por ej, meter 60 botones en un solo joy porque el windows tiene una limitacion de 32 botones por cada gamepad... por eso, si me lo enumera como si fuesen dos puedo meter 64 botones usando un solo pic.


----------



## lubeck (Abr 8, 2012)

Oki.... creo que entonces descartada mi propuesta... sigo investigando, pero ya entendi el requerimiento...


ahhh por otro lado del hat switch, ya vi tu codigo y si es similar al que tenia, si se le pone en lugar de 4 a 8 en el size y se modifica el maximun a 7 se hace de 8 posiciones, lo que a los del proteus (labcenterelectronics) no les explicaron  en resumen tiene otro error el proteus y en la realidad funciona de 10...


----------



## Meta (Abr 8, 2012)

lubeck dijo:


> Hola Meta.....
> 
> EL Link donde supuestamente dice como es, es este(ver tabla 2), y en este encontraras un manual muy completo.... de echo creo que es el oficial no estoy seguro



Gracias, ahora entiendo mucho mejor las cosas.


----------



## Ecsar (Abr 16, 2012)

fernandoae dijo:


> Ningun comentario? dudas? sugerencias?



muy bueno señor, con un diagrama (de los componentes) y proteus ya te ganas el cielo!


----------



## fernandoae (Abr 16, 2012)

Te soy sincero? el circuito es el pic, el cristal, 4 capacitores (dos para el cristal, uno en la alimentacion y el de vusb) y en mi caso, dos fichas, una db9 para tener positivo, negativo y los cinco canales... y una db15 para la matriz de botones. Con lo cual el circuito se puede usar en varias cosas y solo se gasta plata en unos diodos ... yo el mio lo uso para el pad de mame, un joystick de los viejos (modificado para funcionar con el circuito), una alfombrita de pump it up...



Y armalo con confianza que te aseguro que funciona perfecto, incluso, podes apretar los 32 botones a la vez y te los detecta TODOS.
Voy a ver si modifico el codigo para poder activar y desactivar los analogicos con un boton... sino hay que conectar las entradas esas a tierra para que no molesten a la hora de configurar los controles en el juego.


----------



## DJ T3 (Abr 17, 2012)

fenandoae, ¿podrías subir los archivos .hex "definitivos" (los que te funcionan), o los códigos fuentes?, ya que no sé cuál estás usando...

Gracias por todo lo que aportan, cuando tenga un quemador USB, hago pruebas, me interesa los potes (cuanto mas, mejor), para usar como teclado y controlador USB...Jejeje...

Saludos


----------



## fernandoae (Abr 17, 2012)

Todos funcionan, están los códigos fuente.. hex no subo porque hay muchos osciladores, varios pics... y es mucho trabajo compilarlos a todos. Aparte el código ese es la base del proyecto. Despues cada uno tiene que hacer su gamepad a gusto... simplemente es escribir en los buffers el valor de los ejes, los botones y el hat switch. El código está comentado para que sea mas sencillo entenderlo.


----------



## DJ T3 (Abr 25, 2012)

fernandoae dijo:


> Todos funcionan, están los códigos fuente.. hex no subo porque hay muchos osciladores, varios pics... y es mucho trabajo compilarlos a todos. Aparte el código ese es la base del proyecto. Despues cada uno tiene que hacer su gamepad a gusto... simplemente es escribir en los buffers el valor de los ejes, los botones y el hat switch. El código está comentado para que sea mas sencillo entenderlo.



Dale, gracias por tu tiempo (y por quemarte la cabeza por los que sabemos poco, o no tenemos los materiales para hacer pruebas, como yo)... 

Saludos...

(veo que pusieron el botón "Me gusta", después de tanta discusión al respecto...)


----------



## logy (Jun 6, 2012)

¡Hola!
Hace poco que sigo este gran foro y me dio por tratar de realizar este proyecto, mis conocimientos de electronica son mas bien básicos, pero confio en mi paciencia para poder lograrlo, la situación es que no se que diferencia hay entre estos dos microcontroladores y cual es el que debo elegir.

PIC18F2520-I/SP	 MCU FLASH 16KX16 28-DIP LEAD FREE 
ó
PIC18F2550-I/SO  IC PIC MCU FLASH 16KX16 

esta es la pagina donde la comprare http://www.agelectronica.com/inicio.htm

por otro lado, lei que este pic se puede programar con el _jdm programmer clasico_, es correcto?
ya por último especialmente para fernandoae podriamos esperar una revisión 2.0 con feedback?

bien, un saludos y muchas gracias por el estupendo trabajo.


----------



## Ericktronik (Jun 6, 2012)

logy dijo:


> ¡Hola!
> Hace poco que sigo este gran foro y me dio por tratar de realizar este proyecto, mis conocimientos de electronica son mas bien básicos, pero confio en mi paciencia para poder lograrlo, la situación es que no se que diferencia hay entre estos dos microcontroladores y cual es el que debo elegir.
> 
> PIC18F2520-I/SP	 MCU FLASH 16KX16 28-DIP LEAD FREE
> ...



Yo utilize el PIC18F2520-I/SP.
casi siempre trabajo con el mismo, pues tengo casi 50 de esos.
hasta el dia de hoy, no he tenido problema alguno con el joystick.
no se si se pueda programar con el JDM. yo casi todo lo programo con un clon del pickit2 que hize.
y el 2550 que tiene mi quemador fue programado con un pickit3 original.


----------



## fernandoae (Jun 6, 2012)

> PIC18F2520-I/SP	 MCU FLASH 16KX16 28-DIP LEAD FREE
> ó
> PIC18F2550-I/SO  IC PIC MCU FLASH 16KX16


Las diferencias las podes ver si bajas las dos datasheets y las comparas.



> ya por último especialmente para fernandoae podriamos esperar una revisión 2.0 con feedback?


Si, seguro! pero cuando tenga mas tiempo libre


----------



## motitaverde (Jul 24, 2012)

Ericktronik dijo:


> avance de la nueva tarjeta.



una duda, en la lista de materiales hay un capacitor de 470uF (C3) y en las fotos aparece el mismo pero es de 1uF, cual de los 2 debemos usar? yo lo estoy armando en un control de N64


----------



## Ericktronik (Jul 24, 2012)

motitaverde dijo:


> una duda, en la lista de materiales hay un capacitor de 470uF (C3) y en las fotos aparece el mismo pero es de 1uF, cual de los 2 debemos usar? yo lo estoy armando en un control de N64



cualquiera de los dos funciona, pero en el datasheet hacen referencia al de 470(nanofaradios)


----------



## logy (Ago 11, 2012)

¡Hola!
Después de tener "parado" este proyecto estoy en condiciones de volver a intentarlo, la razón por la que lo deje pendiente fue porque me fue imposible hacer un programador que me funcionara, intente con el jdm clásico, ya tenia todo planeado estaba apunto de salir a comprar las piezas y epic fail, mire detrás del gabinete y no tengo puerto serial, entonces me puse a buscar otro que no ocupara dicho puerto, encontré uno llamado Pablin II, lo malo es que tampoco tengo puerto paralelo Y_Y, la única solución que tengo es comprar un quemador  o programarlo en la escuela, para mi fortuna esta semana ya inicie el semestre ^^, aunque lo mejor sera hacer un clon del pickit2 para cosas futuras o ustedes que opinan?

Y todo este choro va a una simple situación, mientras tuve parado el proyecto intente hacer el volante con un control de pc analógico de 4 ejes, sin embargo el giro no es uniforme, intente con potenciómetros de 50k, 10k, 5k, 1k. Giro el volante y no responde rápidamente, tengo que girar bastante para que el coche gire en el simulador, la pregunta es ¿pasa lo mismo con este joystick?, de no ser así porque sera que me pasa esto en mi control de pc?

Bueno se que ya me explaye demasiado así que les envío un saludo y espero que me pueda echar una ayuda.


----------



## Ericktronik (Ago 12, 2012)

logy dijo:


> ¿pasa lo mismo con este joystick?, de no ser así porque sera que me pasa esto en mi control de pc?



En realidad el joystick funciona dependiendo de los potes que uses, para este caso debes usar potenciometros lineales; el control de pc tiene una resolucion muy baja(diria que solo 128).

Yo le vendi uno de estos joystick a un compañero de la U y hasta ahora no se ha quejado.


----------



## fabioguarin (Nov 5, 2012)

buenas
hola muchachos haber les cuento, yo estudio TLA (tecnico en linea de aviones) pero tengo conocimientos y eh realizado algunos proyectos varios de electrónica pero soy consiente que este proyecto es un poco mas complejo ya que se trata de un pic, me di a la tarea de revisar todos los mensajes de este foro para saber en que me estoy encaminando ya que la finalidad que le voy a dar a este proyecto aun no lo han comentado por acá, se trata de un de una columna de control para un simulador de vuelo (fling simulator x) como esta





no se si se alcanza a ver ( disculpen el tamaño de la imagen ) pero bajo la columna de control hay un panel de interruptores 
quisiera saber si hay algún problema en usar este tipo de switches para sustituirlos por los pulsadores, ya que estos quedan "pulsados"? y si no se puede que debo hacer para adaptarlos.
gracias por compartir el proyecto Ericktronik
desde ya se les agradece


----------



## kapotik (Nov 6, 2012)

Buenas, una consulta para Fernandoae, quisiera saber si existe la posibilidad de como as hecho en el controlador midi de controlar led, si con este proyecto del joystik se podria hacer lo mismo o en su defecto hacer una interfaz solo dedicada a los led, tipo PACDRIVE, la utilidad seria para lo mismo que este, sacar las luces del MAME.

Saludos


----------



## fernandoae (Nov 6, 2012)

@fabioguarin no vas a tener problemas con lo interruptores, es lo mismo. Tenes que conectarlo con una resistencia pull up o pull down depende de lo que quieras que haga el boton.

@kapotik vos sabes que la interfaz usb no es dificil. lo dificil es el soft para reconocer las salidas, vos andas buscando algo para el MAME?


----------



## kapotik (Nov 6, 2012)

fernandoae dijo:


> @fabioguarin no vas a tener problemas con lo interruptores, es lo mismo. Tenes que conectarlo con una resistencia pull up o pull down depende de lo que quieras que haga el boton.
> 
> @kapotik vos sabes que la interfaz usb no es dificil. lo dificil es el soft para reconocer las salidas, vos andas buscando algo para el MAME?



Exactamente!!!, para el mame, lo que pasa que como hace poco a salido el mamehooker 4.0 ( programa que junto a mame saca todas las señales de luces de los juegos ), pues ya quiero inplementarlo en mi maquina, ya que las opciones son casi infinitas
Te dejo el enlace a la pagina
http://dragonking.arcadecontrols.com/static.php?page=aboutmamehooker

Crees que se pueda hacer algo?, ( o sea puedas hacer algo )

Saludos


----------



## fernandoae (Nov 6, 2012)

yo ya estuve con ese programita probando un poco... pero no consegui que me detecte ni una salida de los juegos, si lo podes hacer avisame como y de ahi arrancamos  porque por ahi era mi maquina...


----------



## kapotik (Nov 7, 2012)

fernandoae dijo:


> yo ya estuve con ese programita probando un poco... pero no consegui que me detecte ni una salida de los juegos, si lo podes hacer avisame como y de ahi arrancamos  porque por ahi era mi maquina...



Yo se como usarlo pero con los led del teclado, por ejemplo en el juego Terminator 2 puedo sacar los led de la ametralladora por los led de "bloqueo de mayusculas y el de los numeros, si te sirve a modo de entender como se configura el mamehooker avisame y te paso unas capturas de como hacerlo.Tambien  puedo sacarlo por puerto parallelo.

Para sacar por los led del teclado:
click en systray y luego en test







luego hacer click en browse






buscar "set keyboard led"






le das OK y buscas caps look






luego donde dice estado pones on






le das a done y luego donde dice test






y deberia prenderse el led de las mayusculas, esta es una forma muy facil y rapida para saber si la interfase que le conectes funciona o no, lo mismo para las demas interfases, ademas de esta la unica que e podido probar es por puerto parallelo.

Estoy a tu dispocicion y me ofresco para probar cualquier avance que se pueda hacer.

Saludos
Saludos


----------



## fernandoae (Nov 7, 2012)

En esa parte tuve exito, me exprese mal, lo que no puedo hacer es que reconozca las luces de los juegos, o sea.. ni siquiera me detecta que arranca el mame


----------



## endryc1 (Nov 9, 2012)

buenas, quisiera hacer el joystick con sus 32 botones. la pregunta es, que herramientas y software  me hacen falta para programar el pic, porque yo no tengo ni la mas minima experiencia programando pic, ni nada que tenga que ver con ellos, ya me lei los tutoriales del proton IDE que hay por la red, y entendi, pero quisiera hacer el proyecto y despues aprender a usar este tipo de tecnologia que aqui en mi pais casi nadie conoce, si me pueden dar una guia para comenzar se los agradeceria. gracias de antemano y saludos desde cuba


----------



## kapotik (Nov 10, 2012)

fernandoae dijo:


> En esa parte tuve exito, me exprese mal, lo que no puedo hacer es que reconozca las luces de los juegos, o sea.. ni siquiera me detecta que arranca el mame



Ok,
1-abris el mamehooker






2- abris el mame






3- buscas el juego, en este caso el terminator 2, y le das enter pra que lo ejecute el mame






4-alt + enter, pone el mame en modo ventana, si te fijas en el mamehooker ya a detectado las salidas






5- te vas a systray - test - browse - set keyboard led - capslock - output state, le das a done y te van       a aparecer las salidas posibles, en este caso son 4.










6- luego click en "scrip editor" -  "edit ini for current rom", y te aparecera un cuadro para asignar las    salidas






7- haces click a continuacion de donde dice "Left_Gun_Green_Led=" seria despues del = y luego en add - command










8- buscas nuevamente set keyboard led, le das ok y nuevamente colocas capslock - output state y click en done






 te tiene que quedar asi







9- Luego lo tenes que salvar 






10- te va a salir este cartel, no te preocupes es que tenes que cerrar el mame y volverlo a abrir






y asi funciona, disculpad la mala calidad y los dedos en el video.


----------



## fernandoae (Nov 10, 2012)

Y noooo. No me detecta ni siquiera que inicia el MAME... vos que version estas usando?


----------



## kapotik (Nov 11, 2012)

fernandoae dijo:


> Y noooo. No me detecta ni siquiera que inicia el MAME... vos que version estas usando?


Mame la 147, mamehooker 4.0,  que raro, si seguis los pasos como indique te tiene que andar de una, tene en cuenta que mientras haces todas las configuraciones tiene que estar corriendo todo el tiempo el juego en modo ventana.

¿Lograste hacerlo funcionar?

Saludos


----------



## fernandoae (Nov 17, 2012)

Ni en ventana, ni en ventanita... ahora voy a bajar el mame y el mame hooker de nuevo para asegurarme de que no haya algun archivo modificado o algo asi 



usas la de 64 bits o la otra?


----------



## kapotik (Nov 18, 2012)

fernandoae dijo:


> Ni en ventana, ni en ventanita... ahora voy a bajar el mame y el mame hooker de nuevo para asegurarme de que no haya algun archivo modificado o algo asi
> 
> 
> 
> usas la de 64 bits o la otra?



anda con cualquiera, pero en este caso use 32 bits.
tene en cuenta que tenes que tener instalados los paquetes net famework, visual, sdk ect,
te adjunto una captura de lo que tengo instalado en mi maquina, a y el win es XP, no lo he probado en win7.


----------



## fernandoae (Nov 18, 2012)

Ya me anduvo con el mame ese... pero... yo lo quiero usar con el mame32p que se ve mas bonito, se podrá? fijate si lo podes hacer andar


----------



## kapotik (Nov 18, 2012)

fernandoae dijo:


> Ya me anduvo con el mame ese... pero... yo lo quiero usar con el mame32p que se ve mas bonito, se podrá? fijate si lo podes hacer andar



cual es el mame32p, si es mame plus, si ya lo probe y funciona bien.

Saludos


----------



## fernandoae (Nov 18, 2012)

de donde lo bajaste Kapotik?  asi pruebo rapidito.


----------



## kapotik (Nov 18, 2012)

fernandoae dijo:


> de donde lo bajaste Kapotik?  asi pruebo rapidito.



32 BITS
http://www.mediafire.com/?31oxd55h3j3csxt

64BITS
http://www.mediafire.com/?lscc9x24bbbvcrr


----------



## fernandoae (Nov 19, 2012)

Gracias, ahora me voy a poner con eso


----------



## kapotik (Nov 20, 2012)

fernandoae dijo:


> Gracias, ahora me voy a poner con eso




OK, esperare ansioso y me ofresco a armar y probar cualquier avance.


----------



## fabioguarin (Nov 28, 2012)

fernandoae dijo:


> @fabioguarin no vas a tener problemas con lo interruptores, es lo mismo. Tenes que conectarlo con una resistencia pull up o pull down depende de lo que quieras que haga el boton.
> 
> @kapotik vos sabes que la interfaz usb no es dificil. lo dificil es el soft para reconocer las salidas, vos andas buscando algo para el MAME?





Quisiera saber con mas exactitud como serían las conexiones para colocarle una resistencia pull up o pull down. O si alguien me pudiera explicar con mas detalle se lo agradecería 

Desde ya gracias por la colaboración 

Saludoos


----------



## fabioguarin (Dic 4, 2012)

hola muchachos queria contarles que ya tengo toda la tarjeta hecha en su totalidad

ehh bueno una ves ya complete todo lo que era el circuito impreso, procedí con el PIC  como ya les comentaba en mensajes anteriores no tengo experiencia alguna con PIC`s pero siempre me llamaron la atención 

conseguí el grabador de pics por puerto serial y bueno descargue varios software de programación y probe con Winpic800-v3.64h y bueno cargue el archivo Joystick 01.hex y bueno procedí a (programar todo)
acá se ve el código en el pic (bueno parte de el)

el problema viene cuando llego a la ventana de configuración esta:

quisiera saber que debo colocar en esas barras ya que cuando coloco el pic en el circuito impreso el computador no me detecta el Joystick
y mi otra pregunta es si debo tener conectados los potenciometros de los ejes cuando lo conecte al computador,a continuación adjunto imágenes de el programa


desde ya gracias por la paciencia y su ayuda


----------



## jairoelector (Ene 7, 2013)

el joystick funciona Excelente  ahora les dejo el archivo del Circuito impreso de extensión *.PCB para que lo impriman con el programa PCB Wizard y unas fotos de mi circuito impreso 

el brillo del circuito es porque ocupé Resina de pino con alcohol isopropilico para proteger el circuito





fabioguarin dijo:


> hola muchachos queria contarles que ya tengo toda la tarjeta hecha en su totalidad
> Ver el archivo adjunto 84660
> ehh bueno una ves ya complete todo lo que era el circuito impreso, procedí con el PIC  como ya les comentaba en mensajes anteriores no tengo experiencia alguna con PIC`s pero siempre me llamaron la atención
> Ver el archivo adjunto 84659
> ...





Oye fabioguarin descarga el zip que subí e intenta con el HEX que está dentro y ve si funciona, porque el que descargo aqui ahora no funciona  antes habia otro HEX y con ese funciona


----------



## BRAUCA1 (Feb 18, 2013)

camaradas, como se instala esto, lo conecto y hace como que lo instala pero enseguida me da mensaje de error, el dispositivo tuvo un mal funcionamiento y windows no lo ha reconocido...etc
gracias por la ayuda de antemano


----------



## fernandoae (Feb 18, 2013)

Ah... eso puede ser por un montón de cosas  ponete contento jaja. Primero, asegurate que sea el cristal indicado, segundo, si tenes otro proba cambiandolo, tercero, asegurate que la palabra de configuración a la hora de grabarlo sea correcta ya que algunos programadores no dan bola... y... eso, ya tendria que andar.


----------



## BRAUCA1 (Mar 12, 2013)

como me aseguro de la configuracion de la palabra? ya probé con otro cristal de 20MHz y tambien con otro pic igual y sigue sin reconocerlo... que es lo minimo de componentes que debe estar conectado al pic para que sea reconocindo? por cierto, para programarlo estoy usando el winpic800.


----------



## fernandoae (Mar 13, 2013)

Leyendo la hoja de datos, sobre todo la parte de configuración del oscilador que tiene muchas opciones 
http://ww1.microchip.com/downloads/en/devicedoc/39632b.pdf

El minimo de componentes? el pic, el cristal con sus dos capacitores, el capacitor en el pin VUSB, y dependiendo de la configuracion la resistencia de 4,7k a positivo en el pin 4... con eso ya funciona el pic


----------



## BRAUCA1 (Mar 13, 2013)

fernandoae, revisando, vi que para configurar uno mismo un joystick, mi windows xp me da como maximo 4 ejes, tiene algo que ver eso??? la verdad ya no hallo que hacer :s

será mi compu la que no sirve? descargue otro  pero tampoco logra reconocerlo bien. se conecta y listo? o se debe istalar algo?


----------



## fernandoae (Mar 13, 2013)

La verdad no creo que sea por la cantidad de ejes... proba con todos los códigos de acá a ver si alguno funciona, y si tenes la posibilidad de probar en otra maquina hacelo. Yo con mi código, que lo subi mas atras, lo use en una pc con windows 98 y no tuve problemas.


----------



## kapotik (Mar 16, 2013)

Hola, fernadoae tuviste alguna novedad con el mamehoker?

Saludos


----------



## fernandoae (Mar 16, 2013)

La verdad que ando con bastante trabajo... pero cuando quise hacerlo andar con esta version del mame, el mame plus, no hubo caso... no detectaba nada, podrias probar en tu pc?
Hacer una interfaz usb con muchas salidas no es dificil...


----------



## kapotik (Mar 17, 2013)

fernandoae dijo:


> La verdad que ando con bastante trabajo... pero cuando quise hacerlo andar con esta version del mame, el mame plus, no hubo caso... no detectaba nada, podrias probar en tu pc?
> Hacer una interfaz usb con muchas salidas no es dificil...



Hola fer, exactamente que quieres que pruebe en mi pc?, que es lo que no detecta el mameplus?

Saludos


----------



## fernandoae (Mar 17, 2013)

Ahh no adjuntè la imagen!
Te decia si podés probar a ver si te funciona el mame hooker con el Mame32p, es este 

Ya que en mi pc (win7 x64) no me detecta nada el hooker con esa version del mame, con otras si... pero yo mi maquinita ya la tengo funcionando con esa version y un front end (http://malafe.net/), que es un programita que carga automaticamente con windows y te permite olvidarte del teclado y mouse....


----------



## kapotik (Mar 17, 2013)

ok, ya lo estoy bajando, lo pruebo y te comento


----------



## kapotik (Mar 17, 2013)

fernandoae dijo:


> Ahh no adjuntè la imagen!
> Te decia si podés probar a ver si te funciona el mame hooker con el Mame32p, es este http://img408.imageshack.us/img408/3245/20238727.jpg
> 
> Ya que en mi pc (win7 x64) no me detecta nada el hooker con esa version del mame, con otras si... pero yo mi maquinita ya la tengo funcionando con esa version y un front end (http://malafe.net/), que es un programita que carga automaticamente con windows y te permite olvidarte del teclado y mouse....



Ya lo probe y no anda, averiguando resulta que mame saco soporte para las salidas de luces de los juegos a partir de la vercion 123 en adelante, por eso no funciona con la 0.83 que vos tenes.
Tocara actualizar.


----------



## fernandoae (Mar 17, 2013)

Ah mirá vos, a mi me habia pasado algo asi con el stepmania ( el de la alfombrita de baile, me habia armado la interfaz para luces) y en una de las versiones por cuestión de patentes tuvieron que deshabilitarlo, pero se podia compilar de nuevo cambiando una linea para que te lo habilite de nuevo, ahora voy a ver con  la 0.122 
Tenes alguna lista de los juegos con salidas?
Dig Dug
terminator
Outrun
... 
ahi seguis vos


----------



## kapotik (Mar 17, 2013)

creo que si, la tenia por ahi, la busco y la posteo.

Saludos


----------



## fernandoae (Mar 17, 2013)

Gracias, igual no te preocupes que la encontre


----------



## kapotik (Mar 18, 2013)

fernandoae dijo:


> Gracias, igual no te preocupes que la encontre


Ok, esperare ansioso cualquier avance

Saludos


----------



## fabioguarin (Abr 15, 2013)

muchchos el computador ya me detecto el joystick pero tuve que hacer algo creo yo indebido, ya que hice contacto entre los pines del conector USB  los pines VCC y D- acá una imagen de como aparece el joystick en mi pc



pero resulta de que no se mueven los ejes cuando muevo los potenciometros ni mucho menos detecta los botones cuando hago contacto entre ellos 


muchachos no se que hacer me la he pasado revisando las pistas que no hayan colisiones entre ellas y reviso y eh vuelto a programar el pic solo me queda por pensar que tal vez el pic se daño o simplemente salio defectuoso 
me seria de gran ayuda si alguien me colabora para saber que puede estar fallando  y bueno ya si es el pic ps dolorosamente tender que invertir de nuevo para compralo
desde ya muchas gracias


----------



## willynovi (Abr 25, 2013)

Ericktronik dijo:


> Bueno fernandoae...
> aunque se ve muy lindo el hecho que obtengas los RPMs por medio de leds, estoy tratando de hacer algo (tambien por USB) para que por medio de unos servomotores muevan las manecillas de algun tacometro. pero todavia no me sale nada...
> aunque en http://www.xtremeracers.info/forums/viewtopic.php?f=84&t=9058 encontraras un display que puede hacerlo, utilizando un 18f4550, y tiene una cantidad de funciones extras que no imaginarias.(lo malo es que no funca con LFS)



Hola Erik, que lástima encontrarme con éste hilo de "tu aporte", hace tiempo que no visitaba Foros de Electrónica y me encuetro con esto 

Visité el link que pones para construirse el display estilo F1 con los led y resulta que veo que tambien estoy registrado en ese foro 

Y tambien resulta que encontré esto: *Controladora USB Willynovi [6/32 4/64 0/81 ejes/botones]*

Cuando termine la placa para manejar los servos y hacer los instrumentales analógicos te aviso así tambien puedes poner "tu aporte" por este foro.

Un abrazo, Willy





Ericktronik dijo:


> En realidad el joystick funciona dependiendo de los potes que uses, para este caso debes usar potenciometros lineales; el control de pc tiene una resolucion muy baja(diria que solo 128).
> 
> Yo le vendi uno de estos joystick a un compañero de la U y hasta ahora no se ha quejado.



haaa, pero te hiciste un buen curro, menos mal que no se te quejó, sino de que te disfrazabas?


----------



## willynovi (Abr 28, 2013)

Hola Erick, intento salvarte las papas, como decimos por acá.



			
				Ericktronic en XtremeRacers dijo:
			
		

> Me tome la atribucion de utilizar el diagrama esquematico y crear una nueva tarjeta.
> lo unico que hize fue incluir la matriz de botones y quitar los interruptores, en la simulacion funciona perfecto y no hay ningun problema.



*Link*

Con que pongas eso en el primer mensaje creo que es suficiente.

Y quedamos bien


----------



## arubaro22 (Jun 17, 2013)

Hola a todos, hace bastante que no visito el foro y ahora que dispongo de mas tiempo tratare de ponerme al dia y seguir aportando como antes. 
Me intereso el proyecto para usarlo en un arcade que me estoy construyendo, pero tengo una duda, se pueden tener dos hat de ocho posiciones? esto seria para un pad de dos jugadores.

Lo otro es que aca consigo solo el 18f4550, se podria programar igual en el 4550?

Saludos


----------



## willynovi (Jun 21, 2013)

El arcade que estas haciendo es con mame?
Yo creo que no necesitas que sea un hat switch, no esto seguro pero me parece que con 8 botones convencionales andan los dos sticks, y el mismo mame arma las diagonales.

El pic podes usar cualquiera de la familia, o sea el 18F4550 lo puede usar bien.


----------



## arubaro22 (Jun 21, 2013)

Es con varios emuladores, entre ellos las ultimas plataformas de taito, pero no seria problema porque de ultima uso el xpadder que con un joystick emula cualquier tecla del teclado o mouse. Lo que mas me preocupaba era lo del pic.
Gracias willy!!


----------



## ismael2010 (Jul 17, 2013)

hola chicos, primero quiero felicitarlos por este estupendo foro que sin ustedes esto no seria lo mismo, segundo, quiero armar una interface solamente para poner a un arcade que lo uso exclusivamente  con mame para 2 jugadores.
la verdad estoy empesando con el tema de electronica, asi que mucho no estoy en el tema, lo que si es que tengo la habilidad de aprender rapido las cosas nuevas ( y mas si me interesa, como todos!!) 
descargue el archivo "Willynovi Controladora USB 10bits" subido anteriormente, pero veo que no es lo que estoy necesitando en este momento, es por eso que recurro a ustedes y a su amabilidad 
lo que estaria necesitando seria algo como estoy





o asi




desde ya gracias por toda su ayuda
PD: no es lo mismo comprar que tener el placer de hacer uno mismo.


----------



## fernandoae (Jul 22, 2013)

Si no manejás mucho la Electrónica te recomiendo un "Hack de teclado o gamepad"... googlealo, no es para nada complejo, hay que saber soldar solamente 
Acá ya se utilizan microcontroladores... no es complicado tampoco pero necesitas una tener conocimientos sobre algunas cosas, por lo menos los basico... y un aparatito para programar los integrados...


----------



## kapotik (Ene 1, 2014)

Buenas, queria felicitar a willy por tan exelente trabajo!!, luego de  armarlo y verlo funcionar he quedado maravillado con tal artilugio, 
por  que funciona muy bien y animo a cualquiera que este pensando en armarlo  a que ni lo piense, funciona muy bien y no da ningun tipo de problema, 
el mio salio funcionando a la primera, (cosa rara en mi pero asi fue), gracias willy.

Solo  tengo una duda, como no encontre en ningun lado que valor de  potenciometro a usar, anque supuse que podia ser cualquiera, use los que
tenia  en casa de 50khom, y he observado que cuando esta quieto tiene un  minimo tembleque, hablo de cuando estas en las propiedades del joystick  en windows
y sale la x de prueba, se mueve bien pero cuando se lo  deja quieto es como si temblara, queria saber si es por el valor de los  potes o si es asi,
 les a pasado lo mismo?


saludos


----------



## fernandoae (Ene 2, 2014)

Es un valor muy alto 50K... con un pote entre 10K y 5K vas a evitar que tiemble, la otra es agregar un capacitor entre la salida del pote y tierra


----------



## kapotik (Ene 2, 2014)

ok gracias, voy a cambiar el valor del potenciometro

Saludos


----------



## kapotik (Mar 5, 2014)

hola, queria mostrarles en que he usado mi joystick de 4 ejes y 32 botones, me parecio bueno ya que por lo general el uso que se le da a este tipo de joystick es siempre el mismo, volantes o para simuladores de vuelo.
les dejo el link
http://www.retrovicio.org/foro/showthread.php?27813-Ni-Light-gun-ni-wii-mote-ni-RF-MINIGUN-ARCADE

saludos


----------



## marianovelasco (Jun 8, 2014)

Pido perdón a todos es la primera vez que escribo en un foro, inicie un tema nuevo sin saberlo
espero que ahora este haciendo las cosas bien.


Arme el circuito del joystick usb de 6 ejes y 32 botones y lo conecte a una pc con windows xp y funciono a la perfección.

Lo raro fue que lo desconecte y despues de un rato al conectarlo nuevamente no funciono.
No lo detecta, de ves en cuando lo detecta y dice que es dispositivo usb tiene un problema.
Lo probé en windows 7 y pasa exactamente igual.
Programe otro pic y lo probé y pasa lo mismo.
Lo extraño fue que en la primer prueba funciono todo.

¿será problema que el cristal no este oscilando.? ...


----------



## Tiguer (Jul 2, 2014)

Estaría bueno usar la placa pinguino para este proyecto. ¿Alguien hizo un programa en C para el joystick? por que la idea de mi parte de realizar un proyecto como este es mas que nada aprender y es un poquito complicado aprender como funciona un .hex y poder adaptarlo a nuestra necesidad es un poquito mas complicado aún (entender y adaptar un .hex a nuestra necesidad es IMPOSIBLE). Mi idea es hacer un joystick para un simulador de vuelo con lo que no usaría pulsadores sino interruptores y la única forma de adaptar la placa para usarla con interruptores sin modificar el programa es con capacitores y reles lo cual aumentaría mucho el presupuesto del proyecto y así también el tamaño de circuito


----------



## ivanovth (Ago 8, 2014)

Hola a todos Acabo de armar la version compacta  le instale en la computadora y me lo reconoce todo normal per al pasar unos 6 a  7 minutos se empieza a desconectar el joistick , se conecta y se desconecta sucesivamente alguien sabe por que pasa esto????


----------



## Leviiathan (Nov 8, 2015)

Saludos amigo me intereso mucho el proyecto de joystick y ha he logrado casi todo pero tengo una duda, tal vez puedas ayudarme solo aclarándome algo...

1.- que librería de teclado matricial usaste (he estado instigando y las que uso manejan sentencias "if" "switch y catch" las cuales no te permiten presionar varias teclas, cosas fundamentales a la hora de jugar en el joystick y se me hará eterno agregar las combinaciones a mano)....

2.- yo para que pueda asignarle un valor del teclado con un arreglo, la cual lo sentencio en hexadecimal  (botón 1 del teclado joystick = 0x01, etc..) ya que no uso input_a(); o input_b();....

y tengo problemas con el POV.. de protocolos

mi lenguaje es CCS (pic c compiler en su version 5.1).


----------



## kiesler (Mar 17, 2017)

Amigos se que el foro esta inactivo. Pero cuando simulo el programa y corre perfectamente pero al modificar el descriptor al simularlo el driver me da un error y no inicia el dispositivo. No se si deba modificar los vendor y el pid al mismo tiempo que modifique los descriptor. Espero que puedan ayudarme



Hola amigos espero que puedan ayudarme al realizar la simulación en proteus todo se ejecuta perfectamente pero al momento de modificar los descriptores los driver del gamepad no se inician. No se si deba modificar el vendor y el pid del descriptor si pueden ayudarme lo agradeceria


----------

