viernes, 27 de diciembre de 2013

Jeppesen FS-200 - Ingenieria inversa al protocolo de comunicaciones

Lo primero que hacemos es mirar el datasheet del microcontrolador, lo que nos dará una idea de que velocidades puede utilizar con el cristal de 4Mhz. de la tabla se deduce que las velocidades que permite el microcontrolador que se ajustan al estandar RS-232, van de 75 a 9600 bps. ya que el resto difieren demasiado.
Con el programa realterm compruebo que a la velocidad de 9600 8-N-1, obtengo datos por el puerto serie, mientras que en le resto de velocidades, no obtengo nada o el programa me informa de errores (incluso si pruebo velocidades fuera del rango 75-9600).

Lo que obtengo es el byte 0x85 unas 350 veces por segundo. independientemente de la posicion que tengan los pulsadores y encoders.
He probado a enviarle 1 byte a ver si obtenia algun tipo de respuesta y nada.

Tengo pendiente crearme un programa en freebasic, que envie varios bytes seguidos, y me indique si con alguno obtengo una respuesta.

Como no tengo el programa original, no se si el chip require unos datos expeciales de inicializacion (el microcontrolador permite un bootloader y ejecutar desde ram, aunque me extraña que usasen esta opcion)

El panel permite ser utilizado sin pedales, pero se supone que require el Joke, asi que lo que estoy viendo podria ser un codigo de error indicando una mala conexion, tengo que hacerme con un joystick analogico de PC para comprobar este punto.
 
Pero si no es eso, estoy en un callejon sin salida, y habra que probar el plan B, sacar todo el circuito y conectarlo a un arduino mega que tengo en camino.

Ire actualizando esta entrada a medida que consiga mas datos.

No hay comentarios:

Publicar un comentario