BT HC-06

Objectivo deste projecto: Estabelecer uma ligação Bluetooth entre o computador e um arduino

Estado: Concluído

Fontes: instructables

Módulo adquirido: Wireless Serial 4 Pin Bluetooth RF Transceiver Module RS232 With backplane new | HC-06 (SLAVE)

Especificações:

Small size 4 pin Bluetooth RF transceiver module, easy to use and completely encapsulated.

Features:

Allows your device to both send or receive the TTL data via Bluetooth technology without connecting a 

serial cable to your computer.

Works with any USB Bluetooth adapters.

Default Baud Rate: 9600,8,1,n.

Built in antenna.

Coverage up to 30ft.

Specifications:

Bluetooth version: V2.0+EDR

Operating voltage: 3.3V

Default Baud Rate: 9600,8,1,n.

Signal coverage: 30ft

Cable length: 21.5cm

Item size: 4.3 * 1.6 * 0.7cm

Item weight: 3g

Package size: 9 * 3 * 1cm

Package weight: 8g

NOTE:

a.Import duties,taxes and charges are not included in the item price or shipping charges.These charges are the buyer's responsibility.

b.Please check with your country's customs office to determine what these additional costs will be prior to bidding/buying.

Found name called "LINVOR" device

Connect it, and passcode is "1234"

Esquema principal:

Voltage Divider:

Como os pinos do arduino funcionam a 5v e o módulo Bluetooth funciona a 3.3v, precisamos de reduzir a voltagem de 5 para 3.3v com recurso às 2 resistências R1 de 10k e R2 de 20k (neste caso usei uma de 22k). Ver cálculo

Depois de efectuarmos as ligações entre o módulo Bluetooth e o arduino configuramos o PC, o equipamento Bluetooth usado foi uma pen da MSI que basta ligar numa porta USB e detecta os equipamentos ligados no seu alcance:

 

A nível de software temos de ter um programa que faça a comunicação serial entre o PC e o módulo Bluetooth, neste caso usámos o Tera Term Pro terminal emulator, basta seleccionar o nosso dispositivo e estabelecer a ligação com o mesmo.

Algumas fotos do projecto:

Código utilizado no arduino:

char INBYTE;

int  LED = 13; // LED on pin 13

void setup() {

  Serial.begin(9600); 

  pinMode(LED, OUTPUT);

}

void loop() {

  Serial.println("Press 1 to turn Arduino pin 13 LED ON or 0 to turn it OFF:");

  while (!Serial.available());   // stay here so long as COM port is empty   

  INBYTE = Serial.read();        // read next available byte

  if( INBYTE == '0' ) digitalWrite(LED, LOW);  // if it's a 0 (zero) tun LED off

  if( INBYTE == '1' ) digitalWrite(LED, HIGH); // if it's a 1 (one) turn LED on

  delay(50);

}

Através do terminal do programa Tera Term vamos enviar o valor 1 ou 0 para acender e apagar o LED no arduino.

Resultado: