[Mikrokopter] Recuperar MK3MAG con AVRISP MKII

Tema en 'Mikrokopter' iniciado por raulhc, 11 May 2010.

  1. raulhc Miembro

    raulhc
    Registrado:
    3 Sep 2007
    Mensajes:
    796
    Me Gusta recibidos:
    0
    El otro dia actualizando las versiones de las placas me dejo de funcionar la MK3MAG. Primero actualice la NAVY y todo bien, despues la FC y todo bien, cuando fui a actualizar el MK3MAG me daba TIMEOUT y no respondia a nada. Creo que deberia de haber actualizado la M3MAG despues de la NAVY y dejar para lo ultimo la FC. Pero bueno, la cosa fue que algo ocurrio y la MK3MAG se quedo muerta.

    Un amigo me dejo un programador AVRISP MKII y esto es el proceso que segui para volver a cargarle el bootloader y el firmware.

    El programa que use para grabar fue el AVRDUDE, se podria usar el AVR Studio, que es el propio de Atmel, pero en la wiki del MK3MAG te da informacion de como establecer los fuses del atmega con el avrdude pero no para el AVR Studio. Supongo que para alguien mas puesto en estas lides indicar los fuses en el AVR Studio sera facil.

    El avrdude lo hay para Mac, Linux y Windows. Es facil encontrar versiones compiladas ya listas para usar, pero para evitar problemas y usar una version ya compilada correctamente con soporte para usb pues me descargue el paquete WinAVR:

    http://sourceforge.net/projects/winavr/files/

    Ademas en este paquete ya te viene el driver USB para el grabador. ** IMPORTANTE ** Si tienes instalado el AVR Studio este usa un driver USB que no sirve para usarlo con el avrdude, habria que desinstalar el driver del AVR Studio.

    Una vez instalado el WinAVR el ejecutable del avrdude lo tendremos en el subdirectorio "bin".

    Si ahora procedemos a conectar el programador AVRISP MKII a un puerto usb del ordenador nos pedira instalar el controlador, le damos que busque el controlador dentro del subdirectorio "utils\libusb\bin", que esta donde tengamos instalado el WinAVR.

    Con el driver instalado y funcionado solo falta conectar el MK3MAG al programador. A continuacion la relacion de pines que debemos conectar entre el MK3MAG y el programador:

    Vista 1 MK3MAG:
    [​IMG]

    Vista 2 MK3MAG:
    [​IMG]

    Los pines en el programador:
    [​IMG]

    Este grabador no saca alimentacion, asi que debermos usar una fuente externa de 5V.

    Asi lo tenia yo conectado:
    [​IMG]

    Para ver que todo lo tenemos bien conectado ejecutamos el avrdude como sigue:

    Insertar CODE, HTML o PHP:
    avrdude -c avrispv2 -p m168 -P usb -v
    Y nos debera salir una informacion con datos obtenidos del atmega.

    Yo copie el ultimo bootloader y el firmware del MK3MAG dentro del directorio donde esta el avrdude y les di un nombre mas sencillo "bootloader.hex" y "firmware.hex".

    Para grabar el bootloader, ejecute el siguiente comando:

    Insertar CODE, HTML o PHP:
    avrdude -c avrispv2 -p m168 -P usb -U flash:w:bootloader.hex -u -U lfuse:w:0xe2:m -U hfuse:w:0xdd:m -U efuse:w:0x00:m
    Despues para el firmware ejecute lo siguiente:


    Insertar CODE, HTML o PHP:
    avrdude -c avrispv2 -p m168 -P usb -U flash:w:firmware.hex
    En principio para grabar el firmware habria que usar un avrdude modificado para que haga uso del bootloader, pero parece que ya no existe o yo no he encontrado desde donde descargarlo.

    Ahora la MK3MAG conectada a la NAVY parece que va, el led se queda parpadeando y en el MKTool ya no me sale el TIMEOUT, ahora me da "Bad Compass Values" o algo asi. Supongo que es por estar sin calibrar aun. Eso lo hare mañana fuera de casa, pero tiene buena pinta. No me acuerdo si cuando la conecte la primera vez, hace ya bastente tiempo, tambien se quedaba parpadeando, pero me parece que si.

    Si por haber grabado el firmware con el avrdude he fastidiado el bootloader, pues no pasa nada, para la siguiente cargo solo el bootloader y despues ya uso el mktool para actualizar el firmware, pero de momento voy a probarlo asi.

    Ya contare si me va bien.

    Un saludo.
     
    #1 raulhc, 11 May 2010
    Última edición por un moderador: 5 Dic 2011
  2. espariz Miembro

    espariz
    Registrado:
    26 Feb 2007
    Mensajes:
    848
    Me Gusta recibidos:
    0
    Gracias!!

    Gracias Raúl, perfecta la explicación, seguro que alguno le viene muy bien, saludos!!
     
  3. raulhc Miembro

    raulhc
    Registrado:
    3 Sep 2007
    Mensajes:
    796
    Me Gusta recibidos:
    0
    El MK3MAG despues de calibrarlo va perfecto, asi que la grabacion es correcta. Eso si, al grabar directamente el Hex con el programador y no usar el MKTool me he cargado el bootloader.

    Para la proxima actualizacion pruebo solo a grabar el bootloader y despues el Hex del firmware. Aunque no entiendo por que se ha estropeado el bootloader, entiendo que deberia de ir grabado en posiciones de memoria distintas, pero bueno, el caso es que funciona. :biggrin2:

    Un saludo.
     

Compartir esta página