3

The Bluetooth stack on Linux is BlueZ and they make a series of APIs available using D-Bus to interface with the Bluetooth hardware. The documentation for the various API's is available at: https://git.kernel.org/pub/scm/bluetooth/bluez.git/tree/doc If you have not used D-Bus before it can be a little bit of a learning curve. There are libraries like pydbus ...


3

I am assuming it is a Serial Port Profile (SPP) connection that you are trying to establish between the two machines. The Linux Bluetooth stack uses BlueZ which has an API for setting up classic Profiles such as SPP. This is documented at: https://git.kernel.org/pub/scm/bluetooth/bluez.git/tree/doc/profile-api.txt This has the option to set ...


2

Running bluetoothd with -C and the tool rfcomm are both deprecated and not recommended to use. The official BlueZ example is at: https://git.kernel.org/pub/scm/bluetooth/bluez.git/tree/test/test-profile although it still requires a bit of knowledge to get running. Another alternative for the RPi would be the Bluedot RFCOMM functionality: https://www....


2

I have tested the Python code you posted in your question on my system and it also didn't work. Looking at it more closely, and running some experiments, I noticed that you were not making the server discoverable so I added the following lines to make it discoverable if it was not already: adapter = dbus.Interface(bus.get_object('org.bluez', ...


1

This is quite a broad question and I don't have the scale so there is a limit to how much I can answer. However, there is some information I can share which might help you move forward. The Bluetooth stack on a Raspberry Pi is BlueZ which is the official Bluetooth stack for Linux. BlueZ provide a series of APIs to enable most programming languages to ...


1

This answer only relates to the UUID question in the comments. See section 5.1 in https://github.com/petzval/btferret documentation for a discussion of serial UUIDs. The specification of a service as a serial RFCOMM channel is in the aid=0004 SDP entry rather than the UUID, so any number can be used as the UUID. However, by convention serial services have ...


Only top voted, non community-wiki answers of a minimum length are eligible