Generación de nuevo Firmware para Netduino Plus 2 version 4.2 con Yagarto

¿Por qué construir firmware? ¿No es el lanzamiento oficial lo suficientemente bueno?

Por supuesto que lo es, pero es posible que desee:

  • Tener el poder para arreglar las cosas
  • Extenderla a hacer otras cosas
  • Ser capaz de depurar a bajo nivel con JTAG

¿Por GCC? ¿No es RVDS (la cadena de herramientas utilizada para construir el oficial) lo suficientemente buenos?

Por supuesto que lo es, pero es posible que desee:

  • No gaste $ 5,000
  • Tener más de 30 días para realizar su trabajo antes de que la versión de prueba gratuita se agota
  • Tomar ventaja de su conocimiento del trabajo en cualquiera de los millones y millones de otras plataformas en las que se ha utilizado
  • Encontrar una alternativa, socialmente más accesible, salida para el masoquismo

Esta página pretende ayudar si sus metas son similares a cualquiera de los anteriores, a excepción de la última línea de la lista. Para ello, usted debe tener en cuenta lo siguiente para ser un «alerón» y no siga leyendo. No es un masoquista? Aceptar, seguir …

¿Qué conjunto de herramientas usaar?

Hay tantos! Las dos primeras letras en Yagarto lo  reflejan :’Yet another (‘Otro …’). El autor lo elegío porque es popular y es reciente. Principalmente todos funcionan de la misma forma , pero en la práctica, no lo hacen – especialmente para compiladores cruzados, que se construyen  para una plataforma de acogida y tienen un tiempo de ejecución para una plataforma de destino. A continuación, se complica debido a la cantidad de dependencias.

¿Cómo hacerlo?

Ayudandose de un paquete, que se adjunta a esta página, que contiene:

  • Una guía de «inicio rápido» para la pesonas más  ansiosa
  • Una guía más detallada paso a paso para el interesado
  • Un fichero de parche que contiene todo lo necesario cambiado
  • Aarchivo auxiliar para aquellos que no les gusta archivos de revisión, y algunos binarios preconstruidos

Obtenga el archivo adjunto buildingfirmware-NP2-4.2.1.2-yag46-20130115a.zip y descomprimir y todas las partes jugosas están en él contenida. También obtener el firmware SecretLabs adjunto, netduinoplus2firmware-SecretLabs-4.2.1.2.zip

El resto de esta página será el contenido de la guía de «inicio rápido», ya que parece más apropiado para una página wiki. De lo contrario, no sería demasiado ‘wiki’.  De todos modos, aquí va, ¡buena suerte!

Inicio Rápido – 2 Firmware versión 4.2.1.2 con Yagarto 4.6 13 de enero 2013 Edificio Netduino Plus

Esto debería proporcionar una guía paso a paso mínimo global de la imagen de la mencionado de firmware para el Netduino Plus 2 de construcción.

1 – Obtener herramientas instaladas:

  • MicroSoft VisualStudio 2010 .Iinstalalo r como de costumbre, la versión express también debería estar bien
  • . NETMF Framework SDK 4.2 QFE1
  • Netduino SDK

Los elementos anteriores probablemente ya estén instalados para su normal desarrollo de aplicaciones. La siguiente es la cadena de herramientas:

  • Yagarto 4.6.0 (2011-04-29) :obtener la versión de 20110429   aqui NOTA IMPORTANTE: no / NO / usar la ubicación de instalación por defecto (que  se encuentra en los archivos de programa … árbol), pero el cambio a una ruta sin espacios. Se debe  utilizar C: \ yagarto.

Usted necesitará algunas herramientas de flash para el propio chip:

  • Herramientas ST Microelectronics ‘DfuSe Demo’ :Estos se utilizan para construir una imagen de firmware, flash de borrado, y quemar la imagen que producen. La usamos para extraer un Tinybooter del firmware, también.

2 – Configure el árbol de código fuente:

  • NETMF Porting Kit 4.2 QFE1 de http://netmf.codeplex.com/releases/view/82448 .Es decir vaya  aqui (el fichero se llama PK.zip ),instalelo, a continuación, realice inmediatamente una copia que se le modificando. Por ejemplo un directorio es C:\Experiments\netduino\netduino_plus_2
  • Netduino Plus 2 firmware v4.2.1 fuente 
    http://netduino.com/downloads/
    Estas modificaciones son exactamente y precisamente por esta versión de los SecretLabs
    firmware. Descomprimir en la parte superior del directorio de trabajo de manera efectiva ‘fusionar’
    los cambios.
    EDIT: esta versión (4.2.1.2) ya no está en la página de descargas (que sólo tiene la versión actual), por lo que he adjuntado a este artículo. Los mods del autor  pueden / trabajar en la versión curent sin editar, pero lo dudo, por lo que seguir adelante y obtener la versión correcta para el que se escribió este artículo (4.2.1.2) y ahorrar un poco de dolor de cabeza.
  • mis mods 
    El autor proporciona un fichero de parche ‘mychanges-np2-4.2.1.2-20130113a.patch’, que usted puede aplicar con su herramienta preferida (o incluso manualmente es posible si se debe). Por otra parte, el autor  creó manualmente un archivo que puede ser desplegado en la parte superior del árbol de código fuente. De cualquier manera, debe obtener esos cambios dentro.

3 – Contextualizacion:

  • configuración env vars 
    En el directorio de trabajo
    setenv_base.cmd GCC4.6 PUERTO C: \ yagarto
  • iniciar la construcción 
    MSBuild Solutions \ NetduinoPlus2 \ dotnetmf.proj / T: reconstruir / p: flavor = liberación; tcp_ip_stack = lwip / FileLogger

Después de 10 minutos, se debe hacer. Habrá 20 advertencias sobre las importaciones redundantes  y  0 errores.

El sistema de construcción creará un ‘BuildOutput‘con un  subárbol que contendrá los diferentes productos de generación. Las piezas del firmware de interés están en formato. \ BuildOutput \ thumb2 \ GCC4.6 \ le \ Flash \ release \ NetduinoPlus2 \ bin y son

  • Tinybooter.bin
  • tinyclr.bin / ER_CONFIG
  • tinyclr.bin / ER_FLASH

Utilice el «DFU Administrador de archivos» de aplicaciones de la ‘demostración DfuSe’, para extraer un binario de un DFU, para extraer las piezas del firmware oficial (sólo necesitamos el Tinybooter). Es decir netduinoPlus2_Firmware_4.2.1.2_00_08000000.bin

Utilice el «DFU Administrador de archivos» de aplicaciones de la ‘demostración DfuSe’, para generar un DFU desde múltiples archivos bin. Como se trata de un fichero bin, tendrá que especificar su ubicación en flash.

Los direcciones de memoria  a  utilizar son:

08000000 para NetduinoPlus2_Firmware_4.2.1.2_00_08000000.bin 

0800c000 para ER_CONFIG 

08020000 para ER_FLASH 

A continuación, usted genera de los DFU, y que es su nueva imagen de firmware.

Para Flashear  , como de costumbre   con la aplicación ‘DfuSe Demo’ ‘Demostración DfuSe’

Paso 1 Descargue e instale el «DfuSe dispositivo USB firmware upgrade STMicroelectronics extensión» de

Paso 2 Descargue el archivo zip del firmware más reciente y extraer alguna parte. Debe contener tinyclr.dfu

Paso 3 Coloque el Netduino  en el modo de gestor de arranque. Para ello, pulse el botón de reinicio y mientras se presiona el botón, conéctelo a USB. Ahora se instalará el «Dispositivo de STM en modo DFU» conductor.

Paso 4 Inicie la herramienta «Demostración DfuSe». En el panel «Actualizar o Verificar Acción» click «Elegir …» y busque el archivo tinyclr.dfu y haga clic en «Actualizar». Obtendrá un mensaje «El dispositivo se conecta en modo DFU. Continuar sin embargo?». Pulse Sí.

Ahora a esperar hasta que los Estados de la barra de estado verde «actualización correcta». El dispositivo está ahora al día! Desconecte y vuelva a conectar el dispositivo a tener en marcha y funcionando de nuevo.

Fuente original aqui

Deja una respuesta