Problema con IRLbegin<IR_ALL>(interruptIR)

Hola,

He estoy realizando un proyecto y necesito controlar con el mando IR distintos sistemas del proyecto. He empezado con lo más básico que es la identificación del mando, botones...etc., pero tengo un problema con la inicialización de las interrupciones, exactamente el programa me dice que no IRLbegin no se ha inicializado en este escenario.

He instalado la libreria IRL remote y este es el código, alguien me podría ayudar?

#include <IRLremote.h>
#include <IRL_Decode.h>
#include <IRL_Hash.h>
#include <IRL_Keycodes.h>
#include <IRL_Nec.h>
#include <IRL_NecAPI.h>
#include <IRL_Panasonic.h>
#include <IRL_Platform.h>
#include <IRL_Protocol.h>
#include <IRL_Receive.h>
#include <IRL_Time.h>

const int interruptIR = 0; // Arduino interrupcion 0: Pin 2

uint8_t IRProtocol = 0; // Variables para recibir los datos
uint16_t IRAddress = 0;
uint32_t IRCommand = 0;

void setup()
{ Serial.begin(115200); // Fijate en la velocidad
Serial.println("Startup");
IRLbegin<IR_ALL>(interruptIR);
// IRLbegin(interruptIR);
}
void loop()
{
uint8_t oldSREG = SREG; // Parar las interrupciones
cli();
if (IRProtocol) // Si reconoce el protocolo
{
Serial.print("Protocol:");
Serial.println(IRProtocol);
Serial.print("Address:");
Serial.println(IRAddress, HEX);
Serial.print("Command:");
Serial.println(IRCommand, HEX);
IRProtocol = 0;
}
SREG = oldSREG;
}

void IREvent(uint8_t protocol, uint16_t address, uint32_t command)
{
IRProtocol = protocol; // Recogemos los valores y nos volvemos
IRAddress = address;
IRCommand = command;
}

El foro tiene Normas, y hay algunas que no has satisfecho.
Los códigos deben postearse usando etiquetas de este tipo </>
.

De donde sacaste un ejemplo que requiera tantas librerías?

#include <IRLremote.h>
#include <IRL_Decode.h>
#include <IRL_Hash.h>
#include <IRL_Keycodes.h>
#include <IRL_Nec.h>
#include <IRL_NecAPI.h>
#include <IRL_Panasonic.h>
#include <IRL_Platform.h>
#include <IRL_Protocol.h>
#include <IRL_Receive.h>
#include <IRL_Time.h>