Al llegar de Campus Party 08, compré un modulo WT11 de Bluegiga para una posible implementación de Bluetooth en las Galateas. Como ya os dije en la entrada anterior estas Navidades van a estar llenas de electrónica, hoy ha tocado el Bluetooth, así que hojeando la documentación de la SkyBluetooth, la tarjeta ArduinoBT y con un poco de polimetro he mirado la forma mas sencilla de conectar el modulo bluetooth sin tener que ponerme a hacer una PCB. Para ello voy a usar un Arduino Diecimila, más que nada por comodidad y por disponer de varios ejemplos de uso.
Para trabajar con ella necesitaremos 3 cables de señales y la alimentación (3v3 y GND). Las señales de entrada se conectan a través de una resistencia de 2k2, ojo a la de salida (TX) no se le puede conectar ninguna resistencia ya que reduciría la tensión y no es detectado por el Arduino. Sobre las alimentaciones y masas son comunes, con conectar un pin de alimentación y uno de masa es suficiente. El esquema para conectarlo es el siguiente:
Una vez listo el montaje el siguiente paso es cargar el código en el Arduino, yo le he realizado una pequeña modificación para que me permita comprobar que la recepción es correcta:
/* BT test 01
* ——————
* Massimo Banzi
* Modificado por F. Javier Suvires G. – BoOpS
*
*/int LED = 13; // selecciona el pin del LED
int RESET = 7;void setup() {
pinMode(LED,OUTPUT); // declara el pin del LED como salida
pinMode(RESET,OUTPUT); // declara el pin del RESET como salida
Serial.begin(115200); // conecta el puerto serie
digitalWrite(RESET, HIGH); //genera un reset
delay(10);
digitalWrite(RESET, LOW);
delay(2000);
Serial.println(“SET BT PAGEMODE 3 2000 1″);
Serial.println(“SET BT NAME ARDUINOBT”);
Serial.println(“SET BT ROLE 0 f 7d00″);
Serial.println(“SET CONTROL ECHO 0″);
Serial.println(“SET BT AUTH * 12345″);
Serial.println(“SET CONTROL ESCAPE – 00 1″);
Serial.println(“SET CONTROL BAUD 115200,8n1″);
}void loop () {
digitalWrite(LED, HIGH);
delay(100);
digitalWrite(LED, LOW);
Serial.println(“Hola mundo +123″); //imprime la prueba
while (Serial.available() > 0) {Serial.print(Serial.read(), BYTE);} //imprime los caracteres recibidos
delay(1000);
}
El siguiente paso será Symbian + Python + Bluetooth. ¿Alguien quiere colaborar? Espero que sea pronto.
Entradas relaccionadas:

Que guapo! creo que no me aguanto…seguro que lo monto en estos dias!!!! Feliz Navidad
Tio, me he quedado helado, no me imaginaba que el codigo fuera tan cortito y sencillito. Algun dia me pillare una arduino xD
Yo estos reyes ya se que va a caer, un arduino XD cada dia me gusta mas y por lo que veo en internet y lo facil que es empezar ,aunque sea un atmel que no los he tocado en mi vida
Que chulo!
Sólo quiero hacer un par de comentarios:
1. Aquí tenéis un enlace al set de instrucciones que no es cómodo de encontrar: http://www.sparkfun.com/datasheets/Wireless/Bluetooth/iWRAP_2.2.0_User_Guide.pdf
2. Si alguien tiene problemas al iniciar la conexión o el robot, lo mejor es quitar los echos del principio con la instrucción SET CONTROL ECHO.
A mi me ha pasado en bastantes casos usando PIC.