Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 如何在Raspberry Pi上发布通用访问服务作为外围设备?_Python 3.x_Raspberry Pi_Bluetooth Lowenergy_Bluez - Fatal编程技术网

Python 3.x 如何在Raspberry Pi上发布通用访问服务作为外围设备?

Python 3.x 如何在Raspberry Pi上发布通用访问服务作为外围设备?,python-3.x,raspberry-pi,bluetooth-lowenergy,bluez,Python 3.x,Raspberry Pi,Bluetooth Lowenergy,Bluez,我正在模拟一个真实世界的可编程逻辑器件在一个Pi零点上 我安装了所有需要的软件包,并将Bluez更新为5.50版。从python广告示例和服务示例开始,我构建了一个组合示例,用于广告和实现电池服务和定制服务 到目前为止,广告、配对、连接和访问服务仍然有效,但广告接口缺少通用访问服务(UUID 1800),因此它既不提供设备名称特征(UUID 2a00),也不提供外观特征(UUID 2a01) 我能够为服务注册和广告添加一个设备信息服务(UUID180A)。尝试注册通用访问服务时出错: Faile

我正在模拟一个真实世界的可编程逻辑器件在一个Pi零点上

我安装了所有需要的软件包,并将Bluez更新为5.50版。从python广告示例和服务示例开始,我构建了一个组合示例,用于广告和实现电池服务和定制服务

到目前为止,广告、配对、连接和访问服务仍然有效,但广告接口缺少通用访问服务(UUID 1800),因此它既不提供设备名称特征(UUID 2a00),也不提供外观特征(UUID 2a01)

我能够为服务注册和广告添加一个设备信息服务(UUID180A)。尝试注册通用访问服务时出错:

Failed to register application: org.bluez.Error.Failed: Failed to create entry in database
由于一般访问和设备信息是强制性的,因此产生的广告不符合标准

有没有办法将通用访问服务添加到应用程序中?

当使用BLE Scanner从Android手机浏览界面时,只有在应用程序中正确实现时,才能访问广告服务。 与Bluez实现不同,参考真实世界设备提供通用访问服务。 因此,应该使用服务的应用程序无法识别Bluez Implementation外围设备

蒂亚,
Helge

你用bleno吗?迈克:他说他用BlueZ,所以显然不用。Helge:当你说“广告界面”时,你的术语有点混乱。您的意思是将服务uuid包括在您的广告数据中,还是仅将其存在于GATT数据库中?我也不认为你可以在BlueZ中添加定制的GAP服务,因为就像在iOS和Android上一样,它是一个系统定义的服务,而不是定制的服务。如果您使用绕过BlueZ的自定义HCI对话软件,您可以根据需要配置您的服务。我在广告数据中包括UUID(1800)。无法将其添加到GATT DB,因为这会导致错误消息。根据我对其他BLE实现的经验,它也应该在GATTDB中。是标准服务导致了问题。