Monday, October 13, 2014

A List of Industrial PC companies in Taiwan.

A gateway for the "Internet of Things" : what pieces of software should be included ?

WORK IN PROGRESS: In this post I am going to explore what a good IoT gateway should have under the hood. This post is in no means a complete overview of everything available or on the market - it just brainstorming and a short list of some of the nice things I have seen and worked with.

Protocols and Services.


MQTT is a must have, and THE most talked about protocol for the internet of things. 
Mosquito is highly suitable and supports almost everything MQTT should have. At the time of writing web-sockets are not supported yet. 

The Physical Web. 

Google physical web is Google's answer to the IoT. The whole thing seems to be in early stages and still under development, but looking very promising. The concept is really interesting and worth looking at when building an IoT device/gateway.

The way it works is,  a connected IoT device ( or a gateway), can send "beacons" over Bluetooth (BLE) to passers-by. These Bluetooth messages follow the specifications of the already existing Bluetooth advertising specifications. The messages contains URI's that can be just web pages or deep linking URL into applications on a smartphone or tablet.
They have a client applications for Android, and libraries to build your own. To get it up and running on an IoT gateway is very simple, they have reference code for broadcasting beacons just with a simple bash script. For the deep linking there is a sample available using node.js.

Web Control panels.
Many of the control panels, dashboards, and routers I came across where written in the Node.js , a server side JavaScript toolkit which is highly suitable for real time applications in the browser.
Below are some of my favorite ones. 


Node-red is developed by IBM, with the IoT and especially message/topic based communication in mind. 


Freeboard is a dashboard type of application that can show you all kinds of information from the cloud. Technically, it's not really a gateway application, but rather a client display application.
However, displays , large or small sized, can also be considered to be gateways.

Interesting web services. 

This interesting new web service is kind of like twitter, but for things. The free version of it is meant to be a "social" type of service as it doesn't require any authentication or permission. They have a paid service which allows you to "lock" a device so that access is limited to those with the key. 
Check it out here :  !

Silicon vendors and devices.
For the silicon vendors these gateway type of devices are really a nice chance to bring older cpu cores back into fashion. Intel offers their Quark SOC , which is actually 32 bit, TI is bringing OMAP3 (Cortex-A8) back in the game, and Freescale is actually using dual core Cortex-A7. 

Intel has it's own complete hardware and software set of specifications which has caused a lot of Industrial PC manufacturers to bring to the market their own incarnations of those devkits.

Freescale provides a reference design, which will probably be implemented by manufacturers world wide.

Texas instruments proposes the AM3352, complete with reference design.

Sunday, September 28, 2014