ファクトリーイメージの利用
Deguファームウェアの書き込みはdfu-utilで行うことができますが、実際のDeguのFlash上にはDeguファームウェアだけではなく、MCUboot(ブートローダー)や、MicroPythonコードを格納するファイルシステム等が書き込まれています。
これら全てを1つにまとめたイメージファイルを、ファクトリーイメージと呼んでいます。ファクトリーイメージは、デバッガを使ってFlashの先頭から書き込むことができるため、工場出荷に利用することができます。
準備
以下のものを用意してください。
- PC
- Degu
- SEGGER J-Link等、nRF52840に対応するデバッガ
- MCUbootバイナリ
- ここでは、
mcuboot.binとします。こちらから最新の標準イメージをダウンロードできます。
- ここでは、
- Deguファームウェア
- ここでは、
degu.binとします。 こちらから最新の標準イメージをダウンロードできます。
- ここでは、
ここでは、SEGGER J-Linkを使って説明します。
ファクトリーイメージの作成
-
deguレポジトリをダウンロードする
$ git clone https://github.com/open-degu/degu.git $ cd degu -
ファクトリーイメージを作成する
make-factory-image.shスクリプトを使って、ファクトリーイメージを作成することができます。ここでは、作成するファクトリーイメージ名をmy-degu-facotry-image.binとします。$ ./make-factory-image.sh mcuboot.bin degu.bin my-degu-facotry-image.binこれで、ファクトリーイメージの作成が完了しました。
ファクトリーイメージの書き込み
J-Linkを使って、ファクトリーイメージを書き込む手順を紹介します。
-
J-Link Software and Documentation Packをインストールする
各PCのOSに対応したJ-Link Software and Documentation Packをダウンロードし、インストールしてください。
-
J-LinkとMicroUSBケーブルを接続する
PCにJ-LinkとMicroUSBケーブルを接続してください。
-
SWDコネクタにJ-Linkを接続する
次の図のように、DeguのSWDコネクタにJ-LinkのSWDケーブルを接続してください。

-
Deguの電源を入れる
PCに接続したMicroUSBケーブルをDeguに接続し、電源を入れてください。
-
J-Flash Liteを起動する
PCでJ-Flash Liteを起動してください。起動すると、ターゲットデバイスの種類とインターフェースを選択できるので、次のように設定し、
OKをクリックしてください。DeviceNRF52840_XXAAを選択
InterfaceSWD,4000kHzを選択

-
ファクトリーイメージを書き込む
Data Fileに、作成したファクトリーイメージ(ここではmy-degu-facotry-image.bin)を指定してください。Prog.addr.は、0x00000000のまま変更しないでください。
Program Deviceをクリックすると、書き込みが開始します。書き込みが完了すると、LogにDoneと表示されます。
これで、ファクトリーイメージの書き込みが完了しました。Deguは自動的にリセットし、書き込んだファームウェアが起動します。
