2-Mbit serial I²C bus EEPROM - M24M02-DR | Telit Cinterion IoT Developer Community
November 10, 2020 - 10:36pm, 720 views
I am trying to integrate an EEPROM memory (M24M02-DR) with the EHS6 and PLS62-W modules but I have identified that it would most likely not be possible.
To write a Byte or a Page in the EEPROM is not a problem, however to read a Byte, Page or a stream of memory positions, as far as I understood from the EEPROM datasheet (5.2 section), a new Start Condition would be needed after the master writes in the Bus the Start address, without the master making a Stop Condition. (Datasheet EEPROM --> 5.2.1 Random Address Read)
However, according to the AT-COMMAND-SET in (18.104.22.168 Structure of Messages on the I²C Bus).
This is not possible because after sending the write, the module (master) sends a Stop Condition. The format of the message structure is fixed.
From the AT-COMMAND-SET of EHS6:
To my surprise it works by sending the write command and right after a read command. Like this:
We then have the following:
So far so good, but I am worried because it is possible that it is a bug and in the future it will be fixed and my project is useless. Would be a bug linked to the EEPROM ?
So, I did not understand, why, the I2C interface from CINTERION does not have the possibility to send a new Start Condition before the Stop Condition, since this is standard in I2C communication.
I had the same problem to integrate another GPS module, I managed to get around the situation but it was strange.
Has anyone experienced this or perhaps has an idea for what is going on?
I thanks in advance.