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.

Putting BQ2018 into SLEEP mode and comm'ing with MSP430F2618

Other Parts Discussed in Thread: BQ2018, MSP430F2618, BQ27010

Hi,

I'm using an MSP430F2618 ucontroller to transmit and receive messages with the BQ2018 Power Minder IC.  I am able to transmit and receive if I have a pull-up resistor on the HDQ line of the BQ2018 which is then tied to the P1.4, I/O configured, port of the MSP430.  However, for battery conservation, we need to be able to put the BQ2018 to sleep during battery storage(in sleep mode it draws 4uA; in non-sleep mode it draws 60uA).  To do this, the specifications for the BQ2018 says to put a pull-down resistor at the HDQ line.  We have done this and demonstrated to ourselves that the BQ2018 goes into sleep mode.  However, when we try to communicate to the BQ2018 with the MSP430 we are unable to do this.  I see transmit signals from the MPS430 but there are no replies from the BQ2018. 

Notably, using the TI EV2200 Evaluation board, which uses a PIC chip as the ucontroller, we can transmit and receive to and from the BQ2018 using a pull-down resistor on the HDQ line.  So with the EV2200 I can put the BQ2018 to sleep between communications to it.  So why can we not receive signals from the BQ2018 to the MSP430 with this same circuit configuration?

I configured the MSP430 port, P1.4, to input (P1DIR =0x00) during receive.  Interestingly enough if I leave the P1.4 port as an output port after transmitting my message to the BQ2018, I do see an attempted reply from the BQ2018 but because the MSP430 still has a hold of the P1.4 line, the BQ2018 is only able to drive the line from 4V to 3.5V.  This makes me suspect that the BQ2018 is trying to communicate when I configure the P1.4 port to input but that the BQ2018's response is getting grounded.

 

Any hints will help.

Thanks,

Kathy Lieberman

  • Kathy,

    Communication with the bq2018 requires an external pull up resistor.  If there is only an external pull down resistor, you can force sleep, but you can't communicate.  If there is a high value pull down resistor in the battery pack, say 1M, and a low value pull up resistor in the host, say 10k, then the bq2018 can go to sleep when the battery pack is disconnected from the host.  If your host has a standby or off condition that cuts off the voltage the external pull up resistor is connected to, then that will also let HDQ go low and will enable sleep.  Sleep also requires that the voltage across the sense resistor is below the wake threshold.  You should note that the self-discharge counter will also not count when the gauge is in sleep, as the oscillator is stopped.

    If you are using a host with a totem-pole output while outputting an address to the bq2018, the host must immediately switch to a high-impedance input after sending the address so that the bq2018 can pull down the HDQ line to send the data.

    The bq2018 is a very rudimentary monitor.  There are some application notes in the product folder that help you understand what is required in the way of host processing of the data to build a complete gas gauge solution.  If this is a new design, you might want to check out using the bq27010, as it is a complete gas gauge solution instead of just a monitor function, so it does not require implementing any gas gauging algorithms in the host.

    Bill

  • Thank you much for this info!!!  I'm going to check it out.

    Sincerely,

    Kathy Lieberman