Sorry, I didn't answer you. You are already on the list for revision 2 of the PCB.brunosilva escribió:after finished I also want one!
Joy2PS2 v1.0 para ZXUno
Re: RE: Re: Os presento JOY2PS2 para ZXUno
- brunosilva
- Mensajes: 312
- Registrado: 18 Jun 2016, 19:54
Re: RE: Re: Os presento JOY2PS2 para ZXUno
hi no problem... I saw my username in the first post so... all ok by mespark2k06 escribió:Sorry, I didn't answer you. You are already on the list for revision 2 of the PCB.brunosilva escribió:after finished I also want one!
Re: Os presento Joy2PS2 para ZXUno
Actualizada información de gastos de envío en el primer post.
Actualizado en mi repositorio de github la revisión 2:
-> Con ground plane.
-> Modificado texto "Name" por "ARDUINO".
-> Corregido pinout para conector DB15 macho en capa superior en lugar de hembra.
-> Mismas dimensiones y disposición de componentes que en la revisión 1.
-> Misma funcionalidad que la revisión 1.
https://github.com/spark2k06/zxuno/tree/master/joy2ps2
Top:
Bottom:
Actualizado en mi repositorio de github la revisión 2:
-> Con ground plane.
-> Modificado texto "Name" por "ARDUINO".
-> Corregido pinout para conector DB15 macho en capa superior en lugar de hembra.
-> Mismas dimensiones y disposición de componentes que en la revisión 1.
-> Misma funcionalidad que la revisión 1.
https://github.com/spark2k06/zxuno/tree/master/joy2ps2
Top:
Bottom:
- brunosilva
- Mensajes: 312
- Registrado: 18 Jun 2016, 19:54
Re: Os presento Joy2PS2 para ZXUno
Hi
I also want one v1 adapter (assembled)
Thanks
I also want one v1 adapter (assembled)
Thanks
Re: Os presento Joy2PS2 para ZXUno
I'll send you a private message, thanks!brunosilva escribió:Hi
I also want one v1 adapter (assembled)
Thanks
Re: Os presento Joy2PS2 para ZXUno
http://www.mmmonkey.co.uk/snk-neo-geo-d ... ller-plug/
Ahí van unas instrucciones para adaptar un conector db15 que se pueden encontrar baratos en Aliexpress y construirse un cable para hacer o modificar un pad o stick arcade. Esto si hay dificultades en encontrar un cable o no se dispone de pad NeoGeo.
Enviado desde mi Thor mediante Tapatalk
Ahí van unas instrucciones para adaptar un conector db15 que se pueden encontrar baratos en Aliexpress y construirse un cable para hacer o modificar un pad o stick arcade. Esto si hay dificultades en encontrar un cable o no se dispone de pad NeoGeo.
Enviado desde mi Thor mediante Tapatalk
- mcleod_ideafix
- Mensajes: 831
- Registrado: 27 Sep 2015, 00:14
- Ubicación: Jerez de la Frontera
- Contactar:
Re: Os presento Joy2PS2 para ZXUno
Esto que comentas no debería pasar, si la interfaz física PS/2 se ha implementado de acuerdo a los estándares, que especifican que los dos pines del puerto PS/2 en un dispositivo deben ser de colector abierto SIN PULLUP. El pullup lo pone el host. ¿Está configurado de esa manera? Si no lo está, y has configurado una resistencia interna de pullup en el Arduino Nano, estás llevando esas salidas a 5V, y, aunque la resistencia esté por medio, corres el riesgo de meter 5V a una entrada de la FPGA, y no es tolerante a ellas. Peor aún si en lugar de salida con pullup es una salida en totem-pole, porque entonces la intensidad que recorre la entrada de la FPGA cuando se le conecta a una señal que esté a 5V es mayor, y con ello, el riego de estropear la FPGA.spark2k06 escribió:...teniendo en cuenta que no se debería usar al mismo tiempo para evitar colisiones (en cuanto al ratón no hay problema porque utiliza pines independientes), pero al probarlo he comprobado que con éste conectado los sendcodes del arduino son ignorados, sólo funcionando el teclado... si se desconecta en caliente vuelve a funcionar el arduino y si se vuelva a conectar deja de funcionar (parece como si el teclado "absorbiera" los códigos enviados por el arduino). Esta parte queda pendiente de revisar pero la funcionalidad principal del adaptador funciona correctamente.
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA
Re: Os presento Joy2PS2 para ZXUno
Me dejas con el miedo en el cuerpo, tampoco quiero estropear ZXUnos a nadie. Te acuerdas que comentamos este asunto en el otro hilo?:mcleod_ideafix escribió:Esto que comentas no debería pasar, si la interfaz física PS/2 se ha implementado de acuerdo a los estándares, que especifican que los dos pines del puerto PS/2 en un dispositivo deben ser de colector abierto SIN PULLUP. El pullup lo pone el host. ¿Está configurado de esa manera? Si no lo está, y has configurado una resistencia interna de pullup en el Arduino Nano, estás llevando esas salidas a 5V, y, aunque la resistencia esté por medio, corres el riesgo de meter 5V a una entrada de la FPGA, y no es tolerante a ellas. Peor aún si en lugar de salida con pullup es una salida en totem-pole, porque entonces la intensidad que recorre la entrada de la FPGA cuando se le conecta a una señal que esté a 5V es mayor, y con ello, el riego de estropear la FPGA.spark2k06 escribió:...teniendo en cuenta que no se debería usar al mismo tiempo para evitar colisiones (en cuanto al ratón no hay problema porque utiliza pines independientes), pero al probarlo he comprobado que con éste conectado los sendcodes del arduino son ignorados, sólo funcionando el teclado... si se desconecta en caliente vuelve a funcionar el arduino y si se vuelva a conectar deja de funcionar (parece como si el teclado "absorbiera" los códigos enviados por el arduino). Esta parte queda pendiente de revisar pero la funcionalidad principal del adaptador funciona correctamente.
viewtopic.php?f=35&t=648&start=20
Como en éste comento, hice las pruebas correspondientes multímetro en mano a la salida del PS/2 (modifiqué el código temporalmente para mantener HI-Z durante un largo periodo de tiempo), y determiné que en CLK/DATA no se producía tensión alguna.
No obstante, creo que debo aclarar que a nivel de PCB no debería estar mal. El CLK y DATA del puerto PS/2 estan conectados directamente a los I/O A2 y A3 del arduino, en todo caso, si algo estuviese mal sería en código de arduino, corregible por supuesto:
https://github.com/spark2k06/zxuno/blob ... ps2/main.c
o directamente para compilar con el entorno IDE:
https://github.com/spark2k06/zxuno/blob ... oy2ps2.ino
Ya no me quedo tranquilo. Hasta que no resuelva este asunto quedan paralizados los envíos, @brunosilva, de momento te voy a hacer un reintegro por paypal, ya lo siento, de verdad .
@mcleod_ideafix, dispones de algún arduino nano v3 para pruebas? No me importa cederte lo que sea necesario, la PCB revision 1 por supuesto y todos los componentes que necesites, incluido un arduino preprogramado con el código... si no dispones de tiempo o lo que sea, yo no se qué mas puedo probar, vamos lo comentado en el otro hilo, si hay algo mas que pueda hacer...
Re: Os presento Joy2PS2 para ZXUno
Por otro lado, hay una cosa que no entiendo con el tema del PS/2. Por qué desde arduino nos vemos obligados a usar tiempos de reloj/semireloj de 240/480 microsegundos en lugar de los tiempos normales 20/40 microsegundos porque no funcionan, y los teclados que se supone deberían usar esos tiempos normales sí funcionan al conectarlos al ZXUno? Estaría bien disponer un analizador lógico para ver los tiempos de los teclados... o ver en qué cambia respecto a como se envía desde arduino, porque es algo que desde que llevo con este proyecto nunca he entendido.
Re: Os presento Joy2PS2 para ZXUno
Estoy leyendo este artículo que explica muy bien el funcionamiento de un teclado PS/2, muy recomendado:spark2k06 escribió:... pero al probarlo he comprobado que con éste conectado los sendcodes del arduino son ignorados, sólo funcionando el teclado... si se desconecta en caliente vuelve a funcionar el arduino y si se vuelva a conectar deja de funcionar (parece como si el teclado "absorbiera" los códigos enviados por el arduino).
http://www.computer-engineering.org/ps2keyboard
Hay una parte donde dice que si el teclado recibe comandos inválidos, éste debe responder con un "resend" (sendcode 0xFE), puede ser ese el motivo por el cual "absorbe" los comandos enviados por arduino? porque el teclado los esté capturando y reenviando un 0xFE y el ZXUno se haga un lío?Command Set:
A few notes regarding commands the host can issue to the keyboard:
- The keyboard clears its output buffer when it recieves any command.
- If the keyboard receives an invalid command or argument, it must respond with "resend" (0xFE).
- The keyboard must not send any scancodes while processing a command.
Below are all the commands the host may send to the keyboard:
- If the keyboard is waiting for an argument byte and it instead receives a command, it should discard the previous command and process this new one.
- 0xFF (Reset) - Keyboard responds with "ack" (0xFA), then enters "Reset" mode. (See "Reset" section.)
- 0xFE (Resend) - Keyboard responds by resending the last-sent byte. The exception to this is if the last-sent byte was "resend" (0xFE). If this is the case, the keyboard resends the last non-0xFE byte. This command is used by the host to indicate an error in reception.
Estoy casi seguro que el teclado debe de estar a la escucha (Idle state):
Recibe el comando que envía arduino por el mismo puerto, y después debería responder con un 0xFE... ¿Qué hace después el ZXUno con ese 0xFE?, ya no lo se... igual nada, pero posiblemente al enviarlo entre en conflicto con otros scancodes que esté mandando arduino. Una cosa está clara, y es que arduino va a ignorar toda comunicación que lleve a cabo el teclado, el cual sólo recibirá el ZXUno, no así el teclado que escucha tanto al ZXUno como al arduino y puede responder en consecuencia:Summary: Bus States
Data = high, Clock = high: Idle state.
Data = high, Clock = low: Communication Inhibited.
Data = low, Clock = high: Host Request-to-Send
http://www.computer-engineering.org/ps2protocol
Otro enlace interesante...
http://retired.beyondlogic.org/keyboard/keybrd.htm