Hello,
I'm trying to send vendor-specific commands to CYW920719Q40EVB-01.
It's an example, which i'm trying to send (Tx_Test):
cmd 0x3f 0x0051 0x00 0x01 0x02 0x03 0x04 0x05 0x01 0x00 0x03 0x01 0x00 0x02 0x00 0x00 0x00 0x00
I've used CyBluetool for testing and it worked correct.
Now i want to create my own firmware and send vendor-specific command using wiced_bt_dev_vendor_specific_command() function from SDK.
It's a function prototype from SDK:
/**
* Function wiced_bt_dev_vendor_specific_command
*
* Send a vendor specific HCI command to the controller.
*
* @param[in] opcode : Opcode of vendor specific command
* @param[in] param_len : Length of parameter buffer
* @param[in] p_param_buf : Parameters
* @param[in] p_cback : Callback for command complete
*
* @return
*
* WICED_BT_SUCCESS : Command sent. Does not expect command complete event. (command complete callback param is NULL)
* WICED_BT_PENDING : Command sent. Waiting for command complete event.
* WICED_BT_BUSY : Command not sent. Waiting for command complete event for prior command.
*
*/
wiced_result_t wiced_bt_dev_vendor_specific_command (uint16_t opcode, uint8_t param_len, uint8_t *p_param_buf,
wiced_bt_dev_vendor_specific_command_complete_cback_t *p_cback);
Could you please clarify me which bytes of my command i should use as param_len and p_param_buf ?
Or do you have any ideas how can i send vendor-specific commands another way?
Solved! Go to Solution.
Hi KoSh_4652521 ,
According to the command and parameters you are using ,
param_len should be 0x10 (16 in decimal) and p_param_buf should contain - 0x00 0x01 0x02 0x03 0x04 0x05 0x01 0x00 0x03 0x01 0x00 0x02 0x00 0x00 0x00 0x00
Attached RF test doc for reference.
Also , You can refer to the watch example included in WICED. In particular, you should take a look at the hci_control_test_handle_command() and wiced_bt_send_test_command() function in hci_control_test.c.
Thanks,
Anjana
Hi KoSh_4652521 ,
According to the command and parameters you are using ,
param_len should be 0x10 (16 in decimal) and p_param_buf should contain - 0x00 0x01 0x02 0x03 0x04 0x05 0x01 0x00 0x03 0x01 0x00 0x02 0x00 0x00 0x00 0x00
Attached RF test doc for reference.
Also , You can refer to the watch example included in WICED. In particular, you should take a look at the hci_control_test_handle_command() and wiced_bt_send_test_command() function in hci_control_test.c.
Thanks,
Anjana
Hello,
Thank you for your answer!
It was very helpful for me!