2026年1月4日日曜日

Seeeduino XIAO (SAMD21G18A)をDAPLinkデバイス化する(1)<--ふたたび

 

Seeed Wikiに「ArduinoボードをDAPLinkデバイスとして使用する方法」という記事があったのでトレースしてみる。

Seeed Wikiの当該ページはこちら(https://wiki.seeedstudio.com/ja/Arduino-DAPLink/)。で、使用するボードはSeeeduinoXIAO(SAMD21)。

1.DAPLink Arduinoライブラリのインストール

1-1.Seeed_Arduino_DAPLink リポジトリをダウンロード
Seeed-Studio/Seeed_Arduino_DAPLinkで、
ってすると、
Seeed_Arduino_DAPLink-master.zip
ってのがダウンロードされる。

1-2.ArduinoIDEにライブラリを追加
んで、ArduinoIDEで
で、開くダイアログでさっきダウンロードしたSeeed_Arduino_DAPLink-master.zipを選ぶ。一瞬で何かが行われた後、こんな感じでSeeed_Arduino_DAPLinkってやつが現れるようになる。

2. Seeed SAMD boardsを再インストール
ボードフォルダの中にもlibrariesフォルダがあって、このなかのtinyusbが古かったので衝突が起こってたと思う。updateでもいいのかもしれないけど、、、

2-1.ボードマネジャでseeedで検索してSeeed SAMD Boardsを探して、一旦削除。

2-2.ArduinoIDEを再起動してSeeed SAMD Boardsを再度インストール

3.ピン定義のカスタマイズ
Seeeduino Xiaoを使用しているのでスキップ。

4. Arduinoボードへのアップロード

4-1.プロジェクトを開く
ArduinoIDEでexampleからdaplink_v2を開く。
(いろいろ試したけど、こっちがいいらしい)

4-2.コードをちょっといじる。
元のコードは#if 0でスキップしてます。


4-3.USB StackをTinyUSBに変更する。

4-4.コンパイルしてみる。
(ライブラリの衝突はなくなった)

4-4.書き込む。
できたと主張している。

5.OpenOCDで動作確認
5-1.OpenOCDをここ(https://github.com/xpack-dev-tools/openocd-xpack/releases)から持ってくる。

5-2.フォルダに展開

5-3.ブツを接続する
拡張ボード側がXIAO RP2040です。

5-4.展開したフォルダでコマンドプロンプトを起動

5-5.OpenOCD起動
ここまでくればまぁ大丈夫。

5-6.telnet接続してみる
Teratermを起動してOpenOCDに接続する。


たぶんうまくいってる!

ライブラリの衝突はやっぱりダメだったんだろう。
daplink_v2を使うことでzadigいらなくなったっぽい。
どういうコードでどういうエラーが出てるかをGeminiに伝えることで、中身はさっぱりわからんけど解決できた。

AI、、、ちょっとずつ使えるようになってきてると思う。AIバブル(?)はまだつづくかなー

0 件のコメント:

コメントを投稿