Yes ! The communucation protocol between Application Board 2.0/BNO USB stick and Development Desktop 2.0 software is proprietary . But most protocol details are exposed in COINES software source code. You could make use of them ! 😀 [Hint : Check coinesAPI/pc/coines.c and coinesAPI/pc/coines_defs.h ] Development Desktop fetches board information at startup like how coines_get_board_info() would do Development Desktop (PC ) sends AA 06 02 1F 0A 0D You reply from microcontroller UART as AA 0F 01 00 42 1F 00 19 00 34 00 11 03 0A 0D The 7 bytes (7 to 13) highlighted in red are the information bytes 00 19 - Shuttle ID 00 34 - Software ID (Firmware version - v3.4) 00 11 - Hardware ID (Hardware revision - v1.1) 03 - Application Board 2.0 Source : BST-COINES-SD001.pdf int16_t coines_get_board_info(struct coines_board_info *data)
{
int16_t rslt;
if (data == NULL)
return COINES_E_NULL_PTR;
comm_intf_init_command_header(COINES_DD_GET, COINES_CMDID_BOARDINFORMATION);
rslt = comm_intf_send_command(&coines_rsp_buf);
if (rslt == COINES_SUCCESS)
{
data->shuttle_id = (coines_rsp_buf.buffer[6] << | coines_rsp_buf.buffer[7];
data->hardware_id = (coines_rsp_buf.buffer[8] << | coines_rsp_buf.buffer[9];
data->software_id = (coines_rsp_buf.buffer[10] << | coines_rsp_buf.buffer[11];
data->board = coines_rsp_buf.buffer[12];
}
return rslt;
} You can do the same for I2C configure/read/write, SPI configure/read/write by checking the following functions coines_config_i2c_bus coines_write_i2c coines_read_i2c coines_config_spi_bus coines_write_spi coines_read_spi
... View more