P3T1755 GETDCR Error

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

P3T1755 GETDCR Error

Jump to solution
384 Views
smiller2
Contributor III

When I attempt the command GETDCR,  it returns to me the wrong value and it does not set the "T" bit low to signal the end of the transaction.   According to the Table 8 of datasheet, the value returned should be 0x63 to represent a temperature sensor.  Instead the value returned is 0x17, 0x18 or 0x19 depending on the ambient temperature.  It seems like it is returning the first byte of the temperature register.   

I thought perhaps my sample devices were bad, so I bought some additional devices from Mouser.   The new parts operate exactly the same.     The chip markings on the samples from NXP are in three lines:

P1755
09 02  
306 

The purchased parts from Mouser differ only in the second line which is "09 07". 

Below is a logic analyzer capture of the Direct Read operation for GETDCR.   The Logic Analyzer understands and decodes 0x8F as GETDCR.    Using the same HW and Software methods, I can read the BCR and get the correct return byte of 0x3.   In both cases, I first run a SETDASA command to set the dynamic address of the sensor before running the Direct Read command.

Are there known Errata or Date Code issues with these parts?   If so, how do I get documentation of these issues? 

Thanks.

smiller2_0-1701117114159.png

 

0 Kudos
1 Solution
292 Views
smiller2
Contributor III

I got this to work correctly.   The issue was a runt pulse being generated by the FPGA that is the I3C controller.    Once the contractor changed the FPGA code, then it started to readback 0x63.   While the problem was in the FPGA, it should be noted that the only DCR gave back bad data.   Other command worked correctly and GETDCR did not fail, it just jumped to the wrong portion of the P3T1755. 

View solution in original post

0 Kudos
3 Replies
293 Views
smiller2
Contributor III

I got this to work correctly.   The issue was a runt pulse being generated by the FPGA that is the I3C controller.    Once the contractor changed the FPGA code, then it started to readback 0x63.   While the problem was in the FPGA, it should be noted that the only DCR gave back bad data.   Other command worked correctly and GETDCR did not fail, it just jumped to the wrong portion of the P3T1755. 

0 Kudos
366 Views
TomasVaverka
NXP TechSupport
NXP TechSupport

Hi Stephen,

Please see below and attached waveform for GETDCR command, it reads 0x63 DCR value from PT31755. NXP RT-685 MCU board was used as an I3C master controller, what I3C master controller are you using?

Capture.png

BR, Tomas

0 Kudos
357 Views
smiller2
Contributor III

Our I3C controller is FPGA based.   We need multiple controllers in a test application and the FPGA already existed in the project.    The FPGA is not my design and I presently do not have the source code.   My task is to get the C++ code interface working.    I changed the dynamic address of 0x30 to match your example.   I will attach a screen shot, the results are the same.   However, as I noted GETBCR and GETPID both return the correct data.   GETPID returns:

ReadByte[0] = 0x2
ReadByte[1] = 0x36
ReadByte[2] = 0x15
ReadByte[3] = 0x2a
ReadByte[4] = 0x0
ReadByte[5] = 0x90

Questions:

1.  What are the top markings on your P3T1755 device? 

2.  What is your I3C controller?   

 

Thanks.

0 Kudos