Arduino IDEでBoard Managerの使用を回避して必要なBoardコアをインストールする方法
はじめに
この記事の想定する読者は、以下のような方です。
・会社支給のPCを使用している
・ファイアウォールやプロキシが厳密に設定されていて、ソフトウェアを気軽にインストールできない
・管理者権限も付与されていない
・でも、ArduinoIDEに必要なBoardコアをインストールしたい
Board Manager回避法で用いるもの
PC1台・・・ブラウザは外部インターネットに接続でき、githubから.zipがダウンロード、解凍できること
通常のBoard Managerを用いてのインストール方法
厳しいネットワーク制限がかかっていない自宅環境や管理がゆるい企業PCの場合は
何も気にすることなくBoard Managerを用いて、様々なBoardコアを気楽にインストールできます。
Board Managerが使えない場合はどうすればよいの?
しかし、プロキシやファイアウォールなどのためにBoard Managerが使えない場合はどうすればよいか?
この方法を見つけるために、私は多大な工数を無駄にしてしまいました。
Arduino-CLIも管理者権限でインストールが必要で使えませんでした・・・
探していく中で参考にさせていただいたのが以下の記事でした。
とある科学の備忘録
簡単に説明すると、ネットワークPCとオフラインPC二台を用意して
ネットワークPCでダウンロードしてきたコアフォルダをまるっとオフラインPCと同じ場所に
上書きするという方法です。
ただし、このやり方だとネットワークPCとオフラインPC間で、他の差分コアが存在していても
すべて上書きされてしまうため使っていたコアが消えてしまうリスクがあります。
また、PC二台(うち一台はおそらく私用PC必要)を必要とし、自宅で作業しなければならなくなります。
Boardコアが格納されるべき場所
インストールしたいボードコアがArduino nano everyとします。
ボードコアの.zipファイルは以下からダウンロードできます。
https://github.com/arduino/ArduinoCore-megaavr/releases
このダウンロードファイルの解凍すべき場所がどこかに示してあれば、こんな記事書かなくていいのですが
いろいろ調べても出てきませんでした。
ここで、Board Managerを用いて同ファイルをインストールすると
どこになんのファイルがインストールされているでしょうか?
実際にBoard Managerよりインストールした場合は以下に格納されます。
解凍されたファイルがそのまま1.8.8フォルダに収納されていることがわかります。
また、解凍前のファイルは下記にありました。
ここでは、.tar.bz2形式の拡張子ですが、.zipでも同様だと思います。
以上が手動でボードコアをダウンロードしたときに格納をすべき場所と考えられます。
再現性が得られる方法なのか、実際にやってみる
ではここで、Board Managerを使わずに、Arduino SAMD Boardsコアインストールしたいとします。
以下よりv1.8.14の.zipファイルをダウンロードしてきます。
https://github.com/arduino/ArduinoCore-samd
ダウンロードしてきた.zipファイルをpackagesフォルダに収納します。
次に.zipを解凍してできたフォルダをhardwareフォルダに収納します。
Board Managerを使わずにインストールできたのか?
最後にBoard Managerを使わずにインストールできたか確認します。
Arduino IDEを再起動してBoardを確認すると、ちゃんとArduino SAMDが追加されています。
最後に
管理者権限が付与されていない場合やファイアウォールでアプリケーションがインターネットに接続できない場合にArduinoIDEにボードコアをインストールする方法について述べました。
書いてしまえばなんてことないですが、全く情報が拾えず、周り道も閉ざされており、これに行き着くまでに無駄な時間を要しました。
ArduinoIDEは、ライブラリについてはライブラリマネージャーから.zipをインストールできるのですが、ボードマネージャはオンラインでの自動インストール以外の選択肢がないんですよね。
ボードマネージャも.zipなどを受け付けてくれればこんな苦しまなかったのに。。
今後もファイアウォールや管理者権限などでいろいろ苦しめられると思うとつらいです。
初めてのQiitaなのと適当な性格なので、読みづらいかもしれませんが、とりあえず手順だけは示したので参考になったならば幸いです。