Hello my name is Jon i downloaded the android app "Android meets robots: voice". The app connects to my Arduino over Bluetooth (I have the seeed bt shield)
The app shows a mic you click it then say what you wanna say then its prints it out in the Serial Monitor if i say apple it will print *apple# i don't know how to use this in my code though
i can use single letters and it works but not with words or phrases. I tried using string but i don't think i was doing it right. I'm not to good at coding so it could be something really simple and i would never know. Thank you
This is the test code I'm using
#include <SoftwareSerial.h> //Software Serial Port
#define RxD 5
#define TxD 7
#define DEBUG_ENABLED 1
int incomingByte;
SoftwareSerial blueToothSerial(RxD,TxD);
void setup()
{
Serial.begin(9600);
pinMode(RxD, INPUT);
pinMode(TxD, OUTPUT);
pinMode(13, OUTPUT);
setupBlueToothConnection();
}
void loop()
{
char recvChar;
while(1){
if(blueToothSerial.available()){//check if there's any data sent from the remote bluetooth shield
recvChar = blueToothSerial.read();
Serial.print(recvChar);
}
if(Serial.available()){//check if there's any data sent from the local serial terminal, you can add the other applications here
recvChar = Serial.read();
blueToothSerial.print(recvChar);
}
if (recvChar == 'H') {
digitalWrite(13,HIGH);
}
if (recvChar == 'K') {
digitalWrite(13, LOW);
}
}
}
void setupBlueToothConnection()
{
blueToothSerial.begin(38400); //Set BluetoothBee BaudRate to default baud rate 38400
blueToothSerial.print("\r\n+STWMOD=0\r\n"); //set the bluetooth work in slave mode
blueToothSerial.print("\r\n+STNA=SeeedBTSlave\r\n"); //set the bluetooth name as "SeeedBTSlave"
blueToothSerial.print("\r\n+STOAUT=1\r\n"); // Permit Paired device to connect me
blueToothSerial.print("\r\n+STAUTO=0\r\n"); // Auto-connection should be forbidden here
delay(2000); // This delay is required.
blueToothSerial.print("\r\n+INQ=1\r\n"); //make the slave bluetooth inquirable
Serial.println("The slave bluetooth is inquirable!");
delay(2000); // This delay is required.
blueToothSerial.flush();
}