Bluetooth Module for Arduino

Just a heads up I am a complete noob with Arduino so please bare with me. I have a bluetooth module that I am trying to hook up with my Arduino Uno that can communicate with my phone, etc. I have all of the pins located like Ground, 5V, RXD, TXD and 3.3V, but I have no idea what the 'KEY' pin is for and where I plug it in on my Arduino. Any help? Thanks. -Loren

Hey there,

I've just finished my first project with Bluetooth. The link below tells a little about the key pin, but it shouldn't be necessary for your project. I've never seen your module before. I used a dirt cheap JY-MCU module off e-bay. Can't remember which version, but they are all similar. The key pin is not needed for basic RX/TX serial communication. Just hook up power, gnd, TX, and RX.

You should look into the Software Serial library. It will enable you to communicate via alternate pins while leaving the default serial pins available for debugging communication with your computer. My default serial baud rate was 9600. You may have to experiment if you don't have documentation.

Also, be sure to find out if the serial INPUT to the module is supposed to be 3.3 or 5 volts. Many require 3.3v input and the Arduino will blast it with 5v which will cause damage. If you do need 3.3 volts, a simple quick fix is a basic voltage divider. Cut the voltage by 1/3 and your in business. The Arduino will work fine from 5v or 3.3v inputs from the module output.

Good luck.

Do the BT modules run on +3.3v LOGIC? or just +3.3v power/voltage?

(ie: a level shifter IS needed or a voltage divider?)

thanks!

My module is powered at 5v, but communicates via 3.3v logic. I verified this by powering it up once, connecting to it with a generic bluetooth communication app on my phone, and sending a single character. Measuring the output I found it to be 3.3v. Most newer versions are 3.3v, but there are certainly 5v versions out there.

You can certainly get fancy and use a level shifter, but it's really not necessary if your simply learning or prototyping...or ever really.

If your module input requires 3.3v logic, simply use a voltage divider. A 10k and 20k voltage divider works great.

If the module outputs 3.3v, just connect it up to your designated software serial input on your Arduino. The 3.3v logic high is sufficient for the 5v Arduino to see it as a logic high.

The first time I did this I was concerned about the reliability, but I've encountered zero problems with communication in either direction.