使用 D-Bus 和 .Net Core 的蓝牙 GATT 服务器

Bluetooth GATT server using D-Bus and .Net Core

我正在尝试 运行 raspberry pi 3 和 raspbian OS 上的蓝牙 GATT 服务器。基于 this post, the BlueZ D-Bus api can be used in .Net Core by Tmds.DBus 库及其 C# 接口可以使用 Tmds.DBus 工具生成。 我已经阅读了 Bluez 文档和大多数现有示例(基于 python 和 c), 但我不明白如何在 .Net Core 中定义和宣传 GATT 服务器。

任何人都可以提供 .Net 示例或任何其他解决方案吗?

创建 BLE 外围设备是 BlueZ D-Bus API 中比较棘手的事情之一。您将需要创建一个 GATT 服务器和一个广告。与 GATT 客户端不同,创建服务器需要在 dbus 上注册对象。

我不熟悉 .NET,但在 D-Bus 中注册对象的能力是让 GATT 服务器正常工作的关键。从这个example我发现关键词是:RegisterObjectAsync

然后我使用该关键字进行了搜索,并在使用它时找到了这个库:

https://github.com/phylomeno/dotnet-ble-server

您应该会感兴趣。