I am trying to use the P3T1755 via I3C. I can access the part under I3C and assign it a dynamic address. I can readback the PID and I get valid data. However, according to the datasheet the temperature registers are via I2C. I tried running an I2C command after setting the dynamic address and the process fails. The sensor ACKs the device address, but then releases the SDA line after the rising edge of clock which causes a STOP condition. If I run the device as pure I2C, then I can read the temperature. However, the requirement is via I3C.
Questions:
1. Does the P3T1755 support legacy I2C after configuring as I3C?
2. Are there I3C commands to get at these registers?
3. Another post asked about SDR private commands. The code given for accessing that uses CCC 0x55 with some magic payload bytes. Where can I find documentation as to what this is doing? ( I cannot find CCC of 0x55 in the datasheet.)
4. Are there any appnotes or documents to help me get up to speed on this sensor?
Thanks.
I got the temperature to readback via I3C. I used the private write and private read functions. For the private write, I sent a 1 byte data payload of 0x00 to select register 0 in the pointer register. Then for the private read, I readback two bytes which gave me the temperature. This appears to be the method to access these registers via I3C. However, nothing in the datasheet gives any clue to this operation.
As an additional experiment, I wrote the payload to 0X02 and then readback two bytes. I got the 0x4B00 which is the default of the Tlow register so the method seems to work for other register too.
Hi Stephen,
1. P3T1755 will not respond to the legacy I2C address after it is configured as I3C target device (assigned I3C dynamic address), however if I3C controller sends RSTDAA CCC command to P3T1755 in I3C mode, then P3T1755 will switch back to I2C mode (responds to legacy I2C address).
2. Yes, when I3C controller assigns I3C dynamic address to P3T1755 successfully, then I3C controller can use dynamic address to read temperature related registers from P3T1755.
3. P3T1755 doesn’t support CCC 0x55, so that it will not respond to this CCC command.
4. No, P3T1755 datasheet has clear descriptions for I2C mode and internal registers. For I3C commands, please reference I3C specification in below MIPI link for detail explanations.
BR, Tomas