你好,
我有一个关于广播员/观察者的小问题。我知道广播/观察者实现单向通信。
我的问题是“这是可能收到的确认从观察者到广播者的信息?”
我的情况:
我有两个设备(传感器作为广播器和接收器作为观察者),我想从传感器传输一些数据(例如温度数据)到接收器。我想知道观察者(接收器)是否收到了来自传感器(广播器)的信息,类似于承认。
嗨adam.stroz,
通常,为了能够扫描设备,应将其配置为中心或作为观察者。为了扫描所有类型的广告字符串,您必须将扫描模式设置为GAP_OBSERVER_MODE。这种扫描将返回任何在空中的BLE设备的广告字符串,但扫描过程永远不会超时,因此您必须明确地停止它。
当设备充当广播公司时,这意味着能够仅支持不可连接的广告。所以,请你说明你期待的是什么样的承认?
谢谢,PM_Dialog
我需要广播(传感器)确认接收机(观测者)已收到数据。我不知道这在观察者/广播员的情况下是否可能。
由于它是不可连接的广告(广播),一个可能的解决方案可能是设置扫描响应仅激活接收器。您可以在扫描响应数据中添加一些字节(例如特定于制造商的数据)。
在观察者端,您应该将它配置为一个活动的扫描程序,以便发送扫描请求。如果观察者发送一个扫描请求到广播器,这意味着数据已经被接收。
我还建议你检查一下DA14585 DA14586 DA14531扫描请求跟踪西南的例子。
该示例演示了外围设备如何跟踪它是否被扫描,以及哪个中心设备执行扫描过程。中心设备需要以主动模式进行扫描,因为如果通过中心的扫描请求进行扫描,外围设备将进行跟踪。
谢谢你的回答,我会去看看的。
我还有其他问题:
如果设置了扫描响应数据,则激活接收,因此Central/Observer将发送扫描响应。你想补充什么信息?你是说进入扫描响应数据吗?
我想知道扫描请求来自我的接收器(作为观察者),而不是来自范围内的其他设备(例如附近的智能手机)。
我的问题怎么样?我还需要解释更多吗?
那么,你的意思是像“只允许从你的观察者扫描并阻止从其他中心扫描”这样的东西吗?
我将从头开始提出我的问题。我想从我的传感器(作为广播)发送一些数据到接收器(作为观察者),我想使用广播/观察者的角色。
我想知道我的接收者已经收到了数据(类似于确认)。我知道我应该使用主动扫描(在观察者端)向传感器发送扫描请求(这意味着数据已经收到)。这就是我的问题,
我如何知道我收到的确认(扫描请求)来自我的接收者,而不是来自其他设备(例如智能手机)?
那我的问题呢?
我应该用不同的方式来描述这个问题吗?
嗨adam.stroz
抱歉耽搁了。请检查一下DA14585 DA14586 DA14531扫描请求跟踪正如我在之前的文章中提到的。这个示例旨在演示外围设备如何跟踪它是否被扫描,以及哪个中心设备执行扫描过程。您可能通过对端设备BD地址知道这一点。
嗨adam.stroz,
通常,为了能够扫描设备,应将其配置为中心或作为观察者。为了扫描所有类型的广告字符串,您必须将扫描模式设置为GAP_OBSERVER_MODE。这种扫描将返回任何在空中的BLE设备的广告字符串,但扫描过程永远不会超时,因此您必须明确地停止它。
当设备充当广播公司时,这意味着能够仅支持不可连接的广告。所以,请你说明你期待的是什么样的承认?
谢谢,PM_Dialog
嗨adam.stroz,
由于它是不可连接的广告(广播),一个可能的解决方案可能是设置扫描响应仅激活接收器。您可以在扫描响应数据中添加一些字节(例如特定于制造商的数据)。
在观察者端,您应该将它配置为一个活动的扫描程序,以便发送扫描请求。如果观察者发送一个扫描请求到广播器,这意味着数据已经被接收。
我还建议你检查一下DA14585 DA14586 DA14531扫描请求跟踪西南的例子。
该示例演示了外围设备如何跟踪它是否被扫描,以及哪个中心设备执行扫描过程。中心设备需要以主动模式进行扫描,因为如果通过中心的扫描请求进行扫描,外围设备将进行跟踪。
谢谢,PM_Dialog
谢谢你的回答,我会去看看的。
嗨adam.stroz,
如果设置了扫描响应数据,则激活接收,因此Central/Observer将发送扫描响应。你想补充什么信息?你是说进入扫描响应数据吗?
谢谢,PM_Dialog
我想知道扫描请求来自我的接收器(作为观察者),而不是来自范围内的其他设备(例如附近的智能手机)。
你好,
我的问题怎么样?我还需要解释更多吗?
嗨adam.stroz,
那么,你的意思是像“只允许从你的观察者扫描并阻止从其他中心扫描”这样的东西吗?
谢谢,PM_Dialog
你好,
我将从头开始提出我的问题。我想从我的传感器(作为广播)发送一些数据到接收器(作为观察者),我想使用广播/观察者的角色。
我想知道我的接收者已经收到了数据(类似于确认)。我知道我应该使用主动扫描(在观察者端)向传感器发送扫描请求(这意味着数据已经收到)。这就是我的问题,
我如何知道我收到的确认(扫描请求)来自我的接收者,而不是来自其他设备(例如智能手机)?
那我的问题呢?
我应该用不同的方式来描述这个问题吗?
嗨adam.stroz
抱歉耽搁了。请检查一下DA14585 DA14586 DA14531扫描请求跟踪正如我在之前的文章中提到的。这个示例旨在演示外围设备如何跟踪它是否被扫描,以及哪个中心设备执行扫描过程。您可能通过对端设备BD地址知道这一点。
谢谢,PM_Dialog