言及すべきことの1つは、デーモン名blued(少なくともmacOS 10.11 El Capitanまで)がbluetoothdに変更されたことです。
そのため、macOSのバージョンに基づいて、以下のコマンドでデーモン名を変更する必要があります。
もう1つ注意すべき点は、El Capitanで導入されたSIP(System Integrity Protection)が原因で、デーモンのplistをアンロードしてからロード(停止してから開始またはHUP信号を送信するのではなく)できない場合があることです。ただし、SIPを無効にした場合、またはEl Capitanより前のmacOSで動作するはずです。
$ sudo launchctl unload /System/Library/LaunchDaemons/com.apple.blued.plist
$ sudo launchctl load /System/Library/LaunchDaemons/com.apple.blued.plist
SIP環境(El Capitanの後)でも、単にlaunchctl stopしてからlaunchctl startデーモンを起動できます。
$ sudo launchctl stop com.apple.bluetoothd # or blued based on macOS version
$ sudo launchctl start com.apple.bluetoothd
デーモンを実際に再起動するのではなく、bluetoothのステータス(on | off)を変更するだけの場合は、次を実行できます。
# Let bluetooth be on
$ sudo defaults write
/Library/Preferences/com.apple.Bluetooth ControllerPowerState -int 1
# let bluetooth be off
$ sudo defaults write
/Library/Preferences/com.apple.Bluetooth ControllerPowerState -int 0
# Then reload the daemon
$ sudo killall -HUP bluetoothd # or blued based on macOS version
# On a macOS system which has proctools installed, you can replace `killall` to `pkill`
Blueutilはクールなものですが、いくつかを使用しています 、IOBluetooth.frameworkのプライベート APIをため、macOSの将来のバージョンでは動作しない可能性があります。