Bluez 5.44をRaspbian に正常にインストールできる人はいますか?Raspi 3とRaspi Zero Wの両方でこれを使用したいと思います。
私は多くの 異なる ガイドに従ってきましたが、それらはすべて5.44より前のBluezバージョンをインストールします。私はこれらのガイドのいずれにも従うことができず、機能するBluez 5.44のインストールに終わります。
これを行った人は誰でも、手順を共有してください。
Bluez 5.44をRaspbian に正常にインストールできる人はいますか?Raspi 3とRaspi Zero Wの両方でこれを使用したいと思います。
私は多くの 異なる ガイドに従ってきましたが、それらはすべて5.44より前のBluezバージョンをインストールします。私はこれらのガイドのいずれにも従うことができず、機能するBluez 5.44のインストールに終わります。
これを行った人は誰でも、手順を共有してください。
回答:
ここで少し遅れましたが、私は最近、さまざまな異なるガイドに従うという頭痛に苦しみましたが、どれも私にとってはうまくいきませんでした。だからここに別のガイドがあります...おそらくあなたにはうまくいきません;)
最新バージョンを公式ページbluez.org/downloadからダウンロードしました。そのページが死んでいる場合は、代わりにこのページを使用してください。
たとえば、執筆時点では5.47でしたので、(ラズベリーで)使用しました。
wget http://www.kernel.org/pub/linux/bluetooth/bluez-5.47.tar.xz
次に、それを抽出してビルドしました。
tar -xf bluez-5.47.tar.xz
cd bluez-5.47
を読んでくださいREADME
!依存関係と構成スイッチを一覧表示します。
最初に依存関係をインストールします:(glib、dbus、libdbus、udevなど)それらのほとんどは既にインストールされており、簡単にインストールできない場合は、すべてパッケージマネージャーによって提供されます。あなたがそれをしたら:
./configure --prefix=/usr --mandir=/usr/share/man --sysconfdir=/etc --localstatedir=/var
また--enable-experimental
、GattCharacteristicsオブジェクトは実験的な機能の一部であると考えているため、追加しました。次に行います:
make
sudo make install
コンパイルには10分程度かかります。インストールしたら、あなたは見つける必要がある
bluetoothd
の中で/usr/libexec/bluetooth
。また、Bluetoothが表示されるはず/usr/lib/bluetooth
です。
これらの各ディレクトリに移動し、次のように入力します
./bluetoothd --version
libexecの1つが新しく、libの1つが古いことに注意してください。
BlueZは、これらのd-busオブジェクトとインターフェイスを作成して、Bluetoothデバイスを適切な方法で公開します。
d-busが古い BlueZ 5.23ではなく新しい BlueZ 5.47と通信していることを確認するには、新しいbluetoothデーモンを使用するように指示する必要があります。systemd
sudo vim /lib/systemd/system/bluetooth.service
このexec.start
行がの新しいデーモンを指していることを確認してください/usr/libexec/bluetooth
。
私にとっては、それだけでは不十分でした。何があっても、再起動時に常にBluetooth 5.23を取得しました...それで、古いものから新しいものへのシンボリックリンクを作成しました。
最初に古いファイルの名前を変更します。
sudo mv /usr/lib/bluetooth/bluetoothd /usr/lib/bluetooth/bluetoothd-543.orig
シンボリックリンクを作成します。
ln -s /usr/libexec/bluetooth/bluetoothd /usr/lib/bluetooth/bluetoothd
sudo systemctl daemon-reload
それでうまくいくはずです。
質問には関係ありませんが、今、私はこれを言わなければなりません:
piのアプリケーションを開発する場合は、blueZ docsフォルダーを参照してください。d-busと呼ばれるものを紹介します。これは本当に学ぶ価値があり、Python、node.js、またはc(およびそれ以上)でアプリケーションを開発できます。bluez devでこのビデオをご覧ください。
レッドニシンはたくさんあります。「簡単な」機能を提供しようとするラッパーです。ブルートゥースを開発する方法についてのドキュメントが不足していると言うリソースでさえ。ただし、単にデバイスに接続してその特性を表示するだけでは済まない場合は、ラッパーが失敗することに気づくでしょう。
自分でお願いします。数時間かけてどのようにBlueZ
機能するかを学びます(私がリンクしたビデオは純金です)。d-busと呼ばれるものを使用します。d-busについて少し読んでください。Pythonが気に入った場合は、testフォルダーのコードを確認してください。Python dbusチュートリアルを 1回または2回読んでください。それはとてもうまくいきます。簡単なものを探すために数日無駄にしたが、これが最善の方法であることが判明した。
幸運を!
sudo mv /usr/lib/bluetooth/bluetoothd /usr/lib/bluetooth/bluetoothd-543.orig
2.シンボリックリンクを作成します。sudo ln -s /usr/libexec/bluetooth/bluetoothd /usr/lib/bluetooth/bluetoothd
月のおかげで再び:)
Raspbian GNU / Linux 8(jessie)OSを搭載したRaspberry Pi 3にインストールしました。それは少しトリッキーでしたが、これらの手順は私のために働いた。あなたの投稿を読んでインストールしました。
sudo apt-get update
sudo apt-get upgrade -y
sudo apt-get install bluez
sudo apt-get install blueman
この後、アダプターは見つかりませんでした。次にやったことは
sudo service bluetooth start
sudo service bluetooth status
まだアダプターはありません。これはファームウェアによるものなので、次にこれを実行する必要がありました
sudo apt-get dist-upgrade -y
sudo apt-get install pi-bluetooth
sudo apt-get install bluez bluez-firmware
最後に入力します:
sudo usermod -G bluetooth -a pi
次に、次のように入力して、機能するかどうかを確認します。
cat /etc/group | grep bluetooth
それがうまくいったなら、あなたの端末でこれを見るはずです
$ cat /etc/group | grep bluetooth
bluetooth:x:113:pi
最後のコマンド
sudo reboot
これがうまくいくことを願っています。
ヘルプのこのサイトに感謝 https://www.pi-supply.com/make/fix-raspberry-pi-3-bluetooth-issues/
@Hunter Akinsの答えは、彼が言ったとき(言い換えれば)とても苛立たしい気持ちから私を救いました:真剣に、BlueZを知ってください。D-BUSについて知る。bluetoothctl、systemctl、bluetoothdコマンドについて理解します。
問題は、2016年9月のBluez5.42のリリース以降、オンラインガイドが使用する多くのパッケージが非推奨になったことです(https://wiki.archlinux.org/index.php/Bluetooth#Troubleshooting)。ああ、そしてBluezパッケージは公式ドキュメントにひどく欠けています。
新規インストールからRaspberry Pi Zero WでBluetoothを実行するために使用したコマンドは次のとおりです。
$#Fresh install the latest version of Raspbian thru the latest version of NOOBS
$#Instructions for fresh install of at https://www.raspberrypi.org/help/noobs-setup/2/
$sudo apt-get update
$sudo apt-get upgrade #ensures you have latest linux kernel
$sudo init 6 #more robust than sudo reboot
$sudo apt-get -s install bluez #-s simulates the install, showing you
$#that the apt-get version is too old
$sudo apt-get --purge remove bluez #removes the bluez on your machine
上記の回答とコメントから抜粋:
$sudo apt-get -s install bluez #-s simulates the install, showing you
$#that an outdated version of bluez is on your machine
$sudo apt-get --purge remove bluez
$cd ~
$wget http://www.kernel.org/pub/linux/bluetooth/bluez-5.49.tar.xz # find the latest bluez kernel at
$#http://www.kernel.org/pub/linux/bluetooth and install that, changing the version number of upcoming steps
$tar xvf bluez-5.49.tar.xz
$sudo apt-get install -y libusb-dev libdbus-1-dev libglib2.0-dev libudev-dev libical-dev libreadline-dev
$cd bluez-5.49
$./configure --prefix=/usr --mandir=/usr/share/man --sysconfdir=/etc --localstatedir=/var
$make
$sudo make install
$cd ~
$cd /usr/libexec/bluetooth
$./bluetoothd --version
$cd ~
$cd usr/lib/bluetooth
$./bluetoothd --version #identify what the newer version is.
#Mine was in libexec. If yours is not, reverse the paths in the following steps
$cd ~
$sudo nano /lib/systemd/system/bluetooth.service
#Go to the Exec Start line. Point it to /usr/libexec/bluetooth/bluetoothd
$sudo mv /usr/lib/bluetooth/bluetoothd /usr/lib/bluetooth/bluetoothd-543.orig
$sudo ln -s /usr/libexec/bluetooth/bluetoothd /usr/lib/bluetooth/bluetoothd
$sudo systemctl daemon-reload
私が見つけた追加のバグ:
$sudo apt-get install -y bluez-obexd
$# see https://forums.fedoraforum.org/showthread.php?315160-Cannot-get-bluetooth-devices-to-work
$sudo init 6 #more robust sudo reboot
インストールしたbluezパッケージを使用したいと思います。システムの再起動直後にBLEデバイスに接続するには、次の手順を使用します(再起動後に時間がかかりすぎると失敗します)。私は一貫した接続を理解するのに十分な実験をしていません。「pi @ raspberrypi:〜$」と「[bluetooth]#」で始まる行が私の入力でした。残りは応答でした。
pi@raspberrypi:~ $ bluetoothctl
Agent registered
[bluetooth]# power on
Changing power on succeeded
[bluetooth]# scan on
Discovery started
[CHG] Controller B8:27:EB:DD:65:21 Discovering: yes (The raspberry pi, I believe)
[CHG] Device 34:15:13:87:98:37 RSSI: -45 (device I want)
[bluetooth]# trust 34:15:13:87:98:37
Changing 34:15:13:87:98:37 trust succeeded
[bluetooth]# connect 34:15:13:87:98:37
Attempting to connect to 34:15:13:87:98:37 (this will take a few seconds)
[CHG] Device 34:15:13:87:98:37 Connected: yes
Connection successful
...(Specifications of your device)...
[CHG] Device 34:15:13:87:98:37 ServicesResolved: yes
BLEデバイスに接続しています。ペアリングコマンドは、Bluetoothクラシックを対象としているため機能しません。
[bluetooth]# pair 34:15:13:87:98:37
Attempting to pair with 34:15:13:87:98:37
[CHG] Device 34:15:13:87:98:37 Connected: yes
Failed to pair: org.bluez.Error.AuthenticationFailed
[CHG] Device 34:15:13:87:98:37 Connected: no