diff --git a/src/groveloudness/groveloudness.cxx b/src/groveloudness/groveloudness.cxx index 273e0738..40a50131 100644 --- a/src/groveloudness/groveloudness.cxx +++ b/src/groveloudness/groveloudness.cxx @@ -23,6 +23,8 @@ */ #include +#include +#include #include "groveloudness.h" @@ -30,9 +32,13 @@ using namespace upm; GroveLoudness::GroveLoudness(int pin) { - mraa_init(); - - m_aio = mraa_aio_init(pin); + ; + if ( !(m_aio = mraa_aio_init(pin)) ) + { + throw std::invalid_argument(std::string(__FUNCTION__) + + ": mraa_aio_init() failed, invalid pin?"); + return; + } } GroveLoudness::~GroveLoudness()