CY7C65215A Errata - I2C Reads are slower when USB-Serial is configured as I2C Master - Linux?

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Mal
Level 1
Level 1
10 sign-ins 5 replies posted 5 sign-ins

Hi

Would you please advise if there is a Linux solution for the CY7C65215A Errata 5 - I2C Reads are slower when USB-Serial is configured as I2C Master?

The workaround provided lists a windows solution only.

https://community.cypress.com/t5/Knowledge-Base-Articles/Reduce-Delay-Observed-During-I2C-Read-Opera...

Thanks

 

Malcolm

0 Likes
1 Solution
Pranava_YN
Moderator
Moderator
Moderator
100 likes received 500 replies posted 250 solutions authored

Hi Malcolm,

Slower I2C reads in Windows was due to delay introduced in library API implementation Refer to this thread for more details - https://community.cypress.com/t5/USB-Low-Full-High-Speed/CY7C65211-USB-Serial-SDK-Long-delays-betwee...

I2C Read API in library for Linux does not contain any such delays and should work without issues. Can you please test this at your end and let me know if you find similar delay in Linux?

Best regards,
Pranava

View solution in original post

0 Likes
6 Replies
Pranava_YN
Moderator
Moderator
Moderator
100 likes received 500 replies posted 250 solutions authored

Hi Malcolm,

Slower I2C reads in Windows was due to delay introduced in library API implementation Refer to this thread for more details - https://community.cypress.com/t5/USB-Low-Full-High-Speed/CY7C65211-USB-Serial-SDK-Long-delays-betwee...

I2C Read API in library for Linux does not contain any such delays and should work without issues. Can you please test this at your end and let me know if you find similar delay in Linux?

Best regards,
Pranava
0 Likes
Mal
Level 1
Level 1
10 sign-ins 5 replies posted 5 sign-ins

Hi Pranava

Under Linux with a repeated start we do see a delay, would you please supply the latest version of the SDK?  I presume the 2016 release is now out of date and has been updated with other fixes?

Regards

Malcolm

0 Likes
Pranava_YN
Moderator
Moderator
Moderator
100 likes received 500 replies posted 250 solutions authored

Hi,

Can you specify the magnitude of delay? If you can share I2C traces it will be helpful.

The SDK files provided in the website are the latest ones (https://www.cypress.com/documentation/software-and-drivers/usb-serial-software-development-kit?sourc...)

Best regards,
Pranava
0 Likes
Mal
Level 1
Level 1
10 sign-ins 5 replies posted 5 sign-ins

Hi Pranava

Please see the i2c capture below.  As you can see this has a 9.277ms delay between the write to address 0x10 and the subsequent reads from address 0x10.  During this time the I2C clock line is held low by the Cypress, the slave is not clock stretching.

Mal_0-1615556991150.png

Please let me know if you require further information on this.

Regards

Malcolm

0 Likes
Mal
Level 1
Level 1
10 sign-ins 5 replies posted 5 sign-ins

Is there any feedback on this?

Thanks

Malcolm

0 Likes
Pranava_YN
Moderator
Moderator
Moderator
100 likes received 500 replies posted 250 solutions authored

Hi,

 

Sorry for the delay in replying.

Are you running the linux library in a PC or in some embedded system? Please give us the system details.

Do you see this delay explicitly on repeated start condition or do you see it even with continuous reads?

Do you see this delay on every repeated start condition or is it just the worst case scenario?

Best regards,
Pranava
0 Likes