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.

BQ33100: BQ33100 flash checksum

Part Number: BQ33100
How do we check that the BQ33100 flash is programmed correctly?
  • We've tried a readback.  When the BQ33100 programs  "successfully", a read of the BQ33100 flash shows 99% of these bytes just where we put them.  There are a few (8?) bytes that are not the same - they are always at the same flash addresses and I attribute them (at the moment) to changes made in the flash by the BQ33100 itself.
  • We have not tried command 0x0004,   "DF Checksum  Generates a checksum of the full Data Flash (DF) array"  The spec doesn't really tell us what to expect from that checksum or how its derived.  How do we use that checksum?  And is it redundant with the next bullet?
  • We have seen some activity before on the BQ33100  FAULT pin.  Should we query the SafetyStatus after programming; and is that sufficient to guarantee a successful programming? The spec says:

8.3.5.11 Data Flash Fault (DFF)
The bq33100 can detect if the data flash is not operating correctly. A permanent failure is reported when either: (i) After a full reset the instruction flash checksum does not verify; (ii) if any data flash write does not verify; or (iii) if any data flash erase does not verify When a data flash fault is detected then the [DFF] flag in SafetyStatus is set.
8.3.5.12 FAULT Indication (FAULT Pin)
The bq33100 provides the status of the safety detection through SafetyStatus. To provide an extra indication of a fault state ( SafetyStatus ≠ 0x00) the bq33100 will set the FAULT pin (pin 15) if the corresponding SafetyStatusbit is set in Fault.