Recently, we released a Bluetooth® step-by-step guide on How to Deploy BlueZ v5.49 on Raspberry Pi3 and Use It, Part 1. This step-by-step guide shows you how to deploy BlueZ v5.49 on a Raspberry Pi3 board and have it function as a Bluetooth Mesh provisioner. Since the release of this step-by-step guide, the latest version of BlueZ v5.50 has become available and includes updates for Bluetooth Mesh.
“This release contains several fixes to GATT and Mesh support. Some notable new features include a ‘node-reset’ command to meshctl, a new btmon-logger daemon to perform logging on unattended systems, and a new general discoverable property in the advertising D-Bus API.”
When deploying BlueZ v5.50 on Raspberry Pi3 using the guide above, an error may pop-up in the command for “Section 2.5, Compile and Install BlueZ”
The error is as below, require a library, ell, and the version should be higher than v0.3.
checking for ELL… no
configure: error: ell library >= 0.3 is required
The reason for this error is that BlueZ v5.50 uses a new library, Embedded Linux Library(ell). To clean this error and build a clean development environment to deploy BlueZ v5.50, use the following patch:
1. Follow the guide till completing “Section 2.3, Install json-c for BlueZ v5.49”
2. Issue the commands below – these commands will help you to install ell on your R Pi3 board
tar -xvf ell-0.6.tar.xz
sudo make install
3. Issue the commands below to fetch the BlueZ v5.50 source code
tar -xvf bluez-5.50.tar.xz
4. After completing the two steps above for ell and BlueZ v5.50 source code, return to the Bluetooth step-by-step guide, Section 2.5, Compile and Install BlueZ, and follow this guide to finish setup
5. Then, BlueZ v5.50 will be deployed on your R Pi3 board successfully
The full updated step-by-step guide, How to Deploy BlueZ on Raspberry Pi3 and Use It will be available soon. In the interim, please feel free to check out other Bluetooth® developer resources.