For those people thinking of attending the upcoming Internet of Things Mashup Day http://iotmashup.eventbrite.com/ on the 23rd July, here is a short primer on why webinos is relevant to the IOT domain, and how it works

The Mash-up Philosophy

Wikipedia says a mash-up is

 web application, that uses and combines data, presentation or functionality from two or more sources to create new services

Which perfectly summarises our ambitions for the webinos technology. The opportunities possible when we start to combine the data and capabilities from distributed devices are enormous, but so too are the Challenges.

Practical Porting

The focus of our Mashup Day, is practical porting. The first step in getting different devices talking to one another is to make sure they talk the same language. The second step is adapting code to hardware so that the communication can practically happen.

The common language has already been specified. Largely its a mix or pre-existing technologies PKI certificates, TLS, JSON-RPC, WebIDL with RESTful bindings and a XACML schema for policy. The interesting bit is how it actually fits together.

Four complementary architectural models are supported in webinos to provide IOT and general connected device interoperability.

  1. webinos full stack: this is a complete node.js solution, which embeds sophisticated server technology and a JavaScript interpreter on the device. Technically the most sophisticated and flexible, but comes with an obvious overhead
  2. webinos driver model: this model presumes you have a local hub or gateway. This could be a phone, a PC, raspberry PI, a router or a set top box. This gateway is provisioned with a driver, which maps IOT device native protocols to JavaScript (JSON-RPC) primitives. This model is very easy to develop for, typically takes only a day or so to write a driver. It is perfect for integration with “legacy” devices, i.e. devices already in the market and for which we already have a comprehensive list of adapters
  3. webinos lite stack: this is still work in progress, but represents a middle ground of the two approaches. Tuned for low memory footprint, and low processor devices, it is fit for purpose for small devices, but gives that device more autonomy in terms of managing its own security, networking and even has dynamic programming capability.

On the day we will be giving practical assistance porting devices to models 1 and 2, but also holding some workshops on model 3 requirements.

What is unique about webinos

Web application frameworks exist. IOT management protocols exists. What does webinos bring to the table that is new and different?

  1. A converged approach: we use the same technologies for writing rich web applications on PCs and mobiles as we do for exposing IOT device capabilities, as we do for writing cloud based applications. Why should a mobile phone with a temperature sensor be different to a micro IOT temperature sensor? Similarly, if I want to consume sensor temperature locally on a mobile phone, why should this be different to accessing it from a cloud based web application, or even a peer sensor on a local network ? In the webinos technology stack all of these capabilities are exposed by the same (largely pre-existing) technology standards.
  2. No single point of control:  in webinos there are no central control points, no mega portal trying to control the data flow. It is based on an entirely distributed architecture, where each new node, each new player stands as a peer on the network. It is a device connection protocol based on web and internet ethos.
  3. Open Source: all the code is Apache 2.0 license. Anyone can use it. Anyone can fork it. There are no license fees, hidden or otherwise.
  4. Legacy interoperability: the driver model that webinos supports makes it especially valuable for connecting legacy devices.
  5. Privacy and Security: the webinos architecture has a very strong emphasis on consumer data sovereignty. As recent experiences with Smart Meters and other IOT devices have shown, if the issues of consumer privacy are not dealt with head on, the business will not progress. In our model, a consumer keeps control of their device and their data at all times. Data is shared by live APIs not transported data sets. That way if you change your mind about who can access the data you do so by flicking a switch.
  6. Sharing: largely as a consequence of getting the data security model right, sharing of data and services between people and devices opens up interesting new business modesl
  7. Local and remote: webinos supports a virtualised networking model (and overlay network). This allows local network interactions to seamlessly work with cloud implementations. It also allows applications to remain agnostic to underlying bearer technology. Even supporting non-ip technologies.

 

What we’ve done so far

As a taster: here are the types of devices we have already integrated onto our standardised, interoperable framework

Most of these devices have been adapted very rapidly using the driver model

What we are looking for

We want to increase this portfolio significantly. We are looking for any practical devices that can expose, useful devices or services to other devices, local applications or cloud based applications. For example:

  • Health devices: blood sugar monitors, scales, activity monitors
  • Lighting controllers
  • Wireless speaker systems and microphones
  • Wireless security equipment, both monitoring and locks
  • Energy monitoring devices
  • General purpose reference boards and SDKs.
  • TV equipment:
  • NAS drives
  • Routers
  • Vehicle black boxes
  • Anything else you can think of…..

If this interests you have a look at http://iotmashup.eventbrite.com/. We can help you uncover some of the interesting opportunities that securely sharing your devices make possible