1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

ラズパイ4のWindows 10にBluetoothドライバを導入する

Last updated at Posted at 2020-12-29

以前、ラズパイ4(Raspberry Pi 4)にWindows 10をインストールする手順を書きましたが、その手順ではドライバがないためBluetoothが使用できないという制約がありました。

その後、有志によりテスト版Bluetoothドライバが公開されまして、こちらをインストールすることで Raspberry Pi 4 上のWindows 10環境でもBluetoothが使用可能になります。
テスト版ということもあってインストール手順がやや複雑ですのでこちらで紹介したいと思います。

用意するもの

  • Windows 10 ARM64インストール済みの Raspberry Pi 4 Model B
    こちらの記事に従ってWindows 10のインストールを済ませておいてください。

PL011ドライバ&UEFIファームウェアの差し替え

  1. Windows 10インストール済みのmicroSDをPCに接続しておきます
    PC上でWindowsパーティションとBOOTパーティションのドライブレターを確認しておいてください。下図の場合だとWindowsがX:でBOOTがY:ですね。
    d0.png

  2. https://github.com/worproject/RPi-Bluetooth-Testing に行きます

  3. [Code]→[Download ZIP]でファイル一式をダウンロードして展開します
    d1.png

  4. 展開したフォルダ内のSerPL011_48MHz.zipを展開するとSerPL011.infファイルが入っているのでこのファイルのフルパスを控えておきます

  5. 展開した中のRPi4フォルダに入っているRPI_EFI.fdファイルで、BOOTパーティション内の同名ファイルを上書きします
    d3.png

  6. PowerShellを管理者権限で起動して以下のコマンドを実行します
    ※WindowsパーティションのドライブレターX:は各自の環境に合わせてください

PowerShell
  Get-WindowsDriver -Path X:\ | ? {$_.OriginalFileName -match 'serpl011.inf'} | Remove-WindowsDriver
  Add-WindowsDriver -Path X:\ -Driver "<SerPL011_48MHz.infのフルパス>" -ForceUnsigned

Bluetoothドライバのインストール

  1. https://github.com/worproject/cywbtserialbus/releases に行きます

  2. cywbtserialbus_v1.0_ARM64_Debug.zipをダウンロードして展開します
    展開した中にcywbtserialbus.infファイルが入っているのでこのファイルのフルパスを控えておきます。
    d4.png

  3. PowerShellを管理者権限で起動して以下のコマンドを実行します
    ※WindowsパーティションのドライブレターX:は各自の環境に合わせてください

PowerShell
  Add-WindowsDriver -Path X:\ -Driver "<cywbtserialbus.infのフルパス>" -ForceUnsigned 

Bluetooth伝送速度の調整

ここまでの手順で既にBluetoothが使用可能になりましたが、デフォルトでは伝送速度が制限されてしまうので設定を調整して高速化します。

デフォルトで速度が制限されているのは Raspberry Pi 3 で使用した際にCPU負荷が高まりクラッシュする問題を回避するためのようですので、Pi 3 で試す場合は変更しないほうが良いと思います

  1. Bluetoothドライバインストール済みのWindows 10で Raspberry Pi 4 を起動します

  2. レジストリエディタで以下のレジストリの値を921600(10進)に変更して再起動します
    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\cywbtserialbus\Parameters\BaudRate

手でレジストリ変更したくない方は以下コマンドでどうぞ

cmd
reg add HKLM\SYSTEM\CurrentControlSet\Services\cywbtserialbus\Parameters /v BaudRate /t REG_DWORD /d 921600 /f

おわり

以上でBluetoothが使用できるようになったかと思います。
テスト版ドライバということですが、手元のBluetoothヘッドホンとAndroidスマホでのBluetoothテザリングは特に問題なく動作しました。

将来的にはインストール手順がもっと簡略化されると嬉しいですね。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?