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.

Developing bq27510G3 in a simple system

Other Parts Discussed in Thread: BQ27510EVM, BQSTUDIO, BQ27510, BQEVSW, BQ27510-G3

Hi all,

I am planning in integrating a bq27510g3 in a system that uses a single cell Lithium polymer battery. I have no experience with fuel gauge before so this is all new to me. I have an evaluation module bq27510EVM and an EV2300. I have downloaded bqStudio 1.3.45 (latest version i found) but don't know really where to start from. 

my first question do I need to get the GDK hardware to be able to create a golden image for the system I'm developing or can i use the hardware I have developed to the charging/discharging cycles?

Do i need to do the learning cycles at all?

is there a guide/video that explains how it is all done from evaluation board to production for the chip I'm using?

thanks for your help in advance

Choukri

  • Hello Choukri,

    We provide a User's Guide for the bq27510EVM that walks you through the process of setting up the software and the hardware to begin evaluation.

    Usually the process to evaluate one of our single-cell gauges consists of:

    • Connecting the cell to the EVM and the EVM to the EV2300/2400 and start communication using bqStudio.
    • Calibrate the gauge through bqStudio. There is a calibration tab on bqStudio that helps you calibrate the CC offset, board offset, current, voltage and temperature. Information on calibration can also be found here. The gist of calibration consists of the following:
      • CC Offset and Board Offset: ensure that no current is flowing through the board and simply check the boxes for these 2 parameters and click "Calibrate Gas Gauge".
      • Current: Apply at least a 1A load and enter the value (negative value since it's discharging) on the field. Check the box and click "Calibrate Gas Gauge".
      • Voltage: Apply a known voltage to the pack terminals with no current flowing through the board and type the value on the Applied Voltage field and click "Calibrate Gas Gauge".
    • Choose a chemID for your cell. bqStudio has another plug-in that allows you to load a chemID to the gg. To choose your chemID we recommend you perform a rel-dis-rel cycle and use our online GPC tool to obtain a chemID from our database. Once a chemID has been selected, go to the Chemistry tab on bqStudio, look for the chemID and select Update from Database.
    • Perform a learning cycle. We have an app note that discusses how to achieve a successful learning cycle. A learning cycle is necessary to obtain the correct QMAX value and update the impedance tables to ensure the gauge can properly calculate it's values.
    • After this, a golden image can be generated. See this app note that describes the process.

    Regarding GDK, it is an excellent tool to help you streamline the cycles during the evaluation process and the plug-in is built into bqStudio. You can also use another setup that can source/sink current to the cell to perform the cycles, but you would need to monitor your setup manually to ensure 

  • Hi Choukri,

    GDK will help automate the chem id identfication and learning cycle process. However if you already built hardware to control the charging and discharging, that will work as well.

    First thing you need to do is identify the chem id for your cell which will need to be programmed on the device. To do that, you will need a rel-dis-rel test.
    Link to the steps and the tool needed for that is below.
    www.ti.com/.../GPCCHEM

    once chem id has been identified, it should be programmed on the device using the chemistry tab of bqstudio.

    After that, you can set your terminate voltage, design capacity, design energy, taper current, taper voltage, charging voltage in the data flash of the gauge. You do this using the data memory tab of bqstudio. There are other configurable data flash parameters you can set for your specific application. The technical reference manual below describes all the various data flash parameters as well as commands which you can send to the gauge but those ones i listed are the most important.

    www.ti.com/.../sluua97

    Then you should calibrate the gauge’s voltage, current, temperature, cc and board offset measurement using the calibration window of bqstudio. The user guide of the device describes how to do the calibration.

    www.ti.com/.../sluu327

    After calibration you should now do a learning cycle. The documents below describes how to do a learning cycle and create your golden file.
    www.ti.com/.../slua597.pdf
    www.ti.com/.../slua544.pdf

    The summary of the learning cycle process is :
    enable Impedance track (IT) by sending commanding 0x21. bqstudio has a button which you can click that sends the command for you. I believe it is called IT_en. Now send a reset command (0x41) and discharge to empty with any rate between C/5 and c/10. I prefer using C/7.

    let the cells rest for 5 hours. Charge to full at C- rate, let the cells rest for two hours. Discharge to empty using the same discharge rate as before and let it rest for 5 hours. At the end of this process qmax and resistance tables should have been updated and your update status in data flash will be 02. if it isn't it,it means something must have causedlearning to fail. Refer to the two documents above to help debug why learning failed if it did.

    Once learning is complete, change cycle count in data flash to 00, extract an srec or bqfs or dffs file using bqstudio. This will be your golden file which you will flash on multiple devices. i prefer either srec or bqfs incase you somehow buy a chip with an older firmware. bqfs and srec files will enable you flash the chip with the latest firmware. SREC and bqfs contain the instruction flash and data flash paramaters while dffs only contains data flash parameters.

    I know this is a lot of material, but once you do it once, you will get the hang of it. I hope this helps.

    thanks
    Onyx
  • Thank you both for your answers. I have checked the guides you have suggested and I noticed that they refer to an older version of the software (bqEasy of the bq Evaluation Software). I could not find any guides referring to the new bqStudio. should I use the older software (i.e. bqEasy)?

    On another note, if you have used an evaluation board for one project and wanted to use it for another one, how do you reset it/unseal it to start from scratch again?

    Kind regards
    Choukri
  • Hello Choukri,

    Unfortunately, there is no documentation for using the bq27510 with bqStudio at the moment. I've attached a quick presentation I put together for another one of our gas gauges that goes over the different tabs of bqStudio. The devices are different, but the concepts for bqStudio remain the same. We are looking for feedback on documents to update, and yours for bq27510 and bqStudio has been noted.

    Regarding starting fresh using a used EVM, your best bet would be to unseal the device and re-flash it with the default firmware available online. Please refer to section 4.4 of the bq27510-G3 Technical Reference Manual on how to unseal your device. Essencially, there are 2 keys you need to input to the gauge, one for going from SEALED to UNSEALED and another for going from UNSEALED to FULL ACCESS. The latter mode will grant you access to the data flash of the gauge and will allow you to set the gauge into ROM mode to load the default firmware and start from scratch. The default firmware can be found here, under the "Software" section. 

    One thing to notice is that the bq27510-G3 is one of our devices that transitioned from using bqEVSW/bqEasy to our new platform bqStudio. For this reason, the firmware has to be updated using bqEVSW and then you can proceed on evaluating the device using bqStudio; the reason being that the firmware available online is a .senc file and bqStudio uses another file format. bqEVSW for the bq275xx devices can be found here. Instructions on how to update the firmware can be found here.

    Hope this helps, thanks.

    bq27542g1_setup_SD.pdf

  • Thank you Fernando. Regarding unsealing the Gauge, how do I find the unseal keys? can they be read from a register and changed or are they hard-wired in at the factory? in which case where could they found? as when I am trying to re-flash the chip it gives me error 772. SS flag is cleared and FAS flag is set.

    Kind regards

  • Hello Choukri,

    The reason you are getting error 772 is most likely because the gauge is still in firmware mode, and in order to update the firmware, the gauge needs to be in ROM mode. Instructions on how to enter ROM Mode via I2C can be found in this document, section 2.

    The unseal/seal keys are set on Flash and located in the Security>Codes portion of the DF; subclass ID 112. Details on how to unseal can be found in Section 4.4 of the TRM.

  • Hi Fernando,

    I have tried to unseal full access to the chip but no success, I have tried the commands tab of bqStudio to unseal with the default key 0x00000000 and the default key given by bqStudio (0xFFFFFFFF). I have tried to follow the document you recommended but it was not very clear. as a result I was unable to enter ROM mode.

    Regards

  • Hello Choukri,

    In order to update the firmware using the SENC file provide on the bq27510-G3 product page, you need to use bqEVSW.

    Since your 510 is already sealed, are you sure the keys were not changed from the default values prior to sealing the gauge? 

    Could you try the following:

    • Connect your bq27510-G3 to the EV2300/2400 and open bqEVSW (bqStudio needs to be close prior to opening bqEVSW).
    • Turn off "Keep Scanning".
    • Verify the FAS and SS bits are set. If they are, it means the gauge is sealed.

                 

    • To go from SEALED to UNSEALED, we have to enter the key to "Control". Type 0414, hit enter. Immediately after, type 3672, hit enter. Verify the SS bit was cleared.

    • To go from UNSEALED to FULLACCESS, we have to enter the key to "Control". Type FFFF, hit enter. Immediately after, type FFFF, hit enter. Verify the FASbit was cleared.

                 

    Now, to update the firmware, go to the I2C PRO tab.

    • Change the I2C address on the top to AA.
    • On Write I2C Data Block, enter 00 for I2C command, and 000F for Data Block. Hit Write Data.
    • Change I2C address on the top to 16.
    • Under Programming, choose the SENC file for the default 510-G3 FW.
    • Hit Program.
    • Once it's done, hit Execute twice.
    • Close and reopen bqEVSW, you should have a fresh 510-G3 now. You can now use bqStudio to continue your evaluation.

  • Thanks Fernando, I have followed those steps again on both bqEVSW and bqStudio to unseal but it did not give me full access (i.e. FAS is still set). unsealing works every time (i.e. SS clears as soon as I enter the key). I have sent ffff twice and combined (whilst SS is cleared) and it didn't work in both ways.
    I wonder if the key for full access is not per default as you said (although I have not done that intentionally!)? is there a way of reading it? if not how do you reset it or recover the chip?
  • Hello Choukri,

    yes, It sounds like the FULL ACCESS key is not the default. You can read the security keys from the data flash, but they are only available if the gauge is in FULL ACCESS.

    Unfortunately, we cannot get the security key if the gauge is not in FULL ACCESS.
  • Hi All,

    Now that I started looking at generating golden image again, I have managed to get a successful learning cycle (Update Status = 2). I have been using the bq27GDK000EVM with bqStudio to automate charging/discharging the battery. 

    when I tried to look for documentation regarding generating the golden image and what steps to follow to program other fuel gauges with the golden image, I could not find any documentation using bqStudio for the gauge I'm using (bq27510-G3). could you please give me the steps to follow using bqStudio in bullet points to how to create a golden image and how to program it in other devices with the required settings. I'd like to use the bq27GDK000EVM or the EV2300 to program other gauges with the golden image. 

    I have had an attempt but it does not seem to have worked as it was showing 0% and then 100% as soon as i plug in a charger to the device. 

    Regards

    Choukri

  • I don't have a specific document for the bq27520 and bqStudio but you can use bqStudio instead of bqEasy with a few modifications and still follow some of the instructions in slua449f.

    The basic steps are:

    1. Calibrate the gauge
    * connect your gauge on your board to a EV2x00 and launch bqStudio
    * go to Calibration view and check Calibrate CC Offset and Calibrate Board Offset. Make sure no current is flowing through the sense resistor. Click Calibrate Gas Gauge button.
    * connect a know load to the battery so that there's a known current (measure with a precision amp meter) through the sense resistor.
    * enter the measured current in the Applied Current box, check Calibrate Current (uncheck everything else) and click Calibrate Gas Gauge button
    * remove load
    * measure the battery voltage with a precision volt meter.
    * enter the measured voltage in the Applied Voltage box, check Calibrate Voltage (uncheck everything else) and click Calibrate Gas Gauge button
    * you can also calibrate the temperature in a similar way

    2. Select ChemID and program gauging and configuration values for your application and battery.

    3. Run learning cycle

    4. Export the Golden Image (via Golden Image view). This will export a .srec file with the complete configuration as well as flash stream files with the FW (.bq.fs) and the data flash (.df.fs)

    To program other devices:

    1. connect the device to a EV2x00
    2. launch bqStudio
    3. go to Programming view
    4. select the .df.fs file and click Program. This will update the other device with the settings from the Golden Image file.
  • Thanks for the response

    I have had a successful learning cycle and had the Update Status = 2.

    when generating the golden image, do I need to set or change any registers on the fuel gauge (following the learning cycle)?

    Equally, do I need to change any of the registers on the other devices after programming them with the golden image? 

    Regards

    Choukri

  • You may want to do calibration depending on your system's properties.

    Other than that you can program the golden image to the other guages without additional modifications.

  • Thanks for your reply

    I have followed your instructions and created a golden image and programmed another device with the Golden Image (.SREC file). however, after doing a reset on it showed 0% State of charge and as soon as I initiated charging of the battery it changed to 100%.

    I don't know where I am getting it wrong and if I'm missing anything?

    Kind regards

  • Please try also programming the .df.fs file and then read back / compare the configuration of the second device with the first device.
  • I tried what you suggested but still no joy. I read back the Data memory from the device which was identical to the one of the evaluation board.

    Could you please be go through the process needed after the learning cycle is achieved in details? I has been taking a long time and it does not help the fact that there isn't up to date documentation for this gauge. is anyone using this chip successfully? any equivalent chip that has some reasonable documentation? 

    Regards