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.

BQ34Z100EVM: How do I set the VOLTSEL bit in the Pack Configuration register in bqStudio?

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

I am trying to configure my bq34z100evm to be able to take votages above 5 V. How do I set the VOLTSEL bit in the Pack Configuration register  in bqStudio?

  • The VOLTSEL bit is located in the Pack Configuration register. The bq34z100EVM User's Guide provides guidance on setting up and using the EVM.
  • yes but i am having trouble with the notation to calculate NEW_checksum. I do not get acknowledgement from the device when I write the NEW_checksum to BlockDataChecksum() (0x60). Can you clarify the notation: for example, if I have mod(107, 256), does this not equal 42?
  • Furthermore, why can't I unseal the gauge using the Advanced Comm I2C pannel? It works when I use the built-in commands but not when I do it with the Advanced screen.
  • Mark,

    Make sure that no I2C communications, such as scanning or the Dashboard, are active while running this procedure. Here are the steps to unseal, read the Pack Conf, write the VOLTSEL and verify the Pack Conf.

    Tom

  • OK. Turning off the dashboard helped in that I can now unseal the IC from the Advanced Comm I2C screen, but the IC will not acknowledge my checksum, still.

  • The E2 checksum applies to the 32 bytes of data in my device. There must be difference in yours. Read the checksum after you read out the 41 and let me know what it is. I should be able calculate to new checksum for you.

  • It is 0x53. I calculated the checksum to be 0xE5 using the method described in the user guide, but this value does not work. Thanks so much Tom.
  • I calculate the new checksum to be 4B.

    A quick way to calculate the new checksum is to make use of the old checksum:
    (a) temp = mod (255 – OLD_checksum – old_Pack_Configuration_MSB), 256)
    (b) NEW_checksum = 255 – mod (temp + new_Pack_Configuration_MSB, 256)


    temp = mod (255 – 53 – 41), 256) = 1C1
    NEW_checksum = 255 – mod (1C1 + 49, 256) = 4B

    If 4B does not work, then you can export the srec file and send it and I can work with it.

  • Thanks so much Tom. The value you calculated worked. The values 255 & 256 in the formula made me think the formula was in binary. I do have another issue though:

    When trying to calibrate the voltage, bqStudio gives me the following error: "Calibration - Calibration cell voltage entered in out of range. This value is in millivolts. Please check value and retry."

     About my test setup: I have a bench power supply supplying a constant voltage to pins BAT+/BAT- on the EVM. The voltage reading in bqStudio is 8315 mV, but my Fluke multimeter reads 10000 mV. I am attempting to enter the value on my Fluke MM into the "Applied Voltage" box on he Calibration tab. Is his not correct?

    I am following the design steps in the bq34z100g1 datasheet, so I have the correct jumper configurations on the EVM (> 5 V on J5, 16 V on J2), I entered 16000 mV for my Voltage Divider value (which is my max voltage), I changed my Number of Series Cells value to an arbitrary value above 1 (since I am not using a battery pack at the moment, and I changed this value to 5).

    This is the part I am suck on (from Step 3, pg. 50):

    "Use the Evaluation Software to calibrate to the applied nominal voltage; for example, 24000 mV. After calibration,a slightly different value will appear in the Voltage Divider parameter, which can be used as a default value for the project.

    Following the successful voltage calibration, calculate and apply the value to Flash Update OK Cell Volt as:
    Flash Update OK Cell Volt = 2800 mV × Number Of Series Cells × 5000/Voltage Divider."

  • Mark,

    Is IT enabled? You should keep it disabled until the pack is configured and calibrated. If it has been enabled, then you will need to reload the default srec file to reinitialize the device. You can set the Flash Update OK voltage to 2000mV for now.

    Use this sequence.

    • Change the VOLTSEL bit.
    • Change the number is series cells to 4.
    • Calibrate the voltage.


    This sequence should work. You can also try using this .bqz file, in case the one that you are using is not working properly. Place it in this directory.

    C:\ti\BatteryManagementStudio\config

    Tom

    https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/196/2134.0100_5F00_0_5F00_16_2D00_bq34z100G1.bqz

  • How do I reload the default .srec file? I am new to bqStudio and have never done this before.
  • This is covered in the bq34z100EVM User's Guide under Programming.
  • Yes, I see that but I am not able to find a default .srec file in the C:\ti\BatteryManagementStudio directory, and I am not sure what to do with the .bqz file you provided above (the instruction just say to locate the default file).

  • The srec file is the device firmware and it can be downloaded from the bq34z100-G1 website. You can place the .bqz file in the config directory that I listed earlier.
  • After I click "Execute FW", bqStudio gives me the message "Executing Firmware... Priority sequence already in progress" which doesn't go away.

    Edit: I restarted bqStudio and the device appears to be running the default firmware settings. Thanks so much for all of your help Tom. I really appreciate it.

  • I loaded the default firmware and followed the sequence you described above, yet I am still not able to calibrate the voltage. I am still getting the error "Calibration - Calibration cell voltage is out of range. This value is in millivolts. Please check value and retry."