cancel
Showing results for 
Search instead for 
Did you mean: 

M24256E Cannot read lock status of ID page - I2C

BEdwa.2
Associate II

I cannot get the proper 'unlocked' response when reading the 'lock' status of the ID page via I2C. According to the datasheet, to read the "lock" status of the ID page:

Following a start condition the bus master sends a device select code with the R/W bit (RW) set to 0. The device acknowledges this and waits for the address bytes where the identification page is located. The device responds to each address byte with an acknowledge bit, and then waits for the data byte. The device returns an acknowledge bit after the data byte if the identification page is unlocked, otherwise a NoAck bit if the identification page is locked.

When I perform this, I always get a NAK at the end of the data byte. Even though I can still write to the ID page, so this tells me it is not returning the proper response. If a single byte write attempt was made with nWC still high, this is exactly what I would expect, which makes me question if this is the correct command structure.

My first question is what should be in the data byte? It doesn't explain this at all, not even saying it should just be all 'don't cares'. Does it matter?

My second question, does the nWC need to be pulled low? I wouldn't think so, because we're not actually writing.

Am I missing something here?

 0693W00000aIrUiQAK.png

3 REPLIES 3
Pierre P.
Senior III

Hello,

Bit A10 of the identification page address should be "0" and not "1".

Please try with address 0x0000 and not 0x0400

Best Regards

Pierre

Hi,

Thanks so much for the reply, but that does not work either.

My understanding is accessing data on the identification page requires A10 be "0", but the identification page lock requires A10 be "1".

0693W00000aIwzqQAC.png

BEdwa.2
Associate II

Is the idea to just "write a byte to the ID page"? And if it ACKs or NACKs will depend on whether or not it is locked? If so, this would also require the nWC to be low. The data sheet is not clear on this at all.