Seeedstudio Bluetooth Shield

Hallo an alle, hab mir ein Bluetooth Shield von Seeedstudio bestellt und hab voll die Probleme das Ding ans laufen zu bekommen. Hab erstmal diesen Code genommen aber mein Handy findet das Shield nicht:

/*

  • FM.h

  • A library for SeeedStudio Grove FM

  • Copyright (c) 2012 seeed technology inc.

  • Website : www.seeed.cc

  • Author : Steve Chang

  • Create Time: JULY 2014

  • Change Log : Modified by loovee 2013-10-29 , Modified by jacob yan 2014-7-29

  • The MIT License (MIT)

  • Permission is hereby granted, free of charge, to any person obtaining a copy

  • of this software and associated documentation files (the “Software”), to deal

  • in the Software without restriction, including without limitation the rights

  • to use, copy, modify, merge, publish, distribute, sublicense, and/or sell

  • copies of the Software, and to permit persons to whom the Software is

  • furnished to do so, subject to the following conditions:

  • The above copyright notice and this permission notice shall be included in

  • all copies or substantial portions of the Software.

  • THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR

  • IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,

  • FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE

  • AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER

  • LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,

  • OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN

  • THE SOFTWARE.
    */

#include <SoftwareSerial.h> // Software Serial Port

#define RxD 7
#define TxD 6

#define PINBUTTON 9 // pin of button

#define DEBUG_ENABLED 1

SoftwareSerial blueToothSerial(RxD,TxD);

void setup()
{
Serial.begin(9600);
pinMode(RxD, INPUT);
pinMode(TxD, OUTPUT);
pinMode(PINBUTTON, INPUT);

setupBlueToothConnection();
//wait 1s and flush the serial buffer
delay(1000);
Serial.flush();
blueToothSerial.flush();
}

void loop()
{

static unsigned char state = 0; // led off

if(digitalRead(PINBUTTON))
{
state = 1-state;

Serial.println(“button on”);

blueToothSerial.print(state);

delay(10);
while(digitalRead(PINBUTTON)) // until button release
{
delay(10);
}

Serial.println(“button off”);
}
}

/***************************************************************************

  • Function Name: setupBlueToothConnection
  • Description: initilizing bluetooth connction
  • Parameters:
  • Return:
    ***************************************************************************/
    void setupBlueToothConnection()
    {

blueToothSerial.begin(9600);

blueToothSerial.print(“AT”);
delay(400);

blueToothSerial.print(“AT+DEFAULT”); // Restore all setup value to factory setup
delay(2000);

blueToothSerial.print(“AT+NAMESeeedMaster”); // set the bluetooth name as “SeeedMaster” ,the length of bluetooth name must less than 12 characters.
delay(400);

blueToothSerial.print(“AT+ROLEM”); // set the bluetooth work in slave mode
delay(400);

blueToothSerial.print(“AT+AUTH1”);
delay(400);

blueToothSerial.print(“AT+CLEAR”); // Clear connected device mac address
delay(400);

blueToothSerial.flush();

}

Eventuell habt Ihr ja ne lösung parat. Lg Chris

Gut das Google mehrere solcher Shields ausspuckt :drooling_face:.

Hallo,

ist ein wenig zickig, das BT Shield. Nach dem hochfahren brauchts noch einen reset, dann klappts auch mit dem Pairing..

mfg Martin

Hallo, leider geht das mit dem Reset nicht. Ahso und es handelt sich um das v2.0 Shield.

Also der Code finde ich nicht so toll. Es wird ein Befehl nach dem anderen rausgehauen ohne zu prüfen ob er auch verstanden wurde. Nach jedem AT mus ein OK zurück kommen, erst dann darf der nächste Befehl raus. Schau mal im Serial Monitor ob diese Rückmeldungen überhaupt alle kommen.

Gruß