概要 & 動作環境・互換性
このパッケージは、Bluetooth Low Energy (BLE) を介して、LEGO® Educationのコンピュータサイエンス&AIキットに含まれるハードウェアデバイスを非同期で制御するためのPython APIです。教育の現場で直感的に扱いやすくするため、シンプリシティ(簡潔さ)を優先した設計思想が取り入れられています。
動作環境と互換性の注意点
本ハードウェアはBluetooth (BLE) を使用して通信します。そのため、Pythonを実行し、かつBluetoothに直接アクセスできる環境が必要です。
注意:Chromebook環境では、Pythonを実行するために使用されるLinuxコンテナ(Crostini)がBluetoothデバイスにアクセスできない制限があるため、ハードウェアに接続することができません。 WindowsやMacなどのネイティブなBluetoothが利用可能なPC環境を使用してください。
- Python環境: ローカルにインストールされた Python 3 (推奨バージョン: Python 3.14以降) が必要です。
- ハードウェア更新: 初めて動かす前、または動かない場合は Education Coding Canvas にアクセスして各デバイスを接続してください。ファームウェアが自動的に最新へアップデートされます。
型・数値のバリデーション仕様
多くのメソッドの数値引数(速度、角度、時間など)は、引数として int だけでなく float も受け付けますが、内部で最も近い整数に四捨五入されてからデバイスへ送信される という共通仕様になっています(bool型を直接渡した場合はエラーになります)。
通信互換性エラー(VersionMismatchError)とトラブルシューティング
デバイスとの接続(connect())処理の実行時、ハードウェアのハブ内部のRPCバージョンと、Pythonパッケージ側が想定しているRPCバージョン(現在 1.0.73)が一致しない場合、通信が自動切断され、専用の例外 **VersionMismatchError** が発生します。
エラーメッセージの内容に応じて、以下のいずれかの対応を行うことで問題を解決できます。
- 「Your LEGO Education Python package needs updating.」と表示された場合:
PC側にインストールされているPythonライブラリが古いため、最新の通信プロトコルに対応できていません。ターミナルで以下のコマンドを実行してアップデートしてください。pip install --upgrade legoeducation
- 「Your LEGO Education hardware needs a firmware update.」と表示された場合:
ハードウェアのハブ本体のファームウェアが古いため、最新のPython APIの命令を認識できません。Webブラウザ(Chromeなど)で Education Coding Canvas にアクセスしてハブを接続し、自動ファームウェア更新を完了させてください。