ESP32腕時計TTGO T-Watchが届いた

ESP32を搭載した腕時計風のTTGO T-Watchを約49ドルで購入しました。

約2週間で届いたので早速遊んでみました。

資料系

メーカページ(LILYGO)
公式英語マニュアル
公式中国語マニュアル
サンプルソフトウェア

開梱

かわいらしい感じの梱包ですね。

内容物はこちら

T-Watch本体と、予備のボード?、T-Watchの横にあるコネクタから拡張するためのケーブル、Type-Cケーブル、腕時計用バンド、裏蓋取り外し用ネジ回しと予備のネジ

説明書には中を開けた時にどういう感じになっているのか書かれています。

とりあえずこちらも開けてみました。

元に戻して電源ON

最初はタッチパネルの検査プログラムが起動しタッチした座標を報告します、Type-Cコネクタの隣のボタンを押すと、今度は衝撃検知プログラムが起動しstepCountとして振り回した回数を表示します。

とりあえず、パソコンにつなげるとドライバがあれば「Silicon Labs CP210x USB to UART Bridge (COM?)」として認識します。

ドライバがインストールされていない場合は下記の様に「CP2104 USB to UART Bridge Controller」として認識されます。ドライバのインストールについては後述します。

デモ用のプログラムがgithubで公開されていますのでArduio IDEをセットアップします。

ただし、普通にインストールしただけでは認識せず、追加手順が必要となります。

必要なもの

Arduino IDE
git for Windows

T-watch ソフトウェア書き込み手順

TTGO公式の設定手順を参照しながらやりました。

その1:git for Windowsをインストール

以前に別の件でインストールしていたのでそのまま使っています。

その2:Arduino IDEをインストール

今回はArduino IDE ver 1.8.9をインストールしました。

その3: Arduino IDEのインストール先のhardwareディレクトリ内にespressifディレクトリを作る

標準インストールだとC:\Program Files (x86)\Arduino\hardware ディレクトリ内にespressifディレクトリを作る。

その4:作成したespressifディレクトリ内でコマンドプロンプトを開く

作成したC:\Program Files (x86)\Arduino\hardware\espressifディレクトリででコマンドプロンプトを開きます。

その5:gitでespressifのarduino-esp32レポジトリを取得する

espressifディレクトリで「git clone –recursive https://github.com/espressif/arduino-esp32.git esp32」(wordpress編集画面だと「-」が2個なのに1個だけになる・・・)を実行します。

そうすると、 C:\Program Files (x86)\Arduino\hardware\espressif\esp32 ディレクトリが作成されファイルが置かれていきます。

その6:esp32\toolsディレクトリにあるgetコマンドを実行し追加ファイルを取得

C:\Program Files (x86)\Arduino\hardware\espressif\esp32\tools\ ディレクトリ内にある「get.exe」を実行し、追加ファイルを取得します。

その7:Silicon Labs CP210xをインストール/アップデート

手順には明記されていないのですが、古いドライバ Ver6.7.4.261で書き込もうとするとエラーになりました。「T-WatchマニュアルのGetting started」に掲載されているCP2104-Win10(Ver10.1.8.2466)だと正常に動きますので、アップデートします。
(CP2104の製造メーカ公式ドライバダウンロードページ)

なお、書き込み時のエラーは下記の「A fatal error occurred: Failed to connect to ESP32: Timed out waiting for packet header」です。

その8:T-Watchをパソコンに接続

その9:Arduino IDEを起動し、TTGO T-Watchを選択

Arduino IDEを起動し、「ツール」-「ボード」の一覧から「TTGO T-Watch」を選択します。

その10:T-Watchサンプルソフトを取得

git for Windowsを使って、 https://github.com/Xinyuan-LilyGO/TTGO-T-Watch で公開されているサンプルソフトウェアを取得します。

「git clone –recursive https://github.com/Xinyuan-LilyGO/TTGO-T-Watch」

取得完了後、「library」にあるディレクトリを、マイドキュメントの中にある「Arduino\library」内にコピーします。

その11:書き込み

Arduino IDEからサンプルソフトウェアを書き込みます。


サンプルソフトウェアを書き込んだのですが、うまいこと自宅のWiFiに接続できず、時計合わせに失敗しています。

また、タッチパネルの動作が若干微妙な感じもあります・・・

ブラウザプログラミングができるESP8266モジュールのWebduinoを入手して動かしてみた!

WiFi接続が簡単にできるESP8266を使った製品で、Webブラウザを使ってプログラミングができる「Webduino」というものがある。

2016/11/06に「WebからプログラミングができるESP8266モジュールWebduinoが送料込み$5.88で発売開始」という記事を書いたが、発注から8日で製品が到着。

webdiuno-1
白い箱に袋に入った基板が入っているだけ、という簡易梱包。

基板の裏面はこんな感じで「3色LED」と「明度センサー」が付いています
webdiuno-2

設定手順は「Webduino Smart Wi-Fi Setup」にあるので開きながら実施していきます。

まずはmicroUSBケーブルをさして電源を入れます。
webdiuno-3
青LEDが点灯し、また裏面の3色LEDは赤点灯します。

この状態でスマホなどからWiFi APを検索すると「Smart」というAPがいますので、そこに接続します。
webdiuno-4
接続パスワードは「12345678」です。

接続したらブラウザから「http://192.168.4.1」にアクセスします。
webdiuno-5

WiFi SSID/WiFI PWDは、自宅などのWiFI APを指定します。
また、Device IDは識別できるようなものを指定します。
「SUBMIT」ボタンをクリックし、変更を反映したら、電源を抜きます。

電源を入れ直すと、裏面の3色LEDは、赤点灯したあと、一瞬緑点灯し、消灯します。
この状態で、自宅WiFI APに接続された状態となります。

Webdiunoに割り当てられたIPアドレスを確認するには、スマホなどでWiFi AP検索をします。
webdiuno-8
上記の様に「Smart_<IPアドレス>」という形でIPアドレスが表示されるので確認します。

まずは動作確認として、パソコンから「http://<IPアドレス>」にアクセスできることを確認します。

次にWebブラウザを使ったプログラミングを行います。

サンプルコード」を使いましょう。
webdiuno-10

IPアドレスを指定し、また、「Set color」の横をクリックすると点灯させたいLEDの色を指定できます。

指定が終わったら右上の再生ボタン▶をクリックすると、プログラムが転送され、WebdiunoのLEDが点灯するはずです。
うまく行かない場合は、一度Webdiunoの電源を入れ直してみましょう。

以上のような感じで結構お手軽にプログラミングができます。

なお、手順にはStep5としてfirmwareアップデートがあるのですが、ちゃんと動作しているのかどうかが判断できなかったので、記事には含めていません。
Ver3.0.07より新しいバージョンがあるんだろうか??

USBコネクタサイズに収まるESP8285搭載ボード

cnx-softwareで興味深い小型のESP8285ボードが紹介されていた。

USB Fun – Tiny USB WiFi and Hub Boards and micro USB Hub
esp8285-1

作成例として下記が紹介されている。

このボードをUSBキーボード/マウスとしてラズパイに認識させて、
Webブラウザ経由で操作を行うことができる、というもの
esp8285-2

ソフトウェアとしてはESP8266でも実装できるらしい
というか、先日公開された、ESP8266でUSBを喋らすことに成功した人が作ったものだった・・・

ESP8266 USB Software Driver