Arduino mega bitvoicer and ir sending

hello

i’ve got problem with my program

im using arduino mega. when i use bit voicer and irremote the ir led is blink so slow that tv cannot get right signal to turn off. when i use only irremote everything is ok. So i thinking that bitvoicer is slowing down irremote or maybe my program is wrong. i tried different timer in irremote library but it isn’t work.

can enyone help me in this??

CODE

#include <IRremote.h>

#include <IRremoteInt.h>

IRsend irsend;

#include <BitVoicer11.h>

//właczanie bita

BitVoicerSerial bvSerial = BitVoicerSerial();

byte dataType = 4;

int OutPutPins = {10,12,11,8};

int pinCount = 4;

int wl = 0 ;

void setup() {

Serial.begin(115200);

for(int activePin =0; activePin <pinCount; activePin++){

pinMode(OutPutPins[activePin],OUTPUT);

}

pinMode(7, OUTPUT);

pinMode(9, OUTPUT);

digitalWrite(7,HIGH);// put your setup code here, to run once:

pinMode(5,INPUT_PULLUP);

}

void loop() {

}

}

void serialEvent()

{

dataType = bvSerial.getData();

//Changes the value of sampleTest if the received data was

//the start/stop sampling command

if (dataType == BV_COMMAND)

//Signals BitVoicer’s Speech Recognition Engine to start

//listening to audio streams after the engineRunning status

//was received

if (dataType == BV_STATUS && bvSerial.engineRunning == true)

bvSerial.startStopListening();

if (dataType == BV_INT)

{

int pinNumber = bvSerial.intData;

digitalWrite(pinNumber, !digitalRead(pinNumber));

delay(50);

}

// tutaj wartości string czyli pisane

if(dataType == BV_STR)

{

if (bvSerial.strData == “okej”)

digitalWrite(7,LOW);

delay(500);

digitalWrite(7,HIGH);

if (bvSerial.strData == “klas”)

digitalWrite(9,HIGH);

delay(1);

if (bvSerial.strData == “klass”)

digitalWrite(9,LOW);

if (bvSerial.strData == “komplet”)

irsend.sendNEC(0x5EA100FE, 32);

delay(400);

digitalWrite(7,LOW);

delay(500);

digitalWrite(7,HIGH);

irsend.sendNEC(0x20DF10EF, 32);

if (bvSerial.strData == “wiez”)

irsend.sendNEC(0x7E8154AB, 32);

if (bvSerial.strData == “tv”)

irsend.sendNEC(0x20DF10EF, 32);

if (bvSerial.strData == “klim”);

irsend.sendNEC(0x8F758A7, 32);

if (bvSerial.strData == “h1”)

irsend.sendNEC(0x5EA1E21C,32);

if (bvSerial.strData == “h2”)

irsend.sendNEC(0x5EA152AC, 32);

if (bvSerial.strData == “h3”)

irsend.sendNEC(0x5EA1B24C,32);

if (bvSerial.strData == “h4”)

irsend.sendNEC(0x5EA10AF4,32);

if (bvSerial.strData == “mut”)

irsend.sendNEC(0x5EA138C7,32);

if (bvSerial.strData == “rad”)

irsend.sendNEC(0x5EA1609,32);

if (bvSerial.strData == “en”)

irsend.sendNEC(0x5EA1C03E,32);

if (bvSerial.strData == “pc”)

irsend.sendNEC(0x5EA100FE,32);

if (bvSerial.strData == “opt”)

irsend.sendNEC(0x5EA1D628,32);

delay(400);

irsend.sendNEC(0x5EA1B946,32);

delay(400);

irsend.sendNEC(0x5EA17B84,32);

delay(400);

irsend.sendNEC(0x5EA17986,32);

delay(400);

irsend.sendNEC(0x5EA155AA,32);

delay(400);

irsend.sendNEC(0x5EA155AA,32);

if (bvSerial.strData == “hd”)

irsend.sendNEC(0x5EA1D628,32);

delay(400);

irsend.sendNEC(0x5EA1B946,32);

delay(400);

irsend.sendNEC(0x5EA17B84,32);

delay(400);

irsend.sendNEC(0x5EA1F906,32);

delay(400);

irsend.sendNEC(0x5EA17B84,32);

delay(400);

irsend.sendNEC(0x5EA17B84,32);

if (bvSerial.strData == “opc”)

irsend.sendNEC(0x5EA1D628,32);

if (bvSerial.strData == “cof”)

irsend.sendNEC(0x5EA155AA,32);

delay(200);

irsend.sendNEC(0x20DF14EB,32);

if (bvSerial.strData == “wyj”)

irsend.sendNEC(0x20DFDA25,32);

if (bvSerial.strData == “set”)

irsend.sendNEC(0x5EA121DE,32);

if (bvSerial.strData == “ok”)

irsend.sendNEC(0x5EA17B84,32);

delay(100);

irsend.sendNEC(0x20DF22DD,32);

if (bvSerial.strData == “dir”)

irsend.sendNEC(0x5EA1BB44,32);

if (bvSerial.strData == “pros”)

irsend.sendNEC(0x5EA16A95,32);

if (bvSerial.strData == “cis”)

irsend.sendNEC(0x5EA1D827,32);

if (bvSerial.strData == “dol”)

irsend.sendNEC(0x5EA139C6,32);

delay(100);

irsend.sendNEC(0x20DF827D,32);

if (bvSerial.strData == “gora”)

irsend.sendNEC(0x5EA1B946,32);

delay(100);

irsend.sendNEC(0x20DF02FD,32);

if (bvSerial.strData == “pr”)

irsend.sendNEC(0x5EA17986,32);

delay(100);

irsend.sendNEC(0x20DF609F,32);

if (bvSerial.strData == “lew”)

irsend.sendNEC(0x5EA1F906,32);

delay(100);

irsend.sendNEC(0x20DFE01F,32);

if (bvSerial.strData == “inp”)

irsend.sendNEC(0x20DFD02F,32);

if (bvSerial.strData == “tel”)

irsend.sendNEC(0x20DFD02F,32);

delay(100);

irsend.sendNEC(0x20DFD02F,32);

if (bvSerial.strData == “jeden”)

irsend.sendNEC(0x20DFD02F,32);

delay(100);

irsend.sendNEC(0x20DF22DD,32);

if (bvSerial.strData == “dwujka”)

irsend.sendNEC(0x20DF48B7,32);

delay(100);

irsend.sendNEC(0x20DF22DD,32);

if (bvSerial.strData == “trujka”)

irsend.sendNEC(0x20DFC837,32);

delay(100);

irsend.sendNEC(0x20DF22DD,32);

if (bvSerial.strData == “polsat”)

irsend.sendNEC(0x20DF28D7,32);

delay(100);

irsend.sendNEC(0x20DF22DD,32);

if (bvSerial.strData == “tvn”)

irsend.sendNEC(0x20DFA85,32);

delay(100);

irsend.sendNEC(0x20DF22DD,32);

if (bvSerial.strData == “next”)

irsend.sendNEC(0x20DF00FF,32);

if (bvSerial.strData == “prev”)

irsend.sendNEC(0x20DF807F,32);

}

}