· 

Seeeduino XIAOでCMSIS-DAPデバッガ

Seeeduino XIAOをCMSIS-DAPにすることができるらしいのでやってみる 
nRF52833の書き込みについて調べているところなんだけど、そんななかSeeeduino XIAOをCMSIS-DAPにすることができるって記事があったので、ちょっとやってみる。参考サイトはこちら(https://speakerdeck.com/ciniml/seeeduino-xiaodecmsis-dapdebatugawozuo-ru)。もうほんとこのままやれやってかんじ。すばらしい!
しかもLinux目線。丁寧な説明の後、13シート目にやり方が書いてあるので、おおむねそのままなぞる。
適当なフォルダを作成してそこに移動して、
git clone https://github.com/ciniml/free-dap.git
で、参考サイトによると、このあと
cd free-dap/platform/seeeduino_xiao/make
なんだけど、本当にそんなフォルダがあるのかどうか見にいくと、
あるにはあるが、v2ってやつもある。参考サイトを後ろまで読んでいくとv2の話が出てきて、何か働きかけたような記述があるので、最新版では反映されたのかもしれない。えらい!で、
cd free-dap/platform/seeeduino_xiao_cmsis_v2/make
で、
make -j 4
ってすると、エラー
armのクロスコンパイル環境がないとだめなのか、、、(<--そりゃそうだ)で、aptでインストールしてもいいんだけど、よくよく考えると、ArduinoでXIAOアプリをコンパイルしているわけで、PATH通せばいけんじゃね?ってよこしまな考えが出てくる。で、
export PATH=$PATH:/home/hoge/.arduino15/packages/Seeeduino/tools/arm-none-eabi-gcc/7-2017q4/bin/
で、
make -j 4
瞬殺で終わる。で、bossacってコマンドで書き込むんだけど、これもArduinoにあるので、横から失礼することにする。
/home/hoge/.arduino15/packages/Seeeduino/tools/bossac/1.7.0-arduino3/bossac -i -d --port=ttyACM0 -U true -i -e -w -v build/free_dap.bin -R 
で、bossacをコマンドラインから使うとなぜかボードをリセットしてくれない(Arduino IDEからだとリセットしてくれる)ので、久しぶりにこちら(https://wiki.seeedstudio.com/Seeeduino-XIAO/#enter-bootloader-mode)のように手動リセットを食らわしてからの書き込み。
ところで、参考ページのbossacのオプション -o 0x2000ってのを入れてないけど、どうなんやろ、、、
で接続する。


で、
openocd -s  /usr/share/openocd/scripts -f interface/cmsis-dap.cfg -f target/nrf52.cfg
ってすると、
接続できたっぽい。で、別のコンソールを開いて
ってな感じで、ちゃんと動いてそう。
CMSIS-DAP(実はSeeeduino XIAO)でアクセスできるってことはたぶんいろいろとメリットがあると思う。いやー世の中はイイコトする人でいっぱいだね。
 
自分は、、、自分のためです٩( 'ω' )و