Hola... necesito ayuda con mi proyecto ya que no se mucho de electronica y estoy perdido.
El proyecto consiste en poder leer el can bus que intercomunica los dispositivos de AIM Sports, mas precisamente el Mychron4 y sus perifericos (GPS, Ebox,etc).
Para esto he comprado un modulo de can bus (http://articulo.mercadolibre.com.ar/MLA-500728624-modulo-can-bus-spi-con-mcp2515-tja1050-ideal-arduino-pic-_JM) que esta basado en el chip MCP2515.
En principio la parte fisica parecia que seria la mas sencilla, ya que estaba basada en un estandard (CAN BUS) y que lo trabajoso seria desenmaraniar el protocolo propietario que intercomunica los dispositivos.
Pero no, no logre pasar la primera etapa.... he probado varias librerias y obtengo mas o menos el mismo resultado.
El modulo del MCP2515 esta conectado al arduino UNO via SPI usando los pines 10 para CS, 11 para SI, 12 para SO, 13 para SCK, ademas de 5v a Vcc y GND. Adicionalmente el 2 a INT.
El problema es que no recibo nada en modo normal y si pongo el modo listen obtengo lecturas que no tienen sentido....
No se por dende buscar el problema.... asi que espero que alguno me pueda orientarme asi me destrabo y puedo continuar con el proyecto.
Agrego informacion:
En modo LISTENONLY obtengo lecturas en todas las velocidades y en modo NORMAL no leo nada en ninguna velocidad
Yo primero probaría leer los datos del can bus con un analizador lógico, como el Saleae Logic.
Acabo de conectar el Can Bus de un GPS de AIM en el Saleae Logic, y tampoco obtengo cosas realmente claras...
Lo suyo es que AIM diera las direcciones CAN de sus dispositivos, pero creo que eso, no lo van a hacer. Eso solo lo hace 2D, y porque la única forma de configurar los loggers de 2D, es poniendo las direcciones CAN manualmente.
Aparentemente descubri por que no leo nada en modo normal. La velocidad de transmision de los Mychron es de 1mbit y el modulo de CAN BUS que estaba usando tiene un cristal de 8mhz y por lo tanto no puedo llegar a esta velocidad.
Respecto a como probar, me parece que la forma correcta es generar trafico valido y escuchar el bus, es decir enchufar un Mychron4, un hub, y otro dispositivo (ebox, gps, smartycam).
En cuanto logre solucionar mi problema de velocidad vuelvo al proyecto.
Carmeloco, no te entiendo a que te referis con 2D.
Bueno... he solucionado el problema comprando el shield de sparkfun. El sistema del Mychron4 efectivamente se comunica mediante CAN BUS a 1mbit.
De aqui en mas es hacer ingenieria inversa sobre el protocolo de intercambio de datos de los dispositivos, y lograr comportarse como uno de ellos.
2D, es otra marca de adquisiciones de datos para vehículos de competición, bastante más cara que AIM.
Para aquellos interesados en el tema les dejo un link a los avences.....
http://mychron4.webnode.com/
spectrum:
Para aquellos interesados en el tema les dejo un link a los avences.....
http://mychron4.webnode.com/
Hi Spectrum,
Your work on interpreting the Mychron CANBUS language is fantastic! It is something that I have been interested in doing for some time. I have purchased a Seeed Arduino Canbus card http://www.seeedstudio.com/wiki/CAN-BUS_Shield but have not made much progress because I do not know where to start. Your work and website has been a big help to give me motivation to try again. I hope you continue your work and are kind enough to share it here.
Thanks and best regards,
Anthony
Hola Spectrum,
Su trabajo sobre la interpretación de la lengua CANBUS MyChron es fantástico! Es algo que he estado interesado en hacer desde hace algún tiempo. He comprado una tarjeta de Seeed Arduino de Canbus http://www.seeedstudio.com/wiki/CAN-BUS_Shield pero no han avanzado mucho porque yo no sé por dónde empezar. Su trabajo y el sitio web ha sido de gran ayuda para darme la motivación para intentarlo de nuevo. Espero que continúe su trabajo y es la amabilidad de compartir aquí.
Gracias y saludos,
Antonio
(El uso de Google Translate)
Thanks for your words poida97. Please, keep me informed of your progress. Check the website periodically for updates.
Thanks and best regards
Hi Jorge,
I've slowly made progress although still much work to do. I have been able to use 1## message ids to partially imitate an ebox, and have been able to successfully send temperatures to the M4 unit.
I have not been able to get the RPM to display, also I cannot get speed to display although the M4 does recognise that the speed sensor is moving because the M4 changes to moving mode.
I think that the problems listed above might be related to my failure thus far to get the M4 to recognise or register the ebox properly, which will activate the ebox options in the M4 menus. I will try a few more things tonight based on your advice to "indicate extended IDs correctly".
Note the extended IDs for the Smartycam/GPS/ebox/Lambda that you have listed on your website are actually the unique serial numbers for the peripherals, so maybe a good idea for you to remove them?
So, unfortunately not much new information for you, but I will keep working.
Thanks,
Anthony
Hola Jorge,
He hecho poco a poco el progreso, aunque aún queda mucho trabajo por hacer. He sido capaz de usar 1 # # Message ids imitar parcialmente un ebox, y he sido capaz de enviar correctamente la temperatura a la unidad M4.
No he sido capaz de conseguir la RPM para mostrar, también no puedo conseguir la velocidad para mostrar aunque la M4 reconoce que el sensor de velocidad se está moviendo porque la M4 cambia al modo de moverse.
Creo que los problemas enumerados anteriormente pueden estar relacionados con mi fracaso hasta el momento de obtener la M4 reconocer o registrar el ebox correctamente, lo que activará las opciones ebox en los menús M4. Voy a tratar un poco más las cosas de esta noche en base a su consejo de "indicar extendida IDs correctamente".
Tenga en cuenta las identificaciones extendidas para el SmartyCam/GPS/ebox/Lambda que usted ha enumerado en su sitio web son en realidad los números de serie únicos para los periféricos, así que tal vez es una buena idea para que usted los elimine?
Así que, por desgracia, no mucha información nueva para usted, pero voy a seguir trabajando.
Gracias,
Antonio
It appears that the answer might have been right under my nose the whole time! I will check tonight, hopefully it really is the difference between a "0"and a "1" in the code.
Ok... thanks for you advise. I not consider that the extended ID's for register are the serial numbers for the devices. i delete them. I am not currently working on the project now but i still interested.
If you want i can complete the webpage with you info. There are a lot of thing to complete.
Sorry for my bad english
Yes, the diference in my case was an "1" in the code. Please, feel free to write directly to me.