嗨对话框,
我的软件可以在Suota工作。在固件升级期间,我捕获DA14580和手机之间的时间段大约为10ms。它意味着DA14580将固件从手机获取100Hz。
但我想减慢它。说,下到10Hz。如何修改SDK软件?你能展示它吗?
谢谢
你好。连接参数Update Reuqest由Suota应用程序启动。因此,如果您有Suota应用程序源代码,则可以修改它。对于Android应用程序,它位于suotaApplication.java文件中:
bluetoothgattsingleton.getgatt()。RequestConnectionPriority(BlueToothGatt.Connection_Priority_high);
更改为connection_priority_balanced或connection_priority_low_power
如果您想使用“股票”Suota应用程序,您可以从固件侧发送连接参数请求。寻找参考项目BLE_APP_BAREBONE / user_barebone.c app_easy_gap_param_update_start(app_connection_idx);
嗨徐开忠,
一个vlad请提到,当连接且更新已启动时,来自中央的Suota应用程序将请求参数更新请求,以便连接事件尽可能短(依赖于手机的短路)。因此,您无法从外设执行多大,以便更改该功能并强制中央更改连接间隔(即使具有来自外设侧的附加连接参数更新,我也不认为它会执行诀窍,特别是在FW正在更新时,尽管如不尝试)。最稳定的选项是更改Suota应用程序,以免发送参数更新请求或更改中央发送的连接优先级。
谢谢mt_dialog.
“所以你不能从外设做太多,以改变它并强迫中央改变连接间隔”如果连接参数请求不违反BLE核心规范和特定设备规则,则通常主机接受它。例如,对于iOS设备:
从延迟≤302秒≤connsupervisionTimeout≤6秒间隔min modulo 15 ms == 0间隔≥15毫秒以下是以下之一:间隔最小+ 15ms≤间隔最大interval min == interval max == 15 ms间隔max *(从等待时间+ 1)≤2秒interval max *(从站延迟+ 1)* 3 https://developer.apple.com/hardwaredrivers/bluetoothdesignguidelines.pdf.Android规则是更加民主的,但没有标准化。如果DA14580根据此规则发送连接参数请求,则iOS接受它。我不是移动开发人员,而是Afaik,这是控制iOS中连接参数的唯一方法 - 因为iOS API没有提供它。Android API支持自API V23(或25)以来有限数量的连接参数。因此,当外围询问优选的连接参数时,最自然的方式。
https://developer.apple.com/hardwaredrivers/bluetoothdesignguidelines.pdf.Android规则是更加民主的,但没有标准化。如果DA14580根据此规则发送连接参数请求,则iOS接受它。我不是移动开发人员,而是Afaik,这是控制iOS中连接参数的唯一方法 - 因为iOS API没有提供它。Android API支持自API V23(或25)以来有限数量的连接参数。因此,当外围询问优选的连接参数时,最自然的方式。
你好。连接参数Update Reuqest由Suota应用程序启动。因此,如果您有Suota应用程序源代码,则可以修改它。对于Android应用程序,它位于suotaApplication.java文件中:
bluetoothgattsingleton.getgatt()。RequestConnectionPriority(BlueToothGatt.Connection_Priority_high);
更改为connection_priority_balanced或connection_priority_low_power
如果您想使用“股票”Suota应用程序,您可以从固件侧发送连接参数请求。寻找参考项目BLE_APP_BAREBONE / user_barebone.c app_easy_gap_param_update_start(app_connection_idx);
嗨徐开忠,
一个vlad请提到,当连接且更新已启动时,来自中央的Suota应用程序将请求参数更新请求,以便连接事件尽可能短(依赖于手机的短路)。因此,您无法从外设执行多大,以便更改该功能并强制中央更改连接间隔(即使具有来自外设侧的附加连接参数更新,我也不认为它会执行诀窍,特别是在FW正在更新时,尽管如不尝试)。最稳定的选项是更改Suota应用程序,以免发送参数更新请求或更改中央发送的连接优先级。
谢谢mt_dialog.
“所以你不能从外设做太多,以改变它并强迫中央改变连接间隔”
如果连接参数请求不违反BLE核心规范和特定设备规则,则通常主机接受它。例如,对于iOS设备:
从延迟≤30
2秒≤connsupervisionTimeout≤6秒
间隔min modulo 15 ms == 0
间隔≥15毫秒
以下是以下之一:
间隔最小+ 15ms≤间隔最大
interval min == interval max == 15 ms
间隔max *(从等待时间+ 1)≤2秒
interval max *(从站延迟+ 1)* 3
https://developer.apple.com/hardwaredrivers/bluetoothdesignguidelines.pdf.
Android规则是更加民主的,但没有标准化。
如果DA14580根据此规则发送连接参数请求,则iOS接受它。我不是移动开发人员,而是Afaik,这是控制iOS中连接参数的唯一方法 - 因为iOS API没有提供它。Android API支持自API V23(或25)以来有限数量的连接参数。因此,当外围询问优选的连接参数时,最自然的方式。
谢谢