你好,
如何把国旗从广告包?我在non-connectable模式不断传播。
默认情况下,国旗的有效载荷部分:020106(2字节大小,类型- 01旗帜,国旗值- 06)
相反,我希望advertisemnet包1 fff .......(大小1 f = 31日在小数,FF -制造商数据类型)
谢谢你!
Anushiya
嗨anushiya,
你能把你的问题说清楚好吗?请检查ble_app_noncon SDK的例子是位于下6.0.10.511 \ target_apps \ \项目misc路径。app_easy_gap_non_connectable_advertise_get_active () API使得non-connectable广告正确的命令。请检查user_app_adv_start()回调函数。适当的消息由app_easy_gap_non_connectable_advertise_start_create_msg ()。将分为info.host广告数据。adv_data gapm_start_advertise_cmd结构的成员。广告中的设备名称将存储字符串。我建议你去看一看的源代码app_easy_gap_non_connectable_advertise_start_create_msg ()。
您可以修改user_config USER_ADVERTISE_DATA宏。h头文件来存储你在广告信息数据。例如如果你想BD地址存储到广告数据,你可以做以下几点:
广告应该有一个特定的格式字符串。您可以使用ADV_TYPE_MANUFACTURER_SPECIFIC_DATA国旗和MAC地址添加到制造商的广告字符串数据。例如假设你的BD地址是:x00 x01 x02 x03 x04 x05所以你的广告就像下面的数据
#定义BLE_MAC_ADDR " \ x00 \ x01 \ x02 \ x03 \ x04 \ x05”
#定义BLE_MAC_ADDR_LEN " \ x07 "
#定义USER_ADVERTISE_DATA BLE_MAC_ADDR_LEN \
ADV_TYPE_MANUFACTURER_SPECIFIC_DATA \
BLE_MAC_ADDR
但是,你可以请注明你想要的填充到广告数据?
谢谢,PM_Dialog
广告中包,我不想把旗帜。我想用所有制造商31个字节数据。上面的设置你上面提到的不控制标志。
我在non-connectable模式不断传播。
user_config。h的评论“旗帜的数据类型可以省略”。我该怎么做是我的问题。
* - ADV_NONCONN_IND: Non-connectable无向广告活动。
*——用户定义的广告数据的最大长度应31个字节。
*标志的数据类型可以省略,因此用户可以使用所有的31个字节
*数据。
*——扫描响应数据应当是空的。
好的。我找到了解决方案。在sugested回答让ble_app_sleepmode non-connectable(连续传输),
https://support.dialog-semiconductor.com/forums/post/dialog-smartbond-bluetooth-low-energy-%E2%80%93-hardware-device-reference-designs/mnfdata-update评论- 24179
最后一个参数需要更改为0
/ / adv_connectable接入广告事件或不是参数设置为0。
app_add_ad_struct (cmd, &mnf_data sizeof (struct mnf_specific_data_ad_structure), 0);
空白user_app_adv_start(空白)
{
/ /安排接下来的广告数据更新
app_adv_data_update_timer_used = app_easy_timer (APP_ADV_DATA_UPDATE_TO adv_data_update_timer_cb);
struct gapm_start_advertise_cmd * cmd;
cmd = app_easy_gap_non_connectable_advertise_get_active ();/ /无向- > non_connectable
/ /添加制造商数据最初的广告或扫描响应数据,如果有足够的空间
/ /设置延长睡眠期间与OTP复制广告
arch_set_extended_sleep(真正的);
app_easy_gap_non_connectable_advertise_start ();/ /无向- > non_connectable
}
高兴你解决你的问题,谢谢你指示关于app_add_ad_struct ()。
嗨anushiya,
你能把你的问题说清楚好吗?请检查ble_app_noncon SDK的例子是位于下6.0.10.511 \ target_apps \ \项目misc路径。app_easy_gap_non_connectable_advertise_get_active () API使得non-connectable广告正确的命令。请检查user_app_adv_start()回调函数。适当的消息由app_easy_gap_non_connectable_advertise_start_create_msg ()。将分为info.host广告数据。adv_data gapm_start_advertise_cmd结构的成员。广告中的设备名称将存储字符串。我建议你去看一看的源代码app_easy_gap_non_connectable_advertise_start_create_msg ()。
您可以修改user_config USER_ADVERTISE_DATA宏。h头文件来存储你在广告信息数据。例如如果你想BD地址存储到广告数据,你可以做以下几点:
广告应该有一个特定的格式字符串。您可以使用ADV_TYPE_MANUFACTURER_SPECIFIC_DATA国旗和MAC地址添加到制造商的广告字符串数据。例如假设你的BD地址是:x00 x01 x02 x03 x04 x05所以你的广告就像下面的数据
#定义BLE_MAC_ADDR " \ x00 \ x01 \ x02 \ x03 \ x04 \ x05”
#定义BLE_MAC_ADDR_LEN " \ x07 "
#定义USER_ADVERTISE_DATA BLE_MAC_ADDR_LEN \
ADV_TYPE_MANUFACTURER_SPECIFIC_DATA \
BLE_MAC_ADDR
但是,你可以请注明你想要的填充到广告数据?
谢谢,PM_Dialog
广告中包,我不想把旗帜。我想用所有制造商31个字节数据。上面的设置你上面提到的不控制标志。
我在non-connectable模式不断传播。
user_config。h的评论“旗帜的数据类型可以省略”。我该怎么做是我的问题。
* - ADV_NONCONN_IND: Non-connectable无向广告活动。
*——用户定义的广告数据的最大长度应31个字节。
*标志的数据类型可以省略,因此用户可以使用所有的31个字节
*数据。
*——扫描响应数据应当是空的。
好的。我找到了解决方案。在sugested回答让ble_app_sleepmode non-connectable(连续传输),
https://support.dialog-semiconductor.com/forums/post/dialog-smartbond-bluetooth-low-energy-%E2%80%93-hardware-device-reference-designs/mnfdata-update评论- 24179
最后一个参数需要更改为0
/ / adv_connectable接入广告事件或不是参数设置为0。
app_add_ad_struct (cmd, &mnf_data sizeof (struct mnf_specific_data_ad_structure), 0);
空白user_app_adv_start(空白)
{
/ /安排接下来的广告数据更新
app_adv_data_update_timer_used = app_easy_timer (APP_ADV_DATA_UPDATE_TO adv_data_update_timer_cb);
struct gapm_start_advertise_cmd * cmd;
cmd = app_easy_gap_non_connectable_advertise_get_active ();/ /无向- > non_connectable
/ /添加制造商数据最初的广告或扫描响应数据,如果有足够的空间
/ / adv_connectable接入广告事件或不是参数设置为0。
app_add_ad_struct (cmd, &mnf_data sizeof (struct mnf_specific_data_ad_structure), 0);
/ /设置延长睡眠期间与OTP复制广告
arch_set_extended_sleep(真正的);
app_easy_gap_non_connectable_advertise_start ();/ /无向- > non_connectable
}
嗨anushiya,
高兴你解决你的问题,谢谢你指示关于app_add_ad_struct ()。
谢谢,PM_Dialog