I am working on a LPC11U68 (custom PCB design) and I have some errors when using the I2C interface. In particular, I obtain ERR_I2C_GENERAL_FAILURE (0x00060007) for some calls to ‘i2c_master_tx_rx_poll’ and ‘i2c_master_transmit_poll’ functions of the I2C ROM driver. The errors are not frequent (about 1 every minute with approximatively 1200 I2C transactions per minutes) and occur with no particular timing. Although, these errors are managed with a “check and retry” procedure, I am worried about the type of error: ERR_I2C_GENERAL_FAILURE.
Does someone know in which case such an error is raised by the ROM driver? Maybe some hints to identify the origin of the error (hardware or software).
- Custom PCB design with all I2C slaves connected with PCB traces (no connector or external wire on I2C bus),
- LPC11U68 as I2C master on I2C0,
- 4 I2C slaves on I2C0 (all with different addresses),
- Other interfaces used: USB VCOM and UART.
- I2C configuration based on LPCOpen example “periph_i2c_rom_polling” (reusing function “setupI2CMaster”),
- Simple tx/rx operations on I2C in polling mode.