Internet of Things: Engineering for Everyone

Not too long ago, the idea of open-source was synonymous with “free,” because, of course, there is no upfront cost involved. That perception was successfully realigned, through education, towards “liberty,” the freedom to use the resource without cost.

Open-source software

Open-source software

The distinction is important because, in order for open-source to continue to grow, it requires those benefiting from it to contribute back to the project in some way — an action that clearly involves a level of effort and therefore contains an element of cost.

The availability of open-source software and, more recently, hardware targeting embedded applications means that access to high-quality engineering resources has never been greater.

The emergence of open-source development platforms based on popular microprocessors, developed and maintained by dedicated volunteers, has effectively raised the level of abstraction to a point where nonexperts can now use these platforms to turn their own abstract concepts into real products.

The communities that surround these platforms provide a wealth of informal support, encouraging people who may have never considered a career in engineering to get their hands on real hardware and make real “things” that can change lives. This “maker” spirit is fueling new trends in technology and will play a major role in the Internet of Things (IoT).

The rationale behind that statement is simple; there just aren't enough qualified engineers in the world to meet the expected demand for IoT-enabled devices.

Put another way, the imagination of people who just “get” the possibilities offered by a more connected world will far exceed the capacity of developers to create new products, and once inspired, it's really hard to stop people demanding more.

This is where open-source comes into play. Creating platforms that are simple to obtain, easy to use, and intended to be modified allows almost anyone to enable their wildest dreams to become reality.

The range of current open-source projects is staggering and stems from an enterprise world where the rapid expansion of the Internet almost relied on a more open approach to programming and operating systems.

Perhaps the most influential person in those early years was Richard Stallman, who founded the Free Software Foundation and launched the GNU Project in 1983, as well as developing the GNU General Public License framework under which much of the open-source IP available is now distributed.

It took much longer for open-source to filter down to the embedded domain, but the influence of Linux and its many derivatives cannot be understated.

However, not all embedded projects require a network-aware OS such as Linux and a high-performance processor; the majority of embedded devices still have a microcontroller at their heart, and there is a growing adoption of open-source embedded operating systems such as FreeRTOS and eCos, supporting popular architectures like AVR and ARM Cortex-M. It is also here where open-source hardware is now really making its mark, using these and other leading 16- and 32-bit microcontrollers.

Open-source fundamentals
While the very nature of open-source implies no limitations, the ethos behind it is the power of collaboration. And to this end, anything released under an open-source license will normally require the developer to make available all the design files necessary to replicate the design at no charge.

Commercially, this doesn't preclude the sale of products based on open-source IP, and while the consumer sector has enjoyed the benefits of open-source software for many years, the use of open-source hardware in end products is less well established.

But thanks to some early pioneers, there are now several thriving communities based on open-source hardware targeting embedded applications.

Perhaps the best known is Arduino, which comprises both hardware and software.

Arduino board

Arduino board

In fact, there is even an open-source real-time operating system targeting this platform, called DuinOS, which is itself based on FreeRTOS, perfectly illustrating the power, flexibility, and extensibility of open-source.

More recently, Raspberry Pi has caused significant ripples in the engineering and maker communities, due to its low cost and high level of performance, as well as a wide range of computer-like peripheral support.

Rapsberry Pi board

Rapsberry Pi board

While this undoubtedly offers all would-be programmers easy access to a development platform running Linux, many much simpler projects require little more than a way to interface to a sensor and actuator, coupled with some relatively simple decision-making software.

This class of device is now possible thanks to the likes of Arduino and more recently BeagleBoard. These and other open-source platforms now regularly form the basis of crowdsourced projects appearing on sites such as Kickstarter and Indiegogo, as well as community sites that share the joy of engineering, like Instructables.

It's not unheard of for projects on sites like these to reach many times their original fund target. Projects looking for $20,000 have raised in excess of $1 million.

To read the rest of this article, visit EBN sister site EETimes.

11 comments on “Internet of Things: Engineering for Everyone

  1. prabhakar_deosthali
    December 31, 2014

    Open source is good. 

    But the main disadvantage of open source is that over time there will be so many parallel versions of it created by different vendors and users that it becomes difficult to get the best combination of the add-ons, as one may not be sure whether add-ons from one vendor will combine well with add-ons from another.

  2. Ashu001
    December 31, 2014


    This is a very genuine and serious problem with open-source Tech[Forking].

    But that is bound to happen unless you have 1 ,2 or 3 really strong vendors dominating the entire process going forward.

    Unfortunately or otherwise(thanks to Strong regulators in most places) this situation is a reality in Open Source in most places.

    Good thing is folks who follow Open Source also go only for the most popular solutions(which are updated constantly).

    The rest just fall by the wayside.



  3. ahdand
    December 31, 2014

    @tech4people: Well not really because we do have to make it work for us. Nothing comes for free. We have to work for it. 

  4. Himanshugupta
    December 31, 2014

    I know atleast two open source softwares which are tightly version controlled and the possiblity of have parallel versions are non-existent. Today's open source are not truely open source as for entreprise versions there are companies who costomize it to user specific needs ans provide support. However, for individuals its free and the ecosystem is very good.

  5. Taimoor Zubar
    December 31, 2014

    “But the main disadvantage of open source is that over time there will be so many parallel versions of it created by different vendors and users that it becomes difficult to get the best combination of the add-ons”

    @prabhakar: I don't think that's always the case with every open source system. I understand that's true for some but not all. Android is an example. Despite it being an open-source system, it is fairly controlled and there are not a lot of parallel versions of it.

  6. Taimoor Zubar
    December 31, 2014

    I think this is a great initiative to see opensource platforms being developed for IoT technology for the hardware devices. This should serve as a great chance for greater interconnectivity between devices and hence fuel the growth of IoT. What's needed here is a control over the use of these platforms to enusre the quality remains intact.

  7. ITempire
    December 31, 2014


    “. I understand that's true for some but not all. Android is an example. Despite it being an open-source system, it is fairly controlled and there are not a lot of parallel versions of it.”

    Good example. The way Android has monitored it's open source environment makes it as well managed as Apple's iOS. Linux is another example.

  8. ITempire
    December 31, 2014


    Open-source today is open-source only to the extent of contributions. Not necessarily all contributions will be valued by the management.

    January 3, 2015

    Open source has its advantages and pitfalls too.  No license fee and ability to change are good but lack of formal support or poor security are bad.  Overall though open source is a great asset to the community.

  10. Ashu001
    January 10, 2015


    Yes that is a most true statement.

    Nothing ever comes free in this world for most of us.

    For the lucky few though life has always been a bed of roses rest of us have to struggle every inch of the way.

  11. Ashu001
    January 10, 2015


    You said the truth here with your statement-“Overall Open Source is an asset to the Community”.

    I don't think Open Source has poor security per se but rather its a question of getting enough people behind the community so as to ensure more people are looking at the code so that Security is not compromised[like what happened with the Bash Vulnerability].

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.