The fast-growing Internet of Things (IoT) consists of millions of sensing devices in buildings, vehicles, and elsewhere that deliver reams of data online. However, this wide-ranging resource involves so many different kinds of data, sources, and communication modes that its myriad information streams can be onerous to acquire and process.

Fig. 1 – GTRI researchers (from left) Heyward Adams, Andrew Hardin, and Greg Bishop examine Internet of Things devices whose output can be integrated using GTRI’s new FUSE software. (Credit: Rob Felt, Georgia Tech)

Researchers at the Georgia Tech Research Institute (GTRI) have developed a flexible, generic, data-fusion software that simplifies interacting with sensor networks. Known as FUSE, it provides a framework to standardize the diverse IoT world. Its application programming interface (API) lets users capture, store, annotate, and transform any data coming from Internet-connected sources. (See Figure 1)

“The Internet of Things has always been something of a Tower of Babel, because it gathers data from everywhere— from the latest smart-building microcontrollers and driver-assist vehicles to legacy sensors installed for years,” said Heyward Adams, a GTRI research scientist who is leading the FUSE project. “Traditionally, people wanting to utilize IoT information have had to examine the attributes of each individual sensor and then write custom software on an ad-hoc basis to handle it.”

Before FUSE, Adams said, a typical IoT task could require several manual steps. For example, users would acquire data from the Internet by manually finding and setting up the proper communication protocols. Then each data value would have to be assigned to a supporting database. Finally, the user would need to process the data through approaches such as arithmetic manipulation or statistical evaluation before it could be fed into a decision algorithm.

“FUSE lets us take a task that used to involve a week or two, and complete it in 10 or 15 minutes,” he said. “It provides a standard way of communicating in the unstandardized world of IoT.”

The technical challenges of creating an IoT framework include not just receiving and transmitting sensor data that use different communication protocols and modalities, but also digesting and processing a variety of data encodings and formats. One particular challenge involves dealing with timing differences between incoming data sources.

To build their framework, the GTRI team developed advanced algorithms for handling the many different source types, communication modes, and data types coming in over the Internet. They also devised methods for managing interactions among data sources that use varying and unpredictable data rates.

The result was FUSE, with capabilities that include:

  • Providing users with online forms that let them define the sources they need as “domains,” or abstract descriptions of how the targeted data interrelate;
  • Gathering incoming raw data according to user specifications and mapping it into the specified domains. The data can then be transformed and manipulated using “tasks,” which are user-defined JavaScript functions or legacy software that run inside the FUSE service; and
  • Displaying the processed data to users on-screen via an interactive data visualization, exploration, and analysis dashboard that supports most data types, including numeric, logical, and text data. Users can also devise their own custom dashboards, or other interfaces.

FUSE makes extensive use of the generic representational state transfer (REST) data capability. Referred to as RESTful, this widely used Internet standard supports the framework’s ability to receive and transmit divergent data streams.

The FUSE framework is designed to be massively distributable. Using load-balancing techniques, the service can spread IoT workloads across entire computer clusters. Moreover, FUSE can also operate on small and inexpensive microcontrollers increasingly found in buildings and vehicles performing a variety of smart sensing tasks.

The development team has built a transform layer into FUSE that enables the framework to connect to legacy sensors, allowing integration of older devices that utilize diverse hardware and software designs. FUSE currently employs the open-source MongoDB program as its storage database, but GTRI researchers are developing adapters that let the service plug into common databases such as Oracle, MySQL, and Microsoft SQL.

“One of the advantages of FUSE is that it can be broken up and distributed to accommodate any sensor and server architecture,” Adams said. “So it can grow and change as a business, facility, or campus changes over time.”

For more information, visit http://gtri.gatech.edu .