Bluetooth Modem

From ElecFreaks
Jump to: navigation, search

Introduction

The Bluetooth Modem is the latest Bluetooth wireless serial cable! This version of the popular Bluetooth uses the HC-05/HC-06 module. These modems work as a serial (RX/TX) pipe. Any serial stream from 9600 to 115200bps can be passed seamlessly from your computer to your target.
The remote unit can be powered from 3.3V up to 6V for easy battery attachment. All signal pins on the remote unit are 3V-6V tolerant. No level shifting is required. Do not attach this device directly to a serial port. You will need an RS232 to TTL converter circuit if you need to attach this to a computer. You can either solder a 6-pin header or individual wires.

Wireless PT BC0506 02.jpg Wireless BTH 04-LRG.jpg

Feature

Hardware

  • Chipset CSR BC417143 (BlueCore4External)
  • Bluetooth version V2.0+EDR
  • Class 2 module with PCB antenna
  • Flash 8Mbit
  • Interface I2C UART PCM USB
  • Support for 802.11 co-existence
  • 3.3-6V operation
  • SPP firmware
  • Support for up to seven slaves
  • ISM Band:2.40GHz~2.48GHz
  • Master/Slave/Loopback working roles
  • XBee compatible socket
  • Rohs: Yes

Software

  • Supported baud rate: 9600,19200,38400,57600,115200,230400,460800.
  • Use CTS and RTS to control the data stream.
  • Auto-reconnect in 30 min when disconnected as a result of beyond the range of connection.
  • Auto-connect the last device on power as default.
  • Permit matched device connect by default.
  • Default Baud rate: 38400, Data bits:8, Stop bit:1,Parity:No parity, Data control: has.
  • Default PINCODE:”1234”.

Application Ideas

Cautions

  • Be paired must Master devices and Slave devices each other.Master and Master devices, Slave and Slave devices can't paired each other. The HC-06 Slave mode could paired with PDA, PC etc.
  • Do not over 6 voltage

Schematic

Wireless BTH 05-LRG.jpg

Specification

Pin definition and Rating

Pin definition and Rating

Pin # Pad Type Description
KEY 1 CMOS input with weak internal pull-up HC-05 for into AT mode, HC-06 for clear paired information
VCC 2 3.3V Integrated 3.3V(+)supply with on-chip linear regulator output within 3.15-3.3V
GND 3 VSS Ground port
TXD 4 CMOS output,tri-stable with weak internal pull-up Asynchronous data output (UART Transmit)
RXD 5 CMOS input with weak internal pull-up Asynchronous data input (UART Receive)
STATUS 6 CMOS output with weak internal pull-up LED output status, and Bluetooth is not connected then output pulse, If Bluetooth connectivity, the output is high. It to judge state by the MCU

Mechanic Dimensions

Usage

Hardware Installation

Programming

Includes important code snippet. Demo code like :

/*********************************************************************
 **  Description:                                                    **
 **  This file is a sample code for your reference.                  **
 **                                                                  **
 **  Copyright (C) 2011 ElecFreaks Corp.                             **
 **  Created by ElecFreaks Robi.W /29 Sep 2011                      **
 **                                                                  **
 **  http://www.elecfreaks.com                                       **
 *********************************************************************/
#include <SoftwareSerial.h>

#define rxPin 2
#define txPin 3

SoftwareSerial mySerial(rxPin, txPin);
 
 
void setup()
{
   // define pin modes for tx, rx pins:
   pinMode(rxPin, INPUT);
   pinMode(txPin, OUTPUT);
   mySerial.begin(38400);
   Serial.begin(38400);
 
}
 
void loop()
{
  int i = 0;
  char someChar[32] = {0};
  // when characters arrive over the serial port...
  if(Serial.available()) {
    do{
      someChar[i++] = Serial.read();
      //As data trickles in from your serial port you are grabbing as much as you can, 
      //but then when it runs out (as it will after a few bytes because the processor 
      //is much faster than a 9600 baud device) you exit loop, which then restarts, 
      //and resets i to zero, and someChar to an empty array.So please be sure to keep this delay 
      delay(3);                  
 
    }while (Serial.available() > 0);
 
    mySerial.println(someChar);
    Serial.println(someChar);
  }
 
  while(mySerial.available()) 
      Serial.print((char)mySerial.read());    
}

Example

The projects and application examples.

Bill of Materials (BOM) /parts list

All the components used to produce the product.

FAQ

Please list your question here:

Support

If you have questions or other better design ideas,

Version Tracker

Revision Descriptions Release
v1.0 Initial public release date

Bug Tracker

Bug Tracker is the place you can publish any bugs you think you might have found during use. Please write down what you have to say, your answers will help us improve our

products.

Additional Idea

The Additional Idea is the place to write your project ideas about this product, or other usages you've found. Or you can write them on Projects page.

Resources

How to buy

Click here to buy:

See Also

Other related products and resources.

Licensing

This documentation is licensed under the Creative Commons Attribution-ShareAlike License 3.0 Source code and libraries are

licensed under GPL/LGPL, see source code files for details.

External Links

Links to external webpages which provide more application ideas, documents/datasheet or software libraries