This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

BQ34Z100-G1: SEALED Access to Lifetime-data

Part Number: BQ34Z100-G1

Hello,

I need to access the Lifetimedata of the bq34z100-g1 while the chip is SEALED. If I understand Section 7.3.6.17 of the datasheet correctly it is the same procedure as Manufacturer Information Block access. The only difference being I have to write 0x04 to DataFlashBlock i.e. 0x3f.

I tried that and always get an error when I try to read BlockData i.e. 0x40 after that, as can be seen in attached screenshot:

Did I misunderstand the procedure?

  • Hi Stefan,

    The logged data can be accessed as RW in UNSEALED mode from the Lifetime Data Subclass (Subclass ID = 59) of data flash. Lifetime data may be accessed (RW) when sealed using a process identical Manufacturer Info Block B. The DataFlashBlock command code is 4. Note only the first 32 bytes of lifetime data (not resolution parameters) can be RW when sealed. See Section 2.2.33.2 for sealed access. The logging settings such as Temperature Resolution, Voltage Resolution, Current Resolution, and Update Time can be configured only in UNSEALED mode by writing to the Lifetime Resolution Subclass (SubclassID = 66) of the data flash.

  • Hi Batt,

    I tried to follow that procedure as shown in my first post and I only get an NACK from the BQ34z100-G1.

    My understanding of the procedure is, that I have to write a 0x04 to the DataFlashBlock() command and then can read the data from the BlockData() command.

    Did I misunderstand the procedure?

  • Hi Stefan,

    Yes, once you retrieve the data to mfg access you can read it.

  • Hi Batt,

    I am sorry but If I do as described I only get NACK from the bq34z100-G1 and no data. I can retreive Manufacturer Block A and B by writing 0x01 and 0x02 respectively to DataFlashBlock() and then reading BlockData(). But if i write 0x03 for Block C I also get NACK if I try to read BlockData(). Same for 0x04 which should give me the Lifetime Block.

    Greetings,

    Stefan

  • Hi Stefan,

    You can only partially read lifetime data as I mentioned in the earlier post. Please try writing to the block data command twice and see if that works. In sealed mode, sometimes command has to be repeated.

  • Hi Batt,

    I assume you mean writing twice to the DataFlashBlock Command as I want to read from the BlockCommand?

    I tried that and still get NACK from the chip

    Greetings Stefan

  • Hi Stefan,

    We are not able to replicate your failure. We are able to read lifetime data from the manufacturer info block.

  • Hi Batt,

    I also have some troubles reading the lifetime data from the battery.

    Could you maybe post a screenshot of the procedure, how to get these data right?

    Thanks a lot!

    Battrick

  • Hi Battrick,

    Please allow us 2 days to get the screenshots for you. We are in the middle of a TI event and are short handed at the moment.

  • Hello Battrick,

    Please follow the steps above for reading using the advance comms, except in the TRM on page 41, you will need to convert the subclass from decimal to hex. In this case, 59 is 0x3B.

    Thanks