Hi,
1. cybt343026-01模块,量产的时候会download自己的固件版本,我们想自己统一管理mac地址(自己写入mac地址),链接CYW20706 有介绍多种方法,请问推荐哪一种?
2. 我试了一下wiced_bt_dev_vendor_specific_command和wiced_bt_set_local_bdaddr的做法
1) 直接用wiced_bt_dev_vendor_specific_command的命令进行设置---重启后用hci_control_handle_read_local_bda读取
2) 通过wiced_bt_set_local_bdaddr及wiced_hal_write_nvram的方法设置---重启后用从flash读取,再设置一次,然后通过hci_control_handle_read_local_bda读取
设置
重启后,从flash读取再设置一次
I. 我想问的是1)和2)的方法是将mac地址写入哪里?ss吗?
II. hci_control_handle_read_local_bda的接口函数是从哪个地方读取出来的?
已解决! 转到解答。
没有找到具体存储位置的说明,wiced_bt_dev_vendor_specific_command应该是存储到ss区域;wiced_hal_write_nvram应该是存储到vs区域,因为这个是在application中修改的。
建议使用vendor command写地址。
另外,也可以直接修改hex文件,直接修改hex里SS区域对应的地址,但是修改之后需要重新计算校验位。在CY提供的module programmer工具中就是使用的这种方法。WICED Module Programmer User Guide – KBA225060 。你可以直接使用这个工具烧写。
在Git上有C版本的源码可以参考:GitHub - aohan2000/WicedReflash: Cypress WICED BT/BLE based module programming tool for Windows.
没有找到具体存储位置的说明,wiced_bt_dev_vendor_specific_command应该是存储到ss区域;wiced_hal_write_nvram应该是存储到vs区域,因为这个是在application中修改的。
建议使用vendor command写地址。
另外,也可以直接修改hex文件,直接修改hex里SS区域对应的地址,但是修改之后需要重新计算校验位。在CY提供的module programmer工具中就是使用的这种方法。WICED Module Programmer User Guide – KBA225060 。你可以直接使用这个工具烧写。
在Git上有C版本的源码可以参考:GitHub - aohan2000/WicedReflash: Cypress WICED BT/BLE based module programming tool for Windows.