Can't read I2C from CYPD3177

Announcements

Live Webinar: USB-C adoption. Simple & Cost-efficient solutions | April 18th @9am or 5pm CEST. Register now !

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

cross mob
MiSt_2612701
Level 1
Level 1

I am trying to use I2C to read the CYPD3177.  I am using the EZ-PD BCR Host Processor Interface Specification Doc # 002-26784.  In this document, it states to read the BCR, you need the following I2C transaction:

Capture1.PNG

The REG ADDR shown above is a 16-bit address of the register you would like to read according to the document.

I am trying to read address 0x100D, which is the bus voltage register:

Capture3.PNG

My I2C transaction is shown below:

Capture2.PNG

As you can see the device address is properly ACK'ed, then the 16-bit address is properly ACK'ed, but then I do a restart(send the start sequence again), and do a read transaction to the same device address, but here the device NACKs.  What is the reason for the NACK?

Here is a close up view of the restart and NACK:

Capture4.PNG

Also in the document listed above it states, the BCR device can operate in one of two modes, standalone and HPI mode, and certain writeable registers are only available in HPI mode.  Looking at the document and the datasheet it doesn't state how to get the device into HPI mode to perform the write operations.

Thank you.

0 Likes
2 Replies
ShifangZ_26
Moderator
Moderator
Moderator
10 likes given 250 sign-ins 1000 replies posted

Hi ,

Recommend you use Cypress Utility to test the same command and compare the difference between your I2C trace and Cypress Utility I2C trace. Utility could download it on websites:https://www.cypress.com/documentation/software-and-drivers/ez-pd-bcr-hpi-utility 

Your understand is correct. Kindly refer details documentations:

https://www.cypress.com/documentation/software-and-drivers/ez-pd-bcr-host-processor-interface-specif... 

Best Regards,

Lisa

0 Likes

Lisa,

The problem with this answer is that it requires me to purchase a high priced USB-I2C piece of hardware to solve the problem.  I was really hoping that you could look at my waveform and make a determination of the problem. 

Thank you,

0 Likes