Android Things ™ Trials with IoT-Ignite

ARDICTECH
ARDICTECH
Published in
5 min readFeb 3, 2017

--

We have tried, tested, and experienced Android Thing since the day it was announced. Simply, Android Things is an Android based, embedded operating system for developers to build software for smart devices (i.e.smart thermostat), which are usually built from different MCU platforms.

The idea is that developers will be able to build new software and devices quicker and easier ever than before.

Completely New?

It’s half new. Google claims Android Things is a rebranded version of Google Brillo, an OS that Google announced in 2015. We had the opportunity of investigating the Brillo architecture closely, since its introduction, Brillo used Android Linux kernel however, Java based applications frame work has never being included into the architecture. Instead, Brillo supported C++ based development as their primary development environment, however Android Things targets all Java developers, in other words global Android developer ecosystem as in mobile development domain. Additionally in the Android Things, more emphasis are given to support lower level component access such as GPIO, SPI and I2C buses. There is a versatile framework for supporting sensor and actuator peripherals that are used in the internet of things domains.

So, developers can use the toolkit for the target IoT devices. Android Studio, the popular IDE for Android, supports IoT development through Android Things. As a result, the life cycle of development is almost the same as mobile development, and supports a subset of the original Android SDK.

How is it different than normal Android?

The key difference between Android Things and Android that is running on mobile devices, is that Android Thing is mainly developed for headless devices, this means that it doesn’t support user interfaces.

Android Things OS supports a subset of the original Android SDK for now. AdMob, Maps, Search, Google Play and even Sign-In are not supported since the APIs require user input or authentication credentials.

Why is Android Things important for IoT Market?

Linux has been around for many years, and gained less popularity and mass scale deployment compared to Android.

Android operating system has gained huge popularity among the developer community since its first market introduction in 2008 by Google. It is now one of the most tested and mature operating systems in the world running on more than 1.5 Billion devices globally.

  • Managing security in Linux becomes complex, and dependent on the version of Linux,
  • Writing applications in a consistent manner also becomes very difficult,
  • Linux is fully open source, so there is not a single governing body as Google is for Android Things,
  • Advanced features such as secure Linux kernel, container, permission access of an application to system resources etc.,
  • Configurability and manageability of the operating system as well as security configurability,

Android address all the shortcomings of Linux listed above and much more that are not even mentioned here. Because of these Linux challenges, the application developer community of Linux is almost a fraction of the huge Android developer community.

Why does Android Things work better with IoT-Ignite?

Developers can overcome many of the challenges associated with launching new products by using IoT-Ignite services, device management, cloud expertise, and infrastructure to create and commercialize innovative products.

  • IoT-Ignite supports Android based gateways, and 3rd party Android IoT services and applications.
  • Our platform has been around for 2 years and matured in the field
  • IoT-Ignite provides complementary critical components, not-yet-offered in Android Things such as :

o Service container framework,

o Complex Event Processing framework,

o Deep learning engine,

o Virtual Processor framework (beyond sensor fusion technology),

o Physical and Virtual Node/Actuator/Sensor/Edge Gateway discovery registration, and management framework.

  • A powerful device cloud (not-yet-offered in Android Things) is already provided by IoT-Ignite
  • World’s first full function IoT solution implementation of Android Things is underway with IoT-Ignite (as a commercial deployment)
  • Critical security and controllability framework of IoT-Ignite architecture, (AFEX) is complementary to Android Things

IoT-Ignite provides Complex Event Processing (CEP) functionality on the edge devices.

A CEP rule consists of these parts: conditions based on sensors data, and actions to be implemented when conditions become true. Especially time critical situations can be handled autonomously thanks to edge CEP, even when devices do not have a network connection. For example, dementia patients in a nursing home can be tracked with fall detection sensors. An immediate action such as generating an alarm can be taken when patient falls down without sending the data to the cloud and waiting for a response first.

Existing IoT services either send data directly from edge devices to the cloud or passes raw data through gateways without processing.

In both cases, high volume data traffic is carried between edge and cloud. IoT-Ignite enables meaningful data transfer capability by processing data at the edge. It supports “Virtual Ignite Processors” for service developers. Developed Virtual Ignite Processors can generate events or mimic virtual sensors by processing data received from multiple sources.

IoT- Ignite treats them as part of its “thing” ecosystem. For example, let’s think of an inventory management solution that uses RFID devices -in order to count products in a warehouse. This solution aims to detect product movements and record if products are taken out of the warehouse or new products are delivered in. An actual RFID reader reads tags at a very high rate: more than hundreds of tags can be read on the edge device. Product in/out events can be created by a virtual ignite processor application developed in Android. IoT-Ignite supports virtualized data events from sensors. It is possible to define CEP rules using virtual events and actions such as a product in or out. For example, if a product’s amount decreases abnormally, an action such as ordering the critical product can be triggered based on IoT- Ignite CEP rule management system.

IoT-Ignite extends Android Things features day after day. IoT-Ignite is your most handy tool to enable your services with amazing feature sets and you have an ultimate IoT platform with the power of Android Things and golden features of IoT-Ignite.

--

--