ラズパイでUSBのMIDIキーボードの入力データをMIDI端子から出力させる

明けましておめでとうございます。 例年は、昨年の振り返り・今年の抱負からブログを始めていたんですが、昨年はブログが停滞してしまったりすっきりしない1年になってしまったので、今年は変えていこう・ペースを戻そうと思い、書けることを先に書いてみようと思います。

今日は冬休みの自由研究ということで、USBのMIDIキーボードからのMIDI入力をラズパイで変換して、MIDIインターフェースのMIDI OUTから出力させる仕組みを作ってみました。

f:id:toguo:20220102210211j:plain

手順は簡単で、恐らくどのRaspberry Piでも用意できると思います。今回は最初は場所も取らないのでRaspberry Pi ZEROで作ろうと思いましたが、USBポートが少なくて変換端子を買う必要があるので余っていたRaspberry Pi2を使いました。

OSのインストール

GUIは特に使わないので、Raspberry Pi OS Liteをインストールしました。インストールが出来たらソフトウェアを最新に。

sudo apt update
sudo apt update

MIDI機器の認識・設定

参考にしたのはこちらの記事

www.dm9records.com qiita.com

今回使ったMIDIキーボードはKORGのnanoKEY2とAmazonで買ったMIDIインターフェースです。

参考記事に書いてあるコマンドを実行してみると、

  • KORG nanoKEY2→nanoKEY2
  • MIDIインターフェース→CH345

という品番で認識されていたので、以下のコマンドを実行すると標準で用意されているドライバーでMIDIの配線が設定されます。

aconnect nanoKEY2 CH345

クライアント名で登録することによって、どのUSB端子に繋いでも問題なく認識されるようになりました。 ただこの方法だと毎回ラズパイを起動したら、ログインしてコマンドを実行する必要があるので、もう少し準備をしてみました。

自動ログイン・自動MIDI設定

下の記事のように、ラズパイの自動ログイン機能を有効にします。

manumaruscript.com

後は、piユーザーのホームフォルダにある.bashrcに

aconnect nanoKEY2 CH345

を書き加えて保存。

これで起動すれば自動的に使えるようになりました。 シャットダウンはまあOSが壊れないでしょうということで、終了時はラズパイの電源をぶっこ抜くという荒っぽい運用で行こうと思います。

これで昔のシンセサイザーを鳴らすために、わざわざ昔のMIDI端子時代の入力キーボードを使う必要もなくなり、nanoKEY2のコンパクトな環境を実現することが出来ました。

可能であれば、3DプリンターでnanoKEY2の下にラズパイやバッテリーを入れるケースを作るのが次の目標かなと思います。

ラズパイサーバーのケースを光るファン付きのに変えてみた

自宅のファイルサーバー(NAS)として使っていたRaspberry Pi4が、数日に一度熱暴走で止まってしまうので都度再起動させていたのですが、流石に布団に入っている時に寒いのを我慢して再起動させるのが億劫になってきたので対策をしてみました。

熱暴走する理由は簡単で、Raspberry Pi4を収納しているケースに付いている冷却ファンが壊れて止まっていたからだったので、新しいファンケースを買って付け替えてみました。

買ったのはこれ。

今まで使っていたやつよりもファンのサイズも大きくヒートパイプを使っている本格的な仕様になっていたので選んでみました。

ただ一つ難点が「無駄に光り輝く」ところです(笑)。
Amazonの商品写真も光っているようになっていましたが、演出・光ってもそこまで激しくは光らないと思っていたら、想像以上に光り輝いてくれます。

f:id:toguo:20201226223945j:plain

冷却性能はバッチリで止まることが無くなったのでそこは満足しているのですが、扉の奥で誰にも見られることが無く健気に光り続ける姿はなかなかシュールです。

iPad Proからラズパイを操作する

最近パソコンで動画のエンコーディングをし続ける時間帯がたまに発生し、その間はパソコンが重くなってしまうので他の作業をすると不快になっていました。

そんな時はiPad Proを使って凌ぐのですが、iPad ProはブラウザもPCと同じ挙動になったり速度的な問題も無いので、殆どの作業で問題なくこなせていたのですが、

  • 裏側でサーバーの操作を実行させておきたい
  • Visual Studio Codeを使いたい

みたいな時は、iPadだとマルチタスクがパソコンよりは苦手なので、どうしたものかと思っていました。

そこでRaspberry Pi4をディスプレイレスで動くように設定し、VNCで繋いで操作できるようにしたら結構快適に操作出来ました。

ラズパイにインストールしたVisual Studio Codeも、日本語入力が必要になった時はちょっと操作に不便を感じますが、概ね希望通りに触れるようになりました。

将来的には、出先からでもラズパイを操作出来るようにして使ってみるとか、下の動画のようにモバイルバッテリーでラズパイを動かして、出先でアクセスポイント+開発環境的な使いかたも出きるようにするのも面白いかなと考えています。

www.youtube.com

個人的にはiPad Proは、20年以上固定化しているパソコンの使い方を変化させる可能性を秘めていると思っているので、まだ不便なところは今回のような形で補完しつつ、色々チャレンジしていきたいなと思います。