This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DLP3010: Trouble communicating using Cypress usbserialexample code, with changes

Part Number: DLP3010


I have tried to use the Cypress USB SDK to communicate with the DLP3010, to use I2C.

I'm clearly doing something wrong - I can open the device but not write to it.

Does anyone have a simple C/C++ example they could share?

I'm attempting a simple write to slave address 0x36, for example:

// Configure the I2C data configuration.
CY_I2C_DATA_CONFIG cyI2CDataConfig;
cyI2CDataConfig.slaveAddress = 0x36;
cyI2CDataConfig.isStopBit =true;
cyI2CDataConfig.isNakBit =true;

CY_DATA_BUFFER cyDatabuffer;
int intError = 0;

// Now try a write
bufferWrite[0] = 0x52; // Control LED state.
bufferWrite[1] = 0x05; // Turn off green LED.
cyDatabuffer.buffer = bufferWrite;
cyDatabuffer.length = 2;

if (rStatus == CY_SUCCESS)
{
rStatus = CyI2cWrite(cyHandle, &cyI2CDataConfig, &cyDatabuffer, 5000);

...more lines

I get a timeout error (11) from the attempt to write.

I assume I missing something simple, and would appreciate any help.

Thanks