IN4343 RTS: Practicals 2017/2018

Teaching assistant: Matthijs den Toom


Students are expected to be proficient with C and knowledgeable with operating systems. Experience with Linux is strongly recommended.


The approach taken for the practical training is to let students experiment with a set of simple real-time kernels that have been developed for a resource constrained embedded system, i.e. a wireless sensor based on a TI MSP430 microprocessor, using a simple application. Note that a wireless sensor is time/space/energy constrained. Students have to

With respect to performing experiments, students are expected to

  1. formulate a ''hypothesis'' about expected behavior of the system or result, e.g., using drawings or calculations;
  2. validate the hypothesis, i.e. to

  3. reflect on the hypothesis, e.g. to compare the expected and actual behavior, and comment on the differences encountered.

By the end of the training, students

  1. can explain how real-time applications consisting of tasks are mapped onto a microprocessor;
  2. can explain the influence of the platform (microprocessor and kernel) and the development environment (compiler) on the behavior of a system;
  3. know how to perform experiments and report upon those experiments;
  4. can perform experiments.


Every week we will provide the required kernel software that involves a different scheduling policy.

The students will be requested to:

Software and Tools

A virtual machine (VM) with pre-installed software tools (a hardware simulator and compiler tools for the MSP-430 bodysensor nodes) is available at this link (You may use virtualbox instead of VMware, see the following notes).

To learn about the MSP430 in general, you can use the TUD library resources and consult the (many) tutorials on the Internet. The msp430 tutorial is a nice one. For this course, you need to focus on Clocks and timer Interrupts. Although, in the provided code, you do not need to change anything related to clocks and implement new interrupt routines, we still recommend you to comprehend the underlying details.


Assignment Code (zip file) Deadline
Lab 1Starting sources (see how to)5 mar, 23:59
Lab 2SchedulerNP19 mar, 23:59
Lab 3SchedulerNP-new26 mar, 23:59
Lab 4SchedulerPre9 apr, 23:59
Lab 516 apr, 23:59


Each lab needs to be approved by the TA. In case of errors or missing answers, you will be allowed to resubmit your lab.


This lab originates from the joint effort of Martijn van den Heuvel, Erik J. Luit and Reinder J. Bril from TU/e. Yunus Durmus massaged their work into the current TUD version.