TTGO T-Watch(その2)

もうちょっといじったメモ。

 

このモジュールに限った話じゃないんだが、Arduino IDEで選択できるサンプルスケッチが何をするものなのかわかりにくい。
T-Watchは
 https://github.com/Xinyuan-LilyGO/TTGO_TWatch_Library
のexamplesにいろいろ入ってるのを見ることができるんだが、これについてのドキュメントがここにはない。
どこにあるのかも今のところ探しきれなかった。
プログラムを読める人なら見るだけでわかるだろうけど、自分みたいな万年初心者にはひとつずつスケッチを実行していくしか動作確認できない。

なのでさっそく最初のサンプルから使ってみようと思ったら、そもそも持ってるT-Watchの種類によって使えるスケッチが違ってくるので全部は無理だった。

 

とりあえず自分が持ってるT-Watchはタッチパネルのなので、その名の通り「TouchPad」というのを使ってみる。
スケッチ自体はすごく小さい。

タッチした画面の座標を出すだけだった…あんまり面白くない。

 

「TFT_eSPI」はよくある画面表示のサンプル。

この手のモジュール使ってる人なら、どこかで見たことがあると思う。
いろんな種類が含まれているので、移植しやすかったんだろうか。

いくつか入れてみたけど、なんか位置がずれてるような気がする。

 

「sdcard」は刺したSDカードの中身を確認する。

大量に変なSDカードを持ってるので、パソコンとか起動せずに中身をちょっと確認するのには便利かも。

このとき入れたのは中身が空っぽのやつ。

しかしフォントが小さいなあ。でもサイズぐらいなら編集できるかな。

 

「Games」にはFlappyBirdが入ってる。これ一つだけ。

でも全然攻略できないので、ゲーム画面が撮影できなかった…。

しかも電源ボタンが効かなくなる。(たぶん、ゲームに使ってるから)

他のスケッチを上書きしたら切れるようになったので、良かったけど。

 

あとはブザー付の基板も購入してるので、そっちにすればアラームも鳴らすことができるとは思う。
でもまだ全然遊びきれてないので、しばらくタッチパネルで使っていきたい。
(変えるのめんどくさい、という話もある)

T-WatchはM5Stackと違って使ってる人が少ないので、公式のサンプルが頼り。
せっかく面白いアイテムなんだから、モジュール本体だけじゃなくてプログラムもどんどん増やして欲しいところ。

Sponsered Link

TTGO T-Watch(その1)

ESP32を使ったモジュールで、TTGOのT-Watchというのを購入。

以下は購入先じゃないけど、参考までに。

AliExpress.com Product - ESP32 Lora Development Kit Touch Screen T-Watch Programmable Wearable Environmental Interaction WiFi Bluetooth

AliExpressで購入するときには「LilyGO Store」で検索してみてください。

 

時計にすること前提っぽくて、ここには写ってないけど腕時計のベルトがデフォルトで付属してた。

大きさはM5Stackより一回り小さい。なかなかかわいい。

今回購入したのはTouch sensorのケース付きのと、Motor And Speakのボードのみ。

 

電源を入れてみたらこんな画面。

これだと面白く無いのでとりあえず、シンプルなスケッチを入れてみることにした。

公式のドキュメント&データ類は以下。

 https://t-watch-document-en.readthedocs.io/en/latest/basics/index.html

 https://github.com/Xinyuan-LilyGO/TTGO-T-Watch

しかし、ここはあえてMac上のArduino IDEを使ってコンパイルしてみる。捻くれ者なんで。

 

必要なライブラリは

 https://github.com/Xinyuan-LilyGO/TTGO_TWatch_Library

からダウンロードして、Arduino IDEにインクルード。

 

ESP32関連の環境がまだ無いなら、環境設定で「追加のボードマネージャーのURL」には

 https://dl.espressif.com/dl/package_esp32_index.json

を記入。

導入済みなのにTTGO-T Watchが見つからないなら、ボードマネージャーで

 タイプ:「提供された」

で「esp32」の更新を確認。

最新になっていれば、ボードの選択で「TTGO T-Watch」が選択できるはず。

 

TTGO-T Watchのサンプルスケッチから、SimpleWatchを開いてコンパイル。

転送もエラーなく無事完了し、こんな感じ。

タッチスクリーンなので、画面をタップするとWifi設定の画面に行ったりする。

 

表示もきれいな感じだし、結構遊べそう。

ただ、あまり使ってる人がいなさそうなので、サンプルスケッチからカスタムしていくしかないかな。

中身のボードのバリエーションも他にあるので、また色々買って使ってみたい。

Sponsered Link

Visual Studio CodeでESP-IDF(続き)

先日Visual Studio CodeでESP-IDFを使うための設定を行った件だけど、どうしてもtasks.jsonで問題が一件出てくるのが気になった。

バージョンが低いと言われるやつ。

単純にバージョンを2.0.0にすればいいんだろうけど、自分の知識では何をどう書き換えたらいいのかさっぱりわからず調べていたら、同じようにVisual Studio CodeでESP-IDFを使うための設定を説明してるところがあった。

 https://github.com/VirgiliaBeatrice/esp32-devenv-vscode/blob/master/tutorial.md

ESP-IDFの入手から初期設定は終わってるので、以前使っていたサンプルコードの「blink」を使って、tasks.jsonとc_cpp_properties.jsonの内容を書き換えた。

 

ほぼ、参照したURLの内容の通り。

ファイルパスで、ユーザー名が入ってるフォルダの名前だけ書き換えた。

その後 menuconfig等で動作確認、それぞれのタスクは問題なく起動できました。

 

しかしtasks.jsonで、今度は「missing property "command"」というメッセージが出てくる。

もちろんcommandで参照する「c:/msys32/mingw32.exe」の場所は問題ない。

(そもそも起動できているので)

 

前のよりもずっと安定してる感じなのでこのままでもいいかなあと思いつつも、やっぱり原因は知りたい気もする。

もう一度、最初のセットアップからやり直すというか、見直す必要があるかも。

Sponsered Link

ESP-CAM(もうちょっと続き)

意外とメモっときたいことが増えた。

先日からいじっているESP-CAM、いろんなところからファームウェアをダウンロードしてビルドしてたんだけど、なかなか上手くいくのがなかった。

単純に、menuconfigだけいじればいいというものが少ない。

(でも自分ではプログラムそのものをいじれないんで…)

でもESP-CAMを販売してるサイトから辿って、簡単に使えたのを紹介しておく。

 

元は以下の紹介サイトから。

 https://www.open-electronics.org/a-i-thinker-esp32-cam-affrodable-esp32-camera-development-board-by-seeed-studio/

上記に、githubへのリンクがあった。

 https://github.com/donny681/ESP32_CAMERA_QR

ここのファームウェアが、JPG画像のみの出力だけど、そこそこ反応が早くてなかなかいい。

 

おさらいの意味も込めて、一応手順。(ESP-IDFの設定は済んでる前提で)

mingw32.exeを起動し、

 $ git clone https://github.com/donny681/ESP32_CAMERA_QR.git

 $ cd ESP32_CAMERA_QR

 $ make menuconfig

menuconfigを起動。

メニューから、一部設定を確認。

Camera configurationでOV2640を選択

Serial flasher config で接続しているポートを書き換え(自分の場合はCOM6)

Camera Web Server で自宅WifiのSSIDとパスワードを記載

完了したら、GNDとIO0の接続をして

 $ make flash

ビルドと書き込みが終わったら、IO0び接続を抜いていったんリセット。

 $ make monitor

エラーでもないのに途中で止まったら、リセットをもう一度押すと進むかも。

出てきたIPアドレスに/jpgをつけてWebブラウザでアクセスすると、画像が出てくる。

月じゃないです、天井のライトです。

 

/jpg_streamにすると動画。まあ動きは遅いです。

デフォルトで画像サイズは800x600になってました。

/components/camera/ov2640.cに画像サイズの設定があるから、これをいじれば変えられるかな?

 

これならかなり使い物になりそう。

画像はそんなに大きくなくてもいいから、もうちょい調整してみることにする。

Sponsered Link

ESP-CAM(続き)

先日、Arduino IDEでESP-CAMに書き込みしたんだけど、今度はESP-IDFを使って書き込みした。

参考にしたのは同じ方のブログから。

 https://robotzero.one/esp32-camera-module/

別に顔認識のツールは不要だったんだけど、下手にいじると自分がわからなくなるので上記と同じようにして動作確認。

 

MSYS2の必要なツールは既にインストール&設定済みだったので、そのまま使用。

Visual Studio Codeも入れてあるけど、結局今回はそれも使わなかった。(よくわからなくて…)

mingw32.exeを起動し、上記のページ通りに設定して、今回は珍しく問題なかった。

特にmenuconfigはちゃんと設定しないといけない。

 

トラブルというほどではないけど、初回の「make flash」はやたら時間がかかって、ノートPCの電源の方が危なくなった。

(初回は色々ビルドするもんだから)

あとは「make monitor」でアクセスするIPアドレスを確認するんだけど、出てくるのにちょっと時間がかかってまた失敗かと一瞬ビビった。けど、問題なく表示された。

画面をちょっと小さめにしてるけど、先日Macで動作確認した時よりずっと早い。

これだったら、静止画だけだったら全然問題なく使えそう。

でも動画はやっぱり遅かった。というか、結局確認できなかった。

これだと顔認識の機能は使えないと思う。

 

動画でもうちょっと使いやすくできたらなあ、というのが課題かな。

10ドルぐらいのカメラでここまでできたら良い方なのかもしれないけど。

ESP-CAMのツールはまだありそうなので、他のも試して使えそうなのを探してみます。

Sponsered Link