I have been puzzling through the Goobledegook GATT server (GGK,
https://github.com/moovel/gatt-server fork).  It uses the Bluez D-Bus
interface.  It is GPLv3 so not a candidate for porting.  And also not
much use for understanding APIs since the OS interface is hidden inside
of the Bluez D-Bus interface
(https://core.docs.ubuntu.com/en/stacks/bluetooth/bluez/docs/reference/dbus-api)
Yeah I am very familiar with this having shipped devices on top of the
dbus API.  The dbus API is provided by bluetoothd which intern is
using the kernel socket interface.  Goobledegook is not really
providing us anything here since the underlying bindings between
sockets and GATT are still in bluetoothd.
So would adding the appropriate socket types and ioctls then re-implementing the d-bus API make a reasonable portability layer? That could be a pretty well defined job.

Reply via email to