Syllabus for Programming Embedded Systems, Project

Programmering av inbyggda system, projekt


  • 5 credits
  • Course code: 1DT108
  • Education cycle: Second cycle
  • Main field(s) of study and in-depth level: Computer Science A1F, Technology A1F, Embedded Systems A1F

    Explanation of codes

    The code indicates the education cycle and in-depth level of the course in relation to other courses within the same main field of study according to the requirements for general degrees:

    First cycle

    • G1N: has only upper-secondary level entry requirements
    • G1F: has less than 60 credits in first-cycle course/s as entry requirements
    • G1E: contains specially designed degree project for Higher Education Diploma
    • G2F: has at least 60 credits in first-cycle course/s as entry requirements
    • G2E: has at least 60 credits in first-cycle course/s as entry requirements, contains degree project for Bachelor of Arts/Bachelor of Science
    • GXX: in-depth level of the course cannot be classified

    Second cycle

    • A1N: has only first-cycle course/s as entry requirements
    • A1F: has second-cycle course/s as entry requirements
    • A1E: contains degree project for Master of Arts/Master of Science (60 credits)
    • A2E: contains degree project for Master of Arts/Master of Science (120 credits)
    • AXX: in-depth level of the course cannot be classified

  • Grading system: Fail (U), Pass (3), Pass with credit (4), Pass with distinction (5)
  • Established: 2016-03-08
  • Established by:
  • Revised: 2022-10-17
  • Revised by: The Faculty Board of Science and Technology
  • Applies from: Autumn 2023
  • Entry requirements:

    120 credits including Computer Architecture and Operating Systems. Participation in Real Time Systems and Programming of Embedded Systems. Proficiency in English equivalent to the Swedish upper secondary course English 6.

  • Responsible department: Department of Information Technology

Learning outcomes

On completion of the course, the student should be able to:

  • develop embedded software of high quality using high level programming in e.g. C,
  • develop embedded systems based on real time operating systems,
  • develop software on embedded hardware platforms taking limitations such as memory size, processor capacity, and bandwidth into account,
  • develop correct and efficient software using fault detection and other test systems.


Project work in groups covering the following areas: development environments for embedded software, resource aware programming, hardware programming, developing multi-threaded software, inter-process communication with shared memory and message passing, programming using real time operating systems, fault detection and testing, and fault tolerance and fault recovery.




Written and oral reporting on the project.

If there are special reasons for doing so, an examiner may make an exception from the method of assessment indicated and allow a student to be assessed by another method. An example of special reasons might be a certificate regarding special pedagogical support from the disability coordinator of the university.

Reading list

Reading list

Applies from: Autumn 2023

Some titles may be available electronically through the University library.

  • Simon, David E. An embedded software primer

    Reading, Mass.: Addison-Wesley, cop. 1999

    Find in the library

  • Marwedel, Peter Embedded system design

    Updated and corr. version: Dordrecht: Springer, cop. 2006

    Find in the library

  • Pont, Michael J. Patterns for time-triggered embedded systems : building reliable applications with the 8051 family of microcontrollers

    Harlow: Addison-Wesley, cop. 2001

    Find in the library

  • Buttazzo, Giorgio C. Hard real-time computing systems : predictable scheduling algorithms and applications

    2. ed.: New York: Springer, 2005

    Find in the library