完成・公開

ArLFO Ver.1.2 Arduino(ATMega328P)+SPI DAC(MCP4921) LFO
完成版の製作記事
記事を開くMOD / 完成
ATMega328PとMCP4921によるEurorack向けデジタルLFO。25kHzで動作する12bit DACと4次ベッセルLPFを組み合わせ、6種類のモジュレーション波形を出力します。

Eurorack
ArLFO Ver.1.2は、ATMega328Pと12bit DACのMCP4921を使用した Eurorack向けのデジタルLFOです。
25kHzで波形データを出力し、後段の4次ベッセルLPFで平滑化しています。 Sine、Triangle、Saw Up、Saw Down、Square、Randomの 6種類のモジュレーション波形を切り替えて使用できます。
ArLFO Ver.1.2では、次の6種類の波形を出力できます。

ArLFO Ver.1.2の出力波形。約10Hzで出力した波形をAnalog Discovery 2で観測しています。
SineとTriangleは滑らかに変化するモジュレーションに、 Saw UpとSaw Downは一定方向へ変化するモジュレーションに使用できます。
Squareは周期的な切り替えに、Randomは段階的に不規則な値を出力する モジュレーションに適しています。
ArLFO Ver.1.2は、Eurorackの±12Vおよび+5V電源で動作します。
MCP4921から得られる波形は、正電圧側にオフセットした ユニポーラ波形です。後段のアナログ回路で振幅とオフセットを調整し、 0Vを中心に正負へ変化するバイポーラ波形へ変換しています。

DAC側のユニポーラ波形と、後段回路でオフセットおよび振幅を変換したバイポーラ出力の比較です。
最終出力を0V中心の波形とすることで、Eurorackの各種パラメーターを 正負の両方向へモジュレーションできます。
MCP4921は12bit DACであり、出力は細かな段差を持つ階段状の波形になります。
ArLFO Ver.1.2では、DACの後段に4次ベッセルLPFを設け、 高周波成分と段差を抑えて滑らかな波形へ整形しています。

DACの生出力と、4次ベッセルLPF通過後の波形を拡大して比較しています。
LFOはオーディオ信号より低い周波数で使用しますが、 DACの更新による段差を抑えることで、連続的に変化する モジュレーション信号として扱いやすくしています。
ファームウェアはArduinoスケッチとしてGitHubで公開しています。
処理性能を確保するため、ATMega328Pのレジスタを 直接操作している部分があります。
波形テーブルや波形生成処理を変更することで、 独自の波形を追加することもできます。
ArLFO Ver.1.2は、基板とファームウェア書き込み済みATMega328Pの セットとしてBOOTHで頒布しました。
回路、組み立て、ファームウェアの書き込み方法については、 Blog記事、GitHub、取扱説明書、製作動画で公開しています。