AnsweredAssumed Answered

I2C Over USB Application using LPC1347 and LPCOpen

Question asked by Madhukar Arora on Jul 1, 2020
Latest reply on Jul 9, 2020 by Madhukar Arora

Kerry Zhou



LPC1347 LPCOpen usbd_rom_hid_i2c example code





For my project I am using an LPC1347 development board. I am trying to achieve an I2C communication with a Microchip 256K I2C Serial EEPROM over USB. The functionality is as such : from my host (desktop computer) I can issue a command to write data to any of the address in the EEPROM and read the data back from any of the register. For this I used the already existing example code given in the LPCOpen libraries. 


The communication takes place successfully however I am unable to understand a few things. Whenever I send an out report to the device (LPC1347 dev. board) to initialize the I2C, I receive an IN Report with successful initialization and then four other IN reports in which the host requesting resets whereas I immediately send an OUT request to read a register. I do get the read data in the IN report after sending the read request but there are four reset requests in between the two. 


Also, there are four resets after the IN report corresponding to a read operation is received.


I would like to know why the reset operation takes place. I understand that the host repeatedly polls the device.


Any help would be really appreciated. 


Thank you