Course on IoT

This site contains the material for the ST training in April 2015. Goals are

-        to have an overview of IoT architecture and procotols, with a focus on the constrained part of the IoT.

-        to obtain hands-on experience:

o   service description

o   service definition

o   service discovery

o   service oriented applications

-        to prepare for a subsequent in-house project on lighting networks.

People involved


The course involves 3.5 days of group work consisting of lectures (morning) and practical work. Work in groups of two.


The course revolves about a service oriented system in which many clients use a collection of services, mimicking vehicles searching for parking lots. The servers are represented by Raspberry Pi’s; clients run on laptops or desktops of yourself. You will need to familiarize yourself with the respective hardware and software.


The course aims to prepare for a lighting project at NXP using IoT technology. Although we will not use really constrained devices in the practical, we want to exercise the protocols. At NXP, constrained devices and constrained networks will be used.


On Friday 14.00 there will be a collective demonstration of an integrated system. Discuss with each other timely the shared information or interfaces that are needed for this. We suggest to appoint an architectural team that makes these choices and makes them known to everyone. Also agree who will present on Friday. Notice that this has the nature of a ‘plugfest’ in which every group has to provide some element.

Write a report in the form of a logbook while you work. It will be judged on two independent metrics: quality and quantity. Indicate in that report what you plan and what the result is. Send the reachers and assistants involved a link with a document that contains this, or a directory. Make sure that your work can be examined easily without any searching. To that end use a compact storyline that explains the logic. Use screenshots, code snippets and diagrams to further explain your work. Extend this during the four days.


Some starters:

-        Slides with the specification of the practical.

-        Tutorial on installing CoAP software packages.

-        Tutorial on installing and using mDNS / DNS-SD.

-        Milosh Stolikj’s support page for the course.



1.     Tuesday April 28:

a.      Lecture:

                                                    i.     IoT overview – slides

                                                  ii.     Some background on architecture – slides  

                                                iii.     The Constrained Application Protocol – slides

b.     Practical: Installing the CoAP software, creating first server application

2.     Wednesday April 29:

a.      Lecture: service discovery and description – slides

b.     Practical:

                                                    i.     (Installing and) using mDNS / DNS-SD, service specification

                                                  ii.     Full application

3.     Thursday:

a.      Lecture:

                                                    i.     6LoWPAN networks – slides

                                                  ii.     Introduction to the NXP exercise – document

b.     Practical: Full application with visualization and storage service

4.     Friday:

a.      Practical: remaining work

b.     14.00: presentation of integrated application (to be agree among different groups)