As participant, you will get the possibility to make use of any of the 4 infrastructures set by the 4 projects : BUTLER, OpenIOT, Gatesense and COMPOSE. Connecting these 4 complementary infrastructure within your proposed application is encouraged.

In addition you will have the possibility to make use of several types of devices including sensor platforms, wearable devices, WSN gateways based on developping standards such as CoAP, MQTT, Zigbee, Bluetooth Smart, etc.. If you wish to make use of such devices, do not forget to mention it during your registration process. Available devices will include:

  • Localisation tags to make use of the localisations service being deployed on-site (made available by Zigpos)
  • Bluetooth smart wearable development kit with sensors measuring proximity. Extended version with temperature, humidity, accelerometer, and microphone (noise sensor) may be provided as well. (made available by HOPU)
  • TSmarT wireless communications platform (made available by TST)
  • Flyport WiFi Grove Kits, Arduinos with WiFi, Spark Core devices, Ambient sensors, Actuators (LEDs, Sound, etc.) (made available by COMPOSE)


---------------------------------- BUTLER Platforms ----------------------------------

BUTLER build upon 3 complementary Smart platforms: Smart Object/Gateway, Smart Mobile, and Smart Server. These define roles. All or part of them could be integrated within the same hardware environement to provide advanced functionalities.

In more details, the smartplatforms are defined as follow:

  • Smart Object/Gateway

The BUTLER Gateway aims at integrating different IoT device and communication technologies in order to provide a homogeneous access to the underlying heterogeneous networks. The figure below illustrates the relations between devices and BUTLER gateway:

At the lowest level, heterogeneous devices form individual networks that can be accessed by either standard based APIs (CoAP, Zigbee, MQTT ,UPnP, KNX, etc.) or rather proprietary APIs (SunSPOTs, TST and Zigpos nodes, etc.). The objective of the BUTLER API is to provide a generic way of accessing and reusing those devices and to create integrated horizontal applications from various domains. The framework does not impose the implementations of those APIs in the devices (even if this can be possible), but rather device proxies implement those APIs in the BUTLER gateway level.

BUTLER gateway is based on the Open Services Gateway Initiative (OSGi) that provides a service execution and deployment framework. BSOS are thus represented as OSGi services. The BUTLER platform provides an abstraction of physical devices via BSOS allowing higher level services and applications access them without the need to be aware of their technical details.

BUTLER Smart Object Services can be used by any application that needs to access to data provided by the devices or perform actions on the devices. However, in general, the applications will make use of higher level services that process and aggregate raw device data and providing richer contextual information. We call these higher level services BUTLER Smart Services.

BUTLER Smart Services will also implement the BUTLER API and expose the higher level context information in terms of resources. For instance, a localization service can use low level smart object services to access to the information provided by the low level localization devices in order to provide more precise location information. Similarly, a parking information service can reuse information from individual parking sensors in order to provide a city scale parking service.

Smart services can execute in the gateway, in which case they are also OSGi services, or can run at remote smart servers. Therefore, communications between the services can be local or remote. In case the services and applications needs to access remotely to the services available on the gateway different possibilities exist in the state of the art such as HTTP REST, JSON-RPC, Web services, MQTT, CoAP, etc. BUTLER implements service end-points for these protocols in order to allow such cases.

More information on the BUTLER gateway can be found at BUTLER gateway documentation webpage.


  • Smart Mobile

The main role of the BUTLER Smart Mobile is to provide an interface to the user: in fact through the Smart Mobile platform:
Mobile side applications are executed,

    • The user is identified and authenticated,Information about the user is collected,
    • Application input from the user is collected,
    • Relevant data is shown to the user,
    • The user is notified about new data important to his situation.

The interaction with other surrounding Smart Objects can also be mediated by the Smart Mobile.

The Smart Mobile framework consist of several components:

    • Abstraction layer from the underlying mobile Operating System
    • Common functionalities such as:
      • Graphical User Interface common components
      • User Authorization and Authentication
      • Notification system

BUTLER applications will run on top of the Smart Mobile framework and re-use components to simplify and uniform functionalities that are common to all of them.

  •  Smart server

the role of Smart Server is to provide an interface to the world of digital information, processing and mediating information that is relevant to the user and the applications he is using.
Smart Servers can provide both specific application functionalities and common functionalities that could be used by several applications. The Smart Server makes available server-side processing for mobile applications, transparent access to the context data collected by Smart Objects (sensors and actuators) and aggregation of information provided by various sources. The Smart Server offers also the possibility to realize data processing and integration in the cloud: this includes a novel combined local and global localization engine, a context management framework, a behavior model and prediction system, market-place/advertising services and security strategies

Smartsevers can be deployed remotely (cloud deployment) or locally.

Smart servers made available for the hackaton wiill include

    • Localization server
    • Trust management server
Available tools and APIs
 Smart Gateway  

Access to over 20 IoT devices deployed on the site and more than 50 sensors/actuators (aka Smart Object Services) attached  to them

Sensor Services: Luminosity, Temperature, Touch, Force, Sonar, Humidity, Slider, Rotation, Pollution Detecter (CO, CO2), Liquid detector, Hall effect, NFC, reader, Butons, Bend

Actuator Services: Media Play on TV (play, pause, change volume, etc.), Message Display on TV (text, HTML), Smart Plug, GPRS (SMS, calls), LEDs, LCD Display, Motors

Smart Services



Localisation Service: Zigpos localisation system exposed as a BUTLER localisation service ; real devices collecting location information. Download more information.

Multimedia Service: A Samsung Smart TV providing a BUTLER multimedia service; real TV to be used for the hackaton (the coolest application developer takes the TV home!)/ Download more information.


Generic API to access all devices

  • GET: get sensor data
  • SET: set property or state variable of a node (sensor/actuator)
  • ACT: do an action an actuator
  • SUBSCRIBE: subscribe to (periodic or event-based) data streams
  • UNSUBSCRIBE: cancel the subscriptions

OSGi framework

  • Device services as OSGi services
  • Dynamic discovery
  • Run-time binding
  • iPojo component model
  • Building OSGi services as IoT applications
  • Remote Deployment of OSGi bundles to the gateway

Northbound Gateway API for Remote Access

  • RESTful API (http; server based or long polling)
  • MQTT (soon to come)

Southbound IoT Device Protocols

Supported device providers and protocols

  • Waspmote (Xbee)
  • Zolertia (CoAP)
  • Arduino (USB, XBee)
  • Samsung TVs (Smart TV API)
  • Phidgets (USB)
  • ST Smart plug (Zigbee)
  • TST TSmoTe (XBee)

Smart Mobile

- BUTLERjs: Javascript library that makes BUTLER services available within web applications.

- SmartMobile for Android devices: Android library that makes BUTLER services available within Android applications

- gProxy: very simple proxy that can be used to send AJAX requests to any secured SmartGateway

- SmartMobile UI: set of tools and components made available to develop BUTLER user interfaces

Smart Server

- Localization server: Get the documentation and test the end-points

- Trust Manager:

Contact and questions

Participate in our discussion board

---------------------------------- OpenIoT platform ----------------------------------

OpenIoT* is an implemented OPEN SOURCE horizontal platform to enable interoperability between IoT verticals and Data silos for a unified IoT world.

In December 2011 OpenIoT consortium joint efforts in the run to create an DIY platform to support IoT service development using the cloud, semantics and self-organising paradigms. In September 2012 OpenIoT specifications were ready and the first prototype version of the core platform was integrated and tested in May 2013. Since September 2013 the fully OPEN SOURCE framework was release via github ( On January 2014 OpenIoT developed and tested the first prototype in the cloud using a public cloud solution like EC2-Amazon product. In April 2014 OpenIoT released the first prototype of OpenIoT-VDK. Today OpenIoT inspire and led other projects to deliver interoperable/unified data solutions and launch/control IoT devices.

*OpenIoT has been awarded Internet of Things Open Source Project of the year by Blackduck Software Co. (

Available tools and APIs


OpenIoT-Virtual Development Kit (OpenIoT-VDK) is a full deployable virtual box including OpenIoT Core platform with sample data for experimenting.

OpenIoT enables applications, services, data and devices as an ecosystem for the Internet of Things (IoT)- All in One Virtual Development ToolKit.

OpenIoT Core Platform

Pack for on-the-fly Services Definition and Schedule (Scheduler module)

Pack for Service Delivery and Service Utility configuration and deployment (SD&UM module)

Pack for User Authentication with Role-based Security enabled (CAS module)

Pack to support Sensor Data via RDF Queries (LSM-Light module)

Pack for connecting Global Sensor Networks (X-GSN module) 

Pack Mobility Services and QoS (CUPUS module)

Pack for Bluetooth Devices (CUPUS Bluetooth API)

Devices Support

Pack for Low Energy optimization – 6LowPan (HOPU contribution to OpenIoT Community)

Pack for HOPU cards (M2M interactor App and data sample included)

(HOPU contribution to OpenIoT Community)

Pack for Arduino Cards Module (Noise Monitoring Service Included and data sample included)*

(EAR-IT contribution to OpenIoT Developers community)*

Pack for TST sensor cards (EAR-IT contribution to OpenIoT Developers community)*

Pack for Libelium sensor cards (EAR-IT contribution to OpenIoT Developers community)*

*comming soon (Mid June 2014)


Annotate / transform Raw Data to RDF (RDF API)

Connect your RDF files to Web Services (RESTful API)

Pack for Cosm Data Support*

*comming soon (Mid June 2014)

User Interface

End User Friendly Drag & Drop Functionality enabled (OpenIoT IDE)

Storage / Repositories

Open Source Storage Point (RDF Triple Store)

(Virtuoso API OSV7)

Cloud Services

Local Repository API 

Cloud-based Repository API

(ConsoleMode EC2 Cloud Enabled)**

**Must registered on Amazon EC2 with your own account


OpenIoT Developers Community

Sample Data Sets

(available at OpenIoT githhub developers environment

Explicative Videos (available at OpenIoT youtube channel:

All Platform Documentation (


Contact and questions

Participate in our discussion board


---------------------------------- Gatesense platform ----------------------------------

With Gatesense you can access data through a uniform rpc api, thereby having a single point of entry for data, and you are ready for developing apps on top. Gatesense holds primarily municipal data from around Denmark, but can also be datastore for your project. We are proposing three real world smart city challenges, that we want you to solve through a combination of the four platforms: Gatesense, Butler, OpenIoT and COMPOSE. You can begin coding right away, but note you'll need to be registered at the IoT week 2014 as attendee of the IERC Interoperability Challenge-Hackatons 2014 in order to participate in the challenge.

 Available tools and APIs

Gatesense Platform

  • Data catalogue for describing, searching and fetching data
  • SQL queries over RPC api
  • GUI and API access to data



User Interface



  • You have to create an account on the website


  • Water challenge

Eric is 43 years old and works with physical impaired children as his profession. In his everyday life he finds it hard to figure out whether his water consumption is average or not. By knowing his consumption, he can adjust his routines and thereby reduce carbon emission and reduce his expenses. Therefore he would like to have a smartphone app or at least a web app, that could show his water consumption in comparison to others. Since Eric isn’t a tech. guy he would really like the graphical representation to be easily understandable and intuitive to use.

  • Business models

Now that the municipality of Copenhagen has created an open data platform, with all sorts of data (static and real-time), they need a way to get the platform exploited for commercial purposes. The immediate issue is that no one has found a good way of making money on open data, and therefore there is not really any data flowing from the platform. The municipality is desperate for establishing a data pipeline where SME’s can earn money, and thereby feed taxes back into the city. What they need is a novel business model approach, where everyone can make money on open data.

  •  Parking app

The 34 year old Ane, is very frustrated when she drives into to the centre of Copenhagen. She simply can’t find a parking slot - she feels that she drives around for ages before she finds a parking space. What Ane would like is an app where she could see the nearest parking space available just now (in real-time). Furthermore, she would like the app to be able to tell about free parking near her working place. With this app, Ane could reduce pollution, noise and time.

Contact and questions

Participate in our discussion board for general questions.

For specific questions, send us an email at, go to, look at for understanding the engine.

---------------------------------- COMPOSE Platform ----------------------------------

Available tools and APIs

COMPOSE (ServIoTicy )Platform

  • Simple composition of IoT Data streams
  • JSON-based data models for sensor updates and the description of processing elements
  • HTTP Subscriptions
  • MQTT Support with bridging to RESTful interface
  • Data queries

Data & Communication protocols

  • RESTful API
  • MQTT (publish/subscribe)

User Interface

  • GlueThings, Node-RED

Mobile SDKs & Device Libraries

  • Native Android
  • Cross platform library (Appcelerator Titanium)
  • Arduino Library
  • openPicus Flyport Library
  • SparkCore Library

Service Cloud

  • ServIoTicy online Cloud Environment


  • Examples and use cases with OpenData
  • Plenty of connected hardware, sensors and actuators to play with!


Contact and questions

Participate in our discussion board