Luckfox Pico Mini BのSPI NAND Flashに書き込む

2024/02/09に公開

更新履歴

  • 新規作成 2024/02/09 : 公開

これは?

Luckfox Pico Mini B

Luckfox Pico Mini BのFlashにコンパイルしたファイルをWindows用のツールで書き込むためのメモです。
(Windows用しか手順がわからなかったわけですが・・・)
スペックは公式ページの通りです。
何がよいかというと、この大きさでLinuxが動かせ、LANのコネクタを追加すれば、ネットワークにつなぐことができます。
SPI接続のNAND Flashが載っていますので、USB Type-Cケーブルを接続すれば、Linuxが起動します。

コンパイル環境の構築

公式wikiのLuckfox Pico → SDK Environment Deploymentの手順にしたっがって、Ubuntuにいろいろインストールしていきます。

sudo apt update
sudo apt-get install -y git ssh make gcc gcc-multilib g++-multilib module-assistant expect g++ gawk texinfo libssl-dev bison flex fakeroot cmake unzip gperf autoconf device-tree-compiler libncurses5-dev pkg-config bc python-is-python3 passwd openssl openssh-server openssh-client vim file cpio rsync
git clone https://gitee.com/LuckfoxTECH/luckfox-pico.git

いろいろダウンロードが完了したことを確認して、コンパイルします。
「./build.sh lunch」入力すると、どの基板用の設定をするか聞かれるので、ここでは、Pico mini Bの構成に該当する6番を選びました。
「./build.sh」でコンパイルが始まりますが、とても時間がかかります。

./build.sh lunch
./build.sh

書き込む準備をする

書き込むファイルの準備


スクショの通りコンパイル結果は、outputフォルダに出力されますので、outputフォルダすべてをUSBメモリなどにコピーします。
シンボリックリンクになっている「oem.img」「rootfs.img」「userdata.img」はUSBメモリにコピーできないため、ファイルを探して手動でコピーします。
Ubuntuを使ってFlashへの書き込み手順がわからなかったのでWindowsで書き込みを行います。

デバイスドライバーと書き込ツールのダウンロード

公式wikiDownloadから「DriverAssitant-RK」と「SocToolKit」を選択してダウンロード、書き換えツール「SocToolKit」を解凍しておきます。


DriverAssitantを解凍して、DriverInstall.exeを実行してドライバーをインストールします。

基板上のスイッチを押しながら、PCと基板のUSBを接続すると、書き換えモードで起動します。
デバイスドライバーを適用後、書き換えモードで起動した場合は、以下のようになります。

基板の書き換え

基板上のスイッチを押しながら、PCと基板のUSBを接続し、書き換えモードで起動します。
SocToolKit.exeを起動して、書き換え対象のマイコンを選択します。(今回使用している基板のマイコンはRV1103です)

「Search Path」ボタンを押して、書き込むファイルの場所を選択します。
以下の例では、コンパイルしたoutputフォルダをそのままコピーしてきました。

ファイルを読み込んで、書き込みたいファイルを選択します。(図では全ファイルを選択しています。)

「Download」ボタンを押すと、Flashの書き込みが始まります。
書き込み完了後、自動で再起動します。

起動ログ

VSCodeで起動時のログを取ってみました。
u-bootがコンパイルした日付になっています。

ログイン後、lsして、フォルダを確認すると、コンパイルした日付になっているところがあります。
おそらく、コンパイルした内容になっているのではないかと思います。

最後に

Flashに書くだけですけど、「組み込みやってる!」感じがありますよね。

Discussion