Teensy 4.1をモジュラーシンセ開発プラットフォームとして調査した
概要
DigiKeyでUSB-PD ICのデバッグ用にNUCLEOボードを買おうとしたところ、送料を抑えるためにもう少し何か追加したくなった。そこからモジュラーシンセのデジタルモジュール開発に使えるものを探し始め、最終的にTeensy 4.1に辿り着いた。調べてみるとTeensy 4.1のEurorackエコシステムが予想以上に充実していたので、そのリサーチ結果のまとめ。
きっかけ: DigiKeyの送料問題
自分はzudo-pdという自作USB-PD電源モジュール(モジュラーシンセ用)を開発している。PCBA v1のデバッグ中に、STUSB4500のNVMプログラミング用としてNUCLEO-F072RBボード(約2,200円)をDigiKeyで購入する必要があった。
DigiKeyは一定額以上で送料が安くなるので、あと約4,000円分何かを追加したい。せっかくならモジュラーシンセのデジタルモジュール開発に使えるものが良い。
最初の調査: Mutable Instruments方面
まず思い浮かんだのはMutable Instrumentsのような既存モジュールのファームウェア書き換え。Mutable InstrumentsのモジュールはSTM32ベースなので、ファームウェアを書き換えるにはSWDプログラマーが必要。DigiKeyで売っているSTLINK-V3MINIE(約1,809円)が候補になった。
ただ、調べていくうちにNUCLEO-F072RB自体がSWDプログラマーとして使えることがわかった。CN2のジャンパーを外すだけでSTM32のSWDプログラマーになる。つまりSTLINK-V3MINIEを追加購入する必要がない。
プラットフォームの再考
ここで少し立ち止まった。Mutable Instrumentsは素晴らしいモジュール群だが、設計としては「昔の話」になりつつある。今はもっとハイスペックなプラットフォームがある。
- Daisy Seed (STM32H750)
- Teensy 4.x (NXP i.MX RT1062)
- RP2040
- ESP32
ここで重要な発見があった。現代のプラットフォームはほとんどUSB経由でプログラミングできるため、外部プログラマーが不要。STM32時代のSWDプログラマーが必要という前提自体がもう古い。
Teensy 4.1に決定
色々調べた結果、Teensy 4.1をDigiKeyで追加購入することに決めた。DigiKeyではSparkFun DEV-16771として販売されている。
スペックは以下の通り。
- プロセッサ: NXP i.MX RT1062, ARM Cortex-M7 @ 600MHz
- Flash: 8MB
- RAM: 1MB(512KB tightly coupled)
- PSRAM: 最大16MB追加可能(2スロット)
- SDカードスロット内蔵
- USB Host対応
- プログラミング: USB経由(Arduino IDE / PlatformIO)、外部プログラマー不要
600MHzのARM Cortex-M7が載っていて、USBケーブル1本でプログラミングできる。送料節約のための追加購入としては十分すぎるスペック。
DigiKeyでTeensy 4.1を買う場合、SparkFun DEV-16771を選ぶこと。SparkFun 28370 "Lockable"版というのもあるが、こちらは一度しか書き込めないので開発用途には向かない。
ADCの注意点
一つ注意点がある。Teensy 4.1のオンチップADCは、スペック上は12ビットだが実質10ビット程度の精度しかない。EurorackのCV入力では1V/octの精度が求められるので、オンチップADCだと精度が足りない。精密なCV入力には外部ADC(AD7606等)が必要になる。
これは後述するOrnament & Crimeプロジェクトでも外部16bit ADCを採用しているところを見ると、Teensy Eurorackコミュニティでは既知の問題の模様。
Teensy Eurorackエコシステムの調査
Teensy 4.1を使ったEurorackモジュールの既存事例を調べてみた。かなり活発なエコシステムがあった。
キャリアボード / シールド
Teensy単体ではEurorackの電圧レベル(+/-5Vや+/-10V)を扱えないので、キャリアボードやシールドが必要になる。
1010music Euroshield 1
商用キャリアボード。2x audio in/out、MIDI、2ノブ、Teensy 3.x/4.x対応。
newdigate/teensy-eurorack
オープンソースのキャリアボード。14 analog in / 16 analog out(16-bit)、6-in/8-out 24-bit audio。調べた中では最も高機能なオープンソースシールド。
- teensy-eurorack - ハードウェア
- teensy-eurorack-software - ソフトウェア
- eurorack-awesome - Eurorack DIYのキュレーションリスト
Fora888 Universal Teensy 4.0 Eurorack Shield
オープンソース、軽量構成。2x 24-bit audio in/out。
Teensy 4 Audio Shield(PJRC公式)
SGTL5000コーデックを載せた公式オーディオシールド。そのままだとライン/ヘッドフォンレベルなので、Eurorackの電圧レベルに対応するには追加回路が必要。
商用モジュール
TLM Audio O_C 4.1
Ornament & CrimeのTeensy 4.1版。Phazerville Suite対応。8 CV out、8 CV in、4 trigger in、stereo audio。Paul Stoffregen(PJRC)が設計しているという点が注目。PJRCはTeensy自体のメーカーなので、リファレンスデザインとしての信頼性が高い。
Deftaudio Teensy 4.1 8x14 1U MIDI and Audio Interface
MIDIルーティングハブ + オーディオインターフェース。オープンソース。
オープンソースプロジェクト
O_C T41
Paul Stoffregen設計のOrnament & Crime Teensy 4.1リファレンスハードウェア。外部16bit ADC、DMA、PSRAM対応。
Phazerville Suite
O&Cの拡張ファームウェア。Quadrants(4アプリ同時実行)、バックグラウンドオーディオエンジンなど、オリジナルのO&Cを大幅に拡張している。
squares-and-circles
O&C向けの代替ファームウェア。ドラム/シンセ/エフェクトエンジンを搭載。
ghostintranslation
Teensy 4.0ベースのモジュールシリーズ。PSYC03、DS909、DS9、FM Synth、BYTEなど、多数のモジュールをオープンソースで公開している。MOTHERBOARDというプラットフォームで、MIDIベースのモジュール間通信を実現しているのが独自のアプローチ。
Triple Voice Wavetable Synthesizer
Teensy 4.1で16MB PSRAMを使用し、2048のSerum互換ウェーブテーブルを搭載。PSRAMの実用例として参考になる。
Cutlasses Instruments
Glitch Delay、Audio Freeze、KhronoKrusher等のエフェクトモジュール。
usb_midi_clocker
MIDIクロックジェネレーター&USB-MIDIハブ。
ライブラリ
Teensy Audio Library(公式)
ストリーミングオーディオツールキット。グラフィカルデザインツールでオーディオパスを設計できるのが特徴。
DaisySP_Teensy
Electro-Smith DaisySP DSPライブラリのTeensy移植版。Mutable Instrumentsのソースコード由来のDSPアルゴリズムも含まれている。
書籍
Teensy MCUでEurorackモジュールを作るための包括的なガイドが出版されている。
- Sound and Music Projects for Eurorack and Beyond(Brent Edstrom, Oxford University Press, 2024)
調査してわかったこと
調べてみて見えてきたことがいくつかある。
- Ornament & Crime(O&C)プラットフォームがTeensy 4.x Eurorackの事実上の標準になっている。O&Cベースのファームウェアが複数あって、どれもアクティブに開発されている
- オンチップADCの精度問題はコミュニティで広く認識されていて、CV入力の精度が必要なプロジェクトでは外部ADCが標準的な選択肢になっている
- PSRAM(最大16MB追加可能)の用途がかなり広い。グラニュラーシンセ、ロングディレイ、ウェーブテーブル保存など、メモリを大量に使うDSP処理に活用されている
- SDカードスロットもウェーブテーブル保存、パッチリコール、サンプル再生など実用的な用途が多い
- ghostintranslationのMOTHERBOARDプラットフォームのように、MIDI over USBでモジュール間通信するという独自のアプローチもある
まとめ
DigiKeyの送料を節約するためにTeensy 4.1を追加購入しただけなのだが、調査してみるとTeensy 4.1のEurorackエコシステムはかなり充実していた。特にOrnament & Crimeプラットフォームとその派生ファームウェア群は、モジュラーシンセの「デジタルモジュール入門」として良い出発点になりそう。
リンク集は後で参照用として残しておく。将来的にデジタルモジュール開発に手を出す際のスタート地点ということで。