SPRESENSEのSDK導入、ビルド、ロード方法
最終更新日  2019/9/30
使用OS ver Ubuntu16.04, Ubuntu18.04
Software  spresense SDK 1.4.1
Proxy    あり、なし両方確認
Ubuntu16.04 Ubuntu18.04
spresense github
SDKのダウンロード
spresenseの開発環境ダウンロード
verを指定して落とす
$ git clone --recursive https://github.com/sonydevworld/spresense.git -b v1.4.1
Detached HEADの状態からマスターへ移行
$ cd ~/spresense
$ git submodule foreach git checkout master
初期設定
初回のEULA認証まで実行する
sdkディレクトリへ移動
$ cd ~/spresense/sdk
カーネル初回ビルド
$ tools/config.py -k release
$ make buildkernel
SDK初回お試し設定
$ tools/config.py examples/hello
とりあえずhelloにしておく
多分ここでEULA落として焼けって表示される
WARNING: New loader v1.4.1 is required, please download and install.
Download URL : https://developer.sony.com/file/download/download-spresense-firmware-v1-4-000
Install command
1. Extract loader archive into host PC
$ ./tools/flash.sh -e <download zip file>
2. Flash loader into Board.
$ ./tools/flash.sh -l /home/med/spresense/firmware/spresense -c <port>
指示通りやってみる
1. Extract loader archive into host PC
$ ./tools/flash.sh -e ~/Downloads/spresense-binaries-v1.4.0.zip
*ダウンロードにバイナリがある前提
Update succeed. と表示されたらOK
2. Flash loader into Board. (Arduino IDEからやる場合は不要)
$ ./tools/flash.sh -l /home/(user name)/spresense/firmware/spresense -c /dev/ttyUSB0
SDKをビルド(開発ではこの作業を繰り返す)
最初に念の為カーネルビルドしておく
sdkへ移動
$ cd ~/spresense/sdk
定義済カーネル設定の確認
$ tools/config.py -k -l
定義済カーネルの呼び出し
$ tools/config.py -k release
カーネルビルド
$ make buildkernel
SDKビルド
定義済SDK設定の確認
$ tools/config.py -l
定義済のSDK設定を読みだす
$ tools/config.py examples/hello
必要ならカーネル設定
$ tools/config.py -m
必要ならdefconfigの上書き
$ tools/mkdefconfig.py examples/hello
ビルド
$ make
SPRESENSEにnuttxを転送
nuttx.spkをSPRESENSEに転送
$ tools/flash.sh -c /dev/ttyUSB0 nuttx.spk
動作確認
ターミナルでminicom起動
$ minicom -D /dev/ttyUSB0 -b 115200 -s
動作確認
helloと打って、「Hello, World!!」と返って来たら成功
minicom終了
Ctrl+aでメニューを開き、大文字のQ(Shift + q)を押す
適切に閉じないとポートが占有されたままになるので注意(rebootで直るけど
その他Tips
SPRESENSEの接続先確認方法
SPRESENSEの接続先を確認しておく
$ dmesg | grep "cp21.*attached"
「usb 2-2: cp210x converter now attached to ttyUSB0」と表示された
この場合は、 ttyUSB0 に接続されていることになる。フルパスは、 /dev/ttyUSB0 。
カーネル設定の新規作成方法(前回のverをコピーしてもいいけど)
カーネルのdefconfigを新規作成
$ tools/mkdefconfig.py -k cfft
定義済カーネルの呼び出し
$ tools/config.py -k cfft
cfft以外でもいい
ならカーネル設定
$ tools/config.py -k -m
ならdefconfigの上書き
$ tools/mkdefconfig.py -k cfft
定義済カーネルの呼び出し
$ tools/config.py -k cfft
カーネルビルド
$ make buildkernel
カーネル設定をすっ飛ばす場合は下記
$ make buildkernel KERNCONF=cfft
自作sample設定の新規作成方法(前回のverをコピーしてもいいけど)
sdkへ移動
$ cd ~/spresense/sdk
定義済SDK設定の確認
$ tools/config.py -l
必要ならsdkのdefconfigを新規作成
$ tools/mkdefconfig.py examples/cfft
定義済のSDK設定を読みだす
$ tools/config.py examples/cfft
cfft以外でも良い
必要ならカーネル設定
$ tools/config.py -m
必要ならdefconfigの上書き
$ tools/mkdefconfig.py examples/cfft
ビルド
$ make
参考
Developer World Overview
#Ubuntu16.04 #Ubuntu18.04 #nuttx #ARM #SPRESENSE