Thales' cellular IoT products business is now part of Telit Cinterion, find out more.

You are here

2-Mbit serial I²C bus EEPROM - M24M02-DR | Telit Cinterion IoT Developer Community

November 10, 2020 - 10:36pm, 875 views

Hi,
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 (19.7.2.1 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:

<aA00003> <aA10005>

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.

JAT