以前 Jpegカメラをesp8266につないて動かしてみたりしたのだが、 Jpegカメラが AliExpressでも $15程と案外高く、魅力的な商品に なりそうもないのでボツとなった。
ふと思いついてVGAカメラ OV7670モジュールの価格を調べてみると安い。 AliExpressで$2.5。 8bitパラレル出力だが ESP32のI2Sにはcameraモードというのが あるので繋がりそうな気がする。
以前 Jpegカメラをesp8266につないて動かしてみたりしたのだが、 Jpegカメラが AliExpressでも $15程と案外高く、魅力的な商品に なりそうもないのでボツとなった。
ふと思いついてVGAカメラ OV7670モジュールの価格を調べてみると安い。 AliExpressで$2.5。 8bitパラレル出力だが ESP32のI2Sにはcameraモードというのが あるので繋がりそうな気がする。
先人たちの足跡を検索してみると IDF環境でOV7725を接続した例や、 Arduino環境でOV7670を接続した例が見つかる。
とりあえずブレッドボードで後者を試してみる。
回路図は、こんな感じ (前述の記事の回路図です)。
LCDは接続しないので、プログラムを適当に修正しESP32に書込み試してみるが、ブラウザに画像が表示されない。 いろいろ試すとジャンパー・ケーブル(ブレッドボード上の配線)を 動かすと、表示されることがある。 ジャンパー・ケーブルがWiFiの通信を邪魔していると考え、ユニバーサル基板上でUEWケーブルを使って配線し直す。
プログラムを動かすと、多少は改善されたが、表示されないことが多い。Wiresharkで見ると、パケットが欠落している感じ。電源の容量不足を疑い、5Vのラインや3.3Vのラインを強化してみたところ、改善は見られるが、基板の位置、角度によって通信できたり出来なかったりする感じ。
i2sのプログラムとWiFiの通信が干渉している可能性はないか検討してみる。i2sを動かさなければ問題ない。 WiFiで通信する時だけOV7670に供給する20MHzのクロックを止めてみると、OV7670から読み出される画像は変。当然だろう。
Errataも調べるが、該当しそうな項目はない。
この辺で万策尽きた感じがする。 原因は何だろう? 電源容量、ノイズ的な問題? ESP32側の問題? わからない。
つながる時は、大変スムーズにブラウザに画像が表示されるので 諦めるもの惜しい。 中華PCBメーカの休みが明けたら、基板設計して注文してみようかな。