Internet of Things Lab
Course: Internet of Things Lab (320414)
Instructor: Jürgen Schönwälder
TA: Anuj Sehgal
Tuesday 09:45 - 12:30 Seminar room, Research I
Start: September 3rd, 2013

An increasing number of real-world objects are getting equipped with small, embedded computers and suitable network interfaces, allowing these real-world objects to become connected to the Internet. This lab introduces relevant technologies ranging from hardware aspects, over embedded operating system aspects and up to application design aspects. Topics covered are low-power wireless radios, embedded operating systems, adaptations of IP protocols to fit the requirements of resource constrained devices, new application protocols supporting communication with networked real-world objects.

Course Materials:

Students have to hand in a solution to the assignments and they have to be able to answer questions concerning their solution. The quality of the solution and the answers determines the grade (measured in percent) for the assignment. The overall grade is computed from the partial grades. Late submissions after the deadline will be penalized. For every hour late, you will loose 10% of the points. We account an additional bonus of 15 minutes for electronic submissions (you know how well email sometimes works). This means, a solution received 01:15 late will loose 10%, a solution received 02:15 late will loose 20% and so on. If we receive more than one submission, we will pick the last one.

Any programs that have to be written will be evaluated based on the following criteria:

  • correctness including proper handling of error conditions
  • proper use of programming language constructs
  • clarity of the program organization and design
  • readability of the source code and any output produced

Source code must be accompanied with a README provding an overview of the source files and giving instructions how to build the programs. A suitable Makefile is required if the build process involves more than a single source file.

The policy on makeup assignments is the following: To be able to get a makeup, you have to either (a) have an official excuse from the registrar's office or (b) approach me well in advance of the assignment with a very good reason for not being able to participate (e.g., because you take a GRE computer science subject test at the day of a quiz). Furthermore, I require that people take action to immediately contact me when they return to campus so that we can fix a date for the makeup. Once a week has passed, I do not feel obliged to offer a makeup anymore.

2013-09-16 Assignment #1 Contiki
2013-09-23 Assignment #2 6LoWPAN Adaptation Layer
2013-09-30 Assignment #3 Firefly Synchronization
2013-10-07 Assignment #3 Firefly Synchronization
2013-10-14 Assignment #4 Trickle Algorithm
2013-10-21 Reading Days
2013-11-05 Assignment #5 RPL Routing Protocol
2013-11-20 Assignment #6 CoAP
2013-12-02 Assignment #7 BER vs XDR vs CBOR
2013-12-16 Assignment #8 CBOR over CoAP