「研究しましょう」 ブログ   --- 日記 マガジン 小耳情報

    やりたいことを探して、ネットをさまよう私の、ブログです --- I'm here. Find me out. 我在这里 查找和
0

M5Stack Core2 のプログラミングの勉強を始めました 🐤✨️    #電子工作初心者 #スタックチャン初心者 #Stackchan #M5Stack #MacBookPro

みんなのM5Stack入門
 M5Stack Core2 用のスタックチャンも動いたので、首振りはまだだけど、M5Stack のプログラミングの勉強を始めようと思う。

まずは、Amazon で評判の良かった『みんなのM5Stack入門』。この本は、M5Stack の恒星や種類の説明から始まって、開発環境、LCDのドット数、ボラン処理、電子工作の基本、具体的なサンプルプログラムなどが詳しく説明されていて、評判通りだった。

一番嬉しかったのは、WiFi やブルートゥースの活用プログラムの解説だった。正に、動かしてみたいところであって、あまり情報が無く、それを、動作サンプルツキで説明されるのは、超、嬉しかった。

残念だったのが、2019年の出版で、その後版が更新されていないので、Core2 とか、最新の情報が無いことぐらい。
M5シリーズで楽しむロボット開発
 もう1冊は、『M5シリーズで楽しむロボット開発』という本。この本も、M5Stackの種類から始まって、開発環境などで始まる。

サンプルプログラムは、文字表示から始まって、色情報、BEEP音、顔の描画、加速度センサーでの傾きの取得、WAV音声の再生、などのサンプルプログラムがレシピ的に書かれている。

そして、圧巻は、機械学習のサンプルプログラム。この本は、A5版と少し小さめだったけど、まだ、ちゃんと読めて無いっんだけど、かなり、ためになるという予感がする。早く読み始めないと 💦

 ここまで、急いで M5Stack をいじってきたけど、次は、短いサンプルを動かしつつ、勉強していこう。

0

M5Stack Core2 プログラムを VSCode PlatformIO のシリアルメッセージ でデバッグする環境 🐤✨️    #電子工作初心者 #スタックチャン初心者 #Stackchan #M5Stack #MacBookPro

シリアルメッセージデバッグ
 電子工作を趣味にできないかと思って、チョット試してる。初心者でも簡単に結果が見えるといいなぁと思い、スタックチャンを組み立てて、いじることにした。

M5Stack Core2 で、なんとか音声を出すところまでは行ったので、簡単でいいから開発環境を構築しようとネットを調べて、デバッグ用にシリアルメッセージが使えることが分かった。その方法を、忘れたときの為に φ(..)メモメモ

 まず aruduinoIDE で Sketch を作成保存し、同じフォルダーに、VSCode & PlatformIO プラグインのプロジェクトを上書きして作成した。

そうすることで、aruduinoIDE 側からでも VSCode 側からでも扱える、プロジェクトができる。デバッグは、シリアルポートにデバッグメッセージを書き込んで、VSCode のターミナルウインドウで見ることになる。

VSCode & PlatformIO プラグインのプロジェクトを動かすためには、platform.ini に以下の項目を書き加える必要がある。

[platformio]
src_dir = [ソースファイルのあるサブフォルダ名]
[env]
monitor_speed = 115200
upload_port = [シリアルポート名]
board_build.f_flash = 80000000L
追記 ↓
aruduinoIDE のスケッチフォルダーと VSCode & PlatformIO のプロジェクトフォルダーを同じフォルダーにする場合、ちょっと注意が必要。その場合、src_dir ~ ./ と書くことになる。

そして、その場合、VSCode & PlatformIO が作る src というフォルダーが、鬼門。この中に main.cpp が作られて、その中には、loop( ) 関数が書かれていて、これが .ino ファイルの loop( ) 関数と重複してしまうので、エラーとなる。

main.cpp の中の loop( ) 関数は、コメントアウトする。ついでに setup( ) 関数もコメントアウトしておいた方が、安心かと思う。
追記 ↑
これで、ビルドして、実機にアップロードする。

 ソースは、デバッグメッセージを出したいところに、例えば以下の様に書いておく。(上の写真のオレンジの太い線の行)

Serial.println("mp3 begin C");
Serial.printf("Running for %d ms...\n", lastms);

その後、上の写真の、下の方の、オレンジの ◎ の中にある 🔌アイコンをクリックすると、VSCode のターミナルウインドウに、シリアルポートの文字列が表示されるようになる。

もう一度🔌アイコンをクリックすると、シリアルポートを閉じるためのダイアログが出る。

 これで、ソフトいじりの準備はできたので、スタックチャンに足と首を付ける作業に挑戦しよう。工作は苦手なんだけど、頑張ってやろう

参考ページ:
Arduino IDEとPlatformIO for VSCodeでM5Stack用ライブラリのソースツリーを共有する

0

VSCode とPlatformIOで、『スタックチャンで電子工作』の準備をする ✨️    #電子工作初心者 #スタックチャン #Stackchan #MacBookPro

 Visual Studio コード エディター( VSCode )で、M5Stack のソフト開発を行うと、aruduinoIDE でやるよりもコンパイル時間が少ないという評判だったので、スタックチャンの作業に移る前に環境を構築してみた。

Windows でも MacBookPro でも、VSCode をインストールしてしまえば、シリアルポート以外は同じ操作でできるのが、嬉しい。

ネット上の情報『PlatformIOでM5stack Core2の開発環境をつくる』を参考に、拡張機能『PlatformIO』を導入した。やり方は、凄く簡単だった。

これは私の推測だけど、事前に、aruduinoIDE を入れて M5Stack 周りのライブラリーの導入環境を構築して置いた方がいいと思った。

操作のポイントは、PlatformIO の操作アイコンを使うこと。PlatformIO のトップ画面は『🏠』をクリックすると表示される。これだけでも覚え置くと便利。あと、コンパイル、バイナリ転送は、aruduinoIDE と同じ『✔』と『→』のアイコンが、アプリウインドウ下の青色のステータスバーに表示されている、はず。

PlatformIOのシリアルポート設定
先の情報ページで、唯一説明がされていないのが、USB ポートの設定。その方法は、PlatformIO の『 device アイコン』をクリックすると上の画面が出る。

ここで、M5Stack を USBケーブルで接続すると出てくる、写真の黄色いアンダーラインのシリアルポート・デバイス名をコピーする。そして、設定ファイル platform.ini に、

upload_port = コピーしたシリアルポート・デバイスファイル名

を追加するだけ。

シリアルポート・デバイス名に出ていない場合は、右上に黄色い丸で囲んだ『◎Refresh』を押すが、よろし。

これで、『→』ボタンを押すと、プログラムが K5Stack に転送される。(シリアルポートの転送スピードは、特に指定しなかった)

 この方法、aruduinoIDE より速いかどうかは、正直よく分からなかった。でも、プログラムコードを入力するときに、VSCode のインテリセンスで補完して貰えるようになるのは、超、嬉しい 💻✨️

 さてと、これで、M5Stack Core2 周りの開発環境は整った、、、と思う。いよいよ、スタックチャンの構築準備に入れる。

あ、

  「サーボモーター、まだ、買ってないわ 💦 」

と、とりあえず、スタックチャンの組立方とか、ソースコードもしくはバイナリイメージとかの情報を集めないと

PS. MacBookPro でシリアルポートのデバイスファイル名を知るには、ターミナルで ls /dev/tty* とやると、以下の写真の様にデバイス名が見れる。usb〜以降が、上の PlatformIO の device の情報と同じ事が、分かる。
シリアルポートを探す
PS2. ・このサイト『【M5Stack】VSCodeの開発環境構築(写真で丁寧に解説)』の説明は、ビジュアルで分かり易いかも。
・このサイト『【M5Stack】PlatformIO乗換えてビルド速度向上!』はステータスバーのアイコンとか分かり易い。

0

コンパイルはできたけど、スタックチャンにはまだ遠い、電子工作 💦    #電子工作初心者 #スタックチャン #Stackchan #MacBookPro

 Windows PCが不調なため、とりあえず、MacBookPro にM5Stack の開発環境を用意する事にした。ネットで調べると、Windows と Mac の違いはあるけど、aruduino ide をインストールできれば同じように設定できることが分かった。

色々なサイトを見てインストールした環境では、

 #error Architecture or board not supported.
 「SD.h」に対して複数のライブラリが見つかりました
  使用済:/Users/user1/Library/Arduino15/libraries/SD
  未使用:/Users/user1/Library/Arduino15/packages/esp32/hardware/esp32/1.0.6/libraries/SD

と言うエラーが出て、どうやら、ライブラリーが正しくインストールできていないようだった。色々考えて、調査した結果、

  「 esp32 と M5Stack に関するライブラリが必要」

と言うことが分かった。

で、色々調べて、この『【M5Stack】Arduino IDEの開発環境構築(Windows,Mac)』のサイトにある、以下の2つのURLを、[基本設定] の[追加のボードマネージャーのURL] に追加すればいいと分かった。

https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json

上のリンクサイトの通り、[ボードマネージャー] で、『M5Stack』と『esp32』のライブラリーをインストールして、準備完了。

 この後、ビルドして環境を試してみるんだけど、その方法は『Arduino IDE M5stack,初期設定の仕方 Mac編』といページの『ライブラリを呼び出す』という目次以降に書いてある。実際に試してみたら、無事、ビルドできた。

でも、私は、「 Hello World ! 」を表示させることはできなかった。なぜなら、

  「 M5Stack 本体を持ってないから

既にスイッチサイエンスに発注してはいるんだけど、まだ、手元に届いていない

そうそう、aruduino ide でビルドして実機にバイナリを送る場合[ → ]をクリックするんだけど、ビルドだけしたいときは[ ✔ ]をクリックする。そうすると、ビルド後、停止状態になる。

これらをやったら、コンパイルまで行ったので、まだの人は、試してみよう!

 あぁ、しかし、スタックチャンがうちにも生まれ落ちるまで、いったい、あと、どれくらい掛かるんだろう。しかも、そこがゴールでも無い。

0

天体観測は一時スローダウンして、電子工作をかじってみる予定    #趣味探し #電子工作

M5シリーズで楽しむロボット開発
 迷ッているうちに、買おうと思っていた鏡筒は7月納期、ZWO ASI 294MC Pro(フォーサーズ/カラー/冷却モデル)は、正月休み中は10%オフだったのに、何を思ったか鏡筒の後で買おうとしたら、正月休みが終わったら、本当に10%オフが終わって15万円になってしまって、買えなくなった。

  「オレは一体、何をやってるんだぁ💢」

完璧、判断ミスをした。CMOSカメラは、来年の正月休みに10%オフになるまで待とう。

 と言うことで、次の趣味は『電子工作』をかじってみることにした。初めは、ラズパイか Aruduino を、センサーで遊ぼうと思っていたんだけど、時間が掛かりそうで、それだとつまらなくて、途中で止めそうだったので、方針転換。

  「まずは、 M5Stack で遊ぼう」

ベースは Aruduino らしく、最初から LCD がついているし、『スタックチャン』という簡易ロボットを作っている人たちがいたので、そこに乗っかってみることにした。

で、いつも通り、まずは解説書を集めている。写真の『M5シリーズで楽しむロボット開発』なるものを買ってみた。この本、M5シリーズの説明から始まって、電子工作の応用まで載っている。とりあえずここから始めることにした。

興味を維持するために、先に『スタックチャン』を組み立てるかも知れない。そこで、ソースをいじれたら、けっこう勉強になるんじゃないかと、密かに期待している。

該当の記事は見つかりませんでした。