instructables PICO MIDI SysEx パッチャー
製品情報
- baritonomarchettoのPICO MIDI SysEx Patcherは、vinのプログラミング性を高めるために設計されたハードウェアソリューションです。tagプログラマビリティに欠けるシンセサイザーです。Raspberry Pi Pico マイクロコントローラ ボードをベースにしており、LED ディスプレイ、プッシュ ボタンが組み込まれた 2 つのロータリー エンコーダ、およびプッシュ ボタンを備えています。また、シリアル操作とオープン ファームウェア用の MIDI 入力も備えています。プログラマをマスター コントローラとシンセサイザーの間に配置することで、シーケンスの再生中にパラメータをリアルタイムで変更したり、マスター コントローラからターゲット シンセにその他の MIDI メッセージを転送したりできます。
- PICO MIDI SysEx Patcherは、いくつかのvinをサポートしていますtagRoland Alpha Juno (1/2)、Korg DW8000/EX8000、Oberheim Matrix 6/6R (> 2.14 ファームウェア) などの電子シンセサイザー。
製品使用説明書
- PICO MIDI SysEx PatcherをマスターコントローラーとVINの間に接続しますtagパッチを作成するシンセサイザー。
- マスターコントローラーとVINをオンにしますtagシンセサイザー。
- 2 つのロータリー エンコーダーを使用して、シーケンスの再生中にリアルタイムでパラメーターを移動および変更します。
- プッシュ ボタンを使用して、マスター コントローラーからターゲット シンセにその他の MIDI メッセージを転送します。
- ディスプレイの使用方法とソフトウェア レベルでパラメータをグループ化する方法の詳細については、ユーザー マニュアルを参照してください。
注記: 必ずあなたのVINtagシンセサイザーを使用する前に、PICO MIDI SysEx Patcher でサポートされていることを確認してください。また、必要なコンポーネントとその組み立て方法については、ユーザー マニュアルのハードウェアの説明セクションを参照してください。
製品について
- 私はワインに弱いtag電子シンセサイザー。誤解しないでほしいのですが、現在の音楽制作シーンは刺激的ですが、私は「時代遅れ」のキーボードを最も多く演奏しています。
- 80 年代半ばの機器の欠点の XNUMX つは、プログラミングができないことです。プログラミングは面倒な作業になる場合があり、サードパーティのソフトウェアが SysEx プロトコルをサポートしていないことも問題です。
- とにかく、この問題に対処するには、ソフトウェア (Ctrlr と言ったのは誰ですか?) とハードウェアの 2 つのアプローチがあります。
- 言うまでもなく、ここではハードウェア ソリューションを扱っています。
- 私はすでに、Roland a-Juno、Oberheim Matrix 6、Korg DW8000、SCI Multitrack など、黄金時代の象徴的な楽器のプログラミング機能を、Arduino MEGA ベースの SysEx プログラマーとシーケンサーの組み合わせで強化したと思います。最近 Raspberry Pi Pico マイクロコントローラー ボードに夢中になったので、この問題の解決方法を思い返しました。
- Raspberry Pi Pico は安価で強力なマイクロコントローラーであり、最近の私のお気に入りの選択肢です。新しいプロジェクトに採用していますが、古いプロジェクトを再検討するためにも採用しています。
- IC のメモリ制限がなくなったため (ただし GPIO の数は制限されています)、以前のプロジェクトとはまったく異なるインターフェイスとワークフローを持つものができました。
- 良くなった? 悪くなった? 決めるのはあなたです 🙂
用品
部品表 (BOM) に従います:
- マイクロコントローラ、IC、ディスプレイ
- Raspberry Pi Pico (1 GPIO クローン) x 30
- 1N6オプトカプラ×138
- 1A LEDディスプレイ x 1602
- コンデンサ、抵抗器、トリマー
- 3x 220オーム抵抗器
- 1x 330オーム抵抗器
- 1Kオーム抵抗器10個
- 2オームトリマー1000個
1nF 非極性コンデンサ x 100
- ダイオードとエンコーダ
- 1N1ダイオード×4148
- 1N1ダイオード×4004
- 2倍増分光学エンコーダ
- その他
- ポットノブ2個(オプション)
- DCバレル×1
- 1x B3F 4050 オムロン モーメンタリプッシュボタン
- MIDI (DIN 2) コネクタ x 5
製品レイアウト




インストール手順
ステップ1: プログラマー機能
- PICO MIDI SysEx プログラマーの主な機能は次のとおりです。
- 内蔵LEDディスプレイ
- 2つのロータリーエンコーダとプッシュボタンのみで簡単に操作できます。
- MIDI入力、シリアル操作用
- オープンファームウェア
- はい、技術的には、これらのロータリー エンコーダーにはプッシュ ボタンが組み込まれており、実際に使用されているため、ボタンの数は「1」ではなく「3」になります。
- プログラマーは、マスター コントローラーとパッチを作成するシンセサイザーの間に配置する必要があります。
- これにより、シーケンスの再生中にパラメータをリアルタイムで変更したり、マスター コントローラーからターゲット シンセに配信するその他の MIDI メッセージを転送したりできるようになります。
- 現在サポートされているシンセは次のとおりです:
- ローランド・アルファ・ジュノ(1/2)
- コルグ DW8000/EX8000
- Oberheim Matrix 6/6R (> 2.14 ファームウェア)
- 次のいくつかのステップでより詳しく説明しますが、ソフトウェア レベルでのパラメータの表示とグループ化は、このプロジェクトで重要な役割を果たします。詳細については、引き続きお読みください 🙂
ステップ2: ハードウェアの説明
- インタフェース
- このプログラマーでは、以前のプロジェクトとは逆のアプローチを採用したいと考えました。ここでは、インターフェース要素は最小限に抑えられ、回転式増分エンコーダー 2 つとメニュー ボタン (正確には 3 つのボタン) のみになっています。
- 80 年代中期のシンセサイザーのプログラミング性の欠如に直面して生まれたプログラマーにとって、ノブの数を減らすことは後退のように見えるかもしれません。しかし、すべてのパラメータが適切に分類されているファームウェア (次の手順を参照) と、パッチ パラメータのカテゴリ、名前、および値をリアルタイムで表示する LED ディスプレイとの相乗効果を考えれば、そうではありません。
- LEDディスプレイ
適度な大きさの LED ディスプレイがあれば、特に時間をかけてパッチングを行う場合、パッチングがより快適になります。以前のハードウェア プログラマー プロジェクトには、小さな OLED ディスプレイが搭載されています。表示される情報はシーケンス プロパティに限定されるため、このハードウェアでは十分ですが、この場合は比較シートを必要とせずに、すべてのパッチ パラメーター名が表示されます。 - マイクロコントローラ
- 前述のとおり、使用されているマイクロコントローラは Raspberry Pi Pico です。このマイクロコントローラは、計算能力 (最大 133Mhz、デュアルコア) とメモリ ストレージ (最大 16Mb) の両方において強力です。今日の標準ではこの巨大なメモリにより、ファームウェアに詳細な文字列を含めることができるため、新しいアプローチを採用できます。
- Raspberry Pi Pico も今のところ安いので…
- ミディ
- MIDI IN 回路と MIDI OUT 回路の両方が内蔵されています。
- MIDI OUT は MIDI メッセージを送信するために必須であり、決して省略することはできません。
- MIDI IN も必要です。プログラマーが接続されていると、シンセサイザーは他の楽器 (マスター キーボードや DAW など) からメッセージを受信できないためです。つまり、パッチとシーケンスのフェーズは必然的に分離/区別されます。内蔵の MIDI IN 回路を使用すると、シーケンスの実行とパッチの変更を同時に行うことができます (つまり、リアルタイムで適切なフィルター スイープを送信できます)。
- MIDI IN 回路は、MIDI 協会の仕様に準拠したオプトアイソレーション回路です。目新しいものではありません。
- 電源
- SysEx プログラマーは、マイクロコントローラー ボードの USB-C コネクターから直接、または PCB に取り付けられた DC バレルを使用して、9 つの異なる方法で電源を供給できます。どちらも合法ですが、次の理由から最新のものを好みます。
- DCバレルはより頑丈です
- DCバレル入力はPICOの+5Vライン(いわゆる「Vsys」ピン)に直接接続され、内部の
直列ダイオード保護。
- センタープラスの PSU を使用する必要があります。逆極性保護ダイオードがあっても、PSU を損傷する可能性があるため、逆極性を適用しないでください (このような状況ではダイオード保護により GND と +5V が短絡するため、プログラマーは損傷しません)。
- SysEx プログラマーは、マイクロコントローラー ボードの USB-C コネクターから直接、または PCB に取り付けられた DC バレルを使用して、9 つの異なる方法で電源を供給できます。どちらも合法ですが、次の理由から最新のものを好みます。
- マイクロコントローラーボード
私はすでに Raspberry Pi Pico マイクロコントローラ ボードを称賛してきました。ここで警告を 2 つ付け加えておきます。このマイクロコントローラ ボードには 16 つのバージョンがあります (30Mb から 9Mb のメモリで購入できることを無視すれば)。ここでは、公式 Pico とはピン配置が異なる 2 ピンのクローンを使用しています。現時点では、XNUMXMb バージョンで十分です。
ステップ3: プログラマパラメータの分類
- 30 を超えるパラメータを順番に(XNUMX つずつ)スクロールするのは現実的ではありません。それにもかかわらず、このプログラマーは、サポートされているシンセサイザーの「シングル データ スライダー」インターフェイスの簡素化を主張しています。それはどういうことでしょうか。
- 私にとって、ターゲットを照準するための可能な解決策は、パラメータをカテゴリ内にグループ化することでした。カテゴリ化により、パラメータの数が減ってアクセスしやすくなり、実際にパラメータを見つけやすくなります。
- 分類はサポートされているすべてのシンセサイザーで同じ原則に従い、私の意図では、私たちが愛するアナログシンセサイザーの典型的な物理ブロック構造に似ています。オシレーター -> ボリュームtag電子制御フィルター -> ボリュームtage制御 amp変調源と効果は次項で説明します(詳細は以下を参照)。
- コルグ DW8000
- DW8000 (および EX8000) のパッチ パラメータは Korg によってすでに適切に定義されているため、プログラマーの分類はフロント パネルのグループ化に忠実に従います。
- パラメータは 8 つのカテゴリに分類されます。
- 発振器1
- 発振器2
- 巻tage制御フィルター
- 巻tage管理 Amp嘘つき
- 低周波発振器
- 車輪
- デジタルディレイ
- その他(ポルタメント)
サブカテゴリの詳細については、ステップ ヘッダーシートを参照してください。
- フィルタリングして ampそれぞれのレイヤーには専用のエンベロープが1つずつあります。この場合、エンベロープパラメータはボリューム内でグループ化されます。tag目的地の制御要素。
- MIDI モード/チャンネルを除くすべての DW8000 パラメータがサポートされています。
- ローランド・ア・ジュノ
- Roland a-Juno のパッチ パラメータの数は限られていますが、サポートされているシンセサイザーの中では、MIDI 実装におけるそのシーケンスが最もわかりにくいものです。フロント パネル シーケンスと同様の方法で MIDI 実装をグループ化するのに、少し時間がかかりました (同じではないにしても)。
- ミッションは達成されました:
- 発振器
- 巻tage制御フィルター
- 巻tage管理 Amp嘘つき
- 封筒
- LFO
- コーラスとベンディング
サブカテゴリの詳細については、ステップ ヘッダーシートを参照してください。
- プログラマーは、Roland a-Juno の 36 個のパラメータすべてをサポートしています。単一の (割り当て可能な) エンベロープ パラメータは、専用のグループにまとめられています。
- オーバーハイム マトリックス 6
- Oberheim M6/M6r は最も先進的なシンセサイザーであり、最近の楽器と比較しても信じられないほど複雑なルーティングを特徴としています。
- 音楽制作の世界では「複雑さ」が両刃のナイフになる可能性があることを私たちは学びました。また、パラメータを直接操作する機能がないため、Matrix 6 はサウンド エンジニアリングの点で最も過小評価されている「サウンド ファクトリー」の XNUMX つとなっています。
- シンセがサポートする 99 個のパラメータのうち、「たった」 52 個が Programmer ファームウェアに含まれています。私はそれらを 9 つのグループに分類しました。
- 発振器1
- 発振器2
- 巻tage制御フィルター
- 巻tage管理 Amp嘘つき
- Ramps
- エンベロープ1
- エンベロープ2
- LFO1
- LFO2
サブカテゴリの詳細については、ステップ ヘッダーシートを参照してください。
- 3 番目のエンベロープ、トラック ポイント、クリックなどを方程式から除外して、パラメーターを適切な数に制限しようとしました。いずれにしても、Raspberry Pi Pico のメモリ サイズのおかげで、これらすべてを処理することが可能です。
- プログラマーによって処理されないパラメーターは「無効」にはなりませんが、シンセ パネルからアクセスできます。
- マトリックス変調は複雑すぎて組み込めなかったため、省略しました。



ステップ4: 使い方
- 初めて電源を入れると、シンセ選択と MIDI チャンネル メニュー ページが表示されます。
- LEFT ノブ (PARAMETER ノブ) を回して、ターゲット シンセがリッスンする MIDI チャンネルを選択します。
- 右ノブ(VALUE ノブ)を回して、MIDI メッセージを送信するシンセサイザーを選択します。
- プログラマーをリセットするたびに、この操作を実行する必要があります。 ファームウェアがオープン ソースであるため、開始シンセと MIDI チャンネルを定義する 2 つの変数を永続的に変更するのは非常に簡単です。
- 「メニュー」ボタンを押してメニューモードを終了できます。サポートされているパッチパラメータを変更するには:
- 左側のロータリーエンコーダ(PARAMETERノブ)を回して、関心のあるパラメータのカテゴリ(LEDディスプレイの上部に名前が表示されます)を選択します。
- 左側のロータリーエンコーダーのプッシュボタンを押すと、実際のパラメータ選択に切り替わります(名前はLEDディスプレイの下部に表示されます)。
- 左側のエンコーダ(PARAMETERノブ)を回して、変更したい実際のパラメータを選択します。
- 右側のロータリーエンコーダを回して、希望するパラメータ値を選択します。右側のロータリーエンコーダのプッシュボタンを押すと、パラメータ値を10ずつ進めることができます。
- パッチパラメータ値は、値が変更されるとすぐに MIDI 送信され、「リアルタイム」パッチングが行われます。
- 関心のあるパラメータに対してこの手順を繰り返します。
- メニュー画面に戻りたい場合は、メニューボタンを押すだけです。
- 以下の点にご注意ください:
- プログラマーのパラメータは、シャットダウン後にプログラマーを初めてオンにしたとき、またはメニューで別のシンセサイザーを選択したときに、すべて「ゼロ」の値に初期化されます。
- パラメータ値が変更されると、プログラマがリセットされたりオフになったりしない限り、その値はメモリに保持されます。
- シンセサイザーのフロント パネルからパラメータ値を変更した場合、プログラマ パラメータは更新されません (同期されません)。
>>こちら<< は最新バージョンのスケッチ リポジトリ (Github) です。オープンソースなので、スケッチを自由に変更したり、バグを修正したりすることができます (次の手順を参照) 😉


ステップ5: 制限/バグをスケッチする
- 現在の予備スケッチには大幅な改善の余地があります。
- 例ではampたとえば、プログラマーがオンになるたびに起動時に選択する代わりに、MIDI チャンネルとシンセサイザーを保存する機能を追加できます。まだ空きメモリの量を考えると、他のシンセサイザーもサポートすると便利です。現在のパッチ パラメーターを取得して保存し、プログラマーとシンセサイザーを同期させると便利です。
- また、このコードの最初の反復には、厄介なバグがいくつかあることも報告しなければなりません。2 つの光学エンコーダーの 1 つを初めて回すと、ライブラリ (LCD ライブラリだと思いますが、よくわかりません) が初期化され、プログラマーが数秒 (2、3 秒) 応答しなくなります。大した問題ではありませんが、厄介です。
- もう 1 つのバグは、SysEx 送信の一部が失われることです (光学エンコーダーの回転はすべて記録されますが、MIDI 出力に何も転送されないことがあります)。これは間違いなく問題です。
ステップ6: 謝辞
- この Instructable に掲載されている PCB は、信頼性が高くコスト効率の高い PCB の製造を専門とするハイテク メーカーである JLCPCB がスポンサーになっています。
- 同社は、9 を超える部品の膨大なライブラリを在庫し、柔軟な PCB アセンブリ サービスを提供しています。350.000D プリントが「最近」同社のサービス ポートフォリオに追加されたため、完成した製品をすべて 3 か所で作成できるようになりました。
- 彼らのカスタマーサービスは反応が良く、親切で、PCB は価格に見合った価値があります。
- このプロジェクトの実現における彼らの貢献は不可欠でした…本当にありがとうございます! 🙂
- このリンク(関連リンク)から JLCPCB サイトに登録すると、注文時に使えるクーポンが届きます。登録料はかかりませんので、この機会にサービスを試してみるのもいいかもしれません 😉


ドキュメント / リソース
![]() |
instructables PICO MIDI SysEx パッチャー [pdf] 取扱説明書 PICO MIDI SysEx パッチャー、MIDI SysEx パッチャー、SysEx パッチャー、パッチャー、PICO MIDI SysEx |





