Pybricks インストール
今回は Pybricks を使用してプログラムを書いていくので、早速 SPIKE Prime にインストールしていきます。
DFU モード接続
まず Hub を DFU モードで起動する必要があります。
一度 Hub の電源を切り、USB ケーブルも抜いてください。
Hub の Bluetooth ボタンを押した状態で USB ケーブルを繋げてみてください。
Bluetooth ボタンが紫色に光るはずです。でも Bluetooth ボタンを話すのは待って!もう少し押したままにしましょう。
カラフルに点滅し始めましたか?これが DFU モードです。
ドライバーインストール
早速 Pybrick のインストールに進みたいですが、その前に Hub の USB ドライバーを書き換えなくてはなりません。
もし Mac OS を使っている場合はドライバーのインストールは不要です。Zadig はダウンロードせず、次に進んでください。
Zadig - USB driver installation made easy
Zadig x.x をクリックしてダウンロードします。
今ダウンロードされた Zadig-x.x.exe
を起動します。
「LEGO Technic Large Hub in DFU Mode」と「WinUSB」を選んでください。くれぐれも別のデバイスを選択しないように。気をつけろ~。
「Install Driver」を選び、ドライバーをインストールします。
しばらく待って、「The driver was installed successfully.」と表示されればドライバーインストールは完了です。
こちらのドライバーは一度 Hub にインストールすると、その後はこの手順を踏む必要はありません。
いざインストール
こちらのサイトは Pybricks のオンラインエディタです。今回はこちらを使ってインストールを行います。
ロードが少し時間がかかるので、気長に待ちましょう。
「Install Pybricks Firmware」を押すと、デバイスの選択画面が表示されます。
SPIKE Prime を選択し、「Next」を押します。次に同意画面が表示されるので、チェックを入れて「Next」を押します。
Hubの名前は 15 文字までかつ英数字のみ設定可能です。Bluetoothで接続するかつ複数Hubを持っている際は名前がないと接続先が指定できません。
先ほどと同じようにして DFU モードで接続しましょう。そして「Install」を押します。
このようなポップアップが表示されるので、「LEGO Technic Large Hub in DFU Mode」をクリックし接続します。
すると自動で書き込みが始まるので少し待てば完了です。
Pybricks インストール
Powershellで以下のコマンドを実行し、2つのツールをインストールします。
pip install pybricks
pip install pybricksdev
デバッグ設定
VSCodeでデバッグできるように設定をします。
まずフォルダに.vscode
フォルダの中にlaunch.json
ファイルを作ってください。
pybricksdev run ble main.py
こちらのコマンドをデバッグで自動的に実行するように以下のようなJSONを書きます。
{
"version": "0.0.1",
"configurations": [
{
"name": "Pybricks BLE",
"type": "debugpy",
"request": "launch",
"module": "pybricksdev",
"args": ["run", "ble", "${file}"],
"console": "internalConsole"
}
]
}
これにてF5
キーを押すとデバッグが動き、SPIKEで現在のプログラムが実行されるようになります。
現在、Pybricks は USB による接続ができないようです。
詳細はライブラリフォルダからpybricksdev/connections/lego.py
の73行目あたりを見ればわかると思います。