Leer señales LINBUS de volante multifuncion

Hola a todos,
estoy intentando conectar un volante multifunción (VW Scirocco) con mi Arduino MEGA 2560.
Al principio me centré en temas de CANBUS pero acabo de descubrir que el volante se comunica por LINBUS que es un sistema mucho más simple.
Sabéis si se puede leer directamente (pero sin necesidad de Shield) la información que se mueve por el protocolo LINBUS del circuito del volante? De no ser así, con el CANBUS Shield se podría?

Os dejo un link para aquellos que quieran más información sobre estos sistemas:

Gracias,

Claudio.

usando un chio como el tpic1021

Muchas gracias por la info!

Ya tengo el chip pero es diminuto...y la verdad es que no se muy bien cómo meterle el cableado necesario.
Soy un poco newbie en electrónica pero supongo que habrá que montar el chip en alguna placa y de la misma sacar el cableado al LINBUS y demás conexiones necesarias.

He estado buscan por internet y no encuentro nada de como hacerlo ni el tipo de placa que necesito(solo como montar chips en consolas... :roll_eyes:)

¿Alguien me puede echar un cable?

Muchas gracias de antemano!

No se que encapulsado es pero lo puedes armar con eagle. Y lo puedes pasar a un PCN con el método de la plancha.

¿No existiría algún tipo de zócalo para este tipo de chip para poder montarlo en una proto shield?
Aqui están los datos del chip:https://docs.google.com/file/d/0B7YrXEsQWf4FdnU1aVQ1blliWm8/edit

Lo de crear una PCB por el método del planchado no sé si será exagerado puesto que sólo quiero montar éste chip y sacar el conexionado a mi Arduino. Además no sé si sería capaz de encontrar brocas para patillas de 0,25mm.

¿Lo podría encargar en alguna tienda? Soy de Madrid.

Gracias de nuevo!

Te va a salir más barato diseñarte un PCB y encargarlo. Te van a costar a 1,2€ la unidad.

para estos encapsulados no se usan brocas, son de soldadura superficial. Existen adapdatodes de soic a dip y podes conseguir pcb adaptadores como este SparkFun SOIC to DIP Adapter - 8-Pin - BOB-13655 - SparkFun Electronics, pero como dice FM, te sale mas barato hacer un pcb, que incluso lo puedes armar con formato shield de arduino.

Hola de nuevo señores!
Por fin saqué tiempo para poder montar el chip (un TPIC1021) para poder leer señales LINBUS.
Al final me compré un adaptador y así lo pude montar en una shield para conectar más fácilmente con mi Arduino.
El tema es que después de haber conectado todo el tema, cuando me dispongo a leer del chip me llegan datos constantemente sin poder discernir los valores que se obtienen al pulsar los diferentes botones del volante.
El código utilizado es el siguiente:

int incomingByte = 0; // para el byte leido
int enable = 8; //salida digital para activar el chip TPIC1021

void setup() {
Serial.begin(9600); // abre el puerto serie a 9600 bps
Serial1.begin(9600); // abre el puerto serie a 9600 bps
pinMode(enable, OUTPUT);
}

void loop() {

digitalWrite(enable, HIGH);
// envia datos solamente cuando recibe datos
if (Serial1.available() > 0) {
// lee el byte entrante:
incomingByte = Serial1.read();
Serial.write(incomingByte); // dice lo que ha recibido:
Serial.print("He recibido: ");
Serial.println(incomingByte, OCT); //he probado con HEX, BIN, DEC...
delay (100);
}
}

Alguien que sepa como tratar los datos de LINBUS?
Aqui el manual del chip por si alguien quiere echarle un vistazo: http://www.ti.com/lit/ds/slis113c/slis113c.pdf

Gracias de antemano!

Serial.begin(9600); // abre el puerto serie a 9600 bps
Serial1.begin(9600); // abre el puerto serie a 9600 bps
que Arduino tenes? porque abris 2 puertos serie?

incomingByte deberia ser tipo byte.

Fijate la linea no tenga ruido, y ver que estructura emite el volante, puede ser que emita muchos datos.
No uses delay porque deja de escuchar el puerto hasta que sale del delay

Tengo un Arduino Mega 2560. He abierto los 2 puertos para poder ver por el monitor Serial la señal que le entra del chip por el RX1.
Creo que el volante debe mandar muchos datos y por eso me vuelvo un poco loco...probaré con el tipo byte a ver que pasa.

me parece que debe estar enviando una trama de datos, sino la conoces puedes ver un patron haciendo que guarde en un archivo de texto muchos bytes, y asi poder ver donde comienza y donde termina cada trama.

Veo que ya has empezado en serio con el tema, compañero (si, tambien estoy registrado por aquí, jejeje)....
Como ya te comenté, por desgracia no tengo tiempo para éste proyecto ahora mismo, pero lo observaré e intentaré colaborar en lo que pueda.

Saludos, y mucha suerte!

PD: Por si te sirve de ayuda: CAN Bus LIN Bus Compartible Board with API like Arduino: Introduction in C_L_A_I_N board

Hola,

No se si llegaré tarde a tu consulta. En su momento, por razones de trabajo, me tocó resolver a toda prisa (una semana) el desarrollo de una unidad portable (pila de 9V) que se conectase a una producción de volantes y fuese capaz de comprobar las activaciones de los switches y padles de los volantes. Me las ví y me las deseé, pero fuí capaz de encontrar la info necesaria. Por razones de rapidez (coste y disponibilidad) lo resolví con un 16F84A y la parte de conexión al bus con un diseño basico-basico de alta impedancia sobre el mismo hilo. Al equipillo (menor que una cajetilla de güiston) lo hice trabajar como master solicitando info al volante. Como resolví todo a base de timings, me deje la posible conexion con el protocolo completamente desarrollado para más adelante. ...... y hasta hoy. Comprobamos los miles de volantes, el equipo quedó como "útil portatil" para chequeos de campo ...... y a otra cosa mariposa.

De todas formas, generé el cuadernillo de mantenimiento (funcionamiento, conexiones, esquemas, etc.) que colgaré cuando llegue a casa (el lugar donde escondo las cosas).

Nota: puede que ahora me decida a completar el trabajo sobre Arduino.

fruano, ese trabajo tiene una pinta INCREIBLE...
Sería utilísimo para muchos si colgaras esa info, muchas gracias por adelantado...

Saludos,

Mmmm...interesante! Así que te leíste la info del los botones a base de timmings!
Yo estoy en investigación y me vendría más que genial esa info. Esperaré como agua de Mayo tu cuadernillo :wink:

Estoy intentando atachar la info. Ya es la 3ª vez que no me deja. Intentemoslo de nuevo.

LIN_bus.pdf (198 KB)

LIN_bus.pdf (198 KB)

Si señor!!
A ver si este finde tengo tiempo de leer todos los byte que recibo con el Arduino y me pongo a descifrar.

Muchísimas gracias por la info!

No cuelan los bytes (dice que es muy largo el asunto) aunque está por debajo del limite de attachament de 4 Mb.
Vamos a ir poco a poco y fraccionando.
Adjunto algo que me abrió las puertas del asunto ...... el esquema de conexionado del esclavo en el volante (una unidad de la compañia TRW basado en el chip de Renesas y un Atmel como cerebro).

cableado.ppt (446 KB)

Más. Info varia. Lo más importante, las formas de onda en la info en español.

Más. Info varia. Lo más importante, las formas de onda en la info en español.

THE LIN CONCEPT.pdf (798 KB)