你好
我正在尝试使用da1458x_dsps_v_5.150.2使用da14583与DA14583进行BLE DONGLE
我的加密狗的一个规格是“可以在操作期间更改目标BT设备(从设备)”
我可以通过修改来分配目标BT地址
void user_on_adv_report_ind(struct gapm_adv_report_ind const * param)在user_sps_host.c中
我更改了此功能以接受特定的BT地址(新制作的全局变量)
我也可以通过UART刷新这个全局变量(我确认了全局变量已更改)
但我不断失败,可以断开先前的BT连接并使用新的BT地址重新连接
我尝试了这些功能来断开电流连接
app_disconnect_op();app_gapm_reset_op();app_easy_gap_disconnect(1);
其中一些在线断开连接,以便我可以发现释放设备
但加密狗没有重新连接到新设备,甚至似乎都停止了
我也试过
platform_reset(reset_and_load_fw)
重新启动设备,但它不起作用(=电流连接断开连接,无需响应)
请提供与芯片地址重新启动连接的指南
设备:
嗨Jiman Kim,
您可以尝试发出GAPM_RESET_CMD命令并重新配置设备。您只需要发出一个GAPM_RESET_CMD,那就是一个就绪的函数,它是app_gapm_reset_msg_create()。执行此操作后,设备将获得GAPM_CMP_EVT(GAPM_CMP_EVT_HANDLER()函数),操作参数设置为GAPM_RESET。因此,一旦重置设备,就应该将其重新配置为新的BD地址。但是,您可以澄清更多申请的规格吗?您想断开连接,然后更改BD地址,然后使用新的BD地址进行广告?我明白了吗?您可以配置BD地址,应用程序从NVDS结构获取BD地址,并且BD地址可以从DA1458x_config_Advanced.h文件配置CFG_NVDS_TAG_BD_ADDRESS,如果更改此操作,则设备的BD地址应更改。SDK虽然它首先检查OTP标头设备ID字段是否已刻录,但如果标题的值与零不同,则包含一个不同的值,这是设备将使用的地址。
谢谢,PM_DIALOG.