ESP32S3 RTC-I2C (I2C Ulp periph)
Posted: Tue Jul 08, 2025 9:17 am
Hi,
I'm working with an ESP32S3 and an ST25R3916 NFC reader, and trying to get the NFC reader to work with the RTC-I2C peripheral.
RTC-I2C peripheral has a hardware bug with required subregisters that I'm trying to work around. To get ST25 "direct commands" (single byte writes) to work I set those as the subregister and send along a dummy byte, which appears to work for some of the commands at least.
However, I can't find a way through the IDF to read registers of the ST25 when the registers require an extra access byte. For instance, to do a register read for a reg from register space B requires sending Slave_address + SpaceB byte + subregister. The RTC-I2C read function doesn't appear to offer a way to insert the extra byte.
Would it be possible if I made a new rtc-i2c read function that does an extra byte write before read? Or is the set of commands it executes fixed like it is in the current rtc-i2c read function?
I'm suspecting the latter but would like a confirmation.
Thanks in advance!
I'm working with an ESP32S3 and an ST25R3916 NFC reader, and trying to get the NFC reader to work with the RTC-I2C peripheral.
RTC-I2C peripheral has a hardware bug with required subregisters that I'm trying to work around. To get ST25 "direct commands" (single byte writes) to work I set those as the subregister and send along a dummy byte, which appears to work for some of the commands at least.
However, I can't find a way through the IDF to read registers of the ST25 when the registers require an extra access byte. For instance, to do a register read for a reg from register space B requires sending Slave_address + SpaceB byte + subregister. The RTC-I2C read function doesn't appear to offer a way to insert the extra byte.
Would it be possible if I made a new rtc-i2c read function that does an extra byte write before read? Or is the set of commands it executes fixed like it is in the current rtc-i2c read function?
I'm suspecting the latter but would like a confirmation.
Thanks in advance!