Joy2PS2 Mini V3

Proyectos ajenos al equipo oficial pero desarrollados o promovidos por la comunidad, relacionados con el ZX-UNO / Projects outside the official team but developed or promoted by the community, related to the ZX-UNO
Avatar de Usuario
spark2k06
Mensajes: 1188
Registrado: 12 Feb 2016, 13:58

Joy2PS2 Mini V3

Mensaje por spark2k06 » 17 Ene 2018, 09:54

Os presento una nueva versión mejorada de Joy2PS2. Un formato mas pequeño, todo tecnología trhouth hole y con el chip atmega 168 en socket para un reemplazo fácil o para ampliar al 328 en caso de que el firmware en un momento dado se quede pequeño para la versión 168:

Imagen

Al disponer de cables PS/2 macho y hembra, es posible conectar varios en cascada para jugar a tantos jugadores como se quiera... en tal caso, cada cual debería llevar mapeado en su firmware una combinación de teclas distintas para no interferir con el resto de jugadores. En el futuro, y dependiendo de la aceptación y adopción que pudiera tener este invento, la configuración de los mapas podría llevarse a cabo mediante la EEPROM, y con un programa de linux/windows, poder definir las teclas para cada uno y guardarlo en su EEPROM, de manera que ésta sea cargada al conectarse.


Por otro lado, y aquí es donde se encuentra la verdadera mejora respecto a las versiones anteriores, el cable PS/2 hembra permite conectar un teclado PS/2 convencional al mismo tiempo sin ningún tipo de conflicto gracias al diodo que lleva integrado que, combinado con el transistor MOSFET es posible activar y desactivar la bidireccionalidad del mísmo por software. Para éste propósito he actualizado el firmware, de manera que justo en el momento de enviar un scancode por el puerto PS/2, se anula la bidireccionalidad... y una vez enviado se vuelve a permitir, con ésto no sólo consiguimos evitar que haya conflictos con un teclado externo, sino que éste seguirá pudiendo ser inicializado y por tanto será posible usarlo con el core de PC/XT del ZXUno. Si ésto sucede, estaría el problema de que el joystick no se habría cambiado al set 1 de scancodes, pues bien, también lo he resuelto aprovechando el combo del modo shift (BUTTON 1+LEFT), para que, ademas de deshabilitar la escucha de comandos (que así está por defecto para evitar conflictos a la inversa), el joystick cambie entre el set 1 y el set 2 de scancodes sin requerir inicialización para ello.

El firmware de este proyecto está pensado sobre todo para el uso con el ZXUno, gracias a la implementación diversos combos para controlarlo al completo, mas información aquí, sin embargo, como ya he ido mostrando en varios vídeos del foro ZXUno, éste puede ser usado sin problemas en dispositivos que acepten teclado PS/2 como puede ser un PC, o incluso también con USB sin ningún tipo latencia aparente, gracias a este adaptador de PS/2 a USB, también probado y funciona perfectamente incluso en la Mist.

Principales ventajas de usar Joy2PS2 en lugar joystick del ZXUno:

1. Emula el teclado y siempre puede mapearse como se necesite (de momento recompilando el firmware para ello, aunque la tipica de OPQA-SPC-M es la que está por defecto). Practicamente la totalidad de cores del ZXUno permiten el uso de teclado en los juegos, y los que faltaban, ya me encargué de modificarlos para que también se pudiera... porque mi objetivo inicial con este proyecto siempre fue poder usarlo con la mini bartop basada en ZXUno que me estoy construyendo.

2. Jugadores "ilimitados", mediante conexión en cascada de varios Joy2PS2... cada uno debe usar teclas distintas para no interferir en el resto de jugadores.

3. Pocos o ningún juego de Spectrum (que yo sepa) sólo permiten ser utilizados con Joystick de Spectrum, sin embargo sí sucede lo contrario en muchos, que sólo es posible con teclado... precisamente para lo que está preparado Joy2PS2.

4. Joy2PS2 no está limitado al protocolo atari sobre el conector DB9, sino que han sido implementados de forma transparente en el propio firmware muchos otros, como:

MSX (con alguna adaptación física para usar el último botón), Amstrad CPC, VIC 20, Sega Master System, Sega Megadrive de 3 o 6 botones (todos están mapeados), Amiga, ZX Spectrum, y en una próxima actualización, dependiendo de la aceptación y adopción, también NES Famicom DB9, porque requiere un esfuerzo extra para llevarlo a cabo.

He tenido la idea de usar la siguiente caja de un DB15 que venden en Aliexpress bastante económico, que viene bien para quienes no tenemos impresora 3D, aunque no he sido muy bueno calculando el lugar donde llevar a cabo el agujero para que salga el switch del keymapper como se puede observar:

Imagen

Quién se anime puede modificar el diseño para usar todo tecnología SMD y sacar una versión Nano que entre en esta otra caja.

Finalmente, todo conectado creo queda bastante bien:

Imagen

Si queréis ver bien en detalle tanto las virtudes como los defectos, aquí dejo las fotos en alta resolución

Los ficheros Eagle se encuentran la carpeta github que he preparado, facilito la lista BOM al final de este post por si alguien se anima a hacer alguna tirada... yo en esto prefiero mantenerme al margen para centrarme y llevar a buen puerto el proyecto Sugarless +2 en el que estoy metido.

El firmware debe ser cargado mediante un programador ICSP como el USBAsp, aquí lo tenéis a buen precio.

Nota. A la hora de programarlo, hay que desactivar el fusible CKDIV8, para que trabaje a 8Mhz en lugar de a 1Mhz, que es la configuración que viene por defecto de fábrica.

Pedido de 3 PCBs en OSHPark por 9,45$ y gastos de envío incluidos.

Listado BOM

Para la versión mini:

Atmega168 DIP x 10 = 1,86€/u

28 DIP Socket x 10 = 0,13€/u

Kit de Caja y conector DB15 breakout x 1 (solo se necesita la caja) = 2,36€/u

Diodo throuth hole x 10 = 0,06€/u

Transistor MOSFET BS170 x 10 (o cualquiera de nivel lógico) = 0,14/u

Para una posible versión nano:

Atmega168 SMD x 10 = 1,08€/u

Kit de Caja y conector DB9 breakout x 1 (solo se necesita la caja) = 2,42€/u.

Diodo SMD x 100 = 0,02€/u

Transistor MOSFET IRLML6344 x 10 (o cualquiera de nivel lógico, éste es válido pero demasiado bueno para su función en este proyecto) = 0,18/u

Elementos comunes para las versiones nano y mini:

Conversor PS/2 a USB = 1,31€/u

Conector DB9 x 10 = 0,29€/u

Switch button 6x6x18mm x 100 (si se encuentran algo mas cortos mejor, < 18mm) = 0,04€/u

1x40 rompibles para crear conectores ICSP x 133 = 0,02€/u

Cable PS/2 Macho - Hembra para cortar y soldar a la PCB x 1 = 2,44€/u
Última edición por spark2k06 el 17 May 2018, 12:05, editado 10 veces en total.

jevilon
Mensajes: 339
Registrado: 24 Mar 2016, 12:26

Re: Joy2PS2 Mini V3

Mensaje por jevilon » 17 Ene 2018, 10:19

Esto me mola un montón.... Sería factible con el aumento de precio, implementarlo en el sugarless?????? En plan... Uno de los dos conectores que lleva... Que use esto, internamente

Avatar de Usuario
spark2k06
Mensajes: 1188
Registrado: 12 Feb 2016, 13:58

Re: RE: Re: Joy2PS2 Mini V3

Mensaje por spark2k06 » 17 Ene 2018, 10:21

jevilon escribió:Esto me mola un montón.... Sería factible con el aumento de precio, implementarlo en el sugarless?????? En plan... Uno de los dos conectores que lleva... Que use esto, internamente
Es que uno de los conectores, será joy2ps2... eso ya estaba en los planes ;-)

Enviado desde mi Thor mediante Tapatalk

Avatar de Usuario
mapache
Mensajes: 272
Registrado: 15 Dic 2016, 22:24

Re: Joy2PS2 Mini V3

Mensaje por mapache » 17 Ene 2018, 10:37

Interesantísimo, muy bien pensado y optimizado todo.

El soporte NES Famicom sería muy interesante, es un mando muy resultón, y el mejor para jugar al core NES. Lo que no sé es si el tipo de conector de este mando es estándar.
Última edición por mapache el 17 Ene 2018, 10:41, editado 1 vez en total.

Avatar de Usuario
spark2k06
Mensajes: 1188
Registrado: 12 Feb 2016, 13:58

Re: RE: Re: Joy2PS2 Mini V3

Mensaje por spark2k06 » 17 Ene 2018, 10:40

mapache escribió:Interesantísimo, muy bien pensado y optimizado todo.

El soporte NES Famicom sería muy interesante, es un mando muy resultón, y el mejor para jugar al core NES.
Gracias. Si tiene una buena acogida, ahora que está optimizado y es totalmente compatible con el uso de un teclado de forma simultánea, no dudes que famicom db9 será lo próximo que implemente. :-)

Enviado desde mi Thor mediante Tapatalk

jevilon
Mensajes: 339
Registrado: 24 Mar 2016, 12:26

Re: RE: Re: Joy2PS2 Mini V3

Mensaje por jevilon » 17 Ene 2018, 10:43

spark2k06 escribió:
jevilon escribió:Esto me mola un montón.... Sería factible con el aumento de precio, implementarlo en el sugarless?????? En plan... Uno de los dos conectores que lleva... Que use esto, internamente
Es que uno de los conectores, será joy2ps2... eso ya estaba en los planes ;-)

Enviado desde mi Thor mediante Tapatalk
Lo sé, pero molaría mucho que llevara está nueva versión... Más que nada por que tengo por error dos mandos de famiclon con conector DB9 jejeje

Avatar de Usuario
mapache
Mensajes: 272
Registrado: 15 Dic 2016, 22:24

Re: Joy2PS2 Mini V3

Mensaje por mapache » 17 Ene 2018, 10:44

Sería una pasada, y junto a un conversor Soarer se podría usar incluso para la Mist. Al haberse reducido el precio y el espacio de esta nueva versión de Joy2PS2 se hace más cómodo tener dos o tres con distintas configuraciones, además de la opción de poder ponerlos en cascada.

Actualicé el mensaje anterior porque no sé si el conector del mando de NES es estándar.

Avatar de Usuario
spark2k06
Mensajes: 1188
Registrado: 12 Feb 2016, 13:58

Re: Joy2PS2 Mini V3

Mensaje por spark2k06 » 17 Ene 2018, 10:49

mapache escribió:Sería una pasada, y junto a un conversor Soarer se podría usar incluso para la Mist. Al haberse reducido el precio y el espacio de esta nueva versión de Joy2PS2 se hace más cómodo tener dos o tres con distintas configuraciones, además de la opción de poder ponerlos en cascada.

Actualicé el mensaje anterior porque no sé si el conector del mando de NES es estándar.
Para usar con la Mist ya te digo yo que va de fabula el adaptador PS/2 a USB barato de Aliexpress, ya probarás el que te envié y nos darás feedback ;-)

Y con famicon de clones de nes, me refiero efectivamente a los que llevan conector db9.

Avatar de Usuario
spark2k06
Mensajes: 1188
Registrado: 12 Feb 2016, 13:58

Re: RE: Re: Joy2PS2 Mini V3

Mensaje por spark2k06 » 17 Ene 2018, 10:51

jevilon escribió: Lo sé, pero molaría mucho que llevara está nueva versión... Más que nada por que tengo por error dos mandos de famiclon con conector DB9 jejeje
El joy2ps2 que llevará integrado Sugarless +2 por supuesto llevará diodo y control de bidireccionalidad. Respecto a la adaptación para famicom db9, pues sí... pero será de lo último que haga, no me dan las horas "libres" para todo xD

Avatar de Usuario
mapache
Mensajes: 272
Registrado: 15 Dic 2016, 22:24

Re: Joy2PS2 Mini V3

Mensaje por mapache » 17 Ene 2018, 10:54

Cierto, se me pasó... ya te contaré como va. La ventaja que tendría el Soarer es que es programable con un archivo de configuración, más sencillo que recompilar el firmware de Joy2PS2.

Me estuve informando sobre conversores de PS/2 a USB y, en el caso de los teclados mecánicos IBM antiguos que piden más corriente, los conversores son una lotería, unas veces funcionan y otras no, de ahí que me hiciera el Soarer.

Responder