Low-Power Embedded Systems Praktikum

Course

  • Language: English
  • Search for the lecture in StudIP for the latest information.

Semester: Winter Semester / Summer Semester 2025

Type: Lab

LPES website information 

The Low Power Embedded Systems Laboratory aims to provide students with a starting point for developing applications related to the management of this type of digital systems based on power constraints. During this course, students will use the C programming language to implement applications related to peripheral management, task scheduling, wireless communication, debugging and simulation. Through the development of 5 labs, students will be able to explore bare-metal based programming and real-time operating system based programming. As a final activity of this lab, students will develop a final project where they will apply the concepts acquired in the previous labs. 

Hardware

Students will use the LaunchPad CC26X2R1 development board to learn about the CC2652R1's features. This board has advanced features, including built-in wireless communication options and tools for managing peripherals. By doing this hands-on activity, students will learn how to use and test their applications in a real-world setting. This will help them understand how to design embedded systems while keeping power consumption in mind.
 

Content

Overview of Laboratory Content

The Low Power Embedded Systems Laboratory consists of a series of hands-on sessions designed to give students a solid foundation in embedded systems programming and application development. Each lab focuses on critical concepts and practical skills necessary for mastering low power digital systems.

  • Lab 0: Introduction to C Programming Language. 

This lab serves as the foundation, teaching students the essential programming skills needed for success in later sessions.

  • Lab 1: Bare-Metal Programming on CC2652R1 MCU.

Participants will learn direct programming techniques for the CC2652R1 microcontroller, focusing on low-level hardware interaction.

  • Lab 2: MCU Programming with Real-Time Operating System.

This lab extends knowledge to implementing a real-time operating system (RTOS).

  • Lab 3: Threads and Sensor Management on Zephyr RTOS.

Students will explore multi-threading and efficient sensor management within the Zephyr RTOS framework.

  • Lab 4: Wireless Communication on Bare-Metal/Zephyr.

This session covers the implementation of wireless communication protocols, enhancing connectivity skills in embedded systems.

  • Lab 5: Advanced Debugging on Renode.

Focused on advanced debugging, this lab uses the Renode simulator to teach students how to analyze and troubleshoot complex applications.

  • Final Project

In the final project, students will apply their knowledge and skills to develop an innovative application that showcases their understanding of low power embedded systems.

 

References:

  • Edward A. Lee and Sanjit A. Seshia: Introduction to Embedded Systems, A Cyber- Physical Systems Approach, Second Edition, MIT Press, ISBN 978- 0-262-53381-2, 2017.
  • P. Marwedel: Embedded System Design, Springer, ISBN 978- 3-030-60909-2, 2021.
  • G.C. Buttazzo: Hard Real- Time Computing Systems. Springer Verlag, ISBN 978- 1-4614-0676-1, 2011.
  • M. Wolf: Computers as Components – Principles of Embedded System Design. Morgan Kaufman Publishers, ISBN 978-0-128-05387-4, 2016.
  • Avelino J. Gonzalez: Computer Programming in C for Beginners, Springer, ISBN 978-3-030-50752-7, 2020.
  • Joseph Yiu. The Definitive Guide to ARM® Cortex®-M3 and Cortex®-M4 Processors. Newnes, 2013.