突然だが現在部活のプロジェクトでM5StickCというESP32内蔵のモジュールを使っている。クイックサイエンスで購入できる安価で多機能なマイコンだ。
開発環境の整備方法はクイックスタートを読めば分かるのだが、Windowsを想定して説明されているためにLinuxでは追加で行う必要のある操作がいくつか存在する。
メンバーとの情報共有、また備忘録を兼ねてまとめることにした。
1.Arduino IDEのダウンロード
公式サイトからダウンロードしよう。
tar.xzファイル形式で提供されるため、以下のコマンドで展開する。
tar -Jxvf arduino-[version]-linux64.tar.xz
筆者はこの解凍コマンドを毎度忘れる。
フォルダ内にはインストール用スクリプトinstall.sh
が含まれているが、今回はインストールせずに使うので無視する。
2.実行権限を付与
Windowsと異なりLinuxではファイルの実行権限が細かに設定されているため、一部ファイルに権限付与する必要がある。
chmod +x "ファイル名"
ここでは、解凍したフォルダ内の
- ./arduino
- ./arduino-builder
- ./tool-builder/ctags/[version]-arduino11/ctags
の3つに権限を付与しよう。
※マイコンのデバイス名
M5StickCは特別ドライバーをインストールすることなく使用できる。
USB Type-C接続なので、筆者の環境でのデバイス名は/dev/ttyUSB0
であった。
外部デバイスへの読み/書きの権限は標準でないため、上と同じく権限を付与する必要がある。この処理はスーパーユーザーで行うので頭にsudoを追加しよう。
sudo chmod o+rw /dev/ttyUSB0
この権限はPCの再起動後に初期化されるため、毎回実行しなければならない。グループに変更を加えることでこの操作を省略できるようになるらしいが詳細な説明は割愛する。
ls /dev/ttyUSB0 -l # crw-rw---- 1 root uucp 188, 0 4月 16 13:58 /dev/ttyUSB0 sudo usermod -a -G uucp USER # USERは自身のユーザー名
3.書き込みツールのインストール
Linux用Arduino IDEではESP32マイコンへの書き込みにPySerialというPythonライブラリを用いるがパッケージ内に含まれていない。
IDE自体がJava製であるのに対して一部Python製ライブラリを用いるのはややこしい。
筆者のOSはManjaro Linuxなので以下のコマンドで導入した。他のパッケージマネージャーでもおよそ同等のパッケージ名だと思う。
sudo pacman -S python-pyserial
あとがき
以上の4つの処理を行った後、M5StickCのクイックスタートに従ってプログラムを書き込むことができた。
これで組み込み開発のためだけにWindowsを起動する必要はなくなった。これまで以上に捗るだろう。おそらく。
コメント