Homepage von Ole Mühlfeld

Wireless Bluetooth Transceiver Modul

Bluetooth Module kommen zum Einsatz, wenn Daten zwischen zwei Geräten drahtlos übertragen werden sollen. In diesem Anwendungsbeispiel sollen serielle Daten per Bluetooth an ein Endgerät übertragen werden. Dazu kommt ein Modul zum Einsatz, das man u.a. bei ebay für 6-7 Euro kaufen kann. Nachteil: Es gibt kaum Suppo­rt. Deshalb will ich meine Erfahrungen und die anderer Benutzer hier zusammenfassen.

image.jpg 

 

 

 

 

 

 

 

 

Zusammenstellung der wichtigsten Daten

[http://omweb.de/media/grafiken/Manual(EN).pdf Manual(EN).pdf  614.08 KB  03.03.2011 12:19]

Herstellerangaben

This Bluetooth with Blue2.0, Modify master & slave mode at any time, master and slave mode is the same as the hardware to support the AT command set to support the baud rate 2400 to 1382400.

The current firmware has been modified for the new version: The default setting for serial port ?9600, N, 8,1?, password: 1234.

 

Support the AT command to modify the baud rate, device name, passkey, master or slave mode (master and slave mode can be modified by AT commands), require additional baud rate or the principal mode of an order, please indicate the support of the baud rate 2400---1382400.

Product features
? Build-in CSR company Bluetooth chip BC417143
? Bluetooth specification v2.0 + EDR
? High-board antennas
? Paired with various Bluetooth adapter, Bluetooth phone use, master-slave can also be used in double
? Can be set for the module control parameters and control commands issued via AT commands
? The maximum serial baud rate: 1382400bps, support for hardware flow control transfer
? Provide seven input and output ports, scalable user IO resources
? Work status indicators; connection with the non-connection state signal output, easy to track the status of module MCU
? Used for embedded wireless serial transmission alternatives
? Size: 26.9mm x 13mm x 2.2 mm

Applications
? Mouse, keyboard, joystick
? Computers and peripherals
? GPS Receiver
? Instrument
? Industrial control

Product Specifications
Bluetooth protocol Bluetooth Specification v2.0+EDR
USB protocol     USB v1.1/2.0
Frequency 2.4GHz ISM band
Modulation GFSK(Gaussian Frequency Shift Keying)
Transmit power      ≤4dBm, Class 2
Sensitivity       ≤-84dBm at 0.1% BER
Rate           Asynchronous: 2.1Mbps(Max) / 160 kbps
           Synchronous: 1Mbps/1Mbps
Security features       Authentication and encryption
Support profiles        Bluetooth serial port (master & slave)
Power Supply   +3.3VDC 50mA
Working temperature –5 ~ +45 Centigrade

Anschlussbelegung:


 

DSC03219.jpg

Mehr Infos in Kürze.

Anleitung zur Herstellung des AT-Modus (Danke an "ampere-dieter" für die entscheidenden Hinweise!)

Problem: Das Modul geht nicht in den AT-modus. Daher kann man die Baudrate nicht ändern. Auf PIO11_hi reagiert es nicht.

Als device wird es erkannt und es kann verbunden werden. (Das geht mit PIO_11 sowohl mit hi als auch mit low(float).)

LÖSUNG von Ampere-Dieter:

Die entscheidenten Hinweise fand ich hier:
http://fpv-community.de/forum/printthread.php?tid=5277

Für meine Anwendung mußte ich die Baudrate auf 115200 ändern.
Außerdem habe ich noch den Namen angepaßt.
In einem anderen Beitrag fand ich noch die Info, daß das Modul nur während
der ersten 0.5sec nach power_ON auf AT-Befehle reagiert.
Deshalb habe ich es mit einem Arduino kontrolliert eingeschaltet und die
commands abgesetzt.

Mit zwei Läufen wars dann erledigt.

Hier mein Sketch:

void setup() {
  pinMode(13, OUTPUT);     // LED
  pinMode(2, OUTPUT);      // gate of N-Fet for power module
  digitalWrite(2, HIGH);   // set the power module ON
  Serial.begin(115200);
//  Serial.begin(9600);
}

void loop() {
  Serial.print("AT+NAMEBTWii.SL.115k" ); // BT slave mit shield und module
linvar , no trailing cr+lf !!! must exit after name setting or else all
following commands get appended to name !!
//  Serial.print("AT+BAUD8" );   //  BT slave mit shield    und module
linvar !!! no trailing cr+ lf
  digitalWrite(13, HIGH);   // set the LED ON
  delay(600);              // wait f
  digitalWrite(13, LOW);    // set the LED OFF
  delay(400);              // wait
}


 

print