Android Things running on emtrion Hardware
In December 2016, Google presented its new operating system for the Internet of Things (IoT), called Android Things.
As the name implies it’s a derivative of Android, just like Android Auto, Android TV and Android Wear. It’s supposed to run on low-power embedded devices such as emtrion’s SBC-SAMA5D36, which is well suited to be used in devices such as fridges, ovens, microwaves and many more. Unlike Android it can be run with or without a display and runs only one single application, called the home activity, which is launched on boot. Google decided to implement the Java Runtime on Android Things, so that Android App developers are able to write IoT apps in their familiar Android Studio environment. To this day Google has not yet released the source code of Things but a few images for different hardware platforms. In an internal study, we at emtrion have ported Android Things to our single board computer SBC-SAMA5D36. The SBC-SAMA5D36 is well suited for the use in IoT environments with its numerous peripheral connections and the possibility to use a touchscreen.
A key part of Android Things is the Peripheral I/O API, which is used to communicate with sensors and actuators via GPIO, PWM and serial protocols such as I2C, SPI and UART. Another central component of Things is the User Driver API, which introduces so called user-space drivers. With this approach developers can embed their peripheral hardware into the Android framework which has one main advantage, namely to abstract the application code from the hardware platform, so that once written, the application code can be ported to different hardware devices. This allows the reuse of code. Using the native PIO API it’s now possible to write Android Things Apps exclusively in C/C++ without the need of Java.
Looking at the growth of Android market share at embedded devices like smartphones and the rise of IoT in the last few years, a good argument can be made that Android Things will be the next big "thing" in the near future.