M5Stack で iPhone GarageBandの音を鳴らす ② 3軸加速度センサの接続・発音

アバター画像 お母ちゃん  2025.7.10 
Home > 電子工作 > M5Stack で iPhone GarageBandの音を鳴らす ② 3軸加速度センサの接続・発音
すき 0
うんこ 0

M5Stack から無線で iPhone GarageBandの音を鳴らす実験をしているのですが、
前回はM5StackのボタンAを押すと音が出る所までできました。

M5Stack で iPhone GarageBandの音を鳴らす ① BLE-MIDIでの接続・発音

 

AudiostockでBGM・効果音を販売中!

Grove Beginner Kit for Arduino 

今回はセンサを繋げて音を出してみたいと思い、、、、

先日お父ちゃんに貰った、
Grove Beginner Kit for Arduino 
を使って行きたいと思います。

紹介記事はこちら⬇️

Grove Beginner Kit for Arduino

“3軸加速度センサ”が入っているようなので、
今回はそれを接続してみたいと思います!

公式Wiki:Grove Beginner Kit for Arduino | Seeed Studio Wiki

 

パーツを接続

まずは3軸加速度センサを探す…
公式図 Grove – 3-Axis Accelerator と記載がある

同じような形のパーツを探す

裏側を確認すると “Grove – 3-Axis Digital Accelerator” と記載があった。

M5Stack と つなげる。

この黄色、白、赤、黒の線は、GROVEケーブルと呼ぶようだ。

パーツを嵌める時は向きがあるので特に注意することはなかった。

 

ライブラリのインストール

3軸加速度センサについての公式Wiki:
Grove – 3-Axis Digital Accelerometer (LIS3DHTR) | Seeed Studio Wiki

“LIS3DHTR” というチップが搭載されているとのこと。

Arduino IDE の Library Manager で “LIS3DHTR”を検索して
“Grove-3-Axis-Digital-Accelerometer-2g-to-16g-LIS3DHTR” 
をインストール

Screenshot

最初、ライブラリを間違えた

公式ページをちゃんと確認せずChatGPTに、
「Grove Beginner Kit for Arduino の3軸加速度センサをM5Stackに接続したい」と相談していたら、
ChatGPTが違うセンサ(Adafruit Sensor)で話を進めてしまい、
「センサが認識されない〜!」としばらくハマってしまいました。
反省 💦

 

I2Cスキャナコードで調べる(スキップ可)

ライブラリを間違えていたため認識されず、
I2Cスキャナコードでデバイスを探しました。

デバイスアドレス(0x19)は公式サイトに記載があるので、
この作業は本来不要だと思います。

上記コードを実行しても
M5Stackに何も表示されない…と困っていたら
お父ちゃんが助けてくれました。

これは「シリアルモニタ」で確認するのだと…!

・M5.Lcd.println:M5Stackの画面に出力
・Serial.println:シリアルモニタへの出力

シリアルモニタ確認方法

Arduino IDE上部の虫眼鏡アイコン(「シリアルモニタ」)をクリック

Screenshot

すると、Arduino IDE下部、
Output の別タブにSerial Monitor が表示されました。

Screenshot

しかし何も表示されない、、、、、、、
と困っていたら、、またもやお父ちゃんの助け舟。

M5Stackをリセットする(M5Stackの側面にある赤いボタンを1回押す)と表示されました!

こういうところが、全く何も知らない初心者にとっては時間のかかるハマりポイントになるんですよね💦 

「なぜか表示されない…!接続に問題があるのか??」などと、何時間も費やしてしまう😭

そして文字は表示されたのだが文字化けしている…..

Screenshot

これは右上の 9600 baud を 115200 baud にする必要がありました。

この baud rate(ボーレート) はプログラムに記載のある値と揃える必要があるとのこと。

プログラム側に合わせると無事表示されました!

Screenshot

デバイスが2個検出されている…から、
3軸加速度センサ を外してリセットボタンを押す。

すると 0x75 だけになったので、
3軸加速度センサ は 0x19 と判明!

お父ちゃんに助けられました…🙏

公式サイトに記載がある!

そして、判明した0x19は、公式Wikiにちゃんと記載があった〜!!

Screenshot

ChatGPT頼りの前にまずはちゃんと調べないと💦
しかし今回の作業で理解が深まり良い勉強になりました📖

 

加速度センサの表示

ここまできたらあとはもうプログラムを書いてもらうだけ…

ChatGPTに書いてもらい…. 

表示されたー!!動いてるーー🙌

 

加速度センサの傾きで音を鳴らす

下記条件で BLE-MIDI 送信する形でプログラムを書いてもらいました。

x軸:音の高さ(左へ傾けると低く、右へ傾けると高くなる)
y軸:ベロシティ(上へ傾けると強く、下へ傾けると弱くなる)

面白いかも!

音階設定:ジャズ風

ただ音を出すだけではなく音階的な音を出したいと思い、
こちらもChatGPTに調整してもらいました。

int scale[] = { 0, 3, 5, 6, 7, 10 };

ここでスケール設定が色々とできそうです。
今回はジャズ風にしてもらいました。

 

面白い!スケールまで設定すると音楽的な響きになって良い感じ。

 

コメントはこちらから

メールアドレスが公開されることはありません。コメントのみでもOKです。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください