create every day - 福野泰介の一日一創

150円でつなぐ!MIDI音源で音楽あそび - Roland SC-88 Pro x IchigoJam

2016/02/14 23:55:00
#IchigoJam #KidsIT #sound #midi 

訳あってちょっと音痴IchigoJam
餅は餅屋、憧れのMIDI音源、Roland SOUND CANVAS SC-88 Proにつないで演奏してみました。
MIDIは、電子ピアノやエレクトーンにもついているので、お家にある楽器をハックしちゃおう!


IchigoJamからたった2本、線をつなぐだけ!(ケーブルは2年前つくったもの


MIDI端子は5ピンDINという規格。マルツで5ピンDINプラグ(150円)を買って、ピンを正面から見て左から2番目に赤色、と4番目に黄色の線をはんだづけ。写真の細い線ではなくジャンパーピンを使うのがオススメ。
5ピンDINソケット(120円)の方を買って、MIDIケーブルで接続するようにするのもアリ!

MIDIの正体は31250bpsのシリアル信号。IchigoJamのシリアル出力TXDに黄色、VCCに赤色を接続すれば準備OK!

IchigoJamで鳴らしてみよう!MIDIのお約束(プロトコル)を見て、ドの音を鳴らしてみます。
(参考、MIDI - Wikipedia

BPS 31250 ?CHR$(#90,60,127);

#90は1chに音鳴らすというコマンド、60が音階(半音で1上がる)、127が音の強さ。
画面に表示したものをそのまま鳴らそうとしてしまうので、鳴らさない時は UART0 でシリアル出力をオフにしよう。
おかしなことになったらMIDI音源の電源を一旦か、?CHR$(#ff); とシステムリセット信号を送ってみよう。

こちら和音の鳴らすプログラム

1 'MIDI WAON 10 BPS 31250:T=1 20 ?CHR$(#C0,T); 30 ?CHR$(#90,60,127,#90,64,127,#90,67,127); 40 WAIT 60 50 ?CHR$(#80,60,0,#80,64,0,#80,67,0); 60 UART0

減衰音の場合50行のノートオフはなくてもOK。

続いて、ドラムパート用に用意された特殊な10chを使ってドラム音を順番に鳴らすプログラム。

1 'MIDI DRUMS 10 BPS 31250:CLS 20 FOR I=35 TO 81 30 LC0,-1:?CHR$(#99,I,127); 40 LC0,0:UART0:?I:UART1 50 WAIT 30 60 NEXT 70 UART0

MIDI信号用の表示を画面に表示しないために、LC0,-1で画面外へ。
画面にだけ表示する場合は、LC0,0で位置を戻して、UART0で一時的にシリアル信号をオフにしよう。

以前つくったリズムマシーンをMIDI用に改造するのも楽しいかも?
本格DTM(for PanCake)、ゲームの効果音、加速度センサーを使ったオリジナル楽器作り、温度や距離測センサーを使って、外部環境に合わせたリズムを奏でるマシンづくりなど、発想自由自在!

IchigoJamイベント紹介
- 2016/2/20 第一回 PCNサミット IchigoJamワークショップ&こどもロボットpaprika 先着10名
- 2016/3/5 「きょうりゅうゲームをつくろう」IchigoJamプログラミングワークショップ 先着20組 - IODD2016

参考リンク
- 「WindowsマシンをIchigoJamのMIDI音源に使う - kazueda式

電子ピアノをMIDIとマイコンでIoTに

2014/03/30 23:55:00
#maker #IoT #lpc1114 #midi 

小学生の頃やっていたもの、ミニ四駆、パソコン(MSX)、電子工作、スイミングスクール、お絵かき教室、そろばん教室、エレクトーン。続いているのはパソコン、最近復活した電子工作。逆に、すぐに辞めてしまったのが、YAMAHAの電子鍵盤型多音色楽器、エレクトーン。この曲を弾きなさいとノルマが課せられるスタイルが性に合わなかった。

音楽が嫌いなわけではなく、10年ほど前に再度挑戦と買ったのが電子ピアノ、Roland FP-5。エレクトーンと違って、本物のピアノっぽいタッチがなんだかその気になれるかなと思ったが、やはりちゃんと弾くには練習が必要。子供の頃の蓄積もないので、上達も遅く、ほこりをかぶり、ついに本日リビングから追い出されることになった。

このまま使われなくなるのはかわいそうなのでネットにつないでIoT化してみる。PM2.5の値によって曲が変わる目覚まし時計や、10分後の雨降りの音をレインドロップ音で表現、スマホをMIDI楽器にして合奏するなど、いろいろと楽しく使えそう。ネットにつなぐには、MSXturboRでも使っていたMIDIという楽器をデジタルでつなぐ規格、パソコンにもつなぐことはできますが、ここは気軽に使えるようにマイコン(LPC1114)とつないでみる。

こちらLPC1114からMIDI信号を出すようにしてつないでみたデモ映像。ボタンで音色が変えられるようにしてある。ボタン電池でも動作するので、お気に入りの曲を持って、MIDI楽器屋さんに行っていろいろ試してみるのもいいかもしれない。Bluetoothなどで接続すれば無線化して、遠隔から音楽を操ることができる。

MIDI信号は非常にシンプル。マルツパーツ館で買える、DINプラグ5ピンというもの、内2本だけケーブルを引き出し、31,250bpsのシリアル信号を鳴らしたいタイミングで高さと音量を送るだけ。エレクトーンもMIDIに対応、電子楽器を余らせている方、オススメです!

Tweet
クリエイティブ・コモンズ・ライセンス
この作品は「Creative Commons — CC BY 4.0」の下に提供されています。
CC BY 福野泰介 - Taisuke Fukuno / @taisukef / high-res profile image