Arduino Forum

International => Español => Software => Topic started by: txinas on Oct 29, 2014, 07:22 pm

Title: Volante f1 2014 LCD 5 Pulgadas
Post by: txinas on Oct 29, 2014, 07:22 pm
Hola buenas a todos. Como bien dice el titulo quiero hacerme la parte electronica de un volante actual de F1.

Ya he comprado el arduino mega:

http://store.arduino.cc/product/A000067 (http://store.arduino.cc/product/A000067)

Y este seria la pantalla:

http://www.ebay.es/itm/Fuente-IC-pantalla-TFT-LCD-5-5-pulgadas-800x480-Arduino-DUE-MEGA2560-3-5-4-3-/111435579572?pt=LH_DefaultDomain_186&hash=item19f21400b4 (http://www.ebay.es/itm/Fuente-IC-pantalla-TFT-LCD-5-5-pulgadas-800x480-Arduino-DUE-MEGA2560-3-5-4-3-/111435579572?pt=LH_DefaultDomain_186&hash=item19f21400b4)

El año pasado aprendí a programar en C y creo que esto va a ser parecido.La duda que tengo es que como un display trasmite los datos del juego o simulador  necesito un programa que me de datos del simulador que uso para que pueda empezar a hacer el programa. No he echo nunca un programa , me gustaría saber si hay programas estandares  para poder sacar esos datos del juego y empezar a programar. O algún tutorial de como poder sacar esos datos del juego.

Gracias
Title: Re: Volante f1 2014 LCD 5 Pulgadas
Post by: carmeloco on Oct 29, 2014, 08:07 pm
Pues el primer problema es el modelo de arduino que has comprado. Para poder comunicar con el PC como si fuese un mando USB, tendrías que haber comprado un Leonardo, un Due o un Micro, que tienen esa funcionalidad.

Title: Re: Volante f1 2014 LCD 5 Pulgadas
Post by: txinas on Oct 30, 2014, 03:44 pm
Hola Carmeloco primeramente gracias por contestar.

No se puede hacer nada con el Arduino Mega?? Hay algun manera de de comunicar con el pc como si fuese un mando??

La cuestión es que todabia no me ha llegado el arduino. Lo tengo comprado pero estoy esperando para que llegue. La cuestión es que quiero que tenga la máxima de entradas y salidas. Para el caso que quiero que arduino me recomendarías??

Y luego esta el tema de la pantalla.Me vale la pantalla del enlace de arriba?

gracias.
Title: Re: Volante f1 2014 LCD 5 Pulgadas
Post by: surbyte on Oct 30, 2014, 04:25 pm
Si lo que quieres hacer es un jostick USB camerloco tiene razón. Ya está respondido este mismo tema hace una o dos semanas.
El mega no puede, tal como esta. Ahora si compras el USB Host, supongo que si.
Title: Re: Volante f1 2014 LCD 5 Pulgadas
Post by: txinas on Oct 30, 2014, 04:49 pm
Gracias Surbyte. Entonces si le compro ese accesorio se puede hacer lo que pretendo? gracias y perdon pero es la primera vez de esto de arduino y estoy un poco perdido.

Gracias otra vez.

saludos.
Title: Re: Volante f1 2014 LCD 5 Pulgadas
Post by: carmeloco on Oct 31, 2014, 12:28 am
El shield USB host, si no me equivoco, es para lo contrario, para conectar un teclado o mouse al arduino, no para que el arduino haga su función en un ordenador.
Title: Re: Volante f1 2014 LCD 5 Pulgadas
Post by: surbyte on Oct 31, 2014, 12:26 pm
Txinas, busca por favor el post que se habla de lo mismo (o eso creo yo), esta 1 o 2 paginas mas atras.

Otra cosa yo no entiendo que quieres decir por mando USB carmeloco? un dispositivo USB puede ser dos cosas cliente o host. El mega ya es cliente, de modo que si no puede hacer algo que si lo hace con un host entonces requiere de un shield, no?

Que está mal en mi análisis?
Se que se me escapa algo o no es asi, sigo sin entender que es un mando USB o cual es la función que un arduino puede hacer en una PC.

Title: Re: Volante f1 2014 LCD 5 Pulgadas
Post by: carmeloco on Oct 31, 2014, 01:53 pm
Con mando USB, me refería a joystick USB.

El USB host shield, digamos que es un dispositivo de entrada USB al arduino. Si miras el texto del "overview" del USBnhost shield, lo explica.

http://arduino.cc/en/Main/ArduinoUSBHostShield (http://arduino.cc/en/Main/ArduinoUSBHostShield)

Es para poder conectar cosas como teclados, mouses, joysticks, e incluso pendrives. Con los dispositivos de entrada, puedes controlar el arduino, usando la librería correcta para ello. También hay una librería para usar pendrives.

Lo que necesita txinas, es que el USB del arduino, se comporte como USB de salida, haciendo las funciones de un teclado, cuando lo conectas a un PC. Esta funcionalidad la tienen solamente los Leonardo, micro due y esplora.

Un ejemplo que puedes probar si tienes uno de estos:

http://arduino.cc/en/Tutorial/KeyboardMessage (http://arduino.cc/en/Tutorial/KeyboardMessage)
Title: Re: Volante f1 2014 LCD 5 Pulgadas
Post by: txinas on Oct 31, 2014, 03:56 pm
Gracias Carmeloco.

Vale me imagino que tendré que cambiar el Arduino que he comprado y cambiarlo por otro. Ahora que veo que tienes experiencia en esto va mi pregunta?

Como bien dice el titulo quiero hacer un volante actual de F1. Con su display LCD. Quiero que tenga las maximas entradas y salidas. Que Arduino me recomiendas para esto?

Y luego esta el display. Que display me recomiendas? Quiero uno de 5 pulgadas.

GRACIAS.
Title: Re: Volante f1 2014 LCD 5 Pulgadas
Post by: carmeloco on Oct 31, 2014, 05:27 pm
El problema del display está en ¿cómo se comunica con el juego de f1? Habría que averiguar cómo hacerlo...
Title: Re: Volante f1 2014 LCD 5 Pulgadas
Post by: surbyte on Oct 31, 2014, 06:32 pm
Bueno ahora que cambié el chip en mi cabeza (estaba equivocado) aporto algo mas alla que especificamente no es mi tema.

Existen USB Protocol Analyzer (http://www.hhdsoftware.com/usb-monitor) con el que podras ver que datos intercambia el Joystick real con el juego.

Title: Re: Volante f1 2014 LCD 5 Pulgadas
Post by: txinas on Nov 01, 2014, 09:39 am
Chicos para recibir los datos del juego necesitas una aplicación. Para desarrollarlo me han dicho que utilice Microsoft Visual Studio. Luego esos datos abra que visualizarlos en el display LCD.

 Que arduino compro para esto?

El display de 5 pulgadas que esta arriba me baldria?

Gracias.
Title: Re: Volante f1 2014 LCD 5 Pulgadas
Post by: surbyte on Nov 01, 2014, 01:19 pm
Cual es el juego? Puedes poner el enlace please?

Tienes capturas de pantallas del juego para ver que cosas debería mostrar el display 5"?

Que Arduino?
Basado en esto y en mi experiencia con Mega (que no sirve), un DUE (que si sirve) y una pantalla TFT de 4.3" te diré que uses un DUE, porque refrezca mejor la pantalla por lejos, y un juego es dinámico y lo vas a notar cuando lo sientas lento.
Leonardo es inferior a Mega de modo que descartado también.

Esa es mi sugerencia de que Arduino debes usar.

Acabo de encontrar esto, creo lo tuyo es a la inversa pero tal vez te de una idea haciendo ingeniería inversa. Tu necesitas justamente Generar esos códigos que acá fueron leidos del joystick
Tal vez digo tal vez, puedes montar un joystick real, leer los códigos usando este link y luego emularlos con tu proyecto.

Developing Arduino code for HID Joystick (http://www.circuitsathome.com/mcu/hid-joystick-code-sample)
Title: Re: Volante f1 2014 LCD 5 Pulgadas
Post by: txinas on Nov 03, 2014, 05:36 pm
Hola chicos el juego es assetto corsa. Y otros simus tambien como Rfactor 2.

Quiero que muestre asi mas o menos:



Todos los simuladores tienen datos que puedes ponerlos. Temperaturas , GAP, Marchas de cambios y muchas cosas mas.

Lo que quiero es esto:
https://www.youtube.com/watch?v=MUXozKlXUoE (https://www.youtube.com/watch?v=MUXozKlXUoE)

No quiero una mini pantalla. Quiero una grande 5 pulgadas mínimo.

Lo que has puesto no lo he leído bien. Ya le daré mas vueltas.

Gracias.

Title: Re: Volante f1 2014 LCD 5 Pulgadas
Post by: txinas on Nov 05, 2014, 09:55 pm
Hola chicos,  e intentado leer pero el ingles no lo domino. Google traduce mal asike si hay algien que pueda traducirlo un poco seria de agradecer.

Aber ya me ha llegado el mega a casa y no se puede hacer nada con el??

Gracias.
Title: Re: Volante f1 2014 LCD 5 Pulgadas
Post by: surbyte on Nov 05, 2014, 10:11 pm
Que quieres leer el link que yo te puse?
Title: Re: Volante f1 2014 LCD 5 Pulgadas
Post by: txinas on Nov 06, 2014, 06:10 pm
Hola surbyte. Yo no tengo conocimientos de arduino. Lo que voy a intertar hacer es la primera vez. Si me resumerias en pocas palabras mas o menos para que pudiera entender.

La cuestion que tengo es que lei en el link que me pusiste algo de arduino mega pero no se que quiere decir sobre ello. La cuestion es que si tengo que cambiar el arduinoi que tengo por otro , que arduino tengo que comprar la  DUE? Le puedo meter una pantalla mas grande, mas o menos de 5 pulgadas?esta?

http://www.ebay.es/itm/Fuente-IC-pantalla-TFT-LCD-5-5-pulgadas-800x480-Arduino-DUE-MEGA2560-3-5-4-3-/111435579572?pt=LH_DefaultDomain_186&hash=item19f21400b4 (http://www.ebay.es/itm/Fuente-IC-pantalla-TFT-LCD-5-5-pulgadas-800x480-Arduino-DUE-MEGA2560-3-5-4-3-/111435579572?pt=LH_DefaultDomain_186&hash=item19f21400b4)


GRACIAS.

Title: Re: Volante f1 2014 LCD 5 Pulgadas
Post by: surbyte on Nov 06, 2014, 06:55 pm
Si el DUE esta entre los posibles yo te recomiendo el DUE por velocidad para actualizar cosas en una pantalla 5". Ahora para el tema USB pregunta a camerloco que el sabe y tiene mas experiencia que yo.
Yo solo te guié con algun ejemplo.
El link te lo puedo resumir pero igual implica dedicación

   
Desarrollando código Arduino para un Joystick HID

Este artículo se enfoca en como usar la librería USB existente y la info del descriptor HID para implemetar la funcionalidad joystick
Información legible del descriptor HID puede obtenerse facilmelmente usando el sketch USBHID_desc.pde - ver articulos previos para mas detalles. Esta información lo ayudará en obtener detalles tales como tamaño e info de cuentas. También, si no tienes un arduino Mega 2560 para correr USBHID_desc, el reporte de descripción para tu dispositivo puede obtenerse usando uno de muchas herramientas de PC conocidas como Analizador USB, o la herramientas de verificación del sitio oficial usb.org. El articulo está escrito por Alex Glushchenko - un desarrollador detras de la segunda revisión de la librería USB Host Library asi mismo como gran parte del código de soporte de dispositivos.

Lo que se debe saber es que el reporte es una estructura de datos usados por el dispositivo HID que devuelve información acerca de ciertos parámetros tales como coordenadas del joystick, eventos de botón, o recibir seteos de activación deleds en el teclado .

El reporte descriptor es una estructura de datos que describe uno o varios reportes, si hay pocos en número, secuencia de campos, tamaños y cuentas. Cada reporte descriptor consiste en varios items. Cada item describe las propiedades del campo. No voy a ir muy profundo en los detalles o items, explicando solo los mas importantes  que son absolutamente necesarios para escribir tu propio interpretador de reporte.

Los items usualmente describe el tipo de campo (input/output/característica), valores minimo, máximo , unidades, valor medio (usado), etc.

El joystick que estoy usando puede verse en una pequeña imagen (clickear para verlo mas gande). Acá se ve mi reporte descriptivo de joystick

Usage Page Gen Desktop Ctrls(01)
Usage Game Pad
Collection Application
Collection Logical
Report Size(08)
Report Count(05)
Logical Min(00)
Logical Max(FF00)
Physical Min(00)
Physical Max(FF00)
Usage X
Usage Y
Usage Z
Usage Z
Usage Rz
Input(00000010)
Report Size(04)
Report Count(01)
Logical Max(07)
Physical Max(3B01)
Unit(14)
Usage Hat Switch
Input(01000010)
Unit(00)
Report Size(01)
Report Count(0C)
Logical Max(01)
Physical Max(01)
Usage Page Button(09)
Usage Min(01)
Usage Max(0C)
Input(00000010)
Usage Page Undef(00)
Report Size(01)
Report Count(08)
Logical Max(01)
Physical Max(01)
Usage
Input(00000010)
End Collection
Collection Logical
Report Size(08)
Report Count(07)
Physical Max(FF00)
Logical Max(FF00)
Usage
Output(00000010)
End Collection
End Collection
Title: Re: Volante f1 2014 LCD 5 Pulgadas
Post by: txinas on Nov 06, 2014, 09:02 pm
Gracias surbyte, lo he entendido mas o menos pero una cosa lo que escribes al final es el codigo de programacion de arduino no?

Ya le he mandado un email para que me cambien. voy a ir poco a poco. no tengo prisa.
Title: Re: Volante f1 2014 LCD 5 Pulgadas
Post by: surbyte on Nov 06, 2014, 10:07 pm
El codigo esta aca, Codigo (https://github.com/felis/USB_Host_Shield_2.0/tree/master/examples/HID/USBHIDJoystick)
no salio la segunda parte de la traducción por diossssssssssssssss.