2025年11月24日月曜日

M5Stackを使ってみる〜UART接続のUnit-MIDIでドラムマシーンを動かす

以前の続きです。M5StackCORE BASIC V2.7にPORT.C(UART)を追加する「M5StackBasicLite@akita11さん設計・製作)」というベースボードをつないで(はさんで)「UNIT-MIDI(以下「MIDI」)」を動かすことができるか動作確認をしました。「MIDI」には、仏dream社のSAM2695が内蔵されていて、GitHubのサイト内にあった、「M5-SAM2695」のページからダウンロードした「piano.ino(使用時は、ファイル名を「piano_midi.ino」に変更)」を使って、Behringerの「Pro VS MINI」を鳴らすことに成功しました。

今回は、同じ「MIDI」を使って、ドラムマシーン(BehringerのRD-6)を鳴らすことができるかやってみたいと思います。GitHubの「M5-SAM2695」サイトから「drum.ino」をダウンロードして、名前を「durm_midi.ino」に変更しておきます。(理由は、冒頭にリンクした記事を参照してください)これをLinux Mint上のArduino IDE(2.3.6)で開いて、コードを確認します。すると、「piano_midi.ino」のときと同じように「M5_SAM2695.h」を使うようなので、前回使ったものと同じファイルを「drum_midi.ino」を入れているフォルダ内にコピーしておきました。この状態で、Core BasicをUSB-Cケーブルでつないで「ボード」と「ポート」の設定を「M5Stack-Core-ESP32」に合わせてから「→(コンパイル&書き込み)」ボタンをクリックすると、無事にプログラムが書き込まれました。
#例によってYAZAWATVR35WH(アンプ内蔵スピーカー)につないでdrumのプログラムがインストールされていることを確認しました。

この状態で、RD-6とCore BasicをMIDIケーブルでつないでドラムマシーンとして鳴るか確認します。つないだだけでCore Basicを起動すると、「MIDI」には通電するもののRD-6をコントロールすることができませんでした。MIDIのチャンネルが合っていない可能性があるので、RD-6側のMIDI設定を確認することにします。「FUNCTION」 ボタンを押しながら、「PATTERN GROUP」 ボタンを押すと、MIDIチャンネルの設定が変更できるようになります。デフォルトでは、MIDI INもMIDI OUT/THRUもチャンネル「1」になっています。「PATTERN GROUP」 の「Ⅰ」でMIDI OUT/THRUのチャンネルを、「Ⅱ」でMIDI INのチャンネルを設定することができます。「FUNCTION」 ボタンを押しながら、「PATTERN GROUP」 ボタンを2回押すと「Ⅱ(MIDI IN)」の設定ができるようになるので、「10」ボタンを押してチャンネル「10」に変更します。

再びMIDIケーブルで「MIDI」とRD-6をつないでCore Basicの電源を入れると、RD-6が鳴ってくれました。\(^o^)/注意点としては、「MIDI」の「I/O BYPASS」と「SEPARATE」のスイッチを「SEPARATE」側にしておく必要があります。続けて、TRS MIDIケーブルでも鳴るのかやってみましたが、こちらも問題なくRD-6を鳴らすことができました。「piano_midi.ino」でも同じことが言えるかもしれませんが、ループ再生するようなメロディやリズムをプログラムしたものをCore Basicに入れて、電子楽器をループで鳴らしておいて、そこに生の演奏を重ねるような使い方もできるかなと思いました。

余談ではありますが、今回使ったBehringerのRD-6やTD-3、このBlogでも度々登場しているRolandのPC-300(MIDiキーボード)など、電子楽器(中でもエフェクターが多いかな?)に使われるACアダプターが、「センターマイナス」が多いのが気になっていました。一般的には、「センタープラス」のものが多い気がしますが、同じBehringerでもSWING(CV/Gate&MIDIキーボード)は「センタープラス」ですし、KORGのvolcaシリーズも「センタープラス」です。手近なところで、RolandのSC-55mkII(←取説のPDF)とKORGのX5DR(←取説のダウンロードサイト)は「センターマイナス」で、メーカーでも統一されているとは限りません。理由を調べていて、「エフェクター電源はなぜセンターマイナス仕様なのか」という記事を見つけました。ご参考まで。

M5Stackを使ってみる

2025年11月17日月曜日

volca sample2(サンプラー)のアプリケーションソフトを使ってみる

以前の続きです。このBlogでも紹介したKORGのvolcaシリーズの中で、「volca sample2(以下「sample2」と略記)」というサンプラーを購入して使ってみた話を書きました。

このsample2には、KORGの公式サイトからダウンロードできるアプリが用意されています。このアプリを使うと、sample2の中に入っている音のデータを保存したり別のデータに入れ替えたりすることができます。volca sample2/Librarianから「volca sample Librarian(以下「Librarian」と略記)」アプリをダウンロードして、iMacにインストールして試用してみました。
#sample2のダウンロードサイトに取扱説明書やMIDIインプリメンテーションチャート、各種アプリが用意されています。追加のボーナスパックやサウンドパックなどもダウンロードして使うことができます。

microUSBケーブルでiMacと接続して、sample2の電源を入れてからLibrarianを起動します。Librarianを先に起動してしまった場合には、sample2を起動してからLibrarianを起動し直す必要があります。また、sample2はUSBからの給電では動かないので、ACアダプターからの給電が必須となります。接続に成功すると、自動的にsample2内のデータが参照されて、「PATTERNS」と「SAMPLES」の2項目で表示されます。
#「PATTERNS」を選んで「ファイル」メニューからパターン・データの保存が、「SAMPLES」を選んで「ファイル」メニューからサンプル・データの保存が、それぞれできるようになっています。

試しにダウンロードサイトから入手した「volca sample: Bonus pack vol.1」「volca sample: Bonus pack vol.2」「volca sample: Bonus pack vol.3」をsample2に入れて音を確認していきたいと思います。まず、ダウンロードしたボーナスパックのZIPファイルは、任意の場所で解凍しておきます。これを、Librarianの「ファイル」メニューから開いて、「.vlcspllib」という拡張子になっているライブラリデータを読み込みます。次に、Librarianの「送信・受信」メニューから「ライブラリ・データを書き込み」を選択すると、sample2にデータが書き込まれます。上書き保存されるので、元のデータが必要な場合は、あらかじめ「送信・受信」メニューから「ライブラリ・データを読み込み」でデフォルトのライブラリを保存しておくと良いと思います。

vol.1〜3まで音を確認してみましたが、時間泥棒ですね。(^^;;;(自作スピーカーのせいもあって無駄に音がいいし…)使っていて楽しくなってきました。注意点としては、ライブラリ・データを読み込んだあと、電源を一度落として再度入れ直した方が音いじりがしやすくなる感じでした。特に、あらかじめプログラムされているシーケンスデータで音の確認をしたいときに、ライブラリ・データを読み込んだ直後は、演奏される音に不自然さを感じますが、一度電源を落としてから再度入れ直すとまともに再生されることがわかりました。1音ずつの読み込み/書き込みもできるようなので、しばらくは何ができるか戯れてみたいと思います。

2025年11月8日土曜日

M5Stackを使ってみる〜CORE BASICでUART接続のUnit-MIDIを使ってみる

以前の続きです。前回では、M5StackのM5Stack CORE BASIC V2.7にPORT.C(UART)を追加する「M5StackBasicLite@akita11さん設計・製作)」というベースボードを使って、「UNIT-SYNTH(以下「SYNTH」)」を動かすことに成功しました。今回は、「UNIT-MIDI(以下「MIDI」)」が使えるか動作確認をしていきたいと思います。

「SYNTH」も「MIDI」も同じく仏dream社のSAM2695を内蔵したシンセサイザーユニットで、Arduino IDEのサンプルコード(「drum」と「piano」)も同じのものが使えるようです。Arduino IDEのコード(プログラム)をコンパイルして書き込むのは、いつものLinux Mintで動かしている自作PCを使います。

前回の動作確認で「drum」のプログラムを入れていたので、「MIDI」につなぎ替えて「MIDI」のAUDIO出力から音が出るか確認します。(「SYNTH」にはスピーカーが内蔵されていますが、「MIDI」には付いていません)これも定番になっていますが、YAZAWATVR35WH(アンプ内蔵スピーカー)につないで音が出ることを確認できました。少し歪んで聞こえたので、プリアンプ(ヘッドホンアンプ)をはさむと良いかもしれないと思いました。音を出すことに成功したので、この状態で何も手を加えずにBehringerRD-6(アナログドラムマシーン)にMIDIケーブルでつないで音が出るかやってみました。当然かも知れませんが、何の反応もありませんでした。

そもそも、これまで使っていた「drum」や「piano」のコードには、MIDIの設定らしき項目がなく、Unit-MIDIでMIDIをコントロールできるサンプルコードはないものかと探したところ、GitHubのサイト内に、「M5-SAM2695」のページを見つけました。この中に入っているサンプルコードを使えば、M5Stack Core Basicから「MIDI」を動かせるのではないかと考えて、ダウンロードしてみました。以下備忘を兼ねて、ダウンロードしたサンプルコードをリスト形式で記載しておきます。

※これ以外に、「M5-SAM2695/src/」内の「M5_SAM2695.h」が必要なようです。

この「drum.ino」と「piano.ino」は、「SYNTH」の動作確認で使った「drum.ino」「piano.ino」と同じ名前になっていますが、コードの中身が違います。フォルダ名も同じなので、その違いに気づきにくいかもしれませんが、コードの中身をよく見ると「MIDI」用の設定が追加されていることがわかりました。紛らわしいので、それぞれ「drum_midi.ino」「piano_midi.ino」と名前を変更して使うことにしました。

先程は、「drum.ino」のコードを使って動作確認を試みましたが、今度は「piano_midi.ino」のコードを使って動作確認をしてみることにします。「piano_midi.ino」を開いてコンパイルしようとすると、「M5_SAM2695.h」が見つからないと言われてコンパイルに失敗するので、「src」の中に入っていた「M5_SAM2695.h」をダウンロードして、「piano_midi.ino」ファイルと同じフォルダ内にコピーしてから「→(コンパイル&書き込み)」をクリックしてみました。すると、エラーを出さずにコンパイルが成功して、Core Basicへの書き込みもできました。
#Core BasicとArduino IDEとの接続の設定(「ボード」と「ポート」)は、前回までの記事を参考にしてください。

この状態で、Unit-MIDIにアンプ内蔵スピーカーをつなぐと、プログラムしたとおりに音が鳴ったので、SAM2695を動かすことに成功していることがわかりました。次は、MIDIのコントロールができるかを確認します。前回紹介した、Behringerの「Pro VS MINI」を使って、MIDI信号が正しく出てきているのか確認してみました。Unit-MIDIのMIDI OUTとPro VS MINIのMIDI INをMIDIケーブルでつないでから、Core Basicの電源を入れると、Pro VS MINIが鳴り始めました。これで、無事にMIDIのコントロールができることがわかりました。プログラミングの手間を考えると、1曲丸ごとプログラムしてシーケンサーのように使うという使い方は実用的ではないように思いますが、「本物の電子楽器(語彙不足…)を鳴らせる」ことに、様々な可能性を感じます。

M5Stackを使ってみる

2025年11月2日日曜日

BehringerのPro VS MINIを使ってみる

これまで、Behringerの楽器をいくつか購入して使用してきました。自宅にある、「SWING(32-Key USB MIDI Controller Keyboard with 64-Step Polyphonic Sequencing, Chord and Arpeggiator Modes)」「RD-6-GP(Classic Analog Drum Machine with 8 Drum Sounds, 16-Step Sequencer and Distortion Effect)」「TD-3-SR(Analog Bass Line Synthesizer with VCO, VCF, 16-Step Sequencer, Distortion Effects and 16-Voice Poly Chain)」については、このBlogでも紹介しています。

Behringerは、ドイツ発祥の電子楽器・音響機器のメーカーで、その製品ラインナップには、いわゆるビンテージ・シンセサイザーのクローンがあることでも有名です。その中で、今回は、Amazonのポイントアップで多めにいただいたポイントも使って、「Pro VS MINI」を購入してしまいました。(購入直後に更にディスカウントされてしまって、悶絶しましたが…)このシンセサイザーは、「Prophet VS」の音源を再現したもので、アナログな音を求めて購入しました。デジタルOSC(Oscillator=オシレーター)にアナログVCF(Voltage Controlled Filter)を搭載したハイブリッド・シンセサイザーで、デジタルとアナログの「いいとこ取り」を期待しています。

少しだけ「歴史」を補足しておくと、「Prophet VS」は、もともとSequential Circuits(紆余曲折があって現在はSequentialが引き継いでいる)が製造していたシンセサイザーで、現在のSequentialでは製造・販売されていません。ソフトウエア・シンセサイザーとしては、フランスのArturiaが「Prophet-VS V」をリリースしています。Prophet VSの実機は、中古市場でかなりの高値で取引されている感じです。

若かりし頃、自分のものとして初めて購入したシンセサイザーが、Rolandの「JUNO-106」だったのですが、こちらもDCO(Digital Controlled Oscillator)とVCFとの組み合わせだったので、ちょっと懐かしい音作りができるのではないかと期待して購入しました。
#現在は、Rolandから「JU-06A」というJUNO-60/106のモジュール版が出ています。

驚いたのは、筐体の小ささです。先に紹介したRD-6やTD-3と比べると半分程度の大きさしかなく、厚みも半分くらいです。KORGのvolcaシリーズよりも小さくて、正直なところ「おもちゃを買ってしまったか…」と思いましたが、落ち込んでても仕方がないので音を確かめてみることにしました。筐体に付いているタッチスイッチ(センサー)は、感度と演奏性が良くないので、今回もRolandのPC-300(MIDIキーボード)をつないで音を出してみました。volcaシリーズには、簡易ながら本体にアンプとスピーカーが内蔵されていますが、Pro VS MINIにはありません。ヘッドホン出力(ステレオミニTRS)からの信号を「Lepy LP-838」(←過去に説Blogにて紹介した)を通して視聴用の自作スピーカーサブウーファーも付けて)から音を出しました。

あえてエフェクターをかけずに音を確かめてみましたが、ゲームコントローラーのアナログスティックのようなレバーを使った音作りが特徴的で、どの向きにどのくらい傾けたらどんな音になるんだろうと、しばらくはかなり楽しむことができました。音のデータなどが表示されるLCDパネルに、リアルタイムに波形が表示されるのも音の変化を視認できて面白い工夫だと思います。プリセットの32音色も良い音が揃っているので、自分が作りたい音に近いものを選んでそこからエディットしていくという使い方が良いと思いました。
#音作りをしていく中で、音量が大きくなりすぎることがあって、MIDIキーボードから音量をコントロールできたら良いと思ったのですが、モジュレーションとベンダーは使えるものの、ボリュームのコントロールが全く効きませんでした。(もしかすると設定次第なのかもしれませんが…)