Servo start-up interfering with Bluetooth module

I have a setup with an Arduino, a servo and an HC-06 BT module. They're all powered by a LiPo battery. The problem I'm having is that when I power up the system the servo resets to some position and this somehow interferes with the BT module so that it doesn't start at all. (Its status led doesn't light up and start blinking.) The servo is not attached in the sketch at this point.

If I disconnect the servo, then connect power the BT module starts ok and stays ok even if I re-connect the servo at this stage. And the BT module is rock solid even if the servo moves after this, so there definitely is enough power for everything. It just seems that the start-up phase is really crucial for the HC-06.

What could be doing this? And do I have any options of fixing it, besides adding an extra switch or a transistor to power up the servo only after the HC-06 has had time to start?

Monitor the power rail with a digital oscilloscope in one shot mode. Set it to trigger at 1v and record for 1 second.

Try adding some extra caps (big and small) on both the servo's power and the Bluetooth's power.

Which servo are you using?

What sort of LiPo are you using?

How is the LiPo power regulated?

Thanks for the replies.

On the oscilloscope findings... When power is applied with the servo connected the voltage first jumps to about 2V, lingers there for 30ms and only then rises to 5V. So I guess this is the dip caused by the servo resetting. Without the servo the voltage goes to 5V in about 10ms.

I currently have one 470uF cap on the power rail, going to try adding smaller ones.

The LiPo is a 1300mAh 3 cell 11.1V battery and it's regulated by this 3A UBEC The servo is a cheap medium-sized DGS S05NF.

It sure seems like you're doing things correctly.

Servos often cause these sorts of problems. Besides adding more caps, you might want to try adding a ferrite ring to the servo's power line. Pass the servo's lead through the two or three times and the ferrite ring should smooth out the current spike from the servo.

I’ve used the below setup to protect a chip from a servo induced brownout. If you are powering the arduino via the on board regulator chip, put some large capacitors between the arduino 5v and ground to hold up the 5v voltage during power supply dips.

ezservo.jpg

Added some caps without much success. But I did notice that if I disconnect the UBEC from the rest of the components, power it up and only then connect it back to the power rail everything works ok. (I don't have a switch anywhere yet so I just connect the battery by hand.)

So it seems the UBEC is having trouble powering the circuit if it isn't allowed to settle first.