Ubuntu 22.04 上の Arduino 1.8.19 を使って Hello World を実行させるまでの方法です。
次のページを参考にしました。
M5StackシリーズのためのArduino IDEのインストール方法と初期設定、使い方紹介
ボードを M5Stack-Core2 にします。
環境設定
追加のボードマネージャのURL: に以下を入れる
https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json
ボードマネージャ
M5Stack をインストール
まず、空のプログラムの コンパイルとアップロードを行います。
skech_aug30a.ino
void setup() {
// put your setup code here, to run once:
}
void loop() {
// put your main code here, to run repeatedly:
}
次のエラーにぶつかりました。
import serial
ModuleNotFoundError: No module named 'serial'
exit status 1
解決方法
sudo pip3 install pyserial
次にこんなエラーにぶつかりました。
スケッチの書き込み中にエラーが発生しました
esptool.py v3.0-dev
Traceback (most recent call last):
Serial port /dev/ttyACM0
File "/usr/local/lib/python3.9/dist-packages/serial/serialposix.py", line 322, in open
self.fd = os.open(self.portstr, os.O_RDWR | os.O_NOCTTY | os.O_NONBLOCK)
FileNotFoundError: [Errno 2] No such file or directory: '/dev/ttyACM0'
解決方法
sudo ln -s /dev/ttyUSB0 /dev/ttyACM0
いよいよ helloworld.ino をコンパイルアップロードします。
ファイル -> スケッチ例 -> M5Core2 -> Basics -> helloworld
でサンプルをコンパイル、アップロードします。
ちょっとプログラムを複雑にしてみます。
morning/morning.ino
// ---------------------------------------------------------------
/*
morning.ino
Aug/30/2021
*/
// ---------------------------------------------------------------
#include <M5Core2.h>
int icount = 0;
// ---------------------------------------------------------------
void setup(){
M5.begin();
M5.Lcd.setTextSize(3);
M5.Lcd.println("Good Morning");
}
// ---------------------------------------------------------------
void loop()
{
M5.Lcd.println("icount = " + String(icount));
delay(1000);
icount++;
}
// ---------------------------------------------------------------
Ubuntu 22.04 で /dev/ttyUSB0 がすぐに消える問題
次のように報告されています。
Ubuntu 22.04 で USB-シリアル (/dev/ttyUSB0) が認識されない問題の対応
解決策
sudo apt remove brltty