Platform Manual
Transports
Installing Bluetooth on Linux
install bluez package version 5 66 or higher the bluez package is the official linux stack and provides all the modules you’ll need to enable data sync with bluetooth low energy (le) shell sudo apt get update sudo apt get upgrade sudo apt get install libdbus 1 dev libglib2 0 dev libudev dev libical dev libreadline dev docutils common y wget http //www kernel org/pub/linux/bluetooth/bluez 5 66 tar xz tar xf bluez 5 66 tar xz cd bluez 5 66 /configure make sudo make install add support for linux to ios connections https //docs ditto live/linux/installation#add support for linux to ios connections bluez 5 51 and above try to automatically read the battery status/service of devices when they connect however, ios devices will default prevent bluez services from reading the battery service as a result, bluez connection attempts will cause ios devices to show a pairing prompt constantly therefore, we must disable the battery service in bluez using the following steps with your favorite editor, open the bluetooth service file on raspberry pi os it's located /usr/lib/systemd/system/bluetooth service , on other versions it may be here /etc/systemd/system/bluetooth target wants/bluetooth service you will probably need to use su permission to write to this file find the line beginning with execstart= and add p battery to the end now the line should look like this shell execstart=/usr/lib/bluetooth/bluetoothd p battery 3\ save the file 4\ run sudo systemctl daemon reload and sudo systemctl restart bluetooth to apply changes to the bluetooth service 5\ linux’s bluetooth system aggressively prefers classic bluetooth (br/edr) mode when it encounters a mac this results in both the pairing popups and intermittent sync before running your app, you can prevent this with a little bluetooth configuration on your linux machines after that, bluez should be able to connect to ios devices without prompting and ditto apps should be able to communicate over bt le between ios and linux run the following command to set bluez' support for multiple advertisements https //docs ditto live/linux/installation#run the following command to set bluez support for multiple advertisements shell sudo setcap 'cap net raw,cap net admin+eip' `which hcitool` your linux system is now ready to install and run ditto for instructions on how to install and set up ditto, see docid\ cv1w3s78ql3fv94bngxw3