Hello,
Thank you for the update, I haven't had a chance to explicitly verify this behaviour yet with a BT817 development board.
However the following code is from our main sample application, and this does not include a swap command:
void SAMAPP_CoPro_Widget_Spinner()
{
/*************************************************************************/
/* Below code demonstrates the usage of spinner function. Spinner func */
/* will wait untill stop command is sent from the mcu. Spinner has option*/
/* for displaying points in circle fashion or in a line fashion. */
/*************************************************************************/
EVE_CoCmd_dlStart(phost);
EVE_Cmd_wr32(phost, CLEAR_COLOR_RGB(64, 64, 64));
EVE_Cmd_wr32(phost, CLEAR(1, 1, 1));
EVE_Cmd_wr32(phost, COLOR_RGB(0xff, 0xff, 0xff));
EVE_CoCmd_text(phost, (int16_t)(DispWidth / 2), 20, 27, OPT_CENTER, "Spinner circle");
EVE_CoCmd_text(phost, (int16_t)(DispWidth / 2), 80, 27, OPT_CENTER, "Please Wait ...");
EVE_CoCmd_spinner(phost, (int16_t)(DispWidth / 2), (int16_t)(DispHeight / 2), 0, 1);//style 0 and scale 0
/* Wait till coprocessor completes the operation */
EVE_Cmd_waitFlush(phost);
EVE_sleep(1000);
/**************************** spinner with style 1 and scale 1 *****************************************************/
EVE_CoCmd_dlStart(phost);
EVE_Cmd_wr32(phost, CLEAR_COLOR_RGB(64, 64, 64));
EVE_Cmd_wr32(phost, CLEAR(1, 1, 1));
EVE_Cmd_wr32(phost, COLOR_RGB(0xff, 0xff, 0xff));
EVE_CoCmd_text(phost, (int16_t)(DispWidth / 2), 20, 27, OPT_CENTER, "Spinner line");
EVE_CoCmd_text(phost, (int16_t)(DispWidth / 2), 80, 27, OPT_CENTER, "Please Wait ...");
EVE_Cmd_wr32(phost, COLOR_RGB(0x00, 0x00, 0x80));
EVE_CoCmd_spinner(phost, (int16_t)(DispWidth / 2), (int16_t)(DispHeight / 2), 1, 1);//style 1 and scale 1
/* Wait till coprocessor completes the operation */
EVE_Cmd_waitFlush(phost);
EVE_sleep(1000);
EVE_CoCmd_dlStart(phost);
EVE_Cmd_wr32(phost, CLEAR_COLOR_RGB(64, 64, 64));
EVE_Cmd_wr32(phost, CLEAR(1, 1, 1));
EVE_Cmd_wr32(phost, COLOR_RGB(0xff, 0xff, 0xff));
EVE_CoCmd_text(phost, (int16_t)(DispWidth / 2), 20, 27, OPT_CENTER, "Spinner clockhand");
EVE_CoCmd_text(phost, (int16_t)(DispWidth / 2), 80, 27, OPT_CENTER, "Please Wait ...");
EVE_Cmd_wr32(phost, COLOR_RGB(0x80, 0x00, 0x00));
EVE_CoCmd_spinner(phost, (int16_t)(DispWidth / 2), (int16_t)((DispHeight / 2) + 20), 2, 1);//style 2 scale 1
/* Wait till coprocessor completes the operation */
EVE_Cmd_waitFlush(phost);
EVE_sleep(1000);
EVE_CoCmd_dlStart(phost);
EVE_Cmd_wr32(phost, CLEAR_COLOR_RGB(64, 64, 64));
EVE_Cmd_wr32(phost, CLEAR(1, 1, 1));
EVE_Cmd_wr32(phost, COLOR_RGB(0xff, 0xff, 0xff));
EVE_CoCmd_text(phost, (int16_t)(DispWidth / 2), 20, 27, OPT_CENTER, "Spinner two dots");
EVE_CoCmd_text(phost, (int16_t)(DispWidth / 2), 80, 27, OPT_CENTER, "Please Wait ...");
EVE_Cmd_wr32(phost, COLOR_RGB(0x80, 0x00, 0x00));
EVE_CoCmd_spinner(phost, (int16_t)(DispWidth / 2), (int16_t)((DispHeight / 2) + 20), 3, 1);//style 3 scale 0
/* Wait till coprocessor completes the operation */
EVE_Cmd_waitFlush(phost);
EVE_sleep(1000);
/* Send the stop command */
EVE_Cmd_wr32(phost, CMD_STOP);
/* Update the command buffer pointers - both read and write pointers */
EVE_Cmd_waitFlush(phost);
EVE_sleep(1000);
}
As such I believe you are correct and the swap is issued implicitly when calling CMD_SPINNER on EVE 4, I will verify this with the development team.
Best Regards,
BRT Community.