Jump to content

Investigando el Smart-CAN


Recommended Posts

Derivado del hilo del botón de arranque. Abro esta nueva rama para tratar más específicamente los descubrimientos que hagamos acerca del bus CAN de nuestros smarties.

Contestándote juanmax. Ese XLS es una tabla de los mensajed PDO que ha descubierto ese hombre.

Si te fijas, tiene el ID de objeto y los 8 bytes característicos de los mensajes PDO.

He traducido como buenamente he podido el XLS a inglés.

En cuanto tenga el DK, iré confirmando esos mensajes y a ver si veo alguno nuevo.

Enlace al comentario
Compartir en otros sitios

A ver, segun me han comentado, el código de cotrol de la caja de cambios también esta integrado en la centralita del motor. Esto significaría que en principio (hablo del 450/roadster) no se podría "pedir" un cambio de marcha a traves de CAN.(para el hilo de las levas en el volante)

Es una pena, puesto que muchas senyales que se "hablan" entre control del motor y control del cambio, tienen lugar con esta topología a nivel SW puesto que comparten CPU. Lástima, siempre está bien tener acceso a estos valores vía CAN.

En teoría (y en la práctica también, pero hace falta tener todos los datos), se pueden leer y calibrar in_situ/on-the-fly, parámetros internos de la ECU. Para ello se utiliza el protocolo de calibración CCP, que hace uso del mismo enlace físico CAN. Por ejemplo, mientras el piloto da vueltas con el coche, yo sentado al lado puedo modificar ciertos valores de la caja de cambio "al vuelo", sin tener siquira que apagar/encender la centralita y mirar si el comportamiento mejora.

Estaría muy bien, para la gente que hace repros, en vez de reprogramar cada vez la eeprom y probar, que pudíesen tener acceso a dichos valores.

Este protocolo permite "calibrar", léase sobreescribir valores que se encuentran en RAM, así como leer variables internas, siempre y cuando se sepa su dirreción en memória.

Hay mucha tela ahí, lo que ocurre es que hacerlo mediante ingeniería inversa, necesita un inmenso tiempo dedicado haciéndolo prácticamente casi imposible.

e-Saludos,

Juanma.

PD: Cuándo te llega tu aparatito para jugar con el CAN?

Enlace al comentario
Compartir en otros sitios

yo queria hacerme un reloj de temperatura que usara la informacion que ya va

por el bus

conociendo el protocolo del bus can y un micropic con un display creo

que estaria apaño

No es tan sencillo. Necesitas un micro que integre el driver de bus CAN. Si has de montarlo tu discreto, puede ser bastante complejo.

Pero vamos. Que silabs tiene soluciones muy baratas con CAN integrado. En Mouser tienes el C8051F047 por menos de 10$ comprando 1.

Enlace al comentario
Compartir en otros sitios

PD: Cuándo te llega tu aparatito para jugar con el CAN?

Pues no lo se, porque no me lo han confirmado y tampoco me han contestado al mail que les envié preguntando cuando llegaría :001_tongue:

Pero vamos. Imagino que a lo largo de la semana que viene.

Lo que comentas de editar las tablas en tiempo real, cabe la posibilidad de que sea imposible, ya que si la ECU no lo soporta, no te dejará escribir en una posición de su memoria si no se han seguido los pasos previos adecuados. Y es posible que requiera que el motor esté parado.

Pero vamos. que eso ya son palabras mayores. Empecemos por el principio...

Enlace al comentario
Compartir en otros sitios

En principio, la señal de capota y cristales, puede que pase por CAN porque con la centralita y mandos por radiofrecuencia, estos se pueden abrir y cerrar a distancia, y al cambiar el receptor, se activan estas funciones.

Hay pantallitas de estas que estay intentando implementar con función táctil, estaría bien para pasar por los menús y no poner pulsadores.

Una forma sencilla, es montar el display sobre 4 pulsadores en las puntas, y al pulsar la pantalla, detectar que esquina es y responder.

Enlace al comentario
Compartir en otros sitios

yo queria hacerme un reloj de temperatura que usara la informacion que ya va

por el bus

conociendo el protocolo del bus can y un micropic con un display creo

que estaria apaño

De hecho ya está. El reloj de temperatura original va vía CAN.

Para esas cosas es más sencillo leer el OBD, bastante de esa info está también ahí y es mucho más fácil de tomar datos.

Enlace al comentario
Compartir en otros sitios

Holass,

Es esta la que has pidido?

https://www.silabs.com/products/mcu/Pages/CANOBDRD.aspx

Esta es la plaquita que he pedido...

candk.th.jpg

Parece que es OBD, no CAN. Es capaz de pedir por el bus mensajes con PID conocido. Leyendo el manual parace que no puedes definir en que ID's viene que senyal "and so on".

Querías esta plaquita para esnifar el bus CAN? O interrogar a traves de OBD?

Los mensajes de capota y cristales no parecen estar en el bus :(

Enlace al comentario
Compartir en otros sitios

Holass,

Es esta la que has pidido?

https://www.silabs.com/products/mcu/Pages/CANOBDRD.aspx

Parece que es OBD, no CAN. Es capaz de pedir por el bus mensajes con PID conocido. Leyendo el manual parace que no puedes definir en que ID's viene que senyal "and so on".

Querías esta plaquita para esnifar el bus CAN? O interrogar a traves de OBD?

AsiN es. Pero si es CAN. Lleva el F502 que es uno de los que me había mirado. Simplemente estás confundiendo la funcionalidad del micro con el firmware que viene de ejemplo.

El micro soporta CAN 2.0B pero la aplicación que viene de ejemplo es para leer OBD.

Mira a partir de la pág 220.

He cogido esta porque por el precio me sale más a cuenta que la que no lleva la interface OBD. Mi idea es añadirle los 2 pines que le faltan al conector ODB para acceder al bus CAN de una forma cómoda. Ya los tengo pedidos en Mouser.

12047767hs.jpg

He pedido 4 con lo que me sobran 2 (por si alguien más quiere 'upgradear' su conector OBD)

Aun así, decir a los que se emocionan rápidamente que las funciones "chulas" usan un protocolo más complejo y VAN A TARDAR EN FUNCIONAR.

Mi idea es hacer un firmware que grabe un log de TODO lo que se mueva por el bus y después descargarlo al PC. Haré un analizador de protocolo y a ver cuantas cosas descubro. (Tendríais que ver el analizador de KNX que me he currado :001_tongue:)

Los mensajes de capota y cristales no parecen estar en el bus :(

Efectivamente. Creo que ya lo puse en un post. Van cableados directamente a la SAM.

Editado por Bulkie
Añadido link al datasheet del C8051F502
Enlace al comentario
Compartir en otros sitios

Jola,

Simplemente estás confundiendo la funcionalidad del micro con el firmware que viene de ejemplo.

El micro soporta CAN 2.0b pero la aplicación que viene de ejemplo es para leer OBD.

Mi idea es hacer un firmware que grabe un log de TODO lo que se mueva por el bus y después descargarlo al PC. Haré un analizador de protocolo y a ver cuantas cosas descubro. (Tendríais que ver el analizador de KNX que me he currado :001_tongue:)

Como dicen por aquí los germanos..."Respekt", con eso de currarte el Firmware... Supongo que eres Informático, me equivoco? (si acaso Teleco...)

Bueno, yo creo que la idea que tenía de meterle mano a la ECU directamente, la dejaré para más adelante, puesto que me he pedido medio anyo de vacaciones en el curro, y voy a tener a partir de ahora menos tiempo... Así que probablemente os la envie a alguien del foro (motor-performance?basado en BCN?) desde Alemania para que le hagais una repro.

A ver si manyana me paso por el boticari y pillo un conector OBD para meterle mano al bus CAN pronto. Entre dos es mas facil sacar conclusiones :)

Ale, a casita, suficiente curro por hoy.

Salu2,

Jm

Enlace al comentario
Compartir en otros sitios

Vaya! 1/2 año de vacaciones. Eso si que es suerte :tongue_smilie:

Efectivamente soy "informático". Que poco me gusta ese término. Cualquier hijo de vecino que sabe instalar 'findus' ya es "informático"

Ya llevo unos cuantos firmwares a las espaldas (demasiados para mi gusto)

Y también unos cuantos protocolos de comunicación (también demasiados :001_tongue:)

Así que por uno mas... :lol:

Como creo que ya he dicho (y si no lo hago ahora). Que sólo por mirar no pasa nada. 'esnifar' lo que pasa por el bus e intentar descubrir que hace, no plantea ningún peligro para el coche.

Ya veremos cuando llegue la hora de inyectar.:huh:

PD: el conector OBD de los smarts 'antiguos' no da acceso al bus CAN. Solo el F2II lo lleva.

De ahi que vaya a añadirle 2 pines más :001_tongue:

Enlace al comentario
Compartir en otros sitios

Vaya! 1/2 año de vacaciones. Eso si que es suerte

Po zi, voy a viajar un poco por er mundo, ahora que puedo, hasta que me arrepienta.

Efectivamente soy "informático". Que poco me gusta ese término. Cualquier hijo de vecino que sabe instalar 'findus' ya es "informático"

Bueno, sólo necesitas conocer a un par de informáticos bien para apreciar la diferencia entre los findus-installers y los salidos de la uni :tongue_smilie:

Ya llevo unos cuantos firmwares a las espaldas (demasiados para mi gusto)

Y también unos cuantos protocolos de comunicación (también demasiados :001_tongue:)

Así que por uno mas... :lol:

No hace demasiado buen tiempo en espanya como para pasar tantas horas encerrao haciendo eso? Aquí vale..., porque a las putas nubes las tiene a contrato fijo e indefinido y estan 'amarrás' : se tiene bastante tiempo muerto para invertir en este tipo de proyectos personales.

Como creo que ya he dicho (y si no lo hago ahora). Que sólo por mirar no pasa nada. 'esnifar' lo que pasa por el bus e intentar descubrir que hace, no plantea ningún peligro para el coche.

Ya veremos cuando llegue la hora de inyectar.:huh:

Por mirar no pasa nada, eso esta claro. Tienes que tener cuidado de no alterar la terminación del bus (120 Ohm), sino puedes acabar bloqueando el bus entero.

Ahora, por inyectar... como tu dices, ya veremos...pero puede ser peligroso.

PD: el conector OBD de los smarts 'antiguos' no da acceso al bus CAN. Solo el F2II lo lleva.

De ahi que vaya a añadirle 2 pines más :001_tongue:

A ver, tonses... de dónde puedo sacar yo los dos pines para CAN en el F2? Tengo el WIS en casita instalado, pero quizá tu lo sabes directamente.

Saludos!

Juanma.

Enlace al comentario
Compartir en otros sitios

Po zi, voy a viajar un poco por er mundo, ahora que puedo, hasta que me arrepienta.

Bueno, sólo necesitas conocer a un par de informáticos bien para apreciar la diferencia entre los findus-installers y los salidos de la uni :tongue_smilie:

No hace demasiado buen tiempo en espanya como para pasar tantas horas encerrao haciendo eso? Aquí vale..., porque a las putas nubes las tiene a contrato fijo e indefinido y estan 'amarrás' : se tiene bastante tiempo muerto para invertir en este tipo de proyectos personales.

Por mirar no pasa nada, eso esta claro. Tienes que tener cuidado de no alterar la terminación del bus (120 Ohm), sino puedes acabar bloqueando el bus entero.

Ahora, por inyectar... como tu dices, ya veremos...pero puede ser peligroso.

A ver, tonses... de dónde puedo sacar yo los dos pines para CAN en el F2? Tengo el WIS en casita instalado, pero quizá tu lo sabes directamente.

Saludos!

Juanma.

Bueno, yo soy informático... más o menos.

Cuando yo estudiaba, en la "uni" la palabra "informáticos" se podría referir, más o menos, a los polis del servicio secreto de Franco que andaban buscando comunistas entre los estudiantes. :)

Sin embargo millones de personas (y billones de monedas de dinero contante y sonante :) ) han pasado por cosas que yo he hecho. De eso estoy seguro ya que desarrollé para el único fabricante que había en Europa el sistema de cobro de monedas de los peajes de las autopistas y también el de las máquinas de contar dinero de los bancos, ambas de la misma marca.

Y cómo entonces no había microcontroladores, utilicé un microprocesador, el 6502. Purito assembler.

Esas máquinas han estado dando servicio en las autopistas desde antes de 1980 y hasta hace poco que ya han sido reemplazadas totalmente por sistemas de cobro por tarjeta y Teletac.

Las máquinas de un puesto de peaje se comunicaban entre ellas vía un protocolo que me inventé yo y luego hacían los resúmenes para entregar las monedas ensacadas al la empresa de seguridad para llevarlas a los bancos.

Qué tiempos...

Enlace al comentario
Compartir en otros sitios

No hace demasiado buen tiempo en espanya como para pasar tantas horas encerrao haciendo eso? Aquí vale..., porque a las putas nubes las tiene a contrato fijo e indefinido y estan 'amarrás' : se tiene bastante tiempo muerto para invertir en este tipo de proyectos personales.

Que va. No han sido proyectos personales. Siempre han sido en el curro.

Bueno. 3 o 4 si que he hecho para algunos trastos mios... :001_tongue:

A ver, tonses... de dónde puedo sacar yo los dos pines para CAN en el F2? Tengo el WIS en casita instalado, pero quizá tu lo sabes directamente.

Pues la verdad es que si hay algún sitio sencillo, no lo se. Yo lo voy a coger del velocímetro. Que es lo que me queda + cerca del conector OBD.

De todas formas, en el WIS ha de venirte por donde pasa todo el bus.

Si lo miras confírmame el pin-out del velocímetro plis:

PIN 14 : CANH

PIN 15 : CANH

PIN 16 : CANL

PIN 17 : CANL

Saludos y que disfrutes tus mega-vacaciones... :thumbup1:

Editado por Bulkie
Enlace al comentario
Compartir en otros sitios

Las máquinas de un puesto de peaje se comunicaban entre ellas vía un protocolo que me inventé yo y luego hacían los resúmenes para entregar las monedas ensacadas al la empresa de seguridad para llevarlas a los bancos.

Aishhh. También recuerdo yo aquella época en la que inventaba protocolos de comunicación y me parecían super buenos. Hasta que ves los profesionales y te das cuenta de la de cosas con las que no contabas... :blushing:

Enlace al comentario
Compartir en otros sitios

Aishhh. También recuerdo yo aquella época en la que inventaba protocolos de comunicación y me parecían super buenos. Hasta que ves los profesionales y te das cuenta de la de cosas con las que no contabas... :blushing:

Bueno, yo ya conocía el TCP/IP y me sabia de memoria las tramas X25 por lo que buenas referencias no me faltaban. :)

Enlace al comentario
Compartir en otros sitios

Si lo miras confírmame el pin-out del velocímetro plis:

PIN 14 : CANH

PIN 15 : CANH

PIN 16 : CANL

PIN 17 : CANL

Saludos y que disfrutes tus mega-vacaciones... :thumbup1:

Gracias, no me voy hasta Octubre, pero tengo mucho que planear :)

Aquí el pin-out sacado del WIS. Tienes la info OK. Que aproveche...

DasboardCANLayout_450-TCC450335.gif

Saludos,

Juanma.

PD: El connector A1 es el del velocímetro.

Enlace al comentario
Compartir en otros sitios

Gracias por la confirmación.

Ya tengo la placa. Viene con toda la información necesaria para usar el driver C_CAN que lleva integrado. Así que solo tendré que dedicarme a la ingeniería inversa de los paquetes que se envíen en si.

Como el micro es tan pequeñín, voy a tener que hacer la interface de entradas y salidas por SMBus ya que el controlador del LCD me ocupa 13 puertos.

No se si podré hacer algo ya este finde. Me opero de miopia por LASEK y este tipo de intervención requiere una semana de baja. Con lo que no se si podré ver lo suficientemente bien como para probar algo.

De todas formas, todavía no he recibido los pines de Mouser :001_tongue: y hasta que no tenga la versión definitiva de la placa, prefiero usar el puerto OBD para conectarla.

Enlace al comentario
Compartir en otros sitios

[quote=Bulkie;151963Mi idea es añadirle los 2 pines que le faltan al conector ODB para acceder al bus CAN de una forma cómoda. Ya los tengo pedidos en Mouser.

12047767hs.jpg

He pedido 4 con lo que me sobran 2 (por si alguien más quiere 'upgradear' su conector OBD)

Holasss,

No tendrás por ahí el part#number de los pines? Son de Tyco?

Voy a bajar también un par trenzado hasta el OBD. No sabía que no estaban routados hasta el connector de OBD...

Enlace al comentario
Compartir en otros sitios

Como el micro es tan pequeñín, voy a tener que hacer la interface de entradas y salidas por SMBus ya que el controlador del LCD me ocupa 13 puertos.

¿No te valdría la pena conectar el LCD vía SPI con un MCP23S17 por ejemplo (O usar directamente un SPI LCD)?

Con cinco lineas al micro tienes bastante. Y si el micro soporta SPI pues mejor ya que te ahorras hacerlo por software

Enlace al comentario
Compartir en otros sitios

Únete a la conversación

Puedes publicar ahora y registrarte más tarde. Si tienes una cuenta, inicia sesión para publicar con tu cuenta.

Invitado
Responder en este tema...

×   Has pegado contenido con formato.   Quitar formato

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Cargando...
×
×
  • Create New...

Información Importante sobre Cookies

Utilizamos cookies propias y de terceros para mejorar nuestros servicios y mostrar a los usuarios publicidad relacionada con sus preferencias mediante el análisis de sus hábitos de navegación. Si se continúa navegando, consideramos que se acepta su uso. Es posible cambiar la configuración u obtener más información aquí. Aviso Legal