カワリモノ息子の技術メモ的な~

カワリモノ息子とその母の技術メモ的な〜

学校が苦手な息子くんの作品とその母の作品、はたまた日常などいろいろを在宅エンジニア母が綴る

自作できるスマートウォッチLILYGO T-WATCH-2020 を買いました

LILYGO T-WATCH-2020

 以前から気になっていたプログラマブルスマートウォッチを購入しました。
 

 LILYGO社の製品は息子くんがアリエクで買ったことがあり、そのときにこの商品も見つけてとても気になっていました。
 ESP32がのってて、プログラムを自分で書き込むことができます。

 Amazonでも販売されていますね。

 私はAliExpressで4,126円で購入しました。私には難しくて扱えなかったりするかなとも思いましたが、それでも4千円くらいなら後悔しないレベル!w
 (※こちらのアリエクのリンクの商品はV1でした。バージョンについては後述します。)
https://www.aliexpress.com/item/10000300615752.htmlwww.aliexpress.com

 ツイートにたくさんいいねついたので、きっと多くの皆さんもプログラマブルスマートウォッチというのはあまり知られていなくて気になる商品なのかな?と思いました。

内容紹介

 アリエクの箱を開けると、いい感じのプラケースに入っています。

 仕様はこんな感じです。

  • ESP32
  • Wi-Fi
  • Bluetooth
  • タッチディスプレイ
  • 加速度センサー
  • バイブレーションモーター
  • IR

 などなどあり、これはとても楽しそうです。

 ケースの中には、スマートウォッチ本体と1枚ぺらの説明書が入っていました。
 プログラムをArduino IDEから書き込む手順が載っています。


動かしてみる

 側面を開けるとUSBポート(タイプB)のクチがあるので付属のケーブルで充電・データ転送が可能です。
 これを差し込んでもう片方のタイプAをPCのポートに刺し充電させると画面がつきました。

 最初に書き込んであるアプリはこちら↓でした。PlatformIOで書き込めるプログラムです。(といいつつ私はPlatformIO使ったことがなく息子くんにやり方を教えてもらいました。)
https://github.com/sharandac/My-TTGO-Watch

 リンクのREADMEを見てもらってもわかるように機能てんこもりなのですが、実際にはあまり機能しませんでした。外側だけの実装で内部は作りこまれていないのものも多くありそうな雰囲気です。初期インストールのプログラムでスマートウォッチを使おうと思って購入を考える方はやめておいたほうが良いと思います。このままではWi-FiにもBluetoothにも繋がりません。カスタマイズありきの製品です。

 それにしてもタッチボタンも効かないことがあるような…これはアプリ側なのかハード側なのかもまだよく探っていないのでわかりません。

 それはさておき、このプログラムはタッチボタンが押せるとブルブルと振動する仕様にしてあるので押せたかどうかわかりやすいですね。

 Arduinoによる開発では、下記ライブラリを入れるとサンプルスケッチが色々動かせるようになります。
GitHub - Xinyuan-LilyGO/TTGO_TWatch_Library


 「TTGO TWatch Library」っていうのがそれです。
 沢山サンプルスケッチが入っていました!
 この中のものをいろいろ動かしてみましたが、やってみたものについてはどれもうまく動きました。

 ↑ これはボタンインタフェースのサンプルスケッチです。

 注意点としては、どのサンプルスケッチもconfig.hがセットになっていて、この定義を手持ちのT-Watch 2020のバージョンに合わせてあげないといけません。
 今回私が購入したものはV1でした。というのも本体裏にV1のシールが貼ってあったのでわかりました。
 購入時はバージョンがあること自体を知りませんでしたが、どうやらV1~V3が存在するようです。

// => Hardware select
// #define LILYGO_WATCH_2019_WITH_TOUCH        // To use T-Watch2019 with touchscreen, please uncomment this line
// #define LILYGO_WATCH_2019_NO_TOUCH       // To use T-Watch2019 Not touchscreen , please uncomment this line
// #define LILYGO_WATCH_BLOCK               // To use T-Watch Block , please uncomment this line
// #define LILYGO_WATCH_2020_V1
#define LILYGO_WATCH_2020_V2
// #define LILYGO_WATCH_2020_V3

 config.hの内容は上記のようになっているので、ここで対象バージョンのコメント(私の場合「#define LILYGO_WATCH_2020_V1」)を生かしてその他をコメントにします。

 サンプルスケッチが動かせることで、とりあえずいろいろやれそうな気はしてきました。

 タッチディスプレイでお絵描きしたり音を鳴らしたりすることもできました。

ビジュアルプログラミング

 商品説明にScratchの絵が載っていて、Scratchでもプログラムできるようなことが書かれていたのでそこも大きく気になっているところだったので確認しました。

 T-Watchの公式サイト↓には「Graphic programming」「Pictoblox」とありますがリンクが切れています。。
Download — T-Watch Docs
 「Demo example」からサンプルコードだけはダウンロードできました。

 「Pictoblox」というのを調べますとScratchの拡張版でした!
 ほほうこれを使ってやれるということだなと思い、早速PictoBloxをセットアップしてやってみました。Pictobloxはブラウザではなくインストールしないと使えないタイプのようでした。

thestempedia.com

 起動画面はこんな感じでした。

 ボード選択でT-watchを選択します。

 USBでT-watchを繋げて「接続する」にします。

 たくさんのTウォッチのコマンドブロックが追加されました!

 日本語対応されているのでとてもいい感じです。
 うきうきしながらいろいろなブロックを使ってみたのですが、実行はできるもののほとんどうまく動きませんでした。

 公式サイトのリンクも切れていたしダウンロードしたサンプルも読み込み時にエラーになるし、今は対応されていないのかもしれないですね?
 またはT-Watch 2020のバージョンによってうまく動くとか動かないとかあるかもしれないです。

まとめ

 プログラマブルスマートウォッチT-Watch 2020でした。
 ビジュアルプログラミングはできなさそうなので、Arduino IDEで遊んでいきたいと思います。
 ちょっと11月中旬までは別件があるので遊ぶのはそれ以降になりそうです。
 やりたいこと山積み!で毎日もっと時間欲しいです^^