Android Devices for the Internet of Things

Aye, use that Samsung to monitor your basement ;)

Can you consider your phone as a Thing? Well it is a thing, except it’s a very specific type of thing that runs an OS with it’s own ecosystem (Apple & Android). You can use your phone to take calls, send messages to friends, view a web page and install additional apps. With additional apps — you can view YouTube videos, take 3D images on a sight seeing trip and even more calculate bill values by taking a picture.

Dulitha, we already know these, but how does it connect to IoT?

Let’s take a device, specifically a Mi Band. The band can alert you for your notifications, collect step count and monitor heart rate. By installing a 3rd party app on your mobile, you can even update the Mi Band to do continuos heart rate monitoring. The alignment becomes very similar to a mobile.

Android in the Car

Image credit — Instructable

Android is a fantastic platform to build additional services on. Many tinkers have gotten on the bandwagon to install Android Tablets in cars. This would mean a good 7inch screen on the car giving the driver (and passengers) access to see a Map and few apps that show critical conditions of the car. This would be more of a trend with self driving cars hitting the streets.

Dulitha, apart from Cars, where do you see Android accompanying specific services?

Take for example hospitals? Remember the time flicking through the channels of the TV when you were admitted. How about we make that TV a smart TV and provide the user to view what he wants (Netflix and Recover?).

Take another example where you’d give an Android phone when you sell a home security system. This device could be the master device that will be used to override the system and trigger updates etc.

What about BYOD then? Won’t people just want an app for it?

Of course there are scenarios where you’d need to support the use case with an app. But certain use cases (Consumer + Enterprise) are better suited with a specific Android device.

Android for Work

Google has built a specific set of APIs to support this scenario of having a single purpose device. But how would this work? We would setup a custom app as the single app on the android device. For the Security system use case — this would be an Android Device with the mobile app locked to the launcher.

The hospital use case is tiny bit complicated. We would need to have multiple apps on the tablet since users might use a web browser and maybe few games? For this use case we would setup a custom launcher app as the app that is pinned to the device. We can show only the apps we desire on the launcher.

This is all fancy but how would this actually work?

WSO2 EMM

To explain this further — I am going to take WSO2 EMM as the device management solution that implements the server side APIs for Android for Work. Let’s take the hospital use case again. When a person is admitted to the hospital, the administration would provision the tablet in the room he will be staying. The tablet would initially be in factory settings. After a patient is discharged — the tablet will be factory reset by the hospital.

There will be a provisioning phone with a provisioning app + NFC capability.

Provisioning App for Mobile

The provision phone will be used to tap the Factory Setting phone on the back. With NFC, the Tablet gets the information needed to connect to the WIFI and enrollment details.

Provisioning a device by Tapping
Phone is enrolling to the Manager

After enrollment to the EMM, we can pin a single application as the launcher screen. The launcher screen will hold only the browser and YouTube app (the tablet with the word “WSO2” is a custom launcher).

Now effectively the tablet has become a Thing.

Take another simple example where a person has few android phones. He can use one of these phones to monitor a baby, another to get GPS tracking mounted on the bike etc. Possibilities are endless with Android.

But Dulitha, isn’t this another typical MDM scenario?

Well, it kinda of is.

But switching our mindset to focus that your mobile is yet another thing is important. This would allow us to build better solutions with Android rather than building custom thing