lynxeyedの電音鍵盤

MBDとFPGAと車載で使うデバイスの備忘録

netduinoのブートローダを書き換えたり何らかの理由で消えてしまった場合の復旧方法

Windowsユーザの方が圧倒的に多いはずなので、参考までに復旧方法を書いておきます。macユーザもbootloaderの消去方法は同じです。
netduino bootloaderはATMEL ARM7バイナリ用で*.bin形式バイナリファイルで提供されています(例えばここのTinyBooterDecompressor_v4.1.0.3_BETA_B2 など)。
復旧に必要なソフトを用意します。

  • SAM-BA
  • MFDeploy.exe (netduinoを使う際に.NET Microframework SDKをインストール済みのはずなので、デフォルトではC:\Program Files\Microsoft .NET Micro Framework\v4.1\Tools\MFDeploy.exe にあるはずです)
  • TinyBooterDecompressor (例えばここにあるブートローダ*1。 SAM-BA.exeでnetduinoに書き込みします)
  • NetduinoFirmware(例えばここにあるファームウェア。MFDeploy.exeでnetduinoに書き込みします)

用意ができたら、さっそく復旧です。流れは以下の通り

  • netnuinoのブートローダを消去(詳細後述)
  • bootloaderの書き込み(via. sam-ba.exe )
  • Netduino Firmwareの書き込み (via. MFDeploy.exe)

具体的に…

  • ブートローダの消去は下図の部分をショートさせながら電源を入れます(USBから給電で構わない)。

f:id:Lynx-EyED:20100904114051j:image

  • netduinoのUSBケーブルを再挿抜
  • SAM-BA起動

f:id:Lynx-EyED:20100904115822j:image
(connectionに/usb/ARM0/が出てきたら消去成功、出なかったらもう一度消去やり直し)Select your boardは「at91sam7x512-ek」を選択して「connect」

  • 書き込み

f:id:Lynx-EyED:20100904120858j:image
Flashタブ選択→(ブートローダ)TinyBooterDecompressor選択→「Send File」→「Boot From Flash(GPNVM2)」

  • MFDeployをつかってNetduino Firmware書き込み。

*1:ブートローダのありかが見つからない場合、netduinoフォーラムの検索窓で「Firmware」などで探すと良い。