IoT Sonsor Nodes Laboratory (IN0012)

Prof. Dr. Michael Gerndt, Anshul Jindal, Mohak Chada, Jianfeng Gu

Dates: To be announced, Planned is a block course at Frauenchiemsee in the week before the semester and project work during the semester. 

Planning meeting:

Wednesday 07.07.2021, 14:00


Meeting-ID: 664 3989 9502
Kenncode: 404356

First meeting:  
ECTS: 10
Language: English
Type: Bachelor lab course, 6P
Moodle course: click here
Registration: Registration is through the matching system


Internet of Things (IoT) is a novel area that thrives on numerous different technologies. It transforms businesses of such companies as BMW, Siemens, General Electrics, Huawei, and many others; and will effect all our lives via smart health, smart cars, smart homes, and smart cities.  

The main idea of Internet of Things is that senors collect information about objects and their environment. The collected data are sent through edge servers to the cloud and are stored and processed there. The results form analytics processing may directly lead to reactions via actuators or be available for offline decision making.

The basis for the Internet of Things are sensors that collect and preprocess the required data. Preprocessing is necessary to increase the overall scalability but is limited by the processing capabilities of the senors nodes and the available power. 

This bachelor lab course will focus on the implementation of sensors and their integration into an IoT platform in the cloud. 

Slides from pre-meeting

Goals & Objectives

The goal of the course is to provide the hands-on experience in the design and implementation of sensor nodes for IoT applications. 

The first goal is to learn about the architecture and the programming of sensors. You will learn about the features and the programming of microcontrollers. We will use the ESP32 in this instance of the course. It features three cores with different processing and power characteristics, different memories, a large set of GPIO pins for peripherals and WLAN and Bluetooth. 

The freeRTOS operating system is used on many of the microcontrollers and allows to write performance and energy effcient multicore applications for sensors. You will develop small applications demonstrating the advantages of the hardware/software combination. You will measure the power consumption and learn techniques to reduce it for enabling long battery life time. 

You will also learn about typical sensors and their integration into freeRTOS programs. 

The second goal is to apply the obtained knowledge to a use case scenarios. You will start working in groups to develop, design and implement a usage scenario for IoT sensor nodes. Projects should be proposed by your group and can be related to our IoT test bed at the Chair for Computer Architecture and Parallel Systems. We offer a set of edge devices in a Heterogeneous Function-as-a-Service cluster, an interactive Cray-Exhibition, a Cloud based IoT platform, and a 3D printing facility.


For the successful participation in the course, it is most important to be enthusiastic about building IoT applications. It is helpful to have background in computer architecture and system level programming in C/C++. If you are already an Arduino user, you definitely qualify for the course.

As you work in teams on the second stage projects, you will profit also from the diverse background knowledge of your colleagues. 

Ability to work in team is also needed for the successful completion of the course.


This course is organized in two parts. In the first, you will learn about the basics and in the second you will develop an own project. 

It is our goal and hope to organize the first part as a block course in the week before the semester (13.-15.10.) at Frauenchiemsee. We would spend three days together for getting familiar with the basics and for starting the discussions about the group projects. 


You will have to pay for the food by yourself which will be about 150 € for the three days. The costs for loging and transportation by train and boat will be covered by the chair and the faculty. 

In case, that Corona will not allow us to organize the first part as a remote presence meeting, we will organize it as a series of online meetings. 

While the groups are working on their projects, we will have meetings on the group level as necessary. 

The course will be graded based on a final presentation and demonstration of the groups as well as an oral examination part based on questions around your implementation and the covered base topics from the first part.  

Connected courses

Further options to go deeper into that field are the bachelor's thesis as well as, on master level, our lecture on Cloud Computing, the master lab course on IoT Edge Computing, a guided research project and the master's thesis. We are also looking for HiWis in the area of ioT and Cloud Computing.