Jump to content

Proyecto ASI-Can


zx81

Publicaciones recomendadas

Hola

 

En el subforo de Car-Audio abrí hace mucho tiempo un post sobre cómo tener un botón SDS para los que no llevasen volante multifunción. Yo lo tengo en el coche desde hace tiempo aprovechando electrónica reciclada de cuando estuve urgando en el FIS y el RNS-E, el caso es que la idea era hacer una placa genérica y programada para que cualquiera pudiera tener este "gadget" y otros similares aprovechando mi experiencia, pero me tocaron un poco las narices y abandoné el tema. El caso es que he cambiado un poco el planteamiento y en lugar de diseñar la placa, fabricarla y distribuirla, he preferido utilizar cosas ya hechas, con menos prestaciones, pero que cualquiera puede comprar y así no me veo involucrado en el tema.

 

¿Qué es ASI-Can?

 

Bueno, primero lo he llamado así por llamarle de alguna manera :thumbsup: el caso es que es una placa que puede ser conectada al bus CAN del coche (en ese caso al Infotainment), que tiene entradas digitales y analógicas (para añadirle botones, sondas, etc) y un puerto RS-232 (para conectarla a un CarPC, un portátil, etc). Físicamente es una pequeña placa de apenas 5x5cms conectable directamente a +12V:

sbc28pcir2.jpg

 

¿Qué puede hacer?

 

Pues muchas cosas, pero la idea inicial es emular hardware que nuestro coche no lleva. Por ejemplo:

 

- Para los que no lleven volante multifunción pero sí lleven el coche preparado para control por voz, pueden poner un botón que active la función SDS o que simule en realidad todos los botones de un volante MF (volumen, siguiente/previo, buscar...).

- Activar la entrada de vídeo del RNS-E sin necesidad de añadirle un interface de vídeo adicional (requiere que la fuente de vídeo sea RGB S)

- Poner la velocidad en digital en el FIS

- Controla dispositivos externos basándose en los botones que se pulsen en el coche

- Analizar el tráfico CAN con un PC+RS232 para trastear en el coche.

 

etc, etc.

 

¿Dónde se compra y cuánto cuesta?

 

Me he basado en algo sencillo de encontrar y que sea barato, la placa cuesta unos 19€ y con micros creo que no llega a 30€, la fabrica Modtronix y puede encontrarse en varios distribuidores en internet, la página original es esta: http://www.modtronix.com/product_info.php?...17a0a3aaad0118e

La que yo he escogido lleva incorporado un reloj de 20Mhz, el controlador CAN MCP2551 y el PIC 18F258 (a la hora de hacer el pedido puedes añadirle estos componentes y te lo mandan montado).

 

¿Y ésto como lo conecto al coche?

 

Depende un poco de dónde lo quieras montar, pero como inicialmente vamos a operar en el bus Infotainment lo más sencillo es extraer la radio o el navegador y conectarlo en esa zona. La placa necesita cuatro hilos para funcionar, aparte de los que luego le queramos añadir para la emulación de botones:

sbc28pcir2.jpg

 

Vale, tengo la placa y es fácil montarla, ¿pero cómo la programo?

 

Bueno, esto quizá sea lo más complicado para un novato. La placa está controlada por un microcontrolador PIC así que puede programarse con cualquier programador que soporte la serie 18F o en general que tenga un puerto ICSP, eso se conecta a cualquier PC y se le vuelca el programa con ICProg, WinPic800, o cualquier otro software de programación gratuito. En realidad esto es un poco como VagCom, si no sabes muy bien lo que hace, mejor búscate un forero de tu zona que te eche una mano :laugh: Si te gusta este invento es más sensato comprar un programador, son muy sencillos de manejar y una vez que la placa quede instalada en el coche siempre puedes actualizarle el software tú mismo. En cualquier caso, si alguien lo necesita, puedo publicar un tutorial paso a paso sobre cómo programar el micro, sitios donde adquirir un programador, etc, no son nada caros.

 

¿De dónde saco el software de la placa?

Si tienes conocimientos de programación te habrá sobrado todo este hilo porque añadir estas funciones al coche es una chorrada y podrías haberlo hecho tú mismo, así que en caso de que no tengas ni idea pero te quieras aventurar, yo publicaré en este mismo hilo el software necesario ya compilado así como las revisiones que le vaya haciendo. En principio las funciones dependerían un poco del interés que hubiera, yo ahora tengo hecho uno que activa el SDS y el puerto de vídeo del RNS-E, el resto de cosas dependería de que me interesen, que pueda/sepa hacerlas y que pudiera probar con lo que yo tengo (si alguien pide algo para un A8, o me deja el coche, o mal vamos :laugh: )

 

Soy un máquina, ya tengo la placa, el micro programado, los cables preparados para el coche, ¿y ahora qué?

 

Originalmente esto nació para el botón SDS, así que veamos qué necesitamos para añadir el famoso botón a nuestro coche, el procedimiento sería igual para casi cualquiera de las otras funciones que podríamos darle: ya tenemos todo el hardware listo así que solo nos queda lo básico, un botón de cualquier forma, tamaño o modelo. Tomo prestada una foto de mi instalación del Parrot hace años, ahora llevo BT original y un navi, pero el botón que usé en su día para el Parrot lo he aprovechado para el SDS, de modo que como veis, en realidad es un botón original Audi que queda completamente integrado en el coche:

parrot181mv.jpg

El caso es que una vez que hayáis escogido el tipo de botón y hayáis decidido dónde montarlo (eso es personal de cada uno), de ese botón saldrán dos cables que son los que puentea cuando lo pulsas, pues bien, esos cables hay que pincharlos en la placa ASI-Can, dependiendo de qué función hayamos escogido, irán en un punto o en otro, en concreto para el SDS irían aquí:

sinttulovn.png

Esta parte no plantea mayor problema puesto que simplemente se trata de conectar un pulsador a la placa. El efecto es que cuando pulses, ASI-Can inyecta en el bus el comando que corresponda y el navi entrará en modo SDS. Instalado en una mesa quedaría un conjunto tal que ASI:

fotosf.jpg

 

¿Esto funciona en todo tipo de coches A3/A4/A6...?

Solo está probado en A4 B6/B7 y por extensión en el Seat Exeo, pero en realidad podría valer para cualquier modelo que use CAN, si los comandos no son los mismos se podrían buscar y hacer versiones específicas para un modelo. Por ejemplo el tema del SDS es de suponer que funcionará en todos los que equipen RNS-E, da igual el modelo, pero otras cosas (como pintar ciertas cosas en el FIS) puede que necesiten de otros comandos.

 

Bueno, de momento os dejo esto así a ver si le interesa a alguien el tema.

 

Software:

 

Versión 0.0.1, activar función SDS (ver fichero txt dentro del ZIP), descargar AQUI

 

Saludos

Enlace al comentario
Compartir en otros sitios web


  • Respuestas 178
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Posted Images

Llevo unos dias investigando con el CAN bus y por el momento tengo un interface CAN hecho a mano con componentes discretos y un Arduino, descodifico mensajes pero la sincronización es muy limitada. El siguiente paso era acoplar un MCP2515.

 

Mi proyecto inicial era utilizar los botones del volante para manejar un Pioneer Avic. Se descodifican los mensajes del CAN bus y se emula el mando a distancia. Solamente hay que esconder un led de infrarrojos.

Enlace al comentario
Compartir en otros sitios web

Llevo unos dias investigando con el CAN bus y por el momento tengo un interface CAN hecho a mano con componentes discretos y un Arduino, descodifico mensajes pero la sincronización es muy limitada. El siguiente paso era acoplar un MCP2515.

 

Mi proyecto inicial era utilizar los botones del volante para manejar un Pioneer Avic. Se descodifican los mensajes del CAN bus y se emula el mando a distancia. Solamente hay que esconder un led de infrarrojos.

Con este hardware ya tendrías todo hecho, sería solo cuestión de software, en cualquier caso aunque sigas con lo tuyo filtra todo el tráfico, quédate solo con el grupo 5C3 y ahí tienes toda la botonera del volante.

 

Saludos

Enlace al comentario
Compartir en otros sitios web

Llevo unos dias investigando con el CAN bus y por el momento tengo un interface CAN hecho a mano con componentes discretos y un Arduino, descodifico mensajes pero la sincronización es muy limitada. El siguiente paso era acoplar un MCP2515.

 

Mi proyecto inicial era utilizar los botones del volante para manejar un Pioneer Avic. Se descodifican los mensajes del CAN bus y se emula el mando a distancia. Solamente hay que esconder un led de infrarrojos.

Con este hardware ya tendrías todo hecho, sería solo cuestión de software, en cualquier caso aunque sigas con lo tuyo filtra todo el tráfico, quédate solo con el grupo 5C3 y ahí tienes toda la botonera del volante.

 

Saludos

 

Estoy un poco estancado en la rutina de captura, ya te digo que el tema de la sincronización me trae problemas. En plan "guarro" ya funcionaría, he conseguido, no descodificar, pero sí "identificar" los comandos del volante. Diferenciar los botones: Vol+, Vol-, Up, Down y Radio/Telefono. Con cinco botones y si pudiera acceder al FIS y después conectar con el bus de confort.... con un menú podrias hacer muuuchas cosas. No avanzo más porqué quiero asegurarme de que la base del programa sea fiable, para que el proyecto pueda avanzar, no quedarme con un mando a distancia en el volante.

 

¿Con la placa que describes descodificas las tramas con garantias?

Enlace al comentario
Compartir en otros sitios web

Yo quiero montar un arduino en el coche para que me de el consumo instantaneo. Mi a3 del 98 no tiene FIS y con esto puedo emular el medidor de autonomía y consumo

http://ecomodder.com/forum/showthread.php/...lable-6914.html

http://ecomodder.com/wiki/index.php/MPGuino

 

Solo que me haría falta saber de donde sacar el cable que viene de los inyectores y va a la centralita... También el de VSS, pero ese mas o menos creo que se de donde sacarlo.

Me estoy peleando con ELSA pero no logro hacerme con una version que me funcione. Y son varios gigas cada descarga :huh:

 

Es super interesante el tema arduino.

 

Si alguien pilota de ésto que me ayude pleaase!

gracias

post-50241-1267487210.jpg

Editado por cesardeluxe
Enlace al comentario
Compartir en otros sitios web

Estoy un poco estancado en la rutina de captura, ya te digo que el tema de la sincronización me trae problemas. En plan "guarro" ya funcionaría, he conseguido, no descodificar, pero sí "identificar" los comandos del volante. Diferenciar los botones: Vol+, Vol-, Up, Down y Radio/Telefono. Con cinco botones y si pudiera acceder al FIS y después conectar con el bus de confort.... con un menú podrias hacer muuuchas cosas. No avanzo más porqué quiero asegurarme de que la base del programa sea fiable, para que el proyecto pueda avanzar, no quedarme con un mando a distancia en el volante.

 

¿Con la placa que describes descodificas las tramas con garantias?

No sé qué problemas tienes, probablemente estás usando una placa que no es la correcta para el uso que necesitas porque Arduino es demasiado genérico, yo tengo la teoría de que lo que vale para todo en realidad no vale para nada. Cualquier placa que tenga un controlador CAN no puede tener problemas de sincronización, es cuestión de que tengas bien ajustado el bittiming conforme al oscilador que tengas y poco más, la comunicación no puede tener problemas, pero el hardware debe ser el correcto, luego el software no tiene demasiado misterio.

 

El tema del FIS lo tienes más complicado porque vas a tener que empezar a emular dispositivos, por ejemplo los comandos de escritura en las dos primeras líneas (las de la radio) son el 261 y el 263, pero el FIS solo los aceptará si antes ha detectado la radio (aunque creo que los naranjas tragan aunque no detecten radio), como tú no la llevas tienes que inyectar periódicamente el comando que indica presencia de radio (depende del modelo que simules). Además olvídate de usar más allá de las dos primeras líneas, porque es imposible, en los FIS que usaban clock+data sí se consiguió, pero en los CAN nada de nada. Digamos que vas a entrar en un terreno donde el programa tiene que hacer bastantes más cosas, controlar tiempos por interrupciones, generar secuencias de comandos, etc, no tan simple como una captura de un comando y una generación de pulsos para el emisor de IR.

 

Yo quiero montar un arduino en el coche para que me de el consumo instantaneo. Mi a3 del 98 no tiene FIS y con esto puedo emular el medidor de autonomía y consumo

http://ecomodder.com/forum/showthread.php/...lable-6914.html

http://ecomodder.com/wiki/index.php/MPGuino

 

Solo que me haría falta saber de donde sacar el cable que viene de los inyectores y va a la centralita... También el de VSS, pero ese mas o menos creo que se de donde sacarlo.

Me estoy peleando con ELSA pero no logro hacerme con una version que me funcione. Y son varios gigas cada descarga :huh:

 

Es super interesante el tema arduino.

 

Si alguien pilota de ésto que me ayude pleaase!

gracias

En tu caso yo lo afrontaría de manera diferente, olvida todas esas historias de cables de inyectores y centralita, y conéctate a la línea K, es la de diagnóstico y más que probable que ahí tengas el consumo del coche en tiempo real, o al menos los datos necesarios para calcularlo, luego lo pintas donde quieras. Digamos que es hacerte un cable de VagCom, pero personalizado, yo para mi CarPC hice pruebas con esas historias y se podían sacar todos los valores sin problemas.

 

Saludos

Editado por zx81
Enlace al comentario
Compartir en otros sitios web

Alucinado me quedo

 

La verdad que es un aporte interesante y un trabajo extraordinario para quienes no tenemos ningún conocimiento de informática o estos temas de Can-Bus.

Estaré pendiente del tema para ver hasta donde llega y si en algún momento puedo darle utilidad en mi vehículo sin introducir demasiada electronica.

Un saludo y adelante con el tema.

Enlace al comentario
Compartir en otros sitios web

En tu caso yo lo afrontaría de manera diferente, olvida todas esas historias de cables de inyectores y centralita, y conéctate a la línea K, es la de diagnóstico y más que probable que ahí tengas el consumo del coche en tiempo real, o al menos los datos necesarios para calcularlo, luego lo pintas donde quieras. Digamos que es hacerte un cable de VagCom, pero personalizado, yo para mi CarPC hice pruebas con esas historias y se podían sacar todos los valores sin problemas.

 

Saludos

 

Me queda muy grande ese protocolo. De todas formas algo voy a investigar, porque tener señales digitales y no usarlas...pretendiendo montar la de *** con señales de inyectores es poco eficaz.

El tema está en que aún así necestiaría un módulo electrónico, y ese de mpguino ya viene presoldado, con la ventaja de no tener que comprobar errores si las cosas no van bien.

 

En su día conecté a mi pantalla multimedia un portátil con vagcom y con el vagscope pude medir en el modulo 11 del motor el consumo instantanio con un gráfico y tal. Pero es poco práctico para uso cotidiano.

post-50241-1267526165.jpg

Editado por cesardeluxe
Enlace al comentario
Compartir en otros sitios web

En tu caso yo lo afrontaría de manera diferente, olvida todas esas historias de cables de inyectores y centralita, y conéctate a la línea K, es la de diagnóstico y más que probable que ahí tengas el consumo del coche en tiempo real, o al menos los datos necesarios para calcularlo, luego lo pintas donde quieras. Digamos que es hacerte un cable de VagCom, pero personalizado, yo para mi CarPC hice pruebas con esas historias y se podían sacar todos los valores sin problemas.

 

Saludos

 

Me queda muy grande ese protocolo. De todas formas algo voy a investigar, porque tener señales digitales y no usarlas...pretendiendo montar la de *** con señales de inyectores es poco eficaz.

El tema está en que aún así necestiaría un módulo electrónico, y ese de mpguino ya viene presoldado, con la ventaja de no tener que comprobar errores si las cosas no van bien.

 

En su día conecté a mi pantalla multimedia un portátil con vagcom y con el vagscope pude medir en el modulo 11 del motor el consumo instantanio con un gráfico y tal. Pero es poco práctico para uso cotidiano.

Yo no tocaría los inyectores ni en broma, sobre todo teniendo ese valor a través de la línea K. Ahora no lo sigo, pero en su día habia muchos pequeños proyectos bastante más fiables que el MPG ese y que se basaban en lectura de K, quizá alguno se ajuste a tus necesidades, yo emplearía un poco el tiempo en Google, porque esa placa y su modo de conectarse al coche... una cosa es toquitear un bus irrelevante como el Infotainment y otra meterte a tocar partes vitales del coche.

 

Saludos

Enlace al comentario
Compartir en otros sitios web

En tu caso yo lo afrontaría de manera diferente, olvida todas esas historias de cables de inyectores y centralita, y conéctate a la línea K, es la de diagnóstico y más que probable que ahí tengas el consumo del coche en tiempo real, o al menos los datos necesarios para calcularlo, luego lo pintas donde quieras. Digamos que es hacerte un cable de VagCom, pero personalizado, yo para mi CarPC hice pruebas con esas historias y se podían sacar todos los valores sin problemas.

 

Saludos

 

Me queda muy grande ese protocolo. De todas formas algo voy a investigar, porque tener señales digitales y no usarlas...pretendiendo montar la de *** con señales de inyectores es poco eficaz.

El tema está en que aún así necestiaría un módulo electrónico, y ese de mpguino ya viene presoldado, con la ventaja de no tener que comprobar errores si las cosas no van bien.

 

En su día conecté a mi pantalla multimedia un portátil con vagcom y con el vagscope pude medir en el modulo 11 del motor el consumo instantanio con un gráfico y tal. Pero es poco práctico para uso cotidiano.

 

Hay algo también sobre arduino pero para protocolo CAN

http://pages.videotron.com/frelyne/OBDuino/hw.html

post-50241-1267527159.jpg

Enlace al comentario
Compartir en otros sitios web

Unirse a la conversación

Puedes publicar ahora y registrarte más tarde. Si tienes una cuenta, conecta ahora para publicar con tu cuenta.

Guest
Responder a esta discusión...

×   Pegar como texto enriquecido.   Pegar como texto sin formato

  Sólo se permiten 75 emoji.

×   Tu enlace se ha incrustado automáticamente..   Mostrar como un enlace en su lugar

×   Se ha restaurado el contenido anterior.   Limpiar editor

×   No se pueden pegar imágenes directamente. Carga o inserta imágenes desde la URL.

  • Explorando recientemente   0 miembros

    • No hay usuarios registrados viendo esta página.