Powering 3 sensors + Bluetooth through Arduino

Hi there,

I’m new to this forum, have been building some Arduino projects and now am trying to build something bigger.

General concept:

  • Arduino sender measures Temp, Humidity, PushButtonStatus and Noise Level. Sends via HC-12 Bluetooth module
  • Arduino receiver receives data and controls 4 LED strips. Receives via HC-12.

My question: For the sending Arduino, can I power all sensors via the Arduino boards 3.3 Volts (as in the diagram)? Or do I need to have a separate power supply for the sensors?

So-far all my projects have been powered directly by the Arduino board, so I am new to the concept of separately powering the project from the board.

Thank you, any help is much appreciated!

An Uno and Mega can supply 3.3volt/150mA max, depending on how you power them.
Other Arduinos might be more or less.
A long range BT module might need more than 150mA (datasheet?).

You can’t just connect a BT module to Arduino’s serial pins.
And the BT module needs a level shifter on it’s RX pin.
The HTU21 also seems to be a 3.3volt module.
And I think it needs a 5volt supply.
When you build someting like this, you start off with one item. Get that working.
Then get another item working. Then combine the two.
Iron out problems as you go.

Thanks Leo,

You are right, I'll take it one at a time.

  • You are correct that the BT module needs more than 150 mA, just checked.
    If I tried powering this through the Arduino 5V pin, I should have better luck (since I could do the HTU21 and the Bluetooth).

Or is it best practice to just stay away from powering anything via Arduino, and instead having a 3 x AA battery pack and powering the sensors and the arduino (separately) from there?

Sorry, I don't really understand (yet) how current and voltage work exactly.



You can get small 5volt to 3.3volt breakout boards with a 1117 regulator, to power your BT module from 5volt (ebay).
Are you sure it needs 3.3volt? Some BT modules have an onboard 3.3volt regulator.
Post a link.
I think the HTU can be powered from 3.3 or 5volt, so best to use 5volt.
That leaves a clean 3.3volt for the microphone module.
BT comms can be done with softSerial on two different ports.
You do need a 1:2 (1k, 2k) voltage divider to bring the 5volt TX level of the Arduino down to 3.3volt for the RX pin of the BT module.

Thanks Leo,

I'm trying to understand your thinking here...

  • You're saying I could power the BT module from a 5v pin? According to the seller supply voltage is between 3.2 to 5.5 V, so it should be OK? Do I then need the breakout board with 1117 regulator you were talking about?
    Also in this instructable, he uses the 5V pin to power it.
  • Yes, the HTU SHOULD be powered by same voltage as the logic level of microcontroller, so 5 V in this case sounds right, like you said?
  • In the instructables example he does not use a voltage divider for the BT, but I did use one when I used a HC-06 in an earlier project. So I could do this again.

So in conclusion: You think that if I connect the Humidty Sensor and the Bluetooth Comm to 5V, and the Microphone to 3.3 V, then I could actually be fine?
Sorry, my understanding of the underlying principles is not so great, so I'm picking together examples from other projects to help me build this.

One more question: Could you point me in a direction where I can learn about softSerial? I only need one-way communication (from the sender to the receiver).

I guess if this doesn't work, I could always go the other way and power the BT Module, the HUT and the Arduino with a 5 V Battery (I was thinking 3 x AA Alkaline Batteries), and then power the microphone through the 3.3V pin on the Arduino. Would that be smarter?

Thanks again, appreciate it!

I am happy to try and figure out each individual "project" sensor at a time (get sensor to work, then BT etc). My only concern is that I could fry my arduino by putting it all together.
So as long as there is no danger in frying the Arduino, I will just get one part working at a time.

I added the updated (modified) fritzing diagram to show that the BT comms and Humidity sensor are powered by 5V, and that there is a voltage divider.

  1. From the BT page:
    Supply voltage: 3.2V~5.5V. (If the module you want to work long hours in the emission state, it is recommended that when the supply voltage exceeds 4.5V threaded a 1N4007 diode to prevent module built-in LDO heated)

In plain English:
The module can run on 5volt, but if you continuously transmit, it could overheat.
If that’s case, use a diode in series with the supply to drop 5volt to ~4.3volt.
(I would try without first, unless you live in the tropics).

So yes, the BT module has an onboard regulator and should be connected to 5volt.

  1. From the HTU page:
    Vin - this is the power pin. Since the chip uses 3 VDC, we have included a voltage regulator on board that will take 3-5VDC and safely convert it down…

So the HTU also has an onboard regulator. Connect 5volt to Vin.

  1. We have learned here not to trust “Instructables”.
    Don’t know if THIS module can take 5volt data.
    Check the datasheet, or use resistors.

  2. There are softwareSerial examples in the IDE.
    Then you can move the BT RX/TX to different Arduino pins.

  3. Connect the button between pin and ground. No resistor.
    And enable the internal pull up resistor in void setup() with pinMode.
    pinMode(buttonPin, INPUT_PULLUP);
    Reverse logic now. Not pressed reads a HIGH, pressed a LOW.

  4. Adafruit’s HTU21D-F breakout board runs on 3.3volt.
    Has on onboard 3.3volt regulator, so can be powered from 5volt (Vin).
    And has an onboard I2C level converter, so can be directly connected to 5volt I2C.

Thanks Leo,

I will now try and make sure I understand your answers before I ask any more questions...

You've helped me a lot, thanks so much!


Updated the last post, so please read again.

Thanks Leo,

Back to my original question:
I understand that I can get all the components to work individually (even if it might take some trial and error). I guess my main issue is: Can I connect these four things

  • Mic
  • HUT
  • Pushbutton
  • HC-12 Bluetooth sender

...safely to the Arduino at one time, without frying it?



Everything powered from 5volt, except for the mic, seems fine to me.
Total peak current should be ~350mA, so ok to power from USB or from 9volt on the DC socket.
Update the diagam for a final check.

Thanks Leo,
I am waiting for some components to arrive, I will let you know how I get on!

Thanks again!