  Internet of Things (IoT) will comprise billions of devices that can sense,
communicate, compute and potentially actuate. The data generated by the
Internet of Things are valuable and have the potential to drive innovative and
novel applications. The data streams coming from these devices will challenge
the traditional approaches to data management and contribute to the emerging
paradigm of big data. One of the most challenging tasks before collecting and
processing data from these devices (e.g. sensors) is discovering and
configuring the sensors and the associated data streams. In this paper, we
propose a tool called SmartLink that can be used to discover and configure
sensors. Specifically, SmartLink, is capable of discovering sensors deployed in
a particular location despite their heterogeneity (e.g. different communication
protocols, communication sequences, capabilities). SmartLink establishes the
direct communication between the sensor hardware and cloud-based IoT
middleware. We address the challenge of heterogeneity using a plugin
architecture. Our prototype tool is developed on the Android platform. We
evaluate the significance of our approach by discovering and configuring 52
different types of Libelium sensors.
