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.
Hi everyone,
I've tried to set the charge current limits basing on the battery temperature using Charge Current Tn parameters of the Fuel Gauge registers, but it seems like their values don't limit the charge current at all. I've played with different values, even tried to limit the charge current to 5% of the designed capacity value for all temeperature ranges. The only value of Charge Current Tn parameters that seems to affect the charge current is 0 because at this value the charge current drops to 0A.
How do I make this system to actually limit the charge current basing on these Charge Current Tn parameters?
Regards,
Pavels
P.S. I'm using bqstudio 1.3.86 for changing these paramers and to see the measured battery charge current. The system consists of BQ27530-G1 that controls BQ24161 battery charger. Golden Image file is attached to this message.
Hello Pavels,
The gauge only passively reports values in the charge current and charge voltage registers. Your host will have to send the commands to the charger to limit unless you are using the gauge in BMU fashion through the BSCL,BSDA.
Yes, but that's the thing, the fuel gauge is already configured to control the charger through these BSCL and BSDA lines. However, it doesn't seem to work only when it comes to limiting the charge current basing on the ambient temperature.8270.Battery Charger.pdf
In SLUUA73 (pages 26, 27 description of JEITA_ISET and JEITA_VSET bits) it's also said that JEITA charging profiles are not used with BQ27530-G1. Does it mean that it's not possible to set any temperature controlled charging profiles for BQ27530-G1 at all?
Hello Pavels,
I don't think there is a TRM for the bq27530. I couldn't find SLUAA73 on ti.com. The bq27530 can store JEITA tables I believe and have registers which can be read based on chargevoltage() chargecurrent().
Thanks
It's SLUUA73, not SLUAA73, here is the link:
https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&ved=2ahUKEwiozvfgxpvmAhXZ4KYKHdvhDUcQFjABegQIChAC&url=http%3A%2F%2Fe2e.ti.com%2Fcfs-file%2F__key%2Fcommunityserver-discussions-components-files%2F196%2F2627.bq27530_2D00_G1-SLUUA73-TRM-Draft-20Sept2013.pdf&usg=AOvVaw1Vf7KlbjK1sHG1Tk1nViRC
Anyway, it still doesn't help with the fact that Charge Current Tn parameters don't control the charging current in my application.
My recommendation is to use a host based control to control charging current. Is that possible in your application?
Yes, we have an MCU connected to the SDA, SCL pins of the fuel gauge, but as I know, all the host can do is to send the DIV_CUR_ENABLE command to the fuel gauge, to reduce the charging current by 2 times.
Is there a way how to control the charging current more precisely using host?
Hello Pavels,
Are you able to control the charger? If the charger is i2c controlled, you typically need to write the registers for current limit.
The charger in our application can be controlled only via BSCL, BSDA I2C pins of the fuel gauge. The fuel gauge, in turn, can receive commands from an MCU via its SDA, SCL I2C pins. Our firmware team can't figure out how to bypass the fuel gauge and control the charger directly by an MCU.
OK, it's fine now, the FW team can control the charger from an MCU. The problem was that the GG_CHGRCTL_ENABLE bit was set, so when they tried to change some charger registers, the fuel gauge either didn't allow it or rewrote them immidiately after this.