Architecture for IoT applications.

Architecture for IoT applications.

Architecture that’s built to heal.

If you are not aware of the software architecture then go through this tutorial Software architecture. In this tutorial, we are gone through software architecture, not the hardware architecture & electronic device connectivity.

What is IOT?

Before going into the what is IOT let me tell one story that we all know? The story of blind men & elephant originated in the Indian subcontinent. It is a story of a group of blind men (or men in the dark) who touch an elephant to learn what it is like. Each one feels a different part, but only one part, such as the side or the tusk. They then compare notes and learn that they are in complete disagreement. The same thing with IOT we did.

The internet of things (IoT) is the internetworking of physical devices, vehicles (also referred to as “connected devices” and “smart devices”), buildings and other items — embedded with electronics, software, sensors, actuators, and network connectivity that enable these objects to collect and exchange data.

— wikipedia

If you overlook the definition, then we say there is nothing new it is just the stack of technologies which you already familiar. So someone says it is sensor programming, embedded programming, big data, machine learning, map reduce, etc. And one seeing man come and say this is NOT (this is the elephant).

The term “The Internet of Things” was coined by Kevin Ashton in a presentation to Proctor & Gamble in 1999. Ashton is a co-founder of MIT’s Auto-ID Lab. He pioneered RFID use in supply-chain management.

Now you are aware of what is IOT & software architecture. Then let us combine both things.

How we define IOT application architecture?

For defining architecture I will not go into the electronic & hardware part, I will keep you at the software stack and How we will need to arrange the software technologies as part of our dream IOT product.

This is just the blocks I arranged. Let us discuss in brief. We will explain from bottom to top.

  1. The bottom & core part of IOT application is the sensors and electronic devices that are able to connect to things & grab the data from it.

2. The sensor collects the data but that we need to convert it into understandable format & connect those sensor devices using some protocol that we need to configure here in layer two and also filter data i.e put some threshold for your data for taking a smart decision.

3. Network connectivity, connect your device with wireless connectivity or internet wired connection. This connectivity is changed based on context & domain.

4. We can say this layer as a security layer or application abstraction layer or data abstraction where we can apply security to our product. This layer position should be changeable based on the domain & How we want to apply abstraction to our application.

5. At this stage, we will persist our logic, use this data for taking a smart decision or for reporting purpose. This is the important layer, where our actual product & business logic comes into the picture.

6. This layer where we can say its presentation layer or decision was taken layer. Based on the requirement we can display reports or applying machine learning or some custom logic and takes a smart decision and send a signal back to the sensors.

7. This is where our God exists. For whom we are designing this whole product. The user interacts with this layer. This is the UI layer.

This is the brief description about we can arrange the blocks to design our IOT product.

IOT is simply connectivity of application, device and data.

For the more technical way, we can understand the same architecture.

There are number IOT device vendors & service provider every one has there own SDK & different protocols also there is a number of ways to connect a device to a network.

For more technical, I have designed simple IOT architecture using the Java stack. Here What we are following architecture for our use case.

On the left side is our sensors or core part of our IOT application.

Define architecture is art. There is a number perspective which is needed to be considered while designing architecture. This is a simple & general perspective to design IOT application architecture. Internet of Things for Architects.

This is just an idea. Dig deeper find more & let me know as well.

For more stories.

Lets connect on Stackoverflow , LinkedIn , Facebook& Twitter.

Android for a smart device.

Android for a smart device.

For more stories.

Android Things is Google’s new OS for smart devices.

What is Android Things?

If you can build an app, you can build a smart device.

Android things are Google android based IOT (Internet of Things) platform. Android things have android os stack with additional support for IOT. Google IO 2015 google announced Brillo & Wave for IOT.

Android things pushed the boundaries of android mobile os to work on hardware peripheral devices & drivers.

Overview of Android Things.

Android things platform is android based but this is different from the Android mobile OS. Below image describes the overview architecture of Android things. Android Things provide you the ease & power of Android. Enhance your device with google & android things.

Don’t reinvent wheel, build autonomous vehicle.

Android things platform come with Android SDK, Google services Java API F/W with things support a library. If you are already familiar with android or java then download preview version & build your own IOT device.

Android Things is an additional plugin in Android stack, don’t worry to learn from scratch just take few minutes & build it.

Use android infrastructure? Why we have to use Android Infrastructure?

Android is built in a mature platform for device program. Android is available for mobile, watch, TV, car and know for devices. The best part of Android Things development is very similar to traditional Android mobile development and involves writing apps using the Android framework with android studio IDE and tools. You need is a development board flashed with the Android Things OS and the required peripherals for your device.

Though Android Things devices will be able to integrate with Android (and or other ) devices, they would do so through Weave, a related but distinct communications system that Google launched alongside Brillo back in 2015.

The hope is that experienced developers will be able to quickly adapt, get up to speed and start work on a new product.

Android is now every where isn’t it? Arduino kit.

Advantages of Android Things.

  1. Open source.
  2. Android ecosystem.
  3. New APIs for IOT devices.
  4. Google API & services are build in.
  5. Trusted Security.
  6. The power of google at fingertips.

Getting started Android Things.

Build you first APP.

To download system image & test application.

Make Hands dirty with more sample.

Go through the Android things Github page https://github.com/androidthings.

This is just trailer. Go deeper find more & let me know as well.

If you enjoyed this article, please don’t forget to Clap.

For more stories.

Lets connect on Stackoverflow , LinkedIn , Facebook& Twitter.