【勘違い】Arduinoのシンセ制作Mozziとシリアルモニタの問題?
お疲れ様です。前回すべてのモジュールを接続して、ひと安心。そのはずでしたが、MozziのウェイトとArduinoのシリアルモニタで時間的な競合問題が出ている様です。
今日の投稿は自分用の備忘メモです。
定番のおまじない
Serial.begin(9600);
これを実行するとMozziが持っているEvent Delayのインターバルとバッティングしている様です。
症状は?
シリアルモニタ上に上がってくる12個のポテンショメータが正しく動作しません。
運が良ければ0〜1023の値を返すようなかんじ。不安定なんですね。
オシレータを発音したときに正しい音程が発音しません。
これは以前実験した時に発生した症状です。この時はArduinoのDelay()とMozziの時系列が不整合が起こっているはずです。
対策は?
潔く行きましょう。シリアルモニタで値を追っかけるのを一度止めます。
実際にポテンショメータが動いた時にMozziの発音が変化する様を観察して、デバッグを進めていく事にします。
値を目視して不具合を見つけてきた手法をやめて
”耳で聴いて”12個のポテンショメータが正しく作用しているのかを追う事”にしました。
しらみつぶしです。
もしかしたらこっちの方が返って直感的にわかりやすいかもしれない。
これも挑戦。
温度計とか、位置情報センサーとか、精密な値が欲しいわけではないのです。
音楽演奏に必要な最低限の精度をポテンショメータから読み取れれば。ある程度の”遊び”は想定しています。
うまくいけば、このまま前に進めますし、失敗したらまた学習するのみ!
またがんばります!