| |
| | Proyecto DUCK, Doragasu Usb Custom Kontroller | |
| |  | |  |
 | xlc | |  Supermarciano
Grupo: MemberMensajes: 463 Location: A Coruña-Vigo Status:  | |
| Quark,yo no aconsejo nada a nadie,simplemente cuento mi experiencia. En su momento lo hice un poco inconscientemente, y no aseguro que no le pueda afectar al monitor,pero creo que muchos han dejado de experimentar cosas por temor a este tema de la frecuencia y la verdad aún nunca he leido que nadie se haya cargado su monitor.
|
|  |
 | Quark | |  El poder de la Quantica
  Grupo: MemberMensajes: 5658 Location: Valencia Status:  | |
| Alla cada uno con su mecanismo. Yo, no lo haria y lo digo por vuestro y tu bien xlc |
|  |
 | doragasu | |  Desconectado de la realidad
 Grupo: MemberMensajes: 1643 Status:  | |
| QUOTE (VeS @ 21/9/2005, 00:49) Hola a todos, como veo doragasu que el proyecto se va de marras, me preguntaba si seria posible que hicieses solo el protector del monitor a 15hz de esta forma se podria tener configurado el Pc con Msdos y con las utilidades advcab le sacas los 15hz, asi de esta manera no se joderia el monitor, ya que no recibiria señal hasta que se cargen dichos programitas residentes, te lo digo porque yo lo he tenido asi casi un año. Si haces una plaquita solo para esa parte (ya que creo que no tiene que ser muy dificil y sobretodo el hacerlo uno mismo) la podrias liberar, y estaria de P.M!!!!
Un Saludo. Eso ya está hecho por otros, hace ya unas cuantas páginas comenté que yo saqué la idea de aquí. En la página hay 3 variantes distintas, la que yo implementaba es una modificación de la que utiliza el PIC, pero si no dispones de programador para el PIC o no te gusta esta opción, hay otras más sencillas, una con un 74LS75 y otra con un 74HC123. Por el final de la página, se dan los ficheros en varios formatos para fabricar un PCB hecho en SMD para que quede pequeñito y entre dentro de un conector SCART. Para cualquiera que tenga unos mínimos conocimientos de ruteo de PCBs, seguro que le es sencillo rehacer la placa para componentes de inserción. |
|  |
 | doragasu | |  Desconectado de la realidad
 Grupo: MemberMensajes: 1643 Status:  | |
| Al fin he tenido un poco de tiempo para picar un poco de código (y también para ver ganar a Alonso, menudo monstruo). El software tal y como lo tenía hecho tenía un problemilla y es que al utilizar un solo interfaz USB, se limitaba el refresco de cada uno de los joysticks a 25 refrescos por segundo (suponiendo que se están usando a la vez los 4 joysticks y a lo bestia), lo cuál tal vez sea poco para los más exigentes. Para paliar este problema he reestructurado el código para utilizar un interfaz para cada joystick, teclado y ratón, y con eso debería poder hacer hasta 100 refrescos por segundo para cada uno. Esto me ha supuesto hacer una reestructuración casi completa del código lo cuál me ha llevado unas cuantas horas. Ahora este es el aspecto que tienen (viendo los dispositivos por conexión):  Por hoy ya es suficiente. La siguiente tarea es testear un poco este sistema y luego hacerme un bootloader (y esto último me va a llevar muuuuuuuucho tiempo). Ah, por cierto, por si alguno piensa cosas raras, cuando digo que antes utilizaba un solo interfaz y que ahora uso uno para cada cosa, me refiero a interfaces software USB, no a interfaces hardware, vamos, que sigo haciendo todo eso con un sólo DUCK. |
|  |
 | doragasu | |  Desconectado de la realidad
 Grupo: MemberMensajes: 1643 Status:  | |
| Hoy he hecho una prueba del invento en mi SuSE Linux 9.2 y este es el resultado:  Tiene pinta de que funciona bien. Aquí tenéis un listado de los dispositivos de entrada encontrados. Los dos primeros son mi teclado y ratón PS/2, después va el altavoz del sistema y luego ya están el teclado del DUCK, los 4 joysticks y el ratón del DUCK (que es el único que no estoy seguro de que lo detecte correctamente, porque en los handlers no figura como mouse): CODE doragasu@doragasu-64:/proc/bus/input> cat devices I: Bus=0011 Vendor=0001 Product=0001 Version=ab41 N: Name="AT Translated Set 2 keyboard" P: Phys=isa0060/serio0/input0 H: Handlers=kbd event0 B: EV=120013 B: KEY=402000000 3802078f840d001 f2ffffdfffefffff fffffffffffffffe B: MSC=10 B: LED=7
I: Bus=0011 Vendor=0002 Product=0002 Version=0072 N: Name="PS2++ Logitech MX Mouse" P: Phys=isa0060/serio1/input0 H: Handlers=mouse0 event1 B: EV=7 B: KEY=9f0000 0 0 0 0 B: REL=103
I: Bus=0010 Vendor=001f Product=0001 Version=0100 N: Name="PC Speaker" P: Phys=isa0061/input0 H: Handlers=kbd event2 B: EV=40001 B: SND=6
I: Bus=0003 Vendor=04d8 Product=0100 Version=0001 N: Name="doragasu Technology Inc. DUCK! Arcade Controller" P: Phys=usb-0000:00:10.2-2/input0 H: Handlers=kbd event3 B: EV=100003 B: KEY=1000000000007 ff800000000007ff febeffdfffefffff fffffffffffffffe
I: Bus=0003 Vendor=04d8 Product=0100 Version=0001 N: Name="doragasu Technology Inc. DUCK! Arcade Controller" P: Phys=usb-0000:00:10.2-2/input1 H: Handlers=event4 js0 B: EV=b B: KEY=fff00000000 0 0 0 0 B: ABS=3
I: Bus=0003 Vendor=04d8 Product=0100 Version=0001 N: Name="doragasu Technology Inc. DUCK! Arcade Controller" P: Phys=usb-0000:00:10.2-2/input2 H: Handlers=event5 js2 B: EV=b B: KEY=fff00000000 0 0 0 0 B: ABS=3
I: Bus=0003 Vendor=04d8 Product=0100 Version=0001 N: Name="doragasu Technology Inc. DUCK! Arcade Controller" P: Phys=usb-0000:00:10.2-2/input3 H: Handlers=event6 js3 B: EV=b B: KEY=fff00000000 0 0 0 0 B: ABS=3
I: Bus=0003 Vendor=04d8 Product=0100 Version=0001 N: Name="doragasu Technology Inc. DUCK! Arcade Controller" P: Phys=usb-0000:00:10.2-2/input4 H: Handlers=event7 js4 B: EV=b B: KEY=fff00000000 0 0 0 0 B: ABS=3
I: Bus=0003 Vendor=04d8 Product=0100 Version=0001 N: Name="doragasu Technology Inc. DUCK! Arcade Controller" P: Phys=usb-0000:00:10.2-2/input5 H: Handlers=event8 B: EV=5 B: REL=3 Así que parece que la compatibilidad con Linux no va a ser problema. Ahora tengo curiosidad por probar en algún Mac... |
|  |
 | markg23 | |  Nerd powered
Grupo: MemberMensajes: 33 Location: Compostela Status:  | |
| Hola, lo primero animo, el proyecto es la ostia, y segundo yo creo que podríamos hacer un fondo común entre los usuarios del foro que esten interesados para que realices tu prototipo, y cuando lo tengas depurado podriamos encargar todos juntos varias placas para ahorrar en el precio. Ademas asi podrías saber si hay mucha gente interesada, quien sabe a lo mejor puede llegar a haber 1000 personas interesadas, con lo cual las 1000 placas saldrían tiradas. Creo que deberias hacer una encuesta.
P.D.: A mi lo del jamma me da igual porque... para que quieres el jamma si solo soporta 3 botones por jugador y 2 jugadores, si vas a usar el DUCK (para 4 jugadores, o spinner o trackball) vas a tener que cablear de todas todas, tenga jamma o no. |
|  |
 | doragasu | |  Desconectado de la realidad
 Grupo: MemberMensajes: 1643 Status:  | |
| Gracias por los ánimos, pero últimamente tengo la cosa un poco parada. Me temo que mi tiempo no da para más, entre clases, curro y desplazamientos me tiro unas 13 horas al día fuera de casa, casi todos los días. Luego descuenta tiempo para comer y dormir y otros menesteres (como estudiar, cuidar la higiene personal, papeleos de vez en cuando, etc...) y verás que no me queda nada de tiempo... Vamos, que salvo un poco que procuro tocarlo los findes, la cosa está bastante parada, nada más que tengo tiempo de pasar por el foro y porque lo miro a menudo desde el curro  Lo del fondo común ya se propuso antes, muchas gracias por vuestro apoyo, pero al menos por ahora, hasta que no tenga el cacharro acabado, mejor dejarlo. Sería muy desagradable que empezase a pedir pasta para luego dar con que no tengo tiempo para acabarlo. Más adelante si lo acabo y decido comercializar algo ya veremos... ¡¡¡Lo de las 1000 personas interesadas me parece extremadamente optimista!!! Vamos, que si supiese yo que hubiese 100 personas interesadas, ya casi seguro que me lanzaba con ello, pero lo cierto es que la cosa queda bastante lejos incluso de las 100... Pues lo dicho, muchas gracias por el apoyo, y decir que el proyecto no está abandonado, pero que va a paso de tortuga... |
|  |
 | Lord Hiryu | |  Master of Stick Of Pain!!!! I wanna Rock!!!!!!! And 80's Porn Star too!!!!!
 Grupo: Moderadores generalesMensajes: 4740 Location: Por Murcia,Barna,Madrid y Valencia más o menos Status:  | |
| Doragasu.....ánimo...y como se suele decir: Festina Lente....sin prisas, pero sin pausa..  Un saludo. |
|  |
 | doragasu | |  Desconectado de la realidad
 Grupo: MemberMensajes: 1643 Status:  | |
| Sigo trabajando en el invento a ratillos libres y ya tengo lista una versión preliminar del bootloader, por lo que cualquier usuario podría actualizar el DUCK sin necesidad de un programador ni cable adicional ni nada de nada. Afortunadamente, codificarlo me ha llevado menos tiempo del que esperaba. Por ahora sólo funciona en Windows con la línea de comandos, y este es el aspecto que tiene: CODE C:\Documents and Settings\doragasu\Mis documentos\Programas\VisualC\duck_bl\Release>duck_bl d:\ducktest.hex DUCK! bootloader v0.1
Borrando memoria... Borrado completado
Actualizando firmware... ........................................................................................................................ Firmware completamente descargado.
Verificando el firmware descargado...
Verificaci¾n completada con Úxito. Iniciando el nuevo firmware... Fin del proceso de actualizaci¾n.
C:\Documents and Settings\doragasu\Mis documentos\Programas\VisualC\duck_bl\Release> Mi intención es dotarlo de una interfaz gráfica e integrarlo con el programa que desarrolle para configurar el DUCK. Si algún día esto sale a la calle, también me gustaría dotarlo de encriptación AES de 128 bit, para evitar que alguien se cargue el aparato utilizando firmware no firmado y sobretodo para ponerle las cosas un poco más difíciles a los chinos que intenten copiarlo... Por cierto, ¿por qué el texto que va dentro de las etiquetas CODE no utiliza una fuente "monospaced", como la Courier? |
|  |
 | markg23 | |  Nerd powered
Grupo: MemberMensajes: 33 Location: Compostela Status:  | |
| Me alegro mucho ver que sigues con el proyecto, ánimo, y si necesitas ayuda o b-tester lo que sea no dudes en pedirla, se un poquito de programación (aunque no a tan bajo nivel como tu supongo). Que sepas que sigo tus progresos como mucha gente supongo. P.D.: Creo que voy a esperar y me comprare un duck en vez del j-pack que tenia pensado. |
|  |
 | doragasu | |  Desconectado de la realidad
 Grupo: MemberMensajes: 1643 Status:  | |
| QUOTE (markg23 @ 17/10/2005, 11:16) Me alegro mucho ver que sigues con el proyecto, ánimo, y si necesitas ayuda o b-tester lo que sea no dudes en pedirla, se un poquito de programación (aunque no a tan bajo nivel como tu supongo). Que sepas que sigo tus progresos como mucha gente supongo. P.D.: Creo que voy a esperar y me comprare un duck en vez del j-pack que tenia pensado.  ¡Cualquier ayuda es bienvenida! No sólo a bajo nivel, también tengo que programar en alto nivel para hacer la interfaz de usuario. Casi seguramente la haré en Visual C++ .NET o Visual Basic .NET, aún no me he decidido, aunque casi tiro más por el VB dada su mayor sencillez para hacer interfaces gráficas. Y no sólo me vendría bien ayuda con la programación, sino que en otros temillas también, por ejemplo si alguien tiene un rato en el que no sabe qué hacer y se quiere currar una distribución de teclas para los 64 switches compatible con MAME, o si alguien conoce algún sitio donde vendan conectores a un precio razonable, o si tiene cualquier sugerencia en general, pues le estaré muy agradecido. Unas sugerencias que me vendrían muy bien serían por ejemplo sobre la interfaz de usuario, sobre las opciones que debería tener y la distribución de los menús, etc. A ver si me instalo el WinIPAC para ir echando un vistado de lo que ofrece Andy, aunque yo no tengo ningún I-Pac ni J-Pac, pero para ver cómo ha organizado su interfaz. Por lo que puedo ver en la foto parece que tiene 2 modos, uno para asignar los keycodes y otro para hacer el diseño del panel. ¿El modo de diseño del panel es realmente útil? Porque yo no le veo mucha utilidad, tal vez no me moleste en incluir nada de este estilo. Lo del betatesting aún es pronto, aunque más adelante sí que necesitaré ayuda de este tipo. Por cierto markg23, más te vale pillar el j-pac porque como tengas que esperarte a que yo termine esto, no tienes maca hasta el día del Juicio Final |
|  |
 | markg23 | |  Nerd powered
Grupo: MemberMensajes: 33 Location: Compostela Status:  | |
| Pues en Visual Basic 6 y en VB .NET o C# puedo echarte las manos que quieras. Yo me decantaria mas por programar en .net el framework esta disponible para muchos sistemas incluso linux (proyecto mono). En cuanto al diseño del panel yo no le veo mucha utilidad, lo que pasa es que lo hace muy intuitivo para asignar las teclas, pero vamos que yo no me preocuparia por eso. En cuanto al interfaz de usuario yo diria que si vas a trabajar en modo joystick con el duck no necesitas programar nada, con interfaz el windows va que se mata, ahora para asignar las teclas en modo teclado... ya es otra historia... pero creo que con un esquema del joystick y un modo de asignación de teclas que funcionara e esta manera: 1. Activas el modo de asignación de teclas. 2. Al estar en este modo, primero esperas pulsación de boton o movimiento del joystick (entrada del duck). 3. Despues esperas pulsación de tecla para asignarla. 4. En pantalla en el esquema de las 4 direcciones del joystick y los botones aparecen las teclas asignadas. 5. Cuando tienes todo asignado opcion para guardar la configuración tanto en un archivo en el pc, como flashea/configurar el duck (no se si esta configuración a lo mejor quieres tenerla en el pc, o en el firmware del duck. Para empezar creo que bastaria de sobra con esto. P.D.: Al paso que voy (no consigo encontrar una green gold a buen precio) creo que tendre el duck antes que la maca  y al dia siguiente de tener el duck y la maca rulando a tope seguro que es el dia del juicio final!
Modificado por markg23 - 17/10/2005, 12:56 |
|  |
 | doragasu | |  Desconectado de la realidad
 Grupo: MemberMensajes: 1643 Status:  | |
| Coñe, no tenía ni idea de que se estuviese portando la plataforma .NET a Linux... en ese caso creo que lo haré en VB .NET. De C# no tengo ni idea, ni siquiera se hasta que punto se parece a C++. El método que me comentas de esperar entrada del DUCK, para luego asignar el código de tecla, parece lo más cómodo de cara al usuario final, pero para implementar algo así me tendría que empollar el API de Direct Input, ¿no? Esque de Direct X en general no tengo ni papa. Lo de guardar la configuración tanto en el DUCK como en un archivo en el PC no es problema en absoluto, y es algo que ya tenía pensado. Muchas gracias por los consejos y el apoyo |
|  |
 | markg23 | |  Nerd powered
Grupo: MemberMensajes: 33 Location: Compostela Status:  | |
| Pues la verdad es que de direct input no tengo N.P.I., mi trabajo solo involucra programas de gestión y servicios de windows, web y poco mas, pero bueno seria cuestion de mirarlo.
Suponiendo que el duck ya tenga siempre una configuración por defecto, esta claro que una entrada que actives (sea un boton, o joystick de la maca) dara como resultado el movimiento de un joystick configurado en windows y/o la pulsacion de una tecla, con esto supongamos que tu detectas siempre la tecla, como sabes la config. actual puedes saber a que entrada corresponde, y por lo tanto puedes pedir al usuario la pulsación de la tecla que quiere sea la nueva o que defina la acción que tomara esa entrada en el joystick de windows. Si solo detectas las entradas como pulsaciones de teclas no necesitarias direct input, me equivoco?
P.D. De nada por los consejos, a ver si la gente se anima. Creo que deberias hacer una encuesta para ver cuanta gente estaria dispuesta a colaborar con dinero para producir una serie limitada de pcbs, asi saldria mas barato entre todos no? |
|  |
 | doragasu | |  Desconectado de la realidad
 Grupo: MemberMensajes: 1643 Status:  | |
| QUOTE (markg23 @ 17/10/2005, 19:19) Pues la verdad es que de direct input no tengo N.P.I., mi trabajo solo involucra programas de gestión y servicios de windows, web y poco mas, pero bueno seria cuestion de mirarlo.
Suponiendo que el duck ya tenga siempre una configuración por defecto, esta claro que una entrada que actives (sea un boton, o joystick de la maca) dara como resultado el movimiento de un joystick configurado en windows y/o la pulsacion de una tecla, con esto supongamos que tu detectas siempre la tecla, como sabes la config. actual puedes saber a que entrada corresponde, y por lo tanto puedes pedir al usuario la pulsación de la tecla que quiere sea la nueva o que defina la acción que tomara esa entrada en el joystick de windows. Si solo detectas las entradas como pulsaciones de teclas no necesitarias direct input, me equivoco?
P.D. De nada por los consejos, a ver si la gente se anima. Creo que deberias hacer una encuesta para ver cuanta gente estaria dispuesta a colaborar con dinero para producir una serie limitada de pcbs, asi saldria mas barato entre todos no? Ese sistema ya lo pensé, pero tiene varios inconvenientes. El primero es que si el usuario por alguna razón se hace un lío y le da por pulsar teclas cuando debería de pulsar un botón del DUCK pues no tengo manera de saberlo, y lo mismo al revés, si cuando tiene que pulsar un código en el teclado pulsa accidentalmente un botón del DUCK (supongo que que esto ocurra es más fácil) pues tampoco puedo saberlo. Al final supongo que acabaré utilizando un sistema de combo boxes con las teclas del teclado. Es más "coñazo" pero no me obliga a aprender Direct X. Además si el sistema tiene éxito ya tendré tiempo de actualizarlo... También creo que podría hacer algún apaño definiendo un interfaz USB sólo para configuración, y pasando las pulsaciones de tecla por ese interfaz. Es algo que tengo que probar, no se si se podrá hacer sin demasiadas complicaciones y sin romper la compatibilidad con Linux/MacOS. Lo de la encuesta pues tal vez la haga, pero como ya he comentado, cuando tenga el tema más maduro. Por cierto, lo que sale más caro no es la PCB, sino los conectores, por eso si alguien sabe de algún lado donde tengan conectores baratos, y no te obliguen a comprar cantidades exageradas (como los 500 que me pedían de mínimo en la web de unos chinos) me interesaría mucho. |
|  |
| 304 respuesta(s) desde el 28/8/2005, 10:17 |
| | | | |
|