I2C Problems With KTD2037 Using HAL
I have a custom board with G491 and an LED driver (Kinetic KTD2037). MCU is the I2C master. Any attempt to read a register using HAL from the KTD2037 fails, ErrorCode = 0x2 (arb lost). Register writes are OK. I can read/write other devices on the same bus OK.
The KTD2037 datasheet has this for an I2C register read:

This doesn’t seem consistent with HAL_I2C_Mem_Read() or HAL_I2C_Master_Receive().
On a scope HAL_I2C_Mem_Read() results in
S, 7-bit addr, write, ack, reg addr, ack, Sr, 7-bit addr, read, ack, 0xFF, nack
I try setting the internal register pointer (it may not have one) using HAL_I2C_Master_Transmit(), which works OK. Then I follow it with HAL_I2C_Master_Receive() resulting in
S, 7-bit addr, read, ack, 0xFF, nack
It looks like the master says arbitration lost because of unexpected nack from the KtTD037.
The KTD2037 datasheet does not mention I2C repeat start.
Any way to read this device without writing my own I2C driver?
