Hi everyone,
I'm using a Si7051 I²C temperature sensor connected to a nRF52840 and I found some very weird behavior of the TWIM module. Firmware-wise I'm using the mbed framework with the blocking I²C functions.
Writing data to the slave works fine, but reading data from a slave results in the nRF's SDA pin trying to output a low-impedance high level and therefore blocking further I²C communications (6mA measured between slave and nRF). Bluetooth seems unaffected by this short and continues to operate (meaning the softdevice is active, I've read some reports that some I²C functions depend on the SD)
What's strange is that this only ever happens with the SDA pin on Port 1.
SDA and SCL both on Port0: works
SDA on Port0 and SCL on Port1: works
SDA on Port1, SCL on either: fault
I didn't find any info relating to the TWIM in the errata. If possible, I'd like to avoid ordering a new run of prototype PCBs.
Cheers,
Martin