SANDFISH FACTORY

技術ブログです。python・vuejsを愛でる日々について綴ります

toioをpythonで動かす

toio とは

コロナの影響で外出を控えているので家にいる時間がだいぶ増えました。
手元にtoioがあったんですが、開発用ライブラリを公開するまで待とうと思ってだいぶ塩漬けになってました。
今回、ちょうど良かったのでtoioを使っていろいろ遊んでみようと思います。

toioはSony Interactive Entertainmentが開発した教育用ビデオゲームコンソールです。
キューブ型のロボットとモノクロディスプレイ付きのドッキングステーション、コントローラーがあり、ソフトウェア(カートリッジ)を切り替えることで様々な遊びを行うことができます。

詳しくは公式サイトをみてください。

toio.io

toioの技術仕様

githubを見てみるとjavascriptのライブラリは公開されています。

github.com

技術仕様も公開されているので、仕組みを理解するためにpythonに書き換えてみることにしました。

モチベーション

toio.jsで公開されているライブラリと限りなく同じ振る舞いを行うpythonのライブラリを実装します。 ブログ記事は複数回に分かれます。各記事は以下のリンクから見てください。

  1. toioをpythonで動かす:バイナリデータ操作
  2. toioをpythonで動かす:BLE操作
  3. toioをpythonで動かす:番外編:型で学んだこと

環境

今回は以下の環境で試しました。

それでは、開発環境を構築したいと思います。

pythonをインストールする

人によってはpythonのバージョンを分けたい方がいればpyenvをインストールしてください。
Catalinaだと問題があった気がするのですが、だいぶ前なので忘れてしまいました。。。。

Home · pyenv/pyenv Wiki · GitHub

特に問題がない方はそのまま、pythonをインストールしてください。

仮想環境を作る

各種ライブラリは他の開発に影響を与えたくないので、venvを用います。

cd workspace  # 好きな場所で良いです。
mkdir toiopy  # 仮想環境のルートディレクトリです
cd toiopy
python -m venv venv

仮想環境を有効にする

仮想環境を作ったら、有効にします。 toiopyデイレクトリ直下にvenvというディレクトリがいるはずです。

source venv/bin/activate
which python
python -V

pythonのパスを確認したら、venvの下にあるpythonのパスに切り替わっているはずです。

github

絶賛開発中ですが、少し動くようになったコードはこちらです。

github.com

それでは、次回の記事から実際にコードを書いて理解したことを投稿していきます。