Hi,
I have been working on the following code and am trying to implement the trigger word and some custom command words. Any example codes with custom words and trigger word would be appreciated!
#include <NewSoftSerial.h>
int i;
char reader;
NewSoftSerial tx(30, 3); //tx on 14
NewSoftSerial rx(2, 30); //rx on 12
void setup()
{
for(i=4; i<=13; i++)
pinMode(i, OUTPUT);
reset();
Serial.begin(9600);
tx.begin(9600);
rx.begin(9600);
delay(1000);
tx.print('b');
for(i=0; i<100; i++){
if (rx.read()=='o'){
Serial.println("awake");
break;
}
delay(1);
}
tx.println('x');
for (i=0; i<100; i++){
if(rx.read()=='x'){
Serial.println("x reveived");
break;
}
delay(1);
}//for
tx.println(' ');
for(i=0; i<100; i++){
if(rx.read()=='A'){
Serial.println("firmware good");
break;
}
delay(1);
}//for
tx.print('l');
tx.println('A');
for (i=0; i<100; i++){
if(rx.read()=='o'){
Serial.println("language set");
break;
}
delay(1);
}//for
tx.print('o');
tx.println('A');
for (i=0; i<100; i++){
if(rx.read()=='o'){
Serial.println("Infinite Timeout");
break;
}
delay(1);
}//for
tx.print('i');
tx.println('D');
Serial.println("Wordset 3");
}//setup
void loop()
{
reader = rx.read();
if(reader=='s'){
delay(100);
tx.print(' ');
}//read
if(reader=='B'){
reset();
digitalWrite(4, HIGH);
}
if(reader=='C'){
reset();
digitalWrite(5, HIGH);
// delay(100);
}
if(reader=='D'){
reset();
digitalWrite(6, HIGH);
}
if(reader=='E'){
reset();
digitalWrite(7, HIGH);
}
if(reader=='F'){
reset();
digitalWrite(8, HIGH);
}
if(reader=='G'){
reset();
digitalWrite(9, HIGH);
}
if(reader=='H'){
reset();
digitalWrite(10, HIGH);
}
if(reader=='I'){
reset();
digitalWrite(11, HIGH);
}
if(reader=='J'){
digitalWrite(12, HIGH);
}
if(reader=='K'){
reset();
digitalWrite(13, HIGH);
}
if(reader=='t')
reset();
if(reader=='e')
reset();
}
void reset() {
for(i=4; i<=13; i++)
digitalWrite(i, LOW);
delay(100);
tx.print('i');
tx.println('D');
}
My aim is to say a trigger word, and then say a command word (out of a set of 4 words)
I really appreciate all the help I can get.
Thank you,
-Ummuu