I take a BlueSmirf BlueTooth chip and connect it to my Arduino. Over all this is a very easy setup. Now it sounds like the two pins that are not used are for more complicated serial connects. Watch my video I explain that the directions say to put the RX and TX to the TX and RX ports on the Arduino and the code is set up for 2 and 3. At this point I could not get it working at first because my Mac does not like connecting to it. But once I figure out that a fews tries and it will connect, things went better.
Parts Needed |
|
Make sure you set the serial connections to 9600 and 115,200. On windows use a program like Hyperterm and on Mac a program like CoolTerm. This is the normal code with no modifications by me yet. My plan now that I have it working is to decide how to incorporate it into a project.
/* Example Bluetooth Serial Passthrough Sketch by: Jim Lindblom SparkFun Electronics date: February 26, 2013 license: Public domain This example sketch converts an RN-42 bluetooth module to communicate at 9600 bps (from 115200), and passes any serial data between Serial Monitor and bluetooth module. */ #include <SoftwareSerial.h> int bluetoothTx = 2; // TX-O pin of bluetooth mate, Arduino D2 int bluetoothRx = 3; // RX-I pin of bluetooth mate, Arduino D3 SoftwareSerial bluetooth(bluetoothTx, bluetoothRx); void setup() { Serial.begin(9600); // Begin the serial monitor at 9600bps bluetooth.begin(115200); // The Bluetooth Mate defaults to 115200bps bluetooth.print("$"); // Print three times individually bluetooth.print("$"); bluetooth.print("$"); // Enter command mode delay(100); // Short delay, wait for the Mate to send back CMD bluetooth.println("U,9600,N"); // Temporarily Change the baudrate to 9600, no parity // 115200 can be too fast at times for NewSoftSerial to relay the data reliably bluetooth.begin(9600); // Start bluetooth serial at 9600 } void loop() { if(bluetooth.available()) // If the bluetooth sent any characters { // Send any characters the bluetooth prints to the serial monitor Serial.print((char)bluetooth.read()); } if(Serial.available()) // If stuff was typed in the serial monitor { // Send any characters the Serial monitor prints to the bluetooth bluetooth.print((char)Serial.read()); } // and loop forever and ever! }