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.

BQ40Z50: BQ40Z50 Memory Addressing Problem

Part Number: BQ40Z50
Other Parts Discussed in Thread: BQSTUDIO,

Hi,

 

I am trying to gain a better understand of the way the Data Flash memory is addressed with the goal of determining where the data for each device parameter is being stored in the raw hex file. To do this, using the BQstudio software, I dumped the golden image my company has been using. I then modified a data flash value, in this case “FD set voltage threshold”. The original value was 2750 and the modified to 380. I then re-dumped the hex file and compared the two hex files. The difference is highlighted in the image below.

 

 

The left column is the original hex configuration and the right column is the modified configuration. I know that the data was modified correctly as 0ABE is equal to 2750 in decimal and 017C is equal to 380 in decimal. My question is why does the address listed in the hex file not correspond with the address of the parameter listed in the datasheet? The datasheet lists the location of this parameter as 0x4811, however in the hex file the address is listed as 08F0 (48F0 with the starting address offset if 0x4000), which is 229 addresses greater than the address listed on the datasheet.

 

Could someone tell me why there is this discrepancy between the hex file address value and the datasheet address value? Thanks!

  • Hello Gray,

    I'm not sure which firmware version of the BQ40Z50 you are using, but make sure you always reference the addresses available in the BQZ since this is generated with the code. Depending on the firmware you are using the memory map is different, the BQZ will always have the correct memory mapping. You can see the direct addressing in BQStudio by enabling the advanced view in Window->Preference->All Global Settings->Show Advanced Views.

    Sincerely,

    Wyatt Keller

  • Hi, 

    Thanks so much for the response. That makes sense, it looks like the version of the firmware that is flashed on my devices is v2.08 build 50. Do you know which version of the firmware was used to write the technical reference document? I also noticed that there were addresses listed in HEX file that were not listed in BQ studio. Do you know why that might be? 

  • Hello Gray,

    Each firmware version has a technical reference manual. BQStudio uses the BQZ files in your BQStudio for the memory map on the gauge. The BQZ generates with the firmware generation, which is why we always recommend referencing the addresses in BQStudio, not the TRM.

    Sincerely,

    Wyatt Keller