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.

BQ4050: sleep mode

Part Number: BQ4050
Other Parts Discussed in Thread: BQSTUDIO

Hi,


page 38-39 of the SLUUAQ3  tells that operationstatus[SLPAD] and operationstatus[SLPCC] are '1' when the device measures voltage ,temp. and current during sleep mode.

if operationstatus[ SLEEPM] is '1' , does it mean that the bq4050 is on SLEEP mode?

HOWEVER, the exit condition to NORMAL MODE is SMB command recieved , and in order to read the operationstatus bit , i should send a command ,thus for sure the device will exit sleep mode and as i understand, i cannot check if the device is working on sleep mode, where is my mistake ? 

what is the correct method to make sure that the device is working on "SLEEP MODE"?

 

thank you very much.

Victor

  • Hi Victor,

    If you are trying to determine this on the bench, you can monitor the CHG FET drive signal.  In SLEEP mode, this will be off if [SLEEPCHG] is set to 0.

    From the host, you can use IN SYSTEM SLEEP, see this note from the TRM:

    In the IN SYSTEM SLEEP mode, it is possible to read the [SLPAC] and [SLPCC] flags if [IN_SYSTEM_SLEEP] = 1 and Bus Timeout = 0. This setting allows the gauge to enter SLEEP mode with active communication in progress.

    NOTE: Setting the Bus Timeout = 0 with [IN_SYTEM_SLEEP] can be used for testing purposes, but it is not recommended to set the Bus Timeout = 0 in the field. If Bus Timeout = 0, the device's sleep and wake conditions are strictly controlled by current detection. If the host system performs a low load operation periodically (for example, wireless detection in a tablet application), this small load current may be missed, introducing an error into remaining capacity tracking. Having a non-zero Bus Timeout setting enables the gauge to wake up by a communication and capture the current measurement.

    Thanks,

    Terry

  • Also, I believe you can monitor the OperationStatus()[SLEEP] bit, not the [SLEEPM] bit (which indicates SLEEP was entered based on command).

  • Thank you for your answer, in my application , load current is about100 uA, and scale factor is 25( when i calibrate current). when operating at normal mode, remaning capacity is OK. but , i would like to operate only at IN SLEEP MODE ,to disable the Power:Wake Comparator and to set the Sleep Current much higher than the maximum load current:

    1) will the remaining capacity estimatiom still work ? if not , why and what will be the approximated error?

    2)how do i disable the Power :Wake comperator.

    thank you Again and have a great holiday !

    Victor.

  • Hi Victor,

    I don't believe there is a way to entirely disable the wake comparator during SLEEP mode, can you just set it to a very high threshold, and use a sense resistor value that keeps the voltage below the threshold?

    If you stay in SLEEP mode the entire time, the device only measures current for gauging purposes every Sleep:Current Time interval.  So the device will miss the charge passing between these measurements, which will create error in the gauging.  You can reduce the error by setting the Current Time setting to a short value, but then the power dissipation of the device will increase, due to the more frequent measurements.  To minimize the error, you can use NORMAL mode rather than SLEEP mode, but that draws higher current.

    I assume you want to stay in SLEEP mode to reduce the power dissipated by the device, is that correct?

    I believe a normal current measurement in NORMAL mode occurs every 32ms (it actually samples at 262kHz and averages the values over the 32ms window to generate the reported value).  It then assumes that is a DC current flowing the entire Current Time interval for gauging purposes.  But if your current is not DC and is instead pulsing, you can get significant error introduced.

    Thanks,

    Terry

  • Hi terry , thank you for your answer. however, i still do not understand the operation at sleep mode and it will be great if you can explain :

    1) Can i assume that the A2D converter and the controller are 2 different blocks while the only difference between Normal and Sleep mode is that the controller recieves the sampled data from the A2D at lower frequency( 20 sec for example ) and not 250 ms as for normal mode?

    if yes, so how  does it possible to get a significant error ? the data still is still sampled by the A2D and reported with the same way.

    if i can not assume this , so how does the communication between the A2D samples(262kHz) and the reported data to the controller works?


    2) i made an experiment ,i left the bq4050 at sleep mode as you told me (INSYSTEMSLEEP=[1] ) and bustimeout=0.

    I connected a load of 2 mA and turned off the registers scan and the auto refresh panel . I left this set up for 12 hours. after turning the refresh panel and register SCAN at bqstudio, i saw NO difference at all, so the question is ,how can i measure the change of the remaining capacity while working on sleep mode?

    thank you !

  • Hello Arkadi,

    1. Yes, but it is 250 ms and 5 seconds by default.

    2. What is your sleep current, make sure you are operating within the sleep current or raise it.