本当はこれをやりたかったわけではないのだ!
でもうまく行かなかった…ARMプロセッサーの処理系が近くにこれしかなかったのでこの作業をやってみてまとめました。 本当にやりたかったのはChromebookであるASUS Chromebook Flip C101PAにArduinoIDEをインストールすることでした。 そちらはまた、失敗談としてエントリーを書く予定ではあります。
とりあえずは目的と似たAMR処理系&LinuxであるRaspberryPiへArduino IDEをインストールしてみたいと思います。
インストールする環境
今回はRaspberryPi3Bと最新のBusterベースのRaspbianを使用します。
Raspbian Buster with desktop Image with desktop based on Debian Buste
の2020/02/13のバージョンを使用する前提で行います。
Raspbianはこちらからダウンロードします。
(ファイル名:2020-02-13-raspbian-buster.zip
)
SDカードメモリに展開してOSを起動し、ネットワークに接続できるようにしておきます。このあたりは割とネット内の情報も充実していると思いますので、ググってもらったほうがいいかなと思います。
ArduinoIDEはXを使用するアプリケーションなので、起動時にはXが立ち上がるようにしておきましょう。
ArduinoIDEをダウンロードする
ArduinoIDEを公式サイトからダウンロードをします。今回は処理系がLinuxでARM32bitとなります。以下のコマンドで処理系を判別できると思いま…、ARM系しかわからなかった…。Raspbianは32bit処理系で大丈夫です。
$ uname -a Linux raspberrypi 4.19.97-v7+ #1294 SMP Thu Jan 30 13:15:58 GMT 2020 armv7l GNU/Linux
ダウンロードを行うのはLinux ARM 32bit
のバイナリとなります。【Linux ARM 32bits】をクリックして、
次のページで【JUST DOWNLOAD】をクリックしてダウンロードします。(寄付しても良い方はそちらをお願いします。)
インストールする
ダウンロードができたのであとはインストールになります。インストール先はホームディレクトリ配下でも問題はないと思いますが、
/opt
あたりがいいかなと思います。正直RaspberryPiなので、マルチユーザーで使用するなんてこともないので、どちらでもよいかなと思ってはいますが。
まずは事前準備としてaptをつかってxz-utilsパッケージをインストールしています。ダウンロードした圧縮ファイルがxz形式なので事前にインストールしているということになります。
sudo apt update sudo apt install xz-utils
そろそろ配布されているバイナリがtar.gz
の圧縮ファイルっていうのも少なくなってきているのかも。念の為、Wikipediaさんのリンクをみると、メモリなどの資源は必要だけど圧縮率はいいということのようです。
あとは展開していきます。展開場所は/opt
になるのでsudo
は必須になります。展開後は、今後のバージョンアップなども考慮してln
コマンドでシンボリックリンクarduino
を作成して、そちらから触るようにします。
ディレクトリを移動後はsudo ./install
でシステム的なインストール、./install
(sudoなし)でユーザ側の設定を行います。エラーが結構でますが、気にしなくても大丈夫そうです。
sudo tar -C /opt -xf arduino-1.8.12-linuxarm.tar.xz cd /opt/ sudo ln -s arduino-1.8.12 arduino cd arduino sudo ./install.sh ./install.sh
インストール作業が完了するとXのデスクトップにarduinoのアイコンが作成されます。
メニューバーのプログラミングのカテゴリーにもarduinoのアイコンが追加されています。
どちらをクリックしても起動できます。 クリックするとスプラッシュスクリーンが表示されます。
その後、スケッチのウインドウが開きます。
あとは、USBポートにArduino
やSeeedino
を接続します。するとメニューの【ツール】→【シリアルポート】に候補として/dev/ttyACM0
などが現れてくるので選択します。(/dev/ttyAMA0
は使用しないように)
【ツール】→【ボード情報を取得】で接続されたボードの情報をみることができるので覗いてみると
Arduino UNO
の場合
Seeeduino
の場合
というような感じで接続を確認できます。確認できるといってもSeeedino
の場合には微妙な感じもしますが。あとは、スケッチをコンパイルしてボードにアップロードしていきます。
特に変わった点はないので、通常の使用で大丈夫かなと思います。
【コンパイル】
【アップロード】
気になるディレクトリ関連
基本的には、Arduino IDEが問題なくインストールされただけのことですが、少し気になったのはディレクトリがどんな風につかわれるかでしょうか。
- Arduino IDEの設定ファイル、ボードマネージャでインストールした追加ボードのファイルは
~/.arduino15
に格納される - Arduino IDE付属のサンプルスケッチは
~/Aplications/arduino/example
ディレクトリに格納される - Arduino IDE付属のライブラリは
~/Aplications/arduino/libraries
ディレクトリに格納される - 自分で作ったスケッチは
~/Arduino
ディレクトリに保存される - Arduino IDEのライブラリマネージャでインストールしたライブラリは
~/Arduino/libraries
ディレクトリに格納される
こんなところでしょうか。これぐらいわかっているとちょっと安心できると思います。
おわりに
わりとあっさりとインストールできます。apt
でインストールされるものは割と古めのバージョンがインストールされるので、手動でも難しくないのでこちらのほうがオススメです。
自分もChromebook
にArduino IDE
をインストールしようかなと思っていましたが、ここまであっさりとインストールできるので、インストールされたRaspberryPi を持ち運んでリモートデスクトップ経由で開発してもいいのかもなあと思ったりもします。電源やWiFiなどに関しては少しハードルは上がりますが、ハッカソンなどのイベントではRaspberryPiもArduinoもどうせ(?)持っていくものなので持ち運ぶのは、ありかといえばありだと思います。
とはいえ本当はChromebook単体で開発できるといいんだけどなあ。Arduino Create
の月100円が払えない…