基板設計でミスってArduinoのピン(D2、D4~D6)を1つずらしてしまいました。Arduinoのスケッチを変更することで対応できました。02でLチカ(メモ)配線ESP-WROOM-02には、FT232モジュールから電源を供給せず、安定化電源で3.3Vを供給しています。1.8.5Arduinoのバージョンは、以前やったときは1.6.4でしたが、今は1.8.5です。OSもWindows10で再インストールしているので、さらの状態からインストールしたメモです。ボードの追加[ファイル]-[環境設定]で開くダイアログの[設定]タブの[追加のボードマネージャのURL]に「http://arduino.esp8266.com/stable/package_esp8266com_index.json」を入力。Module][ツール]設定値は不明。LED:]を配線に合わせて[4]に変更。再度書き込むときは本体側の電源をOFF/ONすれば良い。IO0を3.3Vに接続して電源を再投入すれば実行モードになる。フレーム塗装(失敗編)MDFで組んだKIK01のフレームを塗装しました。板材の継ぎ目やはみだした木工用ボンドをなめらかにするために、240番、400番でサンディング。数日乾燥後、400番でサンディング。プラサフ(Soft99)を塗布(半日程度間をおいて3回)。400番でサンディング。プラサフを塗布(数時間あいだをおいて2回)。数日乾燥後800番でサンディング。ALESCO水性黒(つやあり)を刷毛で塗装。ここで、大変な間違いをしていたのに今気づきました。水性塗料なのに油性の「ペイントうすめ液」で希釈していました(^q^;;;どうりでドロドロして薄まらないし、ペイント薄め液で刷毛をあらっても塗料が落ちなかったわけです。やってしまったのはどうしようもありません(^q^;;;暑さのせいで判断能力が落ちてたか(@@?半日程度間をおいて何度か塗装しました。塗料が乗らずゴテゴテで、黒塗りのラーメン屋の壁みたいな感じの仕上がりです。基板を入れて組み立て。VCAはプリント基板バージョンにしています。仕上がりに満足できないので、MDFの端材で今度は水で薄めて改めて塗装テストするかもしれません。16MHz版)でエンベロープ・ジェネレーターを設計しました。回路図メモ:出力レベルの監視用のArduinoのA0をIC1Aのバッファの後段から取るようにして試してみましたが、出力波形のGND付近に発振かクロック・ノイズのような波形が乗ってしまったので、バッファの前から取るようにしました。理由はわかりませんが、もう少し調べてみるつもりです。テスト用ブレッドボード配線図C基板で収まるかどうかというところですが、POTが多いので無理しないでB基板でもいいような。POTの値でエンベロープの時定数が決まるので、使いながら交換できるようにしておこうと思います。Github:https://github.com/ryood/Arduino_EG<追記:2018.07.23>ArduinoのA0に接続する点を出力バッファの後段(上図の(A)点)にした場合とバッファの前段(ブレッドボード配線図の通り)で比較しました。ch2:OutOutの波形のGND側の線が太くなっています。ch2:Out単なるノイズではなく4kHz程度の周期性を持っています。MHz帯ならクロックノイズだとおもいますが、4KHz程度と低い周波数です。言って発振波形でもないと思います。Gate信号(SyncIn)を無入力にしてもこのノイズは乗っていました。単体テストテスト回路図テスト配線図AntiLog-MMは吸い込み型の電流源のため、VCCとOUTの間に負荷抵抗RLを挿入しOUTの点の電位を測定しました。入力は1kHz/1Vp-pの正弦波(単電源波形)です。AntiLog-MMの設計TLF01のアンチログ電圧電流変換部として使うNPN/PNP型のアンチログ回路をAntilog-MMとして製作します。入力はモジュレーション(LFO、EGなど)2系統、POTによる設定1系統です。ピンソケットで実装するRは入力レベルをまだ決めていないので保険の意味です。3.3Vなのでできればこれで揃えたいと思っています。デカップリングコンデンサC1、C2を22uFにしているのは手持ちの関係です。EGの構想Arduinoとアナログ処理部の組み合わせでエンベロープ・ジェネレーターを製作することにしました。Bufferで行いましたが、一応MOS-FETでスイッチングしておくことにしました。「Attack」信号がHになる時間は、AVRのADCで出力レベルを監視して制御しますが、シミュレーションでは固定しています。過渡解析Gate信号V(gate)からADSRエンベロープV(out)を作り出しています。Mini(5V/16MHz版)を使用しました。M1はシミュレーション回路図では2N7002になっていますが、2N7000を使いました。パッケージが違うだけで特性はほとんど同じです。出力バッファ用のOPAMPは単電源OPAMPのNJM13404を使用しました。A、R、Dとラベルを貼ってあるところの抵抗は10kΩ程度のPOTを使いますが、手持ちがないので固定抵抗で代用しました。Rsustainは10kΩ/Aです。ch2:OUT細かいパラメータは少々異なりますが、だいたいシミュレーションと同じような波形が出力されました。ステップ波形をLPFに通す。NucleoでADSRの設定値を線形補間してDACから出力し、LPFを通したときはダメダメな波形になってしまいましたが、ステップ波形をLPFに通すとアナログADSR波形になりました。過渡応答この場合、1つのLPFを通しているので、Attack、Decay、Releaseの時定数が同じものになっています。Levelは元のステップ波形で設定できています。)これをADSRエンベロープ・ジェネレーターとして使うためには、A、D、Rでステートを分けて、それぞれ別のLPFを通してやる必要があります。考えてみると、これは今実験中の「アナログ処理部」とほとんど同じ仕組みに帰着します。簡易型のエンベロープ・ジェネレーターなら同じLPFを使ってもいいかもしれません。マイコン+Analog回路で検討しました。Timeを決める必要があります。Timeを決めています。VCC)に達した時フリップ・フロップにリセットがかかり、7ピンのDISCHを通してコンデンサが放電されます。Unoで実験マイコン+Analog回路でこれと同じことができるかテストしました。Gate」にはGate信号を入力します。「GATE」からC1に充電され「OUT」の電圧が徐々に上がります。充電の速度は「Rattack」の抵抗値で決まります。配線図OUT(コンデンサの充電電圧)をArduinoのADC(A0)に接続して監視します。Gate信号はプッシュスイッチで手動で発生させました。Timeを可変できます。Bufferで、ArduinoだとpinModeをINPUTにするとHi-Z(スイッチOFF)になります。683に達したことが識別できているかどうかをCheckPinのH/Lで測定できるようにしました。ch2:OUTGate信号がHになった時にコンデンサへの充電が開始され、ch2の電圧が徐々に上がります。このときch1:CheckPin(D7)がHになります。Timeを作ることができました。Levelに向かって放電してやればADSRエンベロープを作ることができそうです。Miniなどを使えば、555タイマーを使うよりも(自作する)回路規模は小さくて済みそうです。ステップ波形をLPFに通す。TLF01にOPAMP+NPNアンチ・ログ回路をつなぐ。