DevAcademy “Adding custom board support” (1)

2024/07/22

DevAcademy Fundamentalで基礎を勉強して評価ボードnRF5340 MDBT53-1Mモジュールピッチ変換基板の設定ファイルを作ろうとしたのだが、さすがにその知識だけでは無理だ。 nRF5340DKの定義と見比べたりしたものの、差分が多すぎてどれが影響あるのか分からないし、まねして良いのかどうかも分からない。

まだ早いのかもしれないが DevAcademy IntermediateのAdding custom board supportを見ていく。


Board definition

10分くらいの動画があるのだが・・・私は英語が、ね。。。 字幕があればまだ見てみようかと思ったのだが、ページに全部書かれていると期待したい。
しかし飛ばして見ただけでも載っていない画面ばかりだったので、動画にしか載っていない or 動画の方が親切なのだろう。

YouTubeチャネルにはウェビナーで使われたAdding Custom Board Support in nRF Connect SDKもあるので、そちらの方が扱いやすいかもしれない(字幕が使えるので)。 おそらく、DevAcademyの各ページの先頭にある動画はウェビナーを分割したものだと思う。

字幕は自動生成なので翻訳するとさらに混乱する。いっそのこと英語の字幕のままの方がよいのか。。。でも単語が。。。

例としてnRF52833DKが出ている。 Board列のリンク先v3.5.99-ncs1-1となっているが、ncs v2.6.0 のwest.ymlではv3.5.99-ncs1となっている。

image

ncs v2.6.1のwest.ymlではv3.5.99-ncs1-1になっているので、これを書いている時点でのDevAcademyはv2.6.1を使っているということでよかろう。

SoC列のリンク先はDTSIファイル、つまりDeviceTreeのincludeファイルである。 列が右側に行くにつれてグループが大きくなっている(Arm > Cortex-M4 > nRF5 > nRF52 > nRF52833 > nRF52833DK)という見方で良いのかな?
階層になっているので「Hardware Support Hierarchy」と呼ばれる。

呼ばれるといっても、自分のボードだと自分で階層の表を作ることになる。 CPUというかマイコンというか、表でいうところのSoC列はどのチップを使うかで決まるのでDTSIファイルの選択は困ることはない。

定義ファイルをMDBT53開発ボードとnRF5340DKをファイル名だけで比較するとこのくらいの一致度だった。

念のため拡張子がdts/dtsi違いは除外したが、使われ方としては include でしか使っていなかったので dtsi でよかろう。

まあ、これだけ見てもさっぱりわからんな。 学習を進めよう。