I am looking to get a USB battery pack for use with both my phone and my bluetooth headset, but my bluetooth headset has a drain of only around 50mA when charging, and it seems that most battery packs have a minimum current draw of 50mA, below which they will shut off (presumably to prevent vampire currents from draining the battery pack). This is essentially the same problem posed in this question, but the answer there relies on the fact that the person asking the question is trying to power an Arduino (and can use the GPIO-boards to modify the current draw). Is there a more generic, preferably analog circuit that will provide a minimum current draw on a battery?
I have a preliminary design using one op-amp and sense resistor as a current sensor, then using the voltage difference between the current sensor and a fixed voltage to drive an NPN transistor, but I think I've messed up the feedback somewhere, because once the load current drops below the threshold, the fallback current goes to the rails. See the circuit diagram:
You can download the Qucs .sch file from this gist. My questions are: is there a better approach to an analog circuit that provides a minimum current? If so, what is it? If not, how do I fix the feedback on this so it provides exactly the desired current?
Note: For simplicity's sake I used traditional op-amps with negative and positive rails, but once I nail down the general approach, I'm going to need to adjust this so that it can be powered with the battery itself, so only 0V and 5V rails. I don't think it should make a big difference, but it's important to know I suppose.
Edit: For practical purposes, I think that this answer on a similar question (HT Ali Chen) actually makes a lot of sense - since the battery packs tend to stay on whenever the momentary current draw is above the specified value, it seems to me that some circuit with a low duty cycle would likely be the simplest and most power-efficient, but that can always be implemented in addition to the answers below, so that doesn't change this question.