viernes, 31 de octubre de 2014

Arduino - Hack CAN transceiver TJA1041

En algun momento cuando me compre un stereo doble DIN para mi autito, me venia con una interface CAN o decoder CAN el cual no me funciono por traer un uC STM32 con un programa para OPEL por el cual practicamente despues de mi calentura y recablear todo el stereo y el comando del volante la saque y la deje de lado al no necesitarla la desarme un par de veces pero ni mu, con el tiempo y lleyendo un poco, estaba perdido no entendia nada recurri a la wiki no esta del todo claro para mi pero a partir del 2000 los autos vienen con canbus pero en mi caso no es tan asi..

BUS CAN
http://es.wikipedia.org/wiki/Bus_CAN

de los cuales me entere que es un protocolo automotriz de capa fisica y de enlace de datos, para conectar la ECU a los diferentes sensores actualmente compre un scaner OBD2 y un shield CAN basado en un chip de conversion serie a CAN para arduino, pero dos horas despues me arrepenti jeje ya que desarme la cajita marron por curiosidad y me encontre algo interesante si buscando los datasheet de los chip solo por curiosidad como siempre me encontre el santo grial jeje....












los datasheet son muy importantes para nuestros hack o mod de equipos sin uso alguno ,de los cuales anote y saque datos importantes y me muestran hasta la conexion a un uC.

STM32 - un microcontrolador donde se encuentran seguramente las librerias CAN y vaya a saber que cosa mas de OPEL el cual no reconocia el comando del volante :)

TJA1041 - High speed CAN transceiver
cuando lei esto baje el datasheet y me arrepenti de comprar el shield para arduino pero ya era tarde y esta muy verde esto.

Resumen del datasheet en PDF TJA1041




Pasos para armar nuestro proyecto

1)desarmar cajita un par de tornillos
2)desoldar o con una pistola de calor calentar solo el borde de los pines ya que es SMD sin pines
3)cortar de una tira de pines seis de cada lado poner en una placa experimental y soldar
4)armar el esquema de conexion sacado desde el datasheet
5)conectarlo al auto para obtener los datos en CAN y pasarlo al arduino (no esta probado aun)

6)Para que me sirve esto(no probado aun)

ECU <--------->sensor1<------------->sensorN
              |
              |<--12v CAN H CAN L---->shield CAN <--ttl 5vcc-> arduino ---->LCD
              |--->sacar datos por i2c al arduino a un nuevo disply

En mi caso quiero reemplazar una pantalla amarilla y vieja por una TFT y mostrar mas datos como fallas mas amplias voltajes de baterias etc.....
















Pines a conectar a arduino




1 RX
2 EN
3 STB
4 ERR
5 TX
6 GND
7Vol Bateria 12V
8 wake
9 5 vcc
10 INH
11 CAN L
12 CAN H

Bueno y ahora que saque en claro bueno en mi caso mi auto tiene

mandos del volante tipo: resistivos --->divisor de tension conectado al stereo y fue
TID o MID : usa protocolo I2C (SDA - SDL MRQ)
stereo nuevo salida -->CANBUS (CAN-H CAN-L)

Idea reemplazar la TID o MID con un uC y LCD I2C usar el chip para sacar datos de can a uart como info de volumen y musica con arduino....

 aun no esta claro porque en mi caso solo tengo que reemplazar el display TID no quiero reprogramarlo hay unos tutos muy bueno alemanes.

ECU -->> I2C Display TID (protocolo Triple Informatin Display)

tb del OBD podemos sacar canbus -->USART -->arduino +display

o arduino mas display..



Libreria TID para enviar datos a la TID o MID a traves de I2C

MPGUINO reemplazo de la TID o MID

ya armare algooo...

Sldos..

 Sldos...

2 comentarios:

  1. Muy bueno. Me gustó. Yo estoy buscando hacer algo parecido pero con la del astra-h, que funciona por CANBUS. Estoy viendo si consigo los comandos pero no hay suerte de momento.

    ResponderBorrar
  2. Hola como estas en mi caso es un vectra cd brasilero, creia que era CANBUS pero no el mando del volante es resistivo y la pantalla MID es serie I2C puedo reemplazarla con un arduino y un display creo el resto de los sensores son CANBUS hasta la EQU ya que tengo una interface para CANBUS en tu caso si es opel es canbus un chip de este tipo lo podrias conectar a la red y obtener informacion volcarla a un display o armar un mando para el volante CANBUS en fin ya armare algo y actualizo la info.....

    ResponderBorrar