在 Bluez 中编写 Gatt 服务器应用程序

Writing Gatt Server Application in Bluez

我们想为 Bluez 编写自定义 Gatt 服务器 应用程序,我们希望在其中提供一些有用的功能。例如:

  1. 启动 Gatt 服务器
  2. Register/Unregister 定制服务
  3. Add/Remove 自定义 Characteristics/Descriptor
  4. Set/Get Characteristics/Descriptor
  5. 的值
  6. 断开客户端/关闭 Gatt 服务器等

Bluez 在命令行工具中没有这些功能,但它们有几个 API(函数)可以做到这一点,我们需要调用这些内部函数。 据此,我们在 "bluez5.28/attrib/" 目录中编写了一个应用程序,从中我们从文件中调用了几个内部函数 "bluez5.28/attrib/""bluez5.28/profiles/""bluez5.28/src/" 目录并尝试用 bluez Makefile.

构建它

由于 bluez 已经从 automake 自动生成 make 文件,因此很难对该 Makefile 进行任何更改。但是当我们尝试时它显示了很多错误 关于依赖项和库,例如未定义的引用,没有这样的目录文件等

他们使用 bluez 函数制作 GattServer 应用程序是否有更简单的方法?

提前感谢您宝贵的回答.....

从 5.29 版开始,bluez gatt dbus api 现已完成。如果您可以接受通过 dbus 而不是直接通过库调用,您可以考虑使用它们。

在蓝牙规范 4.0 附录中关联 pg:1950:示例属性服务器

bluez5.28 的插件中带有 gatt-example.c 的属性