Article 1

The Need for Fresh Air in the Internet of Things

Giacomo Baldi, Gualtiero Fantoni, Daniele Mazzei and Gabriele Montelisciani

Arduino, Raspberry PI, UDOO, Spark Core or similar prototyping boards have revolutionized the way people prototype IOT devices and robots, and have changed the paradigm also in light home automation as well as some industrial applications. However, although such boards have a great impact in prototyping the electronics, a similar revolution has not happened at the code level. In fact C/C++ is mostly used for coding and often too much time is spent in reinventing the wheel or in merging code written in the past.

 


Article 2

The Hardware Enablers for the Internet of Things - Part II (More than Moore)

Timothy Lee

Part I of this two-part series on "The Hardware Enablers for the Internet of Things," introduced how CMOS semiconductor devices enable wireline and wireless communications at what is commonly called the Physical Layer (PHY). The density of digital circuits (CPU, memory, I/O) has been increasing as the critical dimensions such as gate length and minimum feature half pitch have been scaled down by a factor of two every 18 months.

 


Article 3

How IEEE Rebooting Computing Will Help IoT

Bichlien Hoang, Sin-Kuen Hawkins and Alan M. Kadin

The Internet of Things (IoT) promises a world where all things are interconnected. Some call IoT, the Internet of Everything as it creates a vision of an unprecedented era of connectedness. Advances in networking and computing technologies will be one aspect to enabling IoT, in addition to social acceptance and successful business models. Several of the computing technologies and approaches being explored by the new IEEE Initiative on Rebooting Computing (RC) to address limitations in computational efficiency and performance, may also help in the development and maturation of the IoT.

 


Article 4

Reaping the Rewards of the IoT

Brian Pickering and Massimo Vecchio

With the power of a future internet becoming a reality, and significant promise from the IoT with participative sensing and smart cities and spaces, the ICT future looks full of promise. However, for the potential benefits to be within the reach of all stakeholders there are challenges to be dealt with now so we don’t sleepwalk into a closed shop of expensive and proprietary solutions; but we also have to take stock of the ancillary features and services which need to be provided.

 

 

This Month's Contributors

Giacomo Baldi is a computer scientist and a medical doctor. He works as a software architect implementing algorithms, devices and Apps in his medical work.
Read More >>

Gualtiero Fantoni achieved his PhD in Automation, Robotic and Bioengineering at the University of Pisa in 2005 and is an Associate professor of "New product development" and "Manufacturing engineering" at the University of Pisa.
Read More >>

Daniele Mazzei is a postdoctoral researcher at Research Center "E.Piaggio" of University of Pisa and a member of IEEE.
Read More >>

Gabriele Montelisciani has a PhD in Economics and Management Engineering. He is a Research Associate at the University of Pisa.
Read More >>

Timothy Lee is the 2015 IEEE Microwave Theory and Techniques Society (MTT-S) President.
Read More >>

Bichlien Hoang is a Senior Program Director, IEEE Future Directions. She managed the Life Sciences Initiative from 2011 to 2014, and is currently the Program Manager for the IEEE Rebooting Computing initiative.
Read More >>

Sin-Kuen Hawkins is currently supporting the IEEE Life Sciences Technical Community and the Rebooting Computing Initiative within Technical Activities of IEEE.
Read More >>

Alan M. Kadin is a Technical Consultant based in Princeton Junction, NJ. Earlier, he was a Senior Researcher at Hypres, Inc. of Elmsford, NY, focusing on superconducting circuits, and an Associate Professor of Electrical and Computer Engineering at the University of Rochester in Rochester, NY.
Read More >>

Dr Brian Pickering has worked in ICT for over thirty years, starting in IBM R&D working on speech and language, and moving into software development including telephony systems, advanced messaging and the management of complex distributed systems at IBM UK Laboratories in Hursley.
Read More >>

Dr Massimo Vecchio is a senior researcher at CREATE-NET, an ICT Research center located in Trento (Italy).
Read More >>

 

Contributions Welcomed
Click Here for Author's Guidelines >>

 

Would you like more information? Have any questions? Please contact:

Raffaele Giaffreda, Editor-in-Chief
raffaele.giaffreda@create-net.org

Stuart Sharrock, Managing Editor
stuartsharrock@ieee.org

 

About the IoT eNewsletter

The IEEE Internet of Things (IoT) eNewsletter is a bi-monthly online publication that features practical and timely technical information and forward-looking commentary on IoT developments and deployments around the world. Designed to bring clarity to global IoT-related activities and developments and foster greater understanding and collaboration between diverse stakeholders, the IEEE IoT eNewsletter provides a broad view by bringing together diverse experts, thought leaders, and decision-makers to exchange information and discuss IoT-related issues.

Reaping the Rewards of the IoT

Brian Pickering and Massimo Vecchio
May 12, 2015

 

With the power of a future internet becoming a reality, and significant promise from the IoT with participative sensing and smart cities and spaces, the ICT future looks full of promise. However, for the potential benefits to be within the reach of all stakeholders there are challenges to be dealt with now so we don’t sleepwalk into a closed shop of expensive and proprietary solutions; but we also have to take stock of the ancillary features and services which need to be provided.

Karen Eng recently looked at the options for the IoT: like many innovations, there is a danger of big players monopolising the potential. Instead, she wants it open for "seriously meaningful innovation" [1]. What is stopping it right now? Internet connectivity, says Eng, and computing power. The same message is echoed over and over again in many similar articles.

In the US, GENI (Global Environment for Network Innovations) provides computing power, and in Europe, there’s PlanetLab testbed, PACA Grid and GRIA (Grid Resources for Industrial Application); commercially, Amazon and Microsoft Cloud offer almost limitless storage and processing power; and in Europe, the National Research and Education Networks (NRENs) provide the internet-type connectivity. Access to hardware is not really enough, though; it would help to have a set of building blocks like littleBits and cloudBits [1]. It’s one thing, Eng suggests, to allow individuals to participate and create novel, if limited solutions; but it’s another if the authorities want to monitor and trace complex data interactions [2]. It’s not just power and connectivity that’s needed, it’s security, the ability to control throughput, monitor activity, and decide where to run an application and to store the application data: different jurisdictions will expect different things.

Since the financial and economic crash of 2008, the European Union launched Public-Private Partnerships to take Future Internet technology forward making it available not only to small, isolated users, but also large enterprises and SMEs. It combines federated data centres for the power, connected via the GÉANT data network, as well as FIWARE open cloud-based infrastructure, a collection of generally applicable software including IoT support [3]. Let’s look more closely at all this.

Interconnectivity

The true benefits of the IoT lie not only in gaining access to individual devices and the data they provide, but also in being able to connect (sometimes on demand) to and co-ordinate other devices providing different data from different sources and locations. A FIWARE environment, including FIWARE Ops (the tooling and utilities for resource federation), provides the ability to interrogate and connect with devices and other resources on an ad hoc basis. Take crowd-sourcing: you want to exploit open data from a city authority (points of interest etc.), and to aggregate it for individual subscribers' phones and wearables. The real challenge is the dynamic collection and correlation of vast amounts of heterogeneous data from all available sensors, including citizens themselves, and then providing a personalised context-aware service to end-users. This imposes enormous strain on making, managing and exploiting connections; but this can be shown to work in a European environment, based on the data available in the city of Trento, Italy (cf. [4], UCY2).

Monitoring

With the potential to attach remote devices anywhere and at any time for brief or longer periods, it is essential to be able to monitor what’s going on, for instance to manage Quality of Service (QoS): an infrastructure provider wants to ensure they can meet all their customers’ requirements; and a consumer wants consistent performance everywhere. Take live video (cf. [4], MG2); sensitive information and data like medical or energy consumption may also need special treatment (cf. [4], MG1).

Localisation

Other data management issues include where data are stored and processed. Traditional cloud solutions don’t often allow control over where data are stored or processed. But the law may require an IoT developer to direct where and how information and data are processed. Add in a typical mobile application maintaining persistence across domains and you have a major issue. Imagine a patient at home monitored by a geographically dispersed medical team. Turn the problem on its head: don’t make the data follow the medical team, let them come (virtually) to the data instead (cf. [4], UC1v2).

Security

Open interfaces and ease of connection come at a price though, requiring safeguards around access and interoperability. For the IoT developer and provider, their devices must be secure during development and operation. A balance needs to be struck between usability and security. The environment needs to be aware of this, and at the same time encourage trust in the services it provides. So adaptive services must be crafted which maintain the same levels of security and control as they 'follow' the user and the service provider (cf. [4], MG3).

There’s one final piece, though, which the supporting infrastructures, interconnectivity and software components need to provide.

Ecosystem

It’s not enough sometimes to have innovative ideas; there’s one final piece. Just as the physical infrastructure cannot operate in isolation but needs connectivity not least to remote peripheral devices and geographically distributed users, so the development and testing environment encouraging IoT developers and providers to engage has to include a community: groups and individuals with experience, who represent all the main interests involved, and who can help grow and support new ideas from paper into the real world. It’s this community aspect that’s often missed. Collaboration and sharing experience and know-how is essential to maintain and develop the potential offered.

With the European public-private partnership initiatives, there is a new opportunity to capitalise on a fully integrated technical as well as contextual development environment. Moving forward and keeping the benefits of the IoT open and accessible to all players, we are seeing the potential for innovative collaboration within our technical reach. But there are different skills and different users who will need to be able to understand and exchange ideas with each other to reap all of the innovation potential.

 

References

[1] K. Eng, "What’s next for the Internet of Things?" 2014. [Online]. Available: http://ideas.ted.com/whats-next-for-the-internet-of-things/

[2] "Policing (Wired UK)," 2015. [Online]. Available: http://www.wired.co.uk/policing

[3] "The FIWARE Catalogue," 2015. [Online]. Available: http://catalogue.fiware.org/

[4] "XIFI project: year 2 showcases," 2015. [Online]. Available: https://www.fi-xifi.eu/showcases.html

 


 

Dr Brian PickeringDr Brian Pickering has worked in ICT for over thirty years, starting in IBM R&D working on speech and language, and moving into software development including telephony systems, advanced messaging and the management of complex distributed systems at IBM UK Laboratories in Hursley. After joining the University of Southampton, Brian has more recently focused on the motivations for and reality of online participation. He holds a doctorate from the University of Oxford in psychoacoustics, has published on federated systems and patented work from DSP exploitation to adding the human into HCI and advanced dialogue systems.

 

Dr Massimo VecchioDr Massimo Vecchio is a senior researcher at CREATE-NET, an ICT Research center located in Trento (Italy). He received the Laurea degree (Magna cum Laude) in Computer Engineering from the University of Pisa (Italy) and the Ph.D. degree (with Doctor Europaeus mention) in Computer Science and Engineering from the IMT Lucca (Italy) in 2005 and 2009 respectively. His current research topics include the Internet of Things, Future Internet technologies and artificial intelligence techniques (especially bio-inspired meta-heuristics for global optimization). He is a member of IEEE and is currently leading the Showcases Work Package of the XIFI European project (www.fi-xifi.eu).

 

 

How IEEE Rebooting Computing Will Help IoT

Bichlien Hoang, Sin-Kuen Hawkins and Alan M. Kadin
May 12, 2015

 

The Internet of Things (IoT) promises a world where all things are interconnected. Some call IoT, the Internet of Everything as it creates a vision of an unprecedented era of connectedness. Advances in networking and computing technologies will be one aspect to enabling IoT, in addition to social acceptance and successful business models. Several of the computing technologies and approaches being explored by the new IEEE Initiative on Rebooting Computing (RC) to address limitations in computational efficiency and performance, may also help in the development and maturation of the IoT.

IoT has been called the most disruptive technological revolution since the advent of the internet. The internet has been on a steady path of development and improvement, but IoT is its first real evolution that will drastically change the way people live, learn, work, and entertain themselves. One projection suggests that IoT will have over 50 billion humans and objects, or nodes, interconnected by 2020. Another projection suggests 1 trillion connected devices by 2025. A plethora of data can be gathered from multiple devices and applications connected to an always-on network, and then fused and analyzed in real time. IoT may increase the efficiency of a production line, provide 24´7 monitoring of a patient, enable data collection for long-term research, and provide a whole host of new services for consumers. IoT is transforming many industries, including transportation, healthcare and manufacturing with connected cars, connected homes, wearables, and industrial internet. There are many technical challenges related to implementing a connected sensorized world.

From a networking perspective, there must be measurable service quality with guaranteed connectivity for a large number of mobile objects. An always-on network with a global footprint will require a balance of core communications systems with flexible infrastructure components that can keep a network robust and resilient. However, IoT is a network of networks and any weak link can impact its services greatly. Standardization in hardware and software among users and manufacturers would help in the management of this large heterogeneous network, but reaching consensus amongst a group of competitors will not be easy.

From a computing perspective, each of the IoT-connected devices, including the embedded sensors and processors, must be extremely miniaturized, energy efficient, and consume minimum power. These connected devices will capture data and generate data, producing oceans of data that will require a "brain" to analyze and transform the data into useful information. Pockets of personal data repositories everywhere will bring on the important issues of privacy and security. Identity management, access control, and data protection must be ubiquitous to ensure sensitive private and personal data do not fall into the wrong hands. Preventing hacking into the IoT connected devices will be a challenge when there are so many potential points of intrusion.

The human-to-computer interfaces also need to evolve to make the interactions less complex and truly natural. The ability to capture speech, touch, and gestures would enable users to interact with computing devices just as naturally as they interact with each other. Natural language translation and processing within the user’s context would further improve the user’s experience.

IEEE Rebooting Computing

IEEE Rebooting Computing (RC) is an initiative launched in 2012 by the IEEE Future Directions Committee to rethink the computer from "soup to nuts" including all aspects from device to user interface. Information can be found on the RC portal http://rebootingcomputing.ieee.org/.

Why the need to rethink the computer now? Because there is a general consensus that the primary technology driver for almost five decades, Moore’s Law for scaling of integrated circuits, is finally ending. Performance had been increasing exponentially every 18 months with the number of transistors on a chip doubling, drastically decreasing the size of typical computing devices. However, Complementary Metal-Oxide Semiconductor (CMOS) technology appears to be reaching physical limits, including size and power density, and there is presently no technology available that can take its place.

The RC Initiative takes a holistic view that addresses all aspects of computing, from design, function, performance, and energy efficiency, starting from a clean slate. It is an inter-society effort consisting of representatives and volunteers from nine IEEE Societies and Councils as well as other organizations involved in future trends in computer technology, such as the International Technology Roadmap for Semiconductors (ITRS).

Path to Internet of Things

Several of the concepts discussed within the RC Initiative have potential application to the development of an IoT environment. The three pillars of computing, which are Energy Efficiency, Human-Computer Interface (HCI), and Security are also important foundations in the IoT.

Figure 1

The three pillars of computing

Each of the IoT-connected devices must be energy efficient and energy aware. The concept of the edge mobile devices harvesting energy from an intermediate edge infrastructure could be an architectural implementation design to be considered for IoT. Similarly, the oceans of data that need to be processed could be off-loaded to the core of large and powerful datacenters with advanced computing and processing to further minimize power consumption of the edge devices so that energy harvesting is sufficient. At the same time, energy efficiency in the core or grid still needs to be addressed or it might become a major cost of operation. "Orthogonal Scaling" and adiabatic computing with massive parallelism might help drive power reduction in the circuits in devices and systems not only in the core/grid but throughout the IoT environment.

Applying the concept of dynamic and unsupervised machine learning in neuromorphic computing to the HCI and applications will most likely provide a better user-to-computer experience for the IoT edge device users. Some IoT applications can leverage approximate computing when an accurate answer is not necessary but a sufficiently good answer is enough to minimize energy consumption from user and network devices. Neuromorphic computing approaches offer great promises for efficiently analyzing large amounts of unstructured information under the dynamic conditions that IoT demands. Circuit designs for the devices and systems in the IoT can leverage the approach of augmenting CMOS to enhance performance through orthogonal scaling of memory storage and processing power.

Security is an important aspect in IoT as it may be the biggest system that mankind has ever built. With billions and perhaps trillions of nodes, security against unauthorized access or control must be distributed throughout the system. No centralized master protection system would be effective. Establishing forward-looking security standards and practices will help establish and implement a universal secured and trusted network of systems and devices. Each node must contain its own standardized security module that can automatically be updated with the latest protection algorithm. Furthermore, privacy must be maintained, which requires adequate encryption of data signals, as well as proper verification of authorized users.

Further R&D is needed for many of these promising technologies and approaches, but their potential benefits in performance, power consumption, security, and human interaction are promising. At the same time, broader collaboration and partnership with organizations such as ITRS and the Brain Research through Advancing Innovative Neurotechnologies (BRAIN) Initiative may help bring new ideas to the forefront to promote future computing technologies.

Despite the apparent saturation of traditional Moore’s Law device scaling, it seems clear that the exponential growth in numbers of devices connected to the internet will continue for the foreseeable future. This is the vision of the Internet of Things (IoT), with seamless integration among edge devices, communication platforms, and high-performance computing engines. For these to work effectively, edge devices must be low-power or no-power (energy harvesting), while data centers must operate efficiently. The networks must operate autonomously, without centralized control or constant human monitoring. Furthermore, the networks must maintain security and foster trust. Finally, the IoT must be configured and programmed so as to improve the quality of life (health, information, education, entertainment, transportation, employment) for all citizens.

We believe that the work done in the IEEE Rebooting Computing Initiative will contribute to the materialization of an effective, energy-efficient and secure IoT. We encourage those interested in IoT and others in the IEEE community to visit the RC Web Portal (http://rebootingcomputing.ieee.org/) and join us in this endeavor.

 


 

Bichlien HoangBichlien Hoang is a Senior Program Director, IEEE Future Directions. She managed the Life Sciences Initiative from 2011 to 2014, and is currently the Program Manager for the IEEE Rebooting Computing initiative. Prior to joining the IEEE staff in 2004, Bichlien spent 24 years in the telecommunications industry, at Bell Labs, Bellcore and Telcordia where her latest position was Vice-President, Network Engineering. Bichlien is an IEEE Senior Member.

 

Sin-Kuen HawkinsSin-Kuen Hawkins is currently supporting the IEEE Life Sciences Technical Community and the Rebooting Computing Initiative within Technical Activities of IEEE. Prior to joining the IEEE staff in 2012, Sin-Kuen served as a technical consultant to Army and DARPA programs. She also has 19 years of experience in the telecommunications industry, at Bellcore and Telcordia Technologies, where her last position was Director in Network Engineering and Design. Sin-Kuen is an IEEE member.

 

Alan M. KadinAlan M. Kadin is a Technical Consultant based in Princeton Junction, NJ. Earlier, he was a Senior Researcher at Hypres, Inc. of Elmsford, NY, focusing on superconducting circuits, and an Associate Professor of Electrical and Computer Engineering at the University of Rochester in Rochester, NY. He holds a PhD in Applied Physics from Harvard University. He is an IEEE Senior Member and is actively involved in the IEEE Rebooting Computing Initiative.

 

 

The Hardware Enablers for the Internet of Things – Part II (More than Moore)

Timothy Lee
May 12, 2015

 

Part I of this two-part series on "The Hardware Enablers for the Internet of Things," introduced how CMOS semiconductor devices enable wireline and wireless communications at what is commonly called the Physical Layer (PHY). The density of digital circuits (CPU, memory, I/O) has been increasing as the critical dimensions such as gate length and minimum feature half pitch have been scaled down by a factor of two every 18 months.

This observation is attributed to Gordon Moore who first described it in 1965 and in his paper entitled, "Cramming More Components onto Integrated Circuits" found in the Proceedings Of The IEEE, VOL. 86, NO. 1, January 1998.

Since 1998, the International Technology Roadmap for Semiconductors (ITRS) has served as compass to guide the industry by predicting technology trends and publicizing the need for industry standards, processing equipment requirements, and market drivers. The International Roadmap Committee (IRC) and 16 technology working groups meet regularly for workshops and symposia to publish and release an ITRS Roadmap every two years. The roadmap provides a benchmark for the semiconductor industry and helps to set the priorities for research and development. The road to "More Moore" has successfully scaled Complementary Metal-Oxide Semiconductor (CMOS) devices and interconnects to achieve better speed, lower power, smaller size and higher yields; resulting in today’s FinFET, FD-SOI, High-k, Low-k and SiGe technology. For the last 25 years, CMOS scaling has followed this law. In 1995, gate feature size was 250nm; today it is 22nm. By 2025, photolithography scaling may hit the limit at ~ 5nm. Recently, IHP (Germany) and GaTech (USA) reported at a SiGe transistor that operates at 0.8 THz, which is thought to be the territory of III-V devices. After "More Moore" efforts are exhausted, new technologies and materials to overcome this "wall" are needed. Research areas for "Beyond CMOS" now include integration of III-V materials, graphene, silicene, nano-wire transistors, quantum dots, NEMS and spintronics. But many of these innovations may never come into fruition or may take decades before entering the commercial mainstream.

More than Moore

In the 2005, ITRS addressed the potential ending of the scaling for CMOS and recommended a roadmapping for "More than Moore" (MtM) as forks in the road in the now famous diagram shown below:

Figure 1

The combined need for digital and non-digital functionalities in an integrated system

Clearly, data processing and memory will continue down a path of "More Moore"” and eventually be replaced by "Beyond CMOS" technologies. Digital processing is well suited for higher and higher integration for a System-on-chip (SoC) realization. But in turns of sensor, actuators, analog/RF and passives, ITRS shows a different path – the path we now commonly call "More than Moore" since their performance improvements do not scale according to Moore’s Law.

Mart Graef has written and presented "Positioning More than Moore Characterization Needs and Methods within the ITRS" in 2011. The paper and presentation slides are excellent resources.

It is indeed not a coincidence that the concept of the Internet of Things started to become popular at about the same time as the 2005 ITRS report. The five devices types identified for More than Moore designation are all enabling PHY level hardware whose advancement are critical for the IoT eco-systems to become a reality. The remainder of this article addresses some aspects and challenges for each one of them: Analog/RF, Passives, HV Power, Sensor/Actuators and Biochips.

With the lower voltages associated with each new generation of advanced CMOS, the performance of many analog/RF circuits are degraded (lower noise margins, lower linearity and reduced output power). Therefore III-V devices and circuits based on gallium arsenide (GaAs) and gallium nitride (GaN) still play a dominant role in the RF front-end chipsets for many wireless radios required for IoT. GaN devices can achieve operating voltages in the 28V to 48V range while delivering 5 to 10 W/mm power densities. III-V devices can easily support millimeter-wave operations (≥ 60 GHz). If the transmit/receive range is very short (<100m), Si CMOS or SiGe RFICs are sufficiently capable.

Passives in the form of capacitors, inductors, and resistors can be realized as thin-film or packaged for SMT attachment. In a typical electronics assembly or board, the passive components can account for greater than 60% of the PWB area and 80% of the Build of Material (BOM) device count. Reduction in passives is a challenge for small IoT devices.

High voltage power devices are needed to provide power management, regulation and conversion of system power supply voltages down to the much lower terminal voltages for the IC transistors. Traditionally, Si MOSFET and diodes has been the workhorse devices for such power electronics. More recently, GaN and SiC devices have emerged as potential technology to make smaller DC-DC converters.

Getting smart

Without Micro Electro-mechanical Systems (MEMS) and Sensors, the "Smart" in "Smart Devices" for IoT applications cannot be realized. Sensor and actuators perform as accelerometers, gyroscopes, image sensors, humidity sensor, microphones, pressure sensors, proximity sensors, and temperature sensors, touchscreen interfaces and switches. Sensors/actuators also do not follow Moore’s Law. To interact with the physical environment and people, making circuits smaller is neither required nor practical. The human to machine interface should be sized appropriately to meet the human geometries. For informative descriptions of various MEMS and sensor devices, the STMicro website, Bosch website and Freescale website are good resources.

Biochips will enable IoT applications in the area of personalized advanced healthcare, home diagnostic kits, healthcare monitoring and the low-cost collection of medical data shared with the patient’s health care providers through the cloud. IMEC has been a key researcher of biochips for IoT and wearable applications. Professor John Rogers, University of Illinois, Urbana-Champaign, will be giving a plenary talk, "Soft Assemblies of Radios, Sensors and Circuits for the Skin" at the MTT-S IMS2015 conference scheduled for 18 May 2015. Consumer product companies like Samsung and Apple are also investing heavily into IoT/Wearable devices for health and fitness monitoring.

ITRS has identified that the key technology to tie all the MtM and More Moore devices together as System in Package (SiP). Although each of the functions may be implemented in separate technologies or technology nodes, they can be integrated into a very small microsystem through wafer-level integration and chip stacking. For an example, see the EE Times article on a Bluetooth SiP module that enables IoT applications.

For further reading, I recommend that you download Wolfgang Arden’s "More-than-Moore" White Paper, read M. Brillouët’s “Towards a ‘More-than-Moore’ Roadmap” and P. Gargini’s presentation.

 


 

Timothy LeeTimothy Lee is the 2015 IEEE Microwave Theory and Techniques Society (MTT-S) President. Currently he is a Boeing Technical Fellow, working in Boeing Research and Technology in Southern California. He has over 35 years' experience in the design of MMICs, microwave components and sub-systems for electronic systems. His interests in IEEE MTT-S include the continued excellence of technical journals and conferences for the microwave engineering communities worldwide and the development of microwave/wireless solutions to benefit humanitarian needs.

 

 

The Need for Fresh Air in the Internet of Things

Giacomo Baldi, Gualtiero Fantoni, Daniele Mazzei and Gabriele Montelisciani
May 12, 2015

 

Arduino, Raspberry PI, UDOO, Spark Core or similar prototyping boards have revolutionized the way people prototype IOT devices and robots, and have changed the paradigm also in light home automation as well as some industrial applications. However, although such boards have a great impact in prototyping the electronics, a similar revolution has not happened at the code level. In fact C/C++ is mostly used for coding and often too much time is spent in reinventing the wheel or in merging code written in the past.

Of course people with different backgrounds experience different problems but all of them frequently face similar difficulties. Product designers want to create behaviours that can co-exist at the same time and are often frustrated by "anomalous" and unexpected results of their installations. Makers who have higher competences invest a lot of time in understanding how to code multithreaded behaviours, how to manage interrupts in C++, etc. and sometimes their code becomes really hard to maintain. Programmers are frustrated by executing "boring" tasks for their "customers", one example is related (again) to the lack of multithread, interrupts, callbacks, timers and exceptions that have for them become essential. Moreover, all of them have to recode when moving from one board to another.

The Raspberry Pi success demonstrates the need for an easy programmable and usable intelligent unit for the design of smart and interactive objects. Furthermore prototyping is no more a free-time activity for makers and geeks. However the use of a microprocessor based board is not the correct choice for the design of a lightweight, battery powered and miniaturized product.

On the other hand, microcontrollers have always been associated with applications related to low-level control and real-time requirements for industrial applications. This is why little effort has been invested in the usability and programmability of these extremely efficient control units.

In order to make a microcontroller usable by everyone it is necessary to add an abstraction layer on top of the hardware. This process has been done years ago in microprocessors with the design of various operating systems. Various programming facilities have been placed on top of these hardware managers. This created Virtual Machines in which inserting another abstraction layer gave programmers the possibility to design using very high level features, together with the guarantee of portability to various operating systems and, consequently, to various hardware.

Examples of operating systems for microcontrollers are ChibiOS, FreeRTOS and many others. Most of these systems are aimed at guaranteeing real-time features but a survey we recently did showed that real time is not really required when passing from low level to high level programming.

It is worth highlighting that real time does not mean fast. Real time systems are those that guarantee time constraints on execution: the constraint can be very tight like airbags, gearboxes, and injectors (order of microseconds). However in 99.99% of household appliances, 99% of designers’ applications, artistic installations, makers’ prototypes and at least 80% of industrial applications in production and manufacturing, you need constraints in the order of milliseconds (10-100ms).

ChibiOS, FreeRTOS and other systems allow different boards to be managed at an abstract level and also introduce the possibility of developing real-time applications but all of this is still in C. In the past some tentative moves towards an abstraction layer have been made by porting Javascript and Phyton (Espruino, Microphyton, etc.) on specific boards through the implementation of monolithic virtual machines with integrated hardware management layers.

Not reinventing the wheel

What we are talking about is not reinventing an architecture for the embedded world but rather mimicking what happened in the mobile domain with Android. Android is a Java Virtual Machine that runs on top of a Linux operating system. The operating system guarantees the hardware management and allows easy porting of the entire system to various hardware; thus guaranteeing future scalability and adaptability to the new generation of mobile chips and standards.

Figure 1

 

Below we study the abstraction problem and try to identify the technical and architectural requirements by exploiting the similarity with Android.

Technical and architectural details

The software suite for the design of interactive objects based on microcontrollers should include an Operating System (OS) and a Virtual Machine (VM) but also other enabling tools like a programming environment, a set of ready to use libraries and a connection with mobile devices and apps.

Having a Virtual Machine that runs on top of a multithreaded real-time operating system for embedded devices users can program in high level scripting languages (like Python, Javascript, etc.), letting the real-time operating system manage the real time aspects. The main issue for this design is the memory limitation of microcontrollers; therefore the dimensions of the OS+VM package have to be kept to a minimum. Thanks to an Abstraction layer boards are abstracted making the entire suite cross-platform. After installing the VM on a board the hardware is no longer a UDOO or an Arduino but a generic execution system able to run the user’s script. For this reason, the same bytecode can run on different boards eliminating the problem of recoding when new requirements demand a board change.

A browser-based integrated development environment (IDE) with "plug and play" board capabilities seems to be a good way of allowing different users to use the work station they prefer without being driven crazy by the installation of compilers, IDEs, and board-specific tools. Boards like ArduinoDUE, UDOO, Spark Core or Spark Photon, ST Nucleo, etc. have to be easily recognized by the IDE running on all the most used PC OS (Windows, Linux and Mac).

Connectivity. The software suite has to support connectivity: TCP and UDP connections, higher level protocols such as HTTP and, in cases where the board has enough resources also HTTPS. Currently many microcontrollers have insufficient memory to allow cryptography, but, to comply with such requirements new boards appearing in the market are more and more powerful. Therefore, the suite must easily communicate with cloud services like IFTTT, Paraimpu, Carriots, Spark Cloud, etc.

Mobile apps and integration with notification services. The ever increasing demand for remote controlled devices requires a system for easily connecting devices with mobile apps. What is needed is a generic mobile app that is able to discover all the devices available on the local network or to connect with a specific remote device. The app interfaces have to be located in the device and transferred to the mobile once requested by the app. This will allow the design of interfaces within the same code used for defining the device behaviour. Such an app could allow the control of the actuators and the monitoring of the sensors integrated in the device allowing also the extension of the device actuation and sensing to the mobile ones (i.e. reading the mobile GPS or alerting through the mobile notifications service).

Conclusions

A solution that has been tested to efficiently address many of these items following the previously described architecture has been developed and is called VIPER. "VIPER (Viper Is Python Embedded in Real time) is an open source development suite oriented to IOT and robotics and is composed of: a Virtual Machine, an IDE, a smart networking system and an app". The solution targets all IoT enthusiasts, software developers, and also application providers. More information is available at: http://bit.ly/kickviper, www.thingsoninternet.biz and viper.thingsoninternet.biz. Videos and case studies can be found at: https://www.youtube.com/channel/UCuh5UgwOCe_nAAHHgCAIfHg.

 


 

Giacomo BaldiGiacomo Baldi is a computer scientist and a medical doctor. He works as a software architect implementing algorithms, devices and Apps in his medical work. He has considerable experience in programming embedded devices and in developing software applications both for research and industry. His main research interests are in the development of interconnected and low cost medical devices for helping patients, medical doctors and hospital staff.

 

Gualtiero FantoniGualtiero Fantoni achieved his PhD in Automation, Robotic and Bioengineering at the University of Pisa in 2005 and is an Associate professor of "New product development" and "Manufacturing engineering" at the University of Pisa. His main research interests are in the field of robotics applied to manufacturing, production engineering and maintenance.

 

 

Daniele MazzeiDaniele Mazzei is a postdoctoral researcher at Research Center "E.Piaggio" of University of Pisa and a member of IEEE. He achieved the PhD in Automation, Robotic and Bioengineering at University of Pisa in 2010. Mazzei's actual research focuses on social robotics and human robot empathic interaction studies. He is the scientific coordinator of the FACETeam, a group of the Research Center "E.Piaggio" focused on the development of social and affective robotics. He also is the technical coordinator of the EASEL project aimed at developing a theoretical understanding of human-robot symbiotic interaction.

 

Gabriele MonteliscianiGabriele Montelisciani has a PhD in Economics and Management Engineering. He is a Research Associate at the University of Pisa focusing on: methods and tools for early stage innovation and collaborative design; sustainable innovation and development; new business development and entrepreneurship; value creation from ICT innovation. Montelisciani is the Project Manager for the project ENDuRE – European Network of Design for Resilient Entrepreneurship (EU Erasmus+ Knowledge Alliance).