TTGO T-Cameraは今もなお3Dプリンタを監視しています。このときの状態から変わったのは、3Dプリンタ自体にABSで出力するための囲いを作ったこと、そして囲いを作ったら、T-Cameraを支えている柱がPLAでは熱で曲がってきてしまったので、ABSで作り直したことくらいです。そして、ずっとIPアドレスなどの情報をOLEDに表示し続けていたので、(高温下で使ったこともあるでしょうが)すっかり画素が焼けて、画素がまだらになっています。このT-Cameraには、このまま天寿を全うしてもらおうかと思います。
ただ、実はT-Cameraは2台買ってあったので、もう1台あります。こちらはほぼ未使用なので、今度はこちらに18650のリチウムイオン電池をつけて、電池駆動をしてみたいと思います。
ソフトウェアの方は、前回と同じ手順で作りますが、GitHubに上がっているコードもバージョンアップされているので、この辺も新しくしてみます。
コードは、GitHubの lewisxhe/esp32-camera-series からZIPでダウンロードしてきました。これを展開して、sketchというフォルダをTcamera18650にリネームして、~/Arduino の下に置きました。その中の、sketch.ino も Tcamera1850.ino にリネームしてから、Arduino で開きます。
ライブラリは、mathertel/OneButton と ThingPulse/esp8266-oled-ssd1306 が必要ですので、それぞれ zip でダウンロードしてきて、解凍した後、フォルダ名から -master を取り除いてから ~/Arduino/libraries の下に移動しました。
ボードマネージャで選択するモジュールは基板上に載っている ESP32 Wrover Module を選択します。
TTGO T-Cameraのバージョンによって、ソースコード内の #define のどれかを有効にしないといけないのですが、困ったことに、TTGO T-Cameraはバージョンによって、GPIOの端子割付が異なるようです(ぉぃぉぃ)。
今回は、ボード上にV05という表記が一応あったので、V05を選択して、この行のコメントアウトを外します。
/***************************************
* Board select
**************************************/
/* Select your board here, see the board list in the README for details*/
// #define T_Camera_JORNAL_VERSION
// #define T_Camera_MINI_VERSION
// #define T_Camera_PLUS_VERSION
#define T_Camera_V05_VERSION
// #define T_Camera_V16_VERSION
// #define T_Camera_V162_VERSION
// #define T_Camera_V17_VERSION
// #define ESPRESSIF_ESP_EYE
次に、お約束のSSIDとパスワードを設定します。
/***************************************
* WiFi
**************************************/
#define WIFI_SSID "xxxxxxxxxx"
#define WIFI_PASSWD "xxxxxxxxxx"
これで書き込んでやると、無事に動作しました。
ただ、OLEDの表示とカメラの向きが逆ですので、
oled.init();
の後ろに、
oled.flipScreenVertically();
を追加してやります。
これで、問題なく動作しました。