🚀

WindowsのPlatformIOでXIAO BLE Senseのセットアップ

2024/05/31に公開

WindowsのPlatformIOでXIAO BLE Sense用の環境を立ち上げようとしたら,四苦八苦したのでなんとかした過程を残しておきます.

Windows上での設定(失敗)

まず,XIAO BLE SenseはなぜかPlatformIOのボード一覧に登録されていないので手動で設定します.Alwin Arrasyidさんの記事を参考にボードを追加します.
ボートを追加した後は,BuildもUploadも成功しますが,XIAO上のプログラムは動きません......
macOSから書き込んだ場合は動作しており,コード自体は問題なさそうですが,環境側の問題が特定できませんでした.なお,M5Atomに書き込んだ場合はちゃんと動いているので,XIAO BLE固有の問題のようです.

この時点でWindows上での環境構築はあきらめました.

WSL上での設定

WindowsではWindows Subsystem for LinuxというWindows上でLinuxを使う機能があります.試しにこちらで環境を構築したところ,うまくいきました.

まず,WSLのチュートリアルを参考にWSL上にUbuntuをインストールします.つづいて,このサイトを読みながら,WSLにVSCodeをインストールします.

さらにWindowsのときと同様にAlwin Arrasyidの記事をもとにWSL上にもXIAO BLE Senseを登録します.
つづいて,PlatformIOからUSBデバイスにアクセスするためにudev rulesを設定します.

ただし,WindowsにつながっているUSBデバイスは基本的にWSLからは見えません.Ronstadtさんの記事を参考にWindows側のUSBデバイスをWSLに共有します.

e.g.)

usbipd list # list of usb devices
usbipd bind --busid 5-1
usbipd attach --busid 5-1 --wsl --auto-attach

最終的にこの組み合わせでXIAO BLE Senseに書き込んで,プログラムを動かすことができました.

Discussion