How Embedded Programming is Changing Due to IoT

By: Mubeen Jukaku, Technology Head at Emertxe Information Technologies

0
1608
Mubeen Jukaku, Technology Head at Emertxe Information Technologies

Introduction: Everything around us is expected to be “smart” these days – starting from mobile phones to washing machines! The Internet-Of-Things (IoT) is playing a key role in this enablement. IoT has emerged as an amalgamation of different technologies, which is expected to make life easier for an individual. Electronics and Embedded systems programming forms one big part of IoT. However, Embedded systems programming is going through sea of changes due to IoT.  In order to accommodate these changes Electronics Sector Skill Council of India (ESSCI), which is one of the skill sectors under SkillIndia has introduced a new Qualification Pack – Embedded FullStack IoT Analyst.

Let us take a look into these key changes and how ESSCI’s new QP is addressing them.

Change – 1: JavaScript everywhere

For years together Embedded System developers have been using C or C++ as the primary programming language. Invented in the 1970s, ‘C’ programming language is a structured, procedural language with a great set of features to deal with hardware (ex: memory management). Apart from this C offers the best optimized machine code, which is suitable for resource constrained Embedded Systems. In the similar lines C++ offered some key Object-Oriented Programming (OOP) features which helped to write reusable Embedded Systems code.

This is going through a major change as JavaScript is emerging as one of the alternatives for C and C++, when it comes to Embedded Systems programming. Recently an excellent JavaScript framework is getting introduced in the form of Cylon.js which is created for new age requirements given by IoT. Using Cylon.js one can very easily program an Embedded System with very fewer lines of code.

Change-2: The “Things” OS

The next big change is coming in the form of Operating Systems (OS). In traditional Embedded Systems developers need to put a lot of effort to bring up OS in the target hardware. This includes board bring-up, customizing course code, porting an existing application etc. They had choices between bare metal OS (RTOS) and OpenSource Linux.

The growth of IoT is leading to a lot of changes in Embedded OS. Major players are heavily investing in open source based highly customizable and easy to use IoT OS – Amazon Free RTOS, Android Things, Arm Mbed and Mongoose OS are some examples. An IoT OS is an operating system that is designed to perform within the boundaries that are particular to IoT devices, along with the restrictions on memory, size, power and processing scope, which has been addressed by IoT specific operating systems.

Change-3: Network and Protocols

The traditional Embedded Systems was not having a mandatory need of networking, as they can be standalone devices also. It was only required if the device has to connect with a network. In case of IoT networking and connectivity is a mandatory need. Hence, traditional embedded systems developer need to transition into IoT by giving more serious look into networking part.  Various IoT protocols like HTTP, CoAP, MQTT, XMPP are playing a key role in enabling IoT. Added to that technologies like REST APIs, Web sockets are making the data exchange and communication at web scale happen.

The Qualification Pack from ESSCI

All the above mentioned changes need to be appropriately mapped into a skill-development framework. This is very essential to train and make them job ready. Electronics Sector Skill Council of India (ESSCI) has been creating various Qualification Packs (QPs), which acts as a bridge between mapping a technology trend to a list of skills. In this regard a new Qualification pack has been created titled Embedded FullStack IoT Analyst (ELE / Q1404). A minimum Eligibility criterion is Bachelor’s Degree in Engineering / Technology / Statistics /Mathematics / Computer Science. By taking up the course which is aligned with this QP, an engineer can definitely be able to latch on to the IoT opportunity by adapting with some changes mentioned above.

Conclusion

Embedded systems development has come a long way. Right from single function devices to today’s super smart ones. From a developer’s point of view, it had quite a lot of challenges / barriers. Thanks to IoT it is going through a sea of changes. Going forward developers will have an easier way to program embedded devices thanks to the introduction of new JavaScript frameworks, Things OS by major players and adapting to networking standards and technologies. ESSCI’s Qualifications Pack on Embedded Full Stack IoT Analyst has been at the forefront of these changes by bringing in all these elements in terms of curriculum development. If any engineer wants to get benefited from IoT, this skill transition is necessary, where this QPs play very critical role in building tomorrow’s job-ready engineers.