
オシレーターの制作
まだ、できてませんけど。写真のピントもどこにあってんだかwって感じですが。
元々この企画は今年のGWに暇だ!ってのがあって、たまたま目についたArduinoの学習キットを買って、Mozziなるライブラリを見つけて音を出して遊んだのが発端なのです。
アナログとかに拘りはないので、じゃ、オシレーターはArduinoっつーマイコンでやるかと思って、、、中華製のArduino Nanoの互換品を買ってですね、ごく普通のオシレーターを作ろうと。
せっかくだから2オシレーター、MS20みたいな基本的なオシレーターを2つ実装してと、やりはじめたのですが、Mozziのオシレータークラスの関数を眺めていたら、もしかするとオシレーターシンクができるかも?と思って中断しました。
いわゆるWaveTable方式なんですけど、特定のサンプルポイントに移動することができる関数があったので、例えば2つ目のオシレーターの1周期終わったところで1つ目のオシレーターのサンプルポイントをスタートに戻すと、オシレーターシンクになるんじゃね?とか思って。そのうち実験してみようなどと。
ちょっと仕様変更だな。<動けばだけどね
アナログライクに作ると、いわゆるV/Octを実装しないとならんのですがArduinoはデジタル周りが10bitですんで分解能が足りんと思うのです。なら手前に16bitのADCとか挟めばいいのですが、、、当初はMIDIのNoteナンバーに変更して対応する周波数を鳴らすかと思ったんですが、これだと後々外付けのPortamentoモジュールとか対応できないし(オシレーターに実装しちゃうという方法もあるけど)不都合多そうと思って、やっぱりV/Oct入れないとななどと。別のCVも入れたいし(考え方は一緒)
でね、こちらのHAGIWOさんが10bitで割り切ったってやってて、それ、いただきました、今のところですが。この方すごいですよ、自分が思ってたことの30周くらい前を走っています。今後も参考にさせていただきます。
んで、その10bit ADCでV/Octをやってみたら、これが悩んで時間がかかったんだけど。
まずMIDI-CV/GATEコンバータなんて持ってないのですが、実はKORGのSQ-1っていうステップシーケンサー?を持っていて、これMIDIを入れるとCV/GATEを吐くんですよ。簡易なコンバーターになるわけで、これを持っていたのでMIDIキーボード>MacのDAW経由>SQ-1で鳴らしてみたら、いくらなんでも音痴すぎる。
???な訳っす。いくらなんでも。。。。
1時間くらい悩んで気づいたのね。普段SQ-1ってMS20に繋いでるので、これ、
V/OctじゃなくてHz/Octになってるやん?
てわけでSQ-1の設定をV/Octに変えたらそこそこになりますた。
2オシレーターにしようと思ってたけど、2つ目のオシレーターをサブっぽくして、でも、そいつでオシレーターシンクができたらいいなということで、もう少し時間をかけて見ようと思います。