ECE 397-1 (with CS): Introduction to Real-Time Systems

Time change and clarification of prerequisites

Introduction to Real-Time Systems initially had scheduling conflicts with a number of other related courses. In order to make it easier for prospective students to register, lectures have been rescheduled to 12:30-2:00 on Tuesdays and Thursdays in Tech LR5. In addition, the prerequisites have been clarified.


MICAz mote with audio/light/temperature sensors Numerous real-time system components Pocket PC and Butterfly Embedded Visual C++ Embedded Visual C++
Example sensor code
Example PPC code

Introduction to Real-Time Systems is a project-oriented course. The project will be the design and implementation of a distributed real-time system, a sensor network.

You will use battery-powered, wireless, microcontroller-based sensor boards to gather temperature, light level, and audio information. You'll write code to locally analyze this information, determining whether anything unusual has been observed in order to assign a priority to your sensor board's transmissions. Then, you'll balance the tasks of sensing, data processing, transmitting data, and retransmitting data to assist your peers. This part of the class will introduce you to the development of tightly resource constrained embedded real-time systems.

You will use wireless Pocket PC computers to provide audio and video capabilities to the system and as clients from which to ask questions like "where in Tech is there activity?" and "let me see what's going on!". Similar to the sensor board element, you will learn how to balance your Pocket PC's many tasks to provide stable real-time behavior. Here, you'll be working on top of a larger real-time operating system, Windows CE.

The finished system will automatically route important information (temperature, light, rumble, audio, and video streams) throughout an automatically formed wireless network to observers (Pocket PCs and desktop machines) that may reconfigure the sensor nodes or remotely cause them to take actions such as sounding an alarm.

Students will form teams in order to complete the course project. We will make a strong effort to form well-balanced teams with each teams students collectively having the appropriate background.

Course goals

This course focuses on the design and implementation of computer systems that must or should provide timely responses. Real-time systems surround us and their development requires special skills. Automotive control, avionics, streaming media, and games are all real-time systems. In addition to traditional hard real-time concepts, design, and implementation, we will also explore soft real-time systems and distributed real-time systems.

Where this course can fit in your requirements

ECE 397-1 can be used toward your CS degree electives, for both MEAS and WCAS students. It will also count towards your CS project requirement.



Teaching assistant

Main reference

Jane W. S. Liu, Real-Time Systems, Prentice Hall, 2000.


  • Papers (should be accessible from Northwestern)
  • Technical documents


    Page maintained by Robert Dick.