FiWare

FIWARE will meet you in ECFI again!

 Blog, events  Comments Off on FIWARE will meet you in ECFI again!
Nov 032015
 
facebookbanner

Today, within the ICT domain, developers, accelerators stakeholders, start-ups and investors share the goal to achieve global leadership in ICT by the year 2020. This means that it is important to bring everyone together in order to discuss these paramount topics and questions within the Future Internet so that we can advance closer to where we want to be.

This is where ECFI comes in; the European Conference on the Future Internet centers itself on addressing these questions whilst organising the collaboration of various smart minds to discuss the progress and the inauguration of future innovative internet technologies. ECFI also aims to promote the FIWARE community, who share this same dream. As the platform which not only offers the necessary funding (thanks to the FIWARE accelerator programme) but eases the creation of these smart applications and services, FIWARE offers an original ecosystem that makes the open data available.

All of these topics will be addressed during a busy agenda taking place in Hamburg, from lectures & workshops to time dedicated to exchanging information and networking with those that share your very same opinions and interests. Be sure not to miss out on hearing some of the world´s most influential speakers discuss the future internet and get the opportunity to learn more about the FIWARE Regions initiative, promoted by FIWARE Mundus (6th Nov) which focuses on decision-making, sustaining innovative ecosystems and ultimately, developing smart cities.

By participating in ECFI 2015 this week, you will have the opportunity to connect and discuss with representatives in the ICT domain the key questions surrounding the future internet, so everyone gains something from the constructive networking sessions. No-one within this ecosystem can advance and succeed alone so we need you all there to move forward in this imperative step towards leadership in ICT. The ECFI conference will be rounded off by a closing ceremony taking place at 20h on 6th November.

This is an event not to be missed if you, like us, are interested and committed to the advancement of the future internet and the creation of smart applications and services by increasing and extending our knowledge to achieve what we know we can do.                                                                                                                                                      

For more details on the agenda scheduled for the ECFI event, practical information on locations and hotels as well as contact information, visit the ECFI homepage.

FIWARE in Campus Party Mexico 2015

 Blog, events, Hackathons  Comments Off on FIWARE in Campus Party Mexico 2015
Jul 312015
 
logo-campus-party_cuadrada

Guadalajara (Jalisco, Mexico), the place where Mexican traditions as widely known as tequila and mariachis were born, the second city of the country in population, did also place itself as a leading Mexican city in terms of technology from the 23rd to the 26th of July 2015. As Sao Paulo (Brazil) did in February 2015, during those days Guadalajara 2hosted Campus Party Mexico 2015 and gathered an audience much bigger than expected. Longing to see some of the participants such as Rodolfo Neri Vela (first Mexican astronaut), Zach King (Vine star) or Bruce Dickinson (lead vocalist of Iron Maiden), campuseros could also live a true FIWARE experience! Do you want to know what we did there? Keep on reading and discover it all!

Right next to Palco Luna, the FIWARE logo brightened with a blue light and in strong contrast to the white that dominated the place. Among other reasons, this year, FIWARE attended Campus Party México 2015 to present the new FIWARE node that is to be open and that will become the biggest node in Latin America, thus strengthening the role that FIWARE plays in Mexico and achieving technological autonomy for the country. This node was presented earlier that week in Mexico D.F. in collaboration with Infotec and the Mexican 1Technology Platform (MTP). This will allow Mexico, as Juanjo Hierro stated during Campus Party, to be the first Latin American country to deploy FIWARE and its acceleration programmes.

Participants in Campus Party Mexico 2015 could attend both an introductory speech by Juanjo Hierro, Hugo Estrada and Juan Manuel Romero in Palco Tierra and detailed workshops by technology experts to learn how to use FIWARE to make the most out of their ideas. Juan Manuel Romero did also present his own project, Cares, and his own experience as FIWARE entrepreneur, finalist of a FIWARE hackathon in other Campus Party and winner of the FIWARE Smart Society Challenge. But not only that! Attendees could also participate in the #FIWAREIoT competition. They only needed to follow FIWARE on Twitter and tell us what they would connect to the Internet of Things. The best answers got a FIWARE T-Shirt!

Let’s be honest, all of that is great, but the truth is that, if there was something that drew everybody’s attention, it was the FIWARE 4Smart Apps hackathon, whose prize climbed up to 170,000 pesos (about 10,000 €). Pedro Pablo Rodríguez won the first prize with the project HugTeddy, which allows busy parents to watch for their little children and not to miss out any detail of their growth. Sounds interesting, doesn’t it? Stay tuned because we will soon post more information about the three projects that got the three prizes, so that you can learn how they used FIWARE to develop their own projects.

In short, Campus Party Mexico was, as it always is, a great and funny experience both for the FIWARE team and all the developers that participated in our activities. The only thing we can say is… see you soon, campuseros

Cloud Robotics: When Robots Got Smart

 Blog, Developers  Comments Off on Cloud Robotics: When Robots Got Smart
Jul 292015
 
Humanoid robot hand

The last 200 years have been crucial in terms of technological evolution, but the human brain has not changed much for the last 500.000 years. If we have about the same "computing power" as our ancestors, there must be some other reason for this huge boost.

We are not smarter than the first homo sapiens, we just have better ways to share information.

 

On the early 2000's we had great expectations from robotics. We thought we would have robots all over the place improving our quality of life by now, but technology has failed our expectations and we’ve lost interest in this amazing field for the past 10 years. People are starting to be tired of expecting a revolutionary breakthrough that never comes.

 

blog1

 

https://www.google.com/trends/explore#q=robotics%2C%20%2Fm%2F02y_9m3&cmpt=q&tz=Etc%2FGMT-2

 

Clearly, other technologies such as cloud computing are evolving much faster and getting naturally adopted by users of all kinds. Think for example, about the amount of information we all share on the "cloud".

 

Robots don't need faster computer brains, they just need better ways to share information.

 
Cloud Robotics is the robot equivalent to our human learning and language skills. It is their way to share knowledge, information and process amounts of data that go far beyond from our current capabilities. Humans are not born knowing everything, we simply learn from each other and ask what we don't know about.
 

Just imagine robots that could identify any object by simply asking about it in the cloud. What if your robot could access a database with recipes in order to cook your favorite meal? Think even bigger; robots could access any IoT sensor located anywhere because they use, as you do, its contextualized information.

 

There is no need to wait for another 50 years in order to get smarter robots able to share their knowledge. Nowadays, thanks to the increasing interest of Telecommunications companies in Cloud Computing and IT technologies, standard cloud platforms are starting to grow quickly, and we, at Ikergune are working towards an integration that will help making the most of these two worlds, Robotics and Cloud platforms.

 

The key to this breakthrough is working with standard and open source platforms, that’s why we chose ROS and FIWARE. ROS is the most active and standardized robotics software with a very active community of developers and FIWARE, thanks to the support of big telecom companies and the European Commission, is an open cloud platform growing very rapidly; exactly what the robotics community has been missing.

 

FIROS is an Opensource software that helps ROS connecting to the FIWARE Cloud. This connectivity lets robots making the most out of all the cloud services and allows all developers to manage and control connected robots even without being experienced roboticists.

 

Here is how FIROS will help robots being smarter:

 

Identifying unknown objects is easier and faster with FIROS. Robots are now capable of uploading a picture to the FIWARE cloud and get information, descriptions and instructions of use based on its 3D shape and contextual information such as the room where ti is placed. All this object information is located at your private server, a public object repository or requested to other connected robots.

 
 
blog2
 

 

Knowledge downloading is still science fiction for humans, but FIROS makes it a reality for robots. It is currently possible to teach robots through imitation so they learn how to open a door, what simply creates the required trajectories for its arms to operate the handle. Once this knowledge has been acquired, FIROS translates the new experience model to the FIWARE cloud so any other robot can download it and open that door. This is a powerful tool; one robot learns, they all benefit from its experience.

 

blog3

 

Using connected things is something we are starting to hear a lot about. We, humans, are getting used to the Internet of Things, but robots can now take it for granted! FIWARE is already compatible with many IoT sensors and actuators, what means that thanks to the intelligent integration provided by FIROS, any robot, is able to use any device… anywhere. There is no need for actual physical interaction with the light switch, robots will simply tell the lights to turn on.

 
 
blog4
 

By 2023, a computer will be equivalent to a single human brain in terms of computational power; by 2045 it will even surpass the computational power of all human brains combined together, but remember, it is not our computational power what makes us smarter, it is our ability to share knowledge, experiences and information. Robots are just at the edge of a new revolution, FIROS is the tool to make them smarter.

 

Let’s start sharing our experiences on the cloud, check out the FIROS repository in GitHub

 

Ángel Hernández

FIWARE Orion Data Source Now Available for Freeboard™

 Blog, Developers  Comments Off on FIWARE Orion Data Source Now Available for Freeboard™
Jul 132015
 
Freeboard & FIWARE

We are excited to announce that the FIWARE Orion data source is now available on Freeboard!

In a nutshell, Freeboard allows FIWARE developers to build real-time, interactive dashboards and visualizations in a matter of minutes using the intuitive drag & drop interface for data at Orion FIWARE. According to its own webpage, the advantages of using Freeboard include its simplicity (intuitive interface), its cost (you can get started for free), its production readiness and its open-source nature.

Among other functionalities, it offers the following features:

  • Flexible Data Sources
  • Development with Widgets (you can select from a list and add your own)
  • Drag & Drop Simplicity (you can change layouts easily)
  • Public or Private access
  • Freeboard duplication (duplicate any Freeboard and use it as a starting point for a new one –permission required)
  • You can share it instantly (every Freeboard has a unique URL that you can share via email, SMS and social networks)

On the other hand, Orion is one of the main enablers developed by FIWARE. It maintains and delivers context information (like sensor data collected by an Arduino, weather information gathered from a station, and so on), supporting standard OMA NGSI Publish-Subscribe APIs.

FIWARE always tries to help developers, service providers, enterprises and startups to develop products that satisfy their needs while still being open and innovative. This is why we were inspired to create an open source plugin for Bug Labs’ visual dashboard, Freeboard.  Making the plugin was fast and easy thanks to the documentation and help provided by the Bug Labs folks. In just a few days, the plugin was up and running!

 

Freeboard & FIWARE

Freeboard showing sensor data from Thinking Things connected to FIWARE Orion

Using this new Orion FIWARE datasource, anyone can create an incredible dashboard in a couple of minutes without writing a single line of code. The plugin has been really well received at FIWARE IoT hackathons.


We hope you try the new Orion FIWARE data source on Freeboard.

What makes a Smart App?

 Developers  Comments Off on What makes a Smart App?
Jul 012015
 
Smart Applications

The following post is a collaboration by Benedikt Herudek, consultant at Accenture. We would like to thank him for his collaboration and willingness to participate.

FIWARE applications are all about creating smart services and that requires being aware of the context. As one might expect, FIWARE doesn’t have a patent on that idea but hooks in to a wider trend in digitalization and IoT: nowadays, we have so much and so much potentially useful data available via the Internet and sensors that we could benefit from separate units of software to handle it, which are referred to as Context Brokers. Following Gartner’s Context Brokers for Smarter Business Decisions, published on the 21st of January 2015:

The underlying concept of a context broker is to have a separate software facility that gathers, prepares and serves context data so that a decision maker —a person or an application system— can have the benefit of this data without having to do all of the work of obtaining and managing the context data as part of the application itself. It is essentially a design pattern for sourcing context data more efficiently and effectively, offloading work from the decision-making application. A widely used Context Broker coming as an apache license is mosquitto.

FIWARE uses that concept (described to some extent in this blog post) and adopts it mainly (for the moment) for Smart Cities and Internet of Things. FIWARE applications are therefore supposed to be smart, in the sense of context aware applications. One could say, FIWARE does mainly two things with this idea. First, it tries to establish a standard protocol accepted all over Europe and thereby scales a market. Second, FIWARE does context management in a smart way. FIWARE context management is modelled along the design of the SNMP simple network management protocol reusing a standard called ‘NGSI’. The original NGSI standard has been created by the OMA standardization organization. However, this original definition is “abstract” and not directly usable, thus FIWARE has bound it to a “concrete” API definition based on RESTful design principles.

In that design, there is a context of so-called 'Entities'; i.e. relevant things to your application. 'Values' are the attributes of these entities, which change over time. A context could represent the reality in your own house or in a large city with entities like, for example, shops or buses.

The FIWARE Context Broker will allow your application to be unaware about how these context values are rendered: for instance, the temperature in a street could be rendered because users placed it on Twitter or rather because the city council decides to add sensors to buses. The FIWARE Orion Context Broker should hide this for you. The context model is extendable, so one can add features such as a value to rate certain buildings. FIWARE is built on REST (stateless) APIs, which are easy to use for developers. Payloads will use JSON or XML. If you need to know what the status of an entity is, you only need to read the value of an entity. If you want to trigger an action and the device allows so, all you need to do is changing the value of an attribute. You can do this with simple PUT and GET calls. The Context Broker connects to IoT agents, which connects to the devices.

Find here a visualization of the Orion Conext Broker from a 3rd party, not supported by FIWARE itself.

 

The Orion Context Broker shields you as a developer of Smart City applications from a complex setup of an agent – brokerage architecture. Compare it to the (business activity) monitoring solution of a production system for a large client. The Technical Architecture Team will have to deploy agents monitoring the systems, which will connect to the main system; for example, a console where you can see the status of an order or the memory consumption of a system. The infrastructure needs to be setup and maintained by a team of experts. As an end user, you don’t mind about how it works as long as your central instance allows you to interact with the deployed agents and the connected systems. In the world of Smart Cities and FIWARE, cities subscribing to the FIWARE standard would deliver the setup for you and you, as a developer, only connect to the front end, the Orion Context Broker.

The Orion Context Broker runs on top of the IoT Broker. This is a module introduced to handle the complexity of a large setup with 1000s of Devices and IoT agents connecting to them. Imagine you have an application with sensors in agriculture over large patches of lands over an entire country. Or maybe you have a city with many sensors and complex requests like, e.g.: 'Give me all cars in the street, their location and whatever else you know!'. Here, you might get several thousands of responses back. In that case, you will need a unit which handles and aggregates data for you and a unit to discover sensors in the street. A rule of thumb apparently says: with more than 1000 sensors, you should add an IoT broker to your application.

The IoT Broker will connect to the IoT agents in the field and manage them. The IoT Agents are pieces of software connecting to sensors from devices in the field. They translate IoT protocols like CoAP or MQTT into the Open Mobile Alliance NGSI standard that FIWARE will use. A showcase was done in Santander, Spain as the Context Broker and the IoT standard is developed by Telefonica research center.

From 'aware' to 'Smart'

Once you have all this data in your application, you will use other enablers to do smart things. FIWARE delivers a suite of generic enablers, which allow you to implement different functionalities.

FIWARE is also framed in the Open Data movement. This Open Data movement is pioneered by the (co-)founder of the world wide web Tim Berner Lee and connected to terms like semantic web, linked data, which has as one of its goals to make the web machine readable, where current HTML pages are targeted at human users to consume.

FIWARE uses the open-source Open Data framework ckan to offer a platform and marketplace for Open Data. Thanks to it, free data can be published, enforcing terms & conditions and using data with a fee. The scenarios here are either cities publishing data for free or companies publishing enriched data for a fee. Ckan datastore delivers search & discover functionalities to find published information.

One way of enriching data is to build FIWARE mashups on top of your dataset and visualize them this way. Such data mashups can be sold to newspapers to embed the information revealed in their online presence.

If gathering sensor data from the Internet of Things is a core concept, a Big Data analytics cannot be far. FIWARE hence offers a generic enabler to analyze Big Data. FIWARE uses hadoop under the FIWARE codename cosmos as it's a big data platform. Apache Hadoop's MapReduce and HDFS components were inspired by Google papers on their MapReduce and Google File System.

A typical use case of Big Data analytics would be that sensor data flows in via the Orion Context Broker to a FIWARE instance; for example, temperatures in the field. The Orion Context Broker itself only holds the last value of an entity. To have the historical view on temperature, one will connect the Orion Context Broker via a FIWARE component called Cygnus with hadoop, where the data will be stored and can be analyzed.  Cygnus uses the subscription/notification feature of the Context Broker, detailing which entities one wants to be notified when an update occurs on any of those entities attributes. Cygnus is based on apache flume and will allow to persist data from the Context Broker not only to hadoop but also mysql or ckan. Licenses are currently open-source, at some point these components might be feedback to the apache foundation to the hadoop ecosystem.

Telefonica delivers other add ons to hadoop called 'Tidoop' intended to allow using generic non HDFS data located at CKAN or Mango DB.

FIWARE offers Mashup technologies to create parts of front ends. This Mashup technology is useful for dashboards and maps, which are useful to be embedded, for example, in webpages to blend in a real time data camera from an open-source. A 'Widget' is a building block to build a 'Mashup'. Widgets are connected to each other via 'Wires'. Backends can be accessed directly by widgets via so-called operators. After you build such a mashup and have created a useful visualization, the mashup can be published back to the FIWARE catalogue to reuse and to sell it on the internal store. FIWARE also offers 3D and Augmented Reality visualization frameworks based on HTML5, WebGL, XML3D and XLOW.

FIWARE integrates the Kurento Mediaserver in its platform. Kurento is based on WebRTC, which is a World Wide Web Consortium standard with open-source delivered from Google.  It allows, for example, to create browser communication easily. You should be able to create something like Skype easily. Kurento is implementing this standard. Kurento is an open-source platform making it possible to create a rich WebRTC and multimedia applications. For example, you will use so-called media elements, which are used for example to record videostreams. One will need one video to receive and one media element to record the stream and one will need to connect them properly. Kurento also allows to integrate augmented reality elements in videostreams and can thereby be useful for a Smart City context, e.g. by adding virtual objects like arrows to walk through a street. Thanks to these technologies, it is also possible to detect building of large groups in a city, this could be useful, for example, to direct police to large crowds assembling during concerts or sport events. Kurento is closely integrated with the OpenCV libraries, mainly aimed at real-time computer vision and is used for interactive art, to mines inspection, stitching maps on the web or through advanced robotics and backed by Intel.

As an open platform, you can use any GUI framework like javascript or php frameworks as a base and use the described generic enabler for user interaction.

FIWARE and related Smart City Applications demonstrated at the Global City Team Challenge Festival in Washington DC (USA), 1-2 June 2015

 Conference, events  Comments Off on FIWARE and related Smart City Applications demonstrated at the Global City Team Challenge Festival in Washington DC (USA), 1-2 June 2015
Jun 122015
 
FIWARE

A FIWARE delegation composed of representatives from three start-ups from the SpeedUpEurope accelerator, representatives from the City of Valencia (Spain), a representative of the energy utility company from the City of Oldenburg in Germany, as well as the project coordinator of SpeedUpEurope and a representative of FIWARE Mundus, attended the Global City Teams Challenge exhibition and workshop, which were held on 1st and 2nd June in Washington D.C., USA.

 

“The visitors seemed to be very interested in our mobile application, ‘APP Valencia’, which informs to the citizens, in real time, about everything happening in the city and shows lot of information to everyone. This kind of app is apparently not common in American cities. Other visitors were really interested also in our applications for administration (eGovernment and integrated paperless administration). The visitors asked us if we are interested in sharing our applications with other cities, and at this point, of course we are ready to share best practices and cooperate further.” Gema Roig from City of Valencia.

The exhibition on 1st June gathered more than 1,000 visitors and 65 teams demonstrating smart city applications. At the FIWARE booth, Binee UG from the “Binee” team demonstrated their smart bin and app for rewarding and improving recycling in the cities; Teamdev showed the “TripStories” smart tourism and mobility application destined at supporting a better environment; and Open Data City from “WeBuildCity” showcased their Open and 3D City Development Platform for Urban Planning. The City of Valencia (Spain) presented several applications deployed in their city, including the “App Valencia” City mobile application, the Valencia eGovernment Integrated Platform, the Valencia Smart City Platform, and the Valencia Transparency & Open Data Portal.DSC_0115

The FIWARE booth was very well attended by many visitors all throughout the day. There was a good and continuous turnout, with different profiles, from small companies to universities and cities. Most of the participants showed genuine interest in FIWARE and as a result there were some very interesting interactions, opening up potential opportunities for FIWARE and for the start-ups in the USA and for the City of Valencia for future cooperation with US cities.

A dedicated FIWARE session allowed the FIWARE team to provide the audience with more details about the platform and the ecosystem, and the smart city applications being demonstrated at the booth. As a consequence, a number of people showed up afterwards at the booth to get more details and demonstrations.

The FIWARE team also attended the workshop on 2nd June, which gathered around 100 participants. The main issue DSCF0173that was raised by the US participants was the following: most cities are applying some smart solutions in their cities in the areas of energy, transport, safety, health, etc., and universities develop small pilot trials in those domains. However the cities do not have an integrated smart city strategy although they would like to share more what they do; and the universities are looking for solutions that would allow different applications to interoperate and be tested on a larger scale in several cities. There seems to be a real need for an integrated system/platform such as FIWARE, which was explicitly mentioned several times during the workshop. This was also highlighted in the main issues that are foreseen for the upcoming NIST framework for the Global City Team Challenge 2016, which shall be defined shortly.

In conclusion, FIWARE principles have been very well received during the exhibition and the workshop, and several universities and cities showed interest in exploring it further. Let’s make this happen through FIWARE Mundus!

“As coordinator of one of the [FIWARE] accelerators, I feel personally responsible for the success of the start-ups involved. I really believe that in this matter the three start-ups made great progress. I foresee that in within the next 6-12 months, we will be able to convince much greater audiences, and to me the Washington case was a proof of this.” Olaf-Gerd Gemein, SpeedUpEurope project coordinator.

Contact: fiware-mundus-req@lists.fiware.org

Contact point for FIWARE and the project teams in the USA: Jesse.SPECTOR@eeas.europa.eu


What do participants think?

“OpenDataCity as a company attracted surprisingly much interest from different groups – surprisingly, because the US is pretty strong in the field of data visualization already. People showed interest in our work with open data from cities, and especially in our general ability to make sense of and to find stories in huge datasets. I definitely made some interesting contacts for OpenDataCity.” Lisa Ros, OpenDataCity, “WeBuildCity” team

“We have been contacted by some US universities interested in our work, which could provide us with the opportunity to extend the collaboration that we currently have with some Italian universities. We have also started a dialogue with the Italian embassy in DC that wants to promote our work in the USA. And we have had the chance to better understand the US point of view on smart cities and, generally, on the ICT theme and this will be useful for our future approach into the US market.” Andrea Cruciani, Teamdev, “TripStories” team

"It was a great opportunity for us to showcase our project in front of an international audience and we were very proud to attend the event as part of the Fiware and the SpeedUP! Europe Team. Our booth and our prototype attracted many curious visitors among which there have been several potential clients and investors. Several municipalities showed great interest and we received useful leads for other cities too. The GCTC conference was a very a positive reinforcement for us that we are on the good track and there is a strong demand for our product even in markets outside Europe. We were also able to connect with several other companies and startups who might be interesting partners for us for further technological development.” Szilvia Varszegi, binee UG, “Binee” team

“As the representative of the EWE AG from Germany and support of binee, the GTCT Expo was a great platform to pitch enera, our “Energiewende” demonstration project.  There were new and interesting things popping up that reflect current trends in the energy market & smart cities that will lead to further talks.” Florian Fischer, EWE AG, Business Development Manager enera Project, “Binee” team.

“Some great innovations, and all around a wonderful representation of European entrepreneurialism!” Jesse Spector, Policy Officer, Digital Economy & ICT at EU Delegation to the United States

“Thank you all for this opportunity to visit Washington and this conference!” Lisa Rost, OpenDataCity, WeBuildCity

“It has really been a great experience” Vicente Rodrigo, Head of Area Development and Innovation, ICT Department, City Council of Valencia

 “Thank you for this awesome opportunity!” Andrea Cruciani, TeamDev, TripStories

“It was great to be part of a larger European team, because […] the different projects reinforced each other and as a team we received more attention from the audience” Szilvia Varszegi, binee UG

WP_20150601_12_32_45_Panorama

IoT Tutorial – Orion Context Broker & Arduino

 Developers  Comments Off on IoT Tutorial – Orion Context Broker & Arduino
Jun 102015
 
Orion Context Broker

By Telefónica  R&D Chile.

This tutorial will be divided into parts for easier reading and practical purposes.

1. Introduction to the technologies used

2. Hardware configuration

3. Arduino, software and communications

4. Orion Context Broker (FIWARE)

5. Action from a remote web

The idea of ​​this tutorial is to learn some theoretical concepts and quickly apply them in practice. Possibly, when you finish this tutorial, you will have imagined hundreds of alternatives based on the original concept to create a sensor-based solution connected to the Internet (basic principle of the Internet of Things).

Come on, let's get started!

Introduction to the technologies used

Before we start, it’s important to briefly review and understand some key concepts. If you are familiar with these concepts, you can proceed directly to the next section.

First of all, the Internet of Things corresponds to the third great wave in computer technology. The first wave was the development of computers in the 60s, then the use and exploitation of the Internet, with mass penetration starting in the eighties, and now the IoT. But what is the Internet of things?

To answer the question above, we must understand the concept of 'connected things' whereby electronic devices can send and receive information via the Internet. Examples including home thermostats, smart cars, entry controls and a thousand other devices. But the reader might be wondering why these devices should be connected to the Internet.

Primarily because the data obtained from these devices can later be combined with other data to obtain more advanced functionalities. Imagine you set your smartphone alarm to wake you up in the morning. It's winter so there is not much light when you wake up. At the sound of the alarm, soft lighting is activated, the toaster starts to warm your bread and the coffee begins to heat up. This may be a rather elementary example, but it helps us to understand that the more information we have and can interrelate, the more devices we can actually create to help improve our quality of life.

One interesting point to discuss is the use of standards. For the specific case we will review later in Orion Context Broker section, an adaptation based on the OMA (Open Mobile Alliance) NGSI (Next Generation Service Interface) specification is used. In simple terms, this means that the HTTP requests or actions to be used are those that are currently employed by browsers such as GET, POST, DELETE and PUT to interact with the Context Broker.

We have reached the end of part one of this tutorial, so let’s get started with the practical information.

Hardware configuration

This is now the practical part of tutorial, so let’s get started!

The components we will be using are:

• An Arduino Board (there are many alternatives, but a version with WiFi is essential)

• A breadboard

• LEDs

• Connecting cables

• A router or a cellular device that can deliver WiFi (tethering)

As a brief introduction to Arduino, it should be highlighted that this hardware is based on an Open-Source specification that, using a board with a microcontroller, allows interaction with numerous devices such as sensors, lights, switches, etc.

Arduino has its own interface development using the C ++ language and integrates a number of libraries to facilitate the 1implementation of prototypes. This does not mean that Arduino cannot be used in industrial or high-demand environments. However, in these scenarios cost issues usually lead to the use of ad-hoc components.

When observing the structure, you can recognize some digital pins on the top and analogue pins at the bottom. Also, at the bottom, is the row of connectors to power a testing board or breadboard. The board also must have a connector to an electrical outlet and a USB mini connector, among other components, depending on the version of the board and if you use add-on 'shields' or not.

If we connect a LED to the board we can do so directly, connecting the LED to digital pin 13 and the GND as seen here. Although it should be noted that the digital pin 13 comes with a resistor, so it would be unnecessary in the image below. (In other pins resistors must be installed) .

 

2

Lastly, the same result can be obtained using a breadboard. This is a good idea if you want to add more LEDs or sensors to our Arduino board so you can add more functionalities. Remember that on a breadboard power runs horizontally in the outer points and vertically in the inner points. So the result is:

 

3

Take note: Specifically, the Intel Edison Arduino board requires 2 Micro USB cables and a power connection.

Hard to understand? I hope not. This concludes part two of our tutorial.

Arduino, software and communications

In this tutorial we will learn how to program the Arduino board so as to turn the LED we installed in part two on and off. Then, we’ll use an internet connection with the board’s WIFI.

As a prerequisite, we must have already configured the Arduino software as per our operating system. Also, we must keep the board’s USB connected to our computer to load the program to our board. Look here to see how to install the (Intel Edison) software.

You must select the version of the software that corresponds to your operating system.

Once the software is configured and installed we open our IDE and start the coding.

This is an example of the Arduino IDE.  This is specifically the IDE for Intel sets, although the concepts are the same.

 

4

In the second row menu (where the check icon is), you’ll find the commands to compile and upload our developments to the board.

Looking at the code, we have two functions. One is setup, where variables are normally initialized and the loop where the operations are executed as required.

In the File menu we have the option Examples – 01 Basic – Blink. This will display a new window with the code needed to test our LED:

/*

Blink

Turns on an LED on for one second, then off for one second, repeatedly.

This example code is in the public domain.

*/

// Pin 13 has an LED connected on most Arduino boards.

// give it a name:

int led = 13;

 

// the setup routine runs once when you press reset:

void setup() {

// initialize the digital pin as an output.

pinMode(led, OUTPUT);

}

 

// the loop routine runs over and over again forever:

void loop() {

digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level)

delay(1000); // wait for a second

digitalWrite(led, LOW); // turn the LED off by making the voltage LOW

delay(1000); // wait for a second

}

The example that Arduino generates is quite simple. In line 10 a variable is set with the corresponding pin number on the board. Afterwards, the pin with the variable 'led' as an output is initialized. And, in the loop, the LED is turned on and off separated by a delay of one second. Before loading the code to the board, the IDE must be configured so it knows which board and what port we’re using:

Select Tools> Board> Intel Edison

Select Tools> Port> dev / ttyACM0

Now, if the board is properly plugged into the USB port, we can 'Upload' the code to the board (Ctrl + U) and we should see our LED turning on and off every second. Amazing! Right?

Now to use the WIFI, we need to work a little harder. Luckily, in the Arduino examples, we have a WIFI section with different alternatives when using networking solutions. Among them are Telnet servers and clients, Web servers and clients and even a Twitter client.

TIP: In our case, for purposes of simplicity, we can use a Web client since we will subsequently send requests to the Orion Context Broker using the HTTP protocol. Note that there are better solutions, but for educational purposes we’ll try to minimize the code as much as possible.

#include <SPI.h>

#include <WiFi.h>

   /**************************/

  /*  Setup configuration              */

/************************/

char ssid[] = "YourWifiSSID";                     //  Name of the network

char pass[] = "WifiPassword";                       // Network password

char server[] = "130.206.80.47";                    // ORION IP address -> Create in /lab/

int status = WL_IDLE_STATUS;   // we predefine the status as On but not connected

int led = 13;                                     // We initialize a variable to assign the pin number to which the led will be connected

/**

* Arduino Setup configuration

* (Execute only once)

**/

void setup() {

  // Inititialization of the Arduino serial port

  Serial.begin(9600);

  while (!Serial) {

    ; // wait for serial port to connect. Needed for Leonardo only

  }

  // Verify that the board has a WiFi shield

  if (WiFi.status() == WL_NO_SHIELD) {

    Serial.println("Wifi shield is not available");

    // Do not continue with setup, or in other words, stay here forever

    while(true);

  }

The complete code is available in:

https://bitbucket.org/tidchile/ecosystem/src/

FIWARE and Orion Context Broker

As discussed earlier in this tutorial, the Orion Context Broker is a service that based on the OMA NGSI 9/10 standard and can handle sending and receiving contextual information. What does this mean? Primarily, to handle a large number of messages from entities and manage updates, queries, and also handle data subscriptions from the entities. Remember that according to the NGSI 9 and 10 standards, we handle entities as an abstraction of the physical nodes or devices used in IoT solutions.

In the example above, we made an update request to an entity already created. But first let's review how to work with Orion. A simple way to test the OCB service is to create an account in https://account.lab.fiware.org/ and create a virtual machine with Orion preconfigured in the Cloud section. Alternatively, access Orion’s GitHub site and download a virtual machine to run in our local environment

Another useful tool is a REST client, but we can use cURL if it seems simpler. RESTClient is a client for Firefox that is fairly easy to use.

The configuration aspects of the OCB are outside the scope of this tutorial, as it would require too much detail. Regarding the FIWARE Lab, it is important to note that FIWARE provides virtual machines in the Cloud for free to test FIWARE compontents. You only need to create an account to access the services. Only a quick caveat. As of today (19-03-2015) and temporarily, Spain has no resources available, but there are other regions where VMs can be created. 

When we have the necessary tools, the most basic way to interact with the OCB is:

1. Create an entity:

To do this you must take into consideration several factors.  Firstly, the call is sent as an HTTP POST request, for example, http://myhost.com:1026/v1/updateContext. By this we mean that we are occupying version 1 of the API with the updateContext operation.

We also have to define several variables in the header of the request:

Accept: application/json

Content-Type: application/json

X-Auth-Token: [TOKEN AUTHENTICATION]

Regarding the token generation, the simplest way is to use python script created by Carlos Ralli on GitHub. A FIWARE account and running the 'get_token.py' script is required.

After setting the header of the request, configure the 'body' of the request using the following JSON code:

{

  "contextElements":[

    {

      "type":"LED",

      "isPattern":"false",

      "id":"LED001",

      "attributes":[

        {

          "name":"switch",

          "type":"bool",

          "value":"false"

        }

      ]

    }

  ],

  "updateAction":"APPEND"

}

Here is the structure of a "context Elements" which is a group of entities with certain attributes such as "type", "isPattern" and "id". "type" refers to a defined type and allows searching for entities by a particular type. "id" is an attribute that must be unique for each entity to execute searches based on this ID. "IsPattern" will be explained later in point No. 2.

You can also add a number of attributes to the entity in the "attributes" property, where each attribute is defined by  "name", "type" and  "value". Finally, "updateAction" defines whether we will perform an "APPEND" or and "UPDATE".

If all went well, we will receive a 200 OK response from the server and it will give us the details of the entity created:

{

  "contextResponses" : [

    {

      "contextElement" : {

        "type" : "LED",

        "isPattern" : "false",

        "id" : "LED001",

        "attributes" : [

          {

            "name" : "switch",

            "type" : "bool",

            "value" : ""

          }

        ]

      },

      "statusCode" : {

        "code" : "200",

        "reasonPhrase" : "OK"

      }

    }

  ]

}

2. Consult an entity:

To consult an entity, the standard operation is 'queryContext' which would be http://myhost.com:1026/v1/queryContext . We also apply the headers described in point No. 1 and use POST.

The JSON used in the body of the request would be as follows:

{

  "entities":[

    {

      "type":"LED",

      "isPattern":"false",

      "id":"LED001"

    }

  ]

}

This is where you can use "isPattern" in "true" and work either the "type" field or "id" field with regular expressions if we want to execute a slightly more complex search. In the example above we are only looking for the same entity created through the "id".

There is also a simpler way to do the same query using the following request: GET http://myhost.com:1026/v1/contextEntities/LED001 where LED001 is the "id" of the entity to search for.

3. Update an entity:

This is identical to point No. 1 but changing the "updateAction" attribute from "APPEND" to "UPDATE".

Finally, integrating all that we reviewed, we will be able to generate an action from a simple Web page that can be deployed on a remote server and actually prove that the application’s LED is activated remotely using the OCB.

To do this we will use the LED001 recently created, by setting the 'switch' attribute from true to false and vice versa to check the action.

Our web would look like this:

 

5

For this, the html code, css and js are shared in:

https://bitbucket.org/tidchile/ecosystem/src/

The battle over the “Internet of things”

 Blog  Comments Off on The battle over the “Internet of things”
May 262015
 
pc2

The following post is an adaptation of the article written by Erich Möchel and published in FM4.ORF. We would like to thank him for his interest.

This week, an open-source project funded to the tune of millions by the European Commission will be making a four-day appearance in Vienna.

Starting yesterday, Vienna will spend four days at the centre of a major European Commission project called FIWARE. This research and development project has 300 million euros of funding and is a significant technical component of the European Commission's digital agenda. FIWARE is a flexible open-source cloud system with a host of standardised interfaces that are compatible with any software. This cloud was primarily developed to process data from the "Internet of Things" – such as office and building control systems, manufacturing facilities, telemedicine and smart cities.

The actual applications for this ambitious open-source project are intended to come from European small and medium-sized enterprises, for whom the workshop has been expressly designed. 80 million euros of direct funding has been set aside for SMEs. The big partners in the project (Orange, Telefonica and several other large European telecom firms) will remain in the background here, although they will provide development teams. They see good prospects of finally being able to hold their own against the Internet giants of the USA.

At the start of April, the independent IoT developers of Vienna assembled for a hackathon as part of World IoT Day. As well as the software, the hardware for almost all of the components is freely available and is thus fully customisable.

 

1

Strategy and net neutrality

The Commission is working towards abolishing net neutrality, which will allow telecom firms to create a separate channel for data, particularly in mobile phone networks. These "managed services" will constitute around 20 per cent of all mobile data, according to EU Commissioner Günther Oettinger, and are intended for critical systems.

This includes applications for specific areas in healthcare, such as remote diagnostics via local sensor networks, or the remote operation of medical devices. It also includes emergency and alarm systems, all communication systems used by emergency services and governmental bodies, and the increasingly large volumes of data captured by all kinds of sensors in networked road vehicles. All of this represents an enormous emerging market that American Internet firms are not just targeting, but have already begun to capture.

The workshop in Vienna is practice-oriented, and alongside general cloud applications there will also be demonstrations of applications specially designed to connect with the Internet of things.

 

2

 

From an ITU document on the subject of health data. Every concept beginning with an 'e' in TCP/IP jargon (such as 'e-health') has the prefix 'tele' in the telecommunications sector. However, the figure scarcely shows that the Internet plays a crucial role in the illustrated application.

[…]

Open platforms and alliances

An open-source system like FIWARE – which is developed by a wide-ranging set of partners, follows a unified set of technical standards and is making a name for itself as an "ecosystem" – has a good chance of standing up to the American onslaught in this new marketplace. It's no accident that FIWARE is based on Open Stack – an established cloud platform that is compatible with Amazon Cloud Services. This allows even large cloud applications to be migrated from one system to another without having to reconfigure everything from scratch.

 

3

 

Excerpt from the FIWARE developer toolkit

Open Stack was originally developed by the US cloud firm Rackspace in cooperation with NASA. The industry giants Intel, IBM, Oracle and Red Hat soon got involved, with SAP becoming the latest big addition in 2014. IBM and SAP are unsurprisingly also involved in the FIWARE project. SAP is the global market leader in enterprise software, and is naturally keen to expand into machine operation in future. IBM on the other hand is set to lose out on any alliance involving Google or Apple, since both of those firms are direct competitors of IBM in the cloud sector.

Just like the telecommunications firms, the two software companies are showing restraint when it comes to the FIWARE project. Although communal projects of this kind normally have a web presence decked out with corporate brands, the various FIWARE websites scarcely have any logos on display. The involvement of some of the big players can only be seen through the email addresses of employees assigned to the FIWARE project to work on specific modules.

The current FIWARE application catalogue and event calendar

How the FIWARE cloud works

To put it in 'cloudspeak' technical jargon, FIWARE is a full stack for infrastructure as a service – i.e. virtual machines and storage tasks. It also includes software as a service – a collection of tools for building user interfaces, 3D rendering and augmented reality, user management, monitoring virtual machines etc.

 

4

 

As well as the aforementioned services, this software ecosystem primarily consists of interfaces and connecting units (so-called 'middleware' applications) permitting the connection of protocols and applications that are technically not directly compatible with each other. An example of this is the 'IoT Context Broker' module, which controls sensor networks and allows readings to be taken automatically. FIWARE can use a range of current protocols to communicate with users and objects. That makes the 'IoT Context Broker' compatible with very different protocols, such as COAP or ETSI M2M.

Net neutrality and GSM protocols

COAP originates from the IETF Internet standardisation body and is compatible with HTTP. This allows values transmitted by sensors to be displayed directly in a browser window. ETSI M2M, by contrast, is a completely different protocol from the telecommunications world and was developed by the European Telecom Standards Institute. It is part of the GSM family of protocols and is designed to process data that will come from the mobile phone networks' managed services channels in future. In other words, this channel is identical to the so-called 'fast lane on the information superhighway', which telecom firms originally wanted to create for broadband entertainment services such as video streaming (for an additional fee).

The ETSI is not just developing the IoT standards for telecommunications; it has also announced that it will create interfaces for monitoring IoT traffic in the same way as telephone networks, since the monitoring paradigm applies to all telecommunications data.

 

5

 

A typical mini-Internet of things for controlling a home or office

The FIWARE framework can therefore run both on an international cloud network connected to a telecommunications network, and on a rented mini-cloud on a local data centre for the benefit of smaller companies. The COAP protocol in turn is used by independent communities of IoT developers around the world, such as small businesses, universities and individual 'makers'. Using a standard Raspberry Pi as a mini-server, Arduino micro-controllers as switches, and an ever-increasing array of sensors, it is possible to construct a basic network to control your home for less than the price of an iPhone.

Preliminary conclusion and outlook

At the same time as the event in Vienna, a two-day FIWARE hackathon is taking place in Nice with the theme "Smart Citizens in Smart Cities" and a prize fund of 20,000 euros. In May alone, a dozen FIWARE events took place across Europe, each lasting several days. Some of these were not so much dedicated to technical development as they were to financing rounds for start-ups, since FIWARE is also a kind of incubator project for new European companies.

It is impossible to give even a rough estimate as to how things will develop in the IoT sector, given the huge number of possible applications and the bewildering array of partnerships and alliances that have formed outside Europe. The only certain thing is that – in terms of volume – this is the largest initiative to promote open-source software that Europe has ever seen.