読者です 読者をやめる 読者になる 読者になる

「ステュディオス」な生活

「ステュディオス」=何かを面白がり、熱中することにより生き生きしている状態。 日々の「ステュディオス」を求めて…

Tingbot が届いたので動かしてみた。

Kickstater で申し込んでいた Tingbot がやっと届いたので触ってみた。

ポチった時の計画だと5月に出荷予定だったので、約4ヶ月遅れで手元に届いた。

どんなもの?

Rasphedy Piを中に組み込んで写真用なモニター付きの小型端末にするキット。 自分でアプリを書いて実行させることができる。

ハードウェア

ものとしては 3.2インチのタッチモニターと4つのボタン。これとラズパイを包む筐体からなる。 ラズパイは自前のものを使う。なんとなく購入して放置していた RPi3を組み込んで組み立てた。

モニタとラズパイを接続するコードの接続ピンさえ間違わないように注意すれば組立自体は簡単。ただし、筐体を閉じるネジが極小なので精密ドライバーがないと閉められない。

ソフトウェア

ソフトウェアとしては Tingbot-OSというものが提供されており、それをSDカードに書き込んで起動すると動く。

SDカードへの書き込み方も セットアップガイドの通りやれば特にハマりどころもなかった。

Tingbot-OSと言ってもRaspbianの一部を上書きしただけのもののようで、起動後はRaspbianのデフォルトユーザでSSH接続もできる。

開発環境

Tide というElectoronベースのIDEが開発環境として提供されている。 リリース前にGithubに上がっていたものは起動しようとしてもうまくいかなかったので心配したが、Mac用に配布されているビルドは問題ない。

このIDEではコードを書く他に次のことができる

  • Tingbotへのwifi設定
  • エミュレータでの実行
  • Tingbotでのテスト実行
  • Tingbotへのインストール

同じネットワークにあるTingbotを自動検知してくれるので、なんなく接続することができる。

Tingbot-python

TingbotアプリはPythonで実装できるようになっている。 Tingbot用に用意されている機能は次の通り

  • 画面上に図形を描画する
  • イメージファイルやテキストを表示する
  • 画面タッチを検知する
  • ボタンの押下、押しっぱなし、複数ボタンの押下の組み合わせ検知
  • ハードウェア情報(IPアドレスやキーボード、マウスの接続状態)の取得
  • 設定の保存
  • Webhook

ちなみにpythonのバージョンは2.7のようだ。

sys.version_info(major=2, minor=7, micro=10, releaselevel='final', serial=0) 

起動

起動すると、2つのアプリがインストールされている。ひとつはKickstarterのバッカーのリストを表示するもの。 もう一つが、Terminal。キーボードをUSBで接続すると、コマンドの入力、実行が可能。

左右2つづつある4つのボタンのうち、外側のボタンを押すとアプリの切り替え、 内側の2つを同時押しするとHOMEに戻るようだ。

サンプルアプリの実行

Tideには5種類のサンプルプログラムがついている。 それらを順に実行してみた。

  • Hello world

    • まあ、何はともあれスタートはこれから。
      f:id:HeRo:20161002181933j:plain:w150
  • Show an Image

    • アニメーションGIFで猫が走る
      f:id:HeRo:20161002182759g:plain:w150
  • Buttons

    • 本体ボタンのサンプル。押す毎にカウントアップ/カウントダウンする
      f:id:HeRo:20161002182715g:plain:w150
  • More Buttons

    • これも本体ボタンのサンプル。ボタンのDOWN/UP、長押しのサンプル
      f:id:HeRo:20161002184420g:plain:w150
  • Touch

    • 画面タッチのサンプル。タッチしたところに点を打つ。
      f:id:HeRo:20161002183056g:plain:w150

いずれも、TingBotの基本的なハードウェアの操作サンプルとなっている。

なかなか遊べそうだ。