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: custom tool for Golden file programming

Part Number: BQ34Z100-G1
Other Parts Discussed in Thread: BQ27510, BQ34Z100

Hello!

last year I started a small production of BMS fol Li-ion battery pack with the BQ34Z100-G1 and I asked in a previous post about any specific production tool for programming such a component.

Now I have to increment the production and I need to develop a custom tool that can be used by an operator at the end of production line for programming the golden file on BQ34Z100-G1, calibrating it, programming other components (i.e. microcontroller) on the same board and performing the complete final board test. Of course it has to be a unique tool for everything, where the operator has to press the button and wait (in a short time) for the green light. I've got all software functions and routines for other operations and now I have to develop the part related to BQ34Z100-G1 programming.

I've found in other posts TI does not release any information about IIC programming protocol in ROM mode. Is that true or I'm missing some important information and documentation that can help me?

Just in case it is true, I have to try to understand how to use the bq.fs or df.fs file to program the BQ34Z100-G1. So I have some questions:

  1. which are differences between bq.fs and df.fs files? Df.fs file contains only configuration parameters while bq.fs file contains also the complete firmware of the component (and so it is not necessary in case the component is already updated to the proper firmware version); is that correct?
  2. does exist any specific documentation about how to parse such files? The SLUA665 document reports some VB routines for programming the BQ34Z100, but they are not explained (some parts are not clear) and they refer to .DFI golden file format (not bq.fs - df.fs format). In a post related to the BQ27510 components, I've fond a reference to Flash Stream documentation, wher a .bqfs file has been clearly explained, but it seems to be different from the .bq.fs file of BQ34Z100-G1

If no documentation is available, I have to try to:

  • collect as much as possible information and merge them, in order to obtain a reasonable interpretation of the bq.fs file
  • sniff the IIC bus used by the BQ studio during a program operation
  • try to apply some results to a real programming operation on some test boards

Of course that will be a very hard and complex work (time and money consuming...), so I hope somebody (e.g. TI) can provide some help and support.

Thank you in advance for any answer and regards

Matteo

  • All Flashstream files contain the same formatting and commands so the file extensions have migrated like this: .bqfs = .bq.fs and .dffs = .df.fs
    These files typically put the gauges into ROM mode and program the dataflash directly.
    (You will also find .gm.fs files for ROM gauges that stay in "gauge mode" and update the dataflash through subclass block access mode, but the parsing is the same.)
    You are correct that if you order a bq34z100-G1 IC and want to program a golden dataflash file on it then you can use .df.fs since you don't need to upgrade the FW.
    For information about the Flashstream file format you can refer to this app note:
    www.ti.com/.../slua541a.pdf
    You can also see some C code for parsing the files in the "bqTool" code which you can find starting here:
    processors.wiki.ti.com/.../Android_Software_Solutions_for_TI_Single-cell_Gas_Gauges