You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Silabs, Greetings from Anand
We are facing trouble in reading RS9116 device firmware version.
We followed sequence rsi_driver_init -> rsi_device_init both API are successful in execution. After this we had called rsi_get_fw_version API but program execution is getting hanged over here. We tried adding rsi_wireless_init and rsi_send_feature_frame APIs both have succeeded, After this also when we call version get API it is still failing,
Can you please suggest API sequence to be followed for reading WiFi chip version.
The sequence to obtain the firmware version of RS9116 is 'rsi_driver_init -> rsi_device_init -> rsi_get_fw_version'. Here's a snippet which works (Driver task has to be created after device initialization):
int32_trsi_app()
{
uint8_tresponse[20]; //Response buffer to hold the firmware version stringint32_tstatus=RSI_SUCCESS;
#ifdefRSI_WITH_OSrsi_task_handle_tdriver_task_handle=NULL;
#endif//! Driver initializationstatus=rsi_driver_init(global_buf, GLOBAL_BUFF_LEN);
if ((status<0) || (status>GLOBAL_BUFF_LEN)) {
returnstatus;
}
//! SiLabs module intialisationstatus=rsi_device_init(LOAD_NWP_FW);
if (status!=RSI_SUCCESS) {
LOG_PRINT("\r\nDevice Initialization Failed, Error Code : 0x%lX\r\n", status);
returnstatus;
} else {
LOG_PRINT("\r\nDevice Initialization Success\r\n");
}
#ifdefRSI_WITH_OS//! Task created for Driver taskrsi_task_create((rsi_task_function_t)rsi_wireless_driver_task,
(uint8_t*)"driver_task",
RSI_DRIVER_TASK_STACK_SIZE,
NULL,
RSI_DRIVER_TASK_PRIORITY,
&driver_task_handle);
#endifstatus=rsi_get_fw_version(response, 20);
if (status!=RSI_SUCCESS) {
LOG_PRINT("\r\nGet Firmware Version Failed, Error Code : 0x%lX\r\n", status);
returnstatus;
} else {
LOG_PRINT("\r\nGet firmware version Success\r\n");
LOG_PRINT("\r\nFirmware Version: %s\r\n", response);
}
status=rsi_wireless_init(0, 0);
if (status!=RSI_SUCCESS) {
LOG_PRINT("\r\nWireless Initialization Failed, Error Code : 0x%lX\r\n", status);
returnstatus;
} else {
LOG_PRINT("\r\nWireless Initialization Success\r\n");
}
return0;
}
This is for the same SDK and firmware version that you are using. I've attached the screenshot of the output of the snippet.
Silabs, Greetings from Anand
We are facing trouble in reading RS9116 device firmware version.
We followed sequence
rsi_driver_init -> rsi_device_init
both API are successful in execution. After this we had calledrsi_get_fw_version
API but program execution is getting hanged over here. We tried addingrsi_wireless_init
andrsi_send_feature_frame
APIs both have succeeded, After this also when we call version get API it is still failing,Can you please suggest API sequence to be followed for reading WiFi chip version.
Interface used with host - SPI
SDK version - v2.6.0.0.34 RS916W.2.6.0.0.34.rps
The text was updated successfully, but these errors were encountered: