Internet of Things

Introduction

Prof. Dr. Oliver Hahm

2024-10-21

About

Prof. Dr. Oliver Hahm

  • Study of Computer Science at
    Freie Universität Berlin
  • Software Developer for ScatterWeb and Zühlke Engineering
  • Research on IoT and Operating Systems

Contact

E-mail: oliver.hahm@fb2.fra-uas.de
Appointments: via e-mail, room 1-212

Join the RIOT!

RIOT is the friendly operating system for the IoT!

You’re interested in …

  • …programming the IoT?
  • …collaborate with hundreds of people from all over the world?
  • …contribute to a big FLOSS project?

Get in touch and do some hacking at the All RIOT event at the university! Usually every second Wednesday at 2pm in room 1-237.
Or look at https://allriot.dahahm.de

Organizational

Organizational

  • This seminar is for students of Allgemeine Informatik only
    • There are separate seminars for students of High Integrity Systems (HIS)
  • It takes place as a face-to-face course, i.e., participation is mandatory
  • All course material can be found at https://teaching.dahahm.de/teaching/iot_ws24.html

Learning objectives

  • Comprehension of IoT systems
    • understand the basic technologies for the Internet of Things,
    • assess emerging technologies concerning their suitability,
    • get acquainted quickly with new technologies, and
    • develop new application fields.
  • Scientific skills
    • to search for, read, summarize and cite scientific literature on a large scale;
    • to read and interpret national and international standards;
    • to write a report as a scientific paper;
    • to give a scientific talk.

Organizational

  • Individual work
  • Each student selects a research field from a given list
  • Get an overview about the selected field
  • Present this overview to the rest of the course
  • Identify a relevant research question in this field
  • Submit a report in the end
  • Summarize a randomly selected topic

Hands-on Experience

In order to gain a solid understanding of IoT technologies, it is inevitable to gather practical experience: Four times this semester we will conduct some hands-on sessions.

campUAS

Enrolment Key:
HahmIoT

The Goals

  • This is a seminar: we won’t get very far without your commitment and your contribution
  • Everyone (including myself) should learn something
  • Presentations should give an introduction and high level overview
  • Report should dig into one particular research problem within the area

Format and Scope

  • Presentations:
    • General introduction into the topic
    • Should not exceed 25 minutes
    • Presentation tool of your choice
  • Report:
    • Four pages (including references)
    • IEEE double column format1
    • LaTeX or Microsoft Word
    • Submission via campUAS
  • Summary:
    • Half a page
    • Topic will be assigned at the end
    • Submission via campUAS

Dates

  • October 21, 2024: Introduction
  • October 28, 2024: Research field selection and introduction into scientific work
  • November 04, 2024: First Hands-on Session (Getting to know RIOT)
  • December 02, 2024: Second Hands-on Session (Connecting things to the Internet)
  • January 06, 2025: Third Hands-on Session (Setting up the cloud services)
  • February 03, 2025: Last Hands-on Session (Connecting the dots)
  • February 14, 2025: Report submission
  • February, 21, 2025: Summary submission

In between:
your presentations

Assessment

  • 30% for the report
    • Content
    • Structure
    • Presentation and format
    • Literature
  • 20% practical work
  • 40% for the presentation
  • 10% summary on a randomly selected topic

Plagiarism and Generative AI

Plagiarism won’t be tolerated

  • Generative AI can be useful…
  • …but won’t provide the content/knowledge

Grading System

Definition of the Grades

  • 1.0
    An excellence performance. It is awarded if the work evaluated is outstanding, flawless and near perfection. It exceeds the expectations and is particularly witty.

  • 2.0
    A good performance. The work evaluated meets the expectations and fulfills the requirements well. It may contain some minor or formal errors.

  • 3.0
    A satisfying performance. The work evaluated meets most of the expectations and fulfills the basic requirements. It contains some clear errors that should be corrected.

  • 4.0
    A sufficient performance to pass the examination. The work evaluated fulfills the bare minimum but significantly more. It contains several clear errors that must be corrected.

  • 5.0
    An insufficient performance. The work evaluated does not even fulfill the basic requirements and is not enough to pass the exam. It may also be awarded in case of cheating or plagiarism.

Further Information

All material regarding this course can be found at https://teaching.dahahm.de

This includes

  • Announcements
  • Slides
  • Dates

Introduction

The Internet of Things

What is the Internet of Things?

A Brief History of the Internet of Things

  • A Coca-Cola vending machine was connected to the Internet at Carnegie Mellon University
  • The Smart Dust research proposal at Berkeley kick-started research on Wireless Sensor Networks (WSNs)
  • Kevin Ashton (P&G) coined the term Internet of Things
  • Cisco identified the birth of IoT by the tipping point “when more ‘things or objects’ were connected to the Internet than people”.

Connecting Smart Objects at Internet Scale

  • From 3.5 billion Users to 50 billion Devices on the Internet
  • Transforming Things into Smart Objects
  • Enabling Interconnected Smart Services

Use Cases

Mobile Health

Building & Home Automation

Industrial Automation

Micro & Nano Satellites

Challenges

What are the main challenges and research areas for the Internet of Things?

Constraints and Requirements

Low-end IoT Devices: Limited Resources (RFC7228)

Arduino Due

Raspberry Pi Pico

nRF52840 Dongle

image

  • Memory < 1 Mb
  • CPU < 100 MHz
  • Energy < 10 Wh

Application Requirements

  • Interoperability
  • Energy Efficiency
  • Reliability
  • Latency
  • Low Cost Factor
  • Autonomy
  • Security
  • Scalability
  • Sustainability
  • Privacy
  • Safety

Research Fields

Evolution of low-power hardware

  • Small microcontrollers are getting more and more powerful, energy-efficient, secure, and/or cheaper
  • What are the latest developments?
  • Which impact does this have on software design?

Programming low-end IoT devices



  • Requirements and constraints of low-end IoT devices influences the choice of the programming language
    • Available compiler (+ toolchain)
    • Tooling (IDE, debugger etc.)
    • Size of resulting binaries
    • Access to hardware
    • Safety and security concerns
    • Learning curve
    • Feature set

Operating systems for low-end IoT devices

  • The particular challenges of IoT applications mandate for new operating systems
  • Typical candidates are:
    • RIOT
    • Zephyr
    • mbedOS
    • FreeRTOS
    • mynewt
    • Contiki
    • Linux
  • What about standards like POSIX for these OS?

Energy-efficient wireless protocols

  • (Wireless) Communication is typically one of the biggest energy consumer for low-end IoT devices
  • Hence, efficient technologies are required
  • Examples
    • IEEE 802.15.4
    • BLE
    • IEEE 802.11ah

The IoT Network Stack

  • Integration of constrained-node networks into the Internet
  • Adaptation of traditional Internet Protocols
  • Standardization and interoperability efforts

Traditional Internet

HTTP


TCP


OSPF


IPv6


IEEE 802.11, Ethernet

Layer

IoT

CoAP


UDP


RPL


6LoWPAN


IEEE 802.15.4, BLE

Routing protocols for constrained networks

  • The constraints and requirements of (low-power) IoT networks pose new challenges on the routing protocols to be used inside and between local IoT networks.
  • Survey the evolution of WSN routing protocols.
  • RPL, its flavors, and what else?
  • MANET protocols?

Transport layer issues for constrained-node networks

  • Many (low-end) IoT solutions are in favor of UDP on the transport layer because of its low complexity and lightweight
  • However, many traditional backend solutions (like MQTT or HTTP) are based on TCP
  • Most recently a new Internet transport layer has evolved: QUIC
  • What is the current state and what are the perspectives?
  • What are challenges and what are the opportunities?

Lightweight integrity and confidentiality

  • How to encrypt and sign data in IoT networks?
  • Channel security vs. object security
  • Cryptography for constrained devices

Cloud solutions for IoT applications

  • The backend of an IoT application is typically hosted in the cloud
  • IoT cloud providers offer various services like providing endpoints, data processing, device management, or software update services
  • Multiple commercial cloud providers exist
    • Azure IoT Hub
    • Google Cloud
    • AWS IoT

Software updates for IoT systems

  • Software updates for IoT systems is a crucial cornerstone of security.
  • SUIT and what else?
  • Problems, challenges, approaches

Survey on IoT applications

  • Is IoT still missing a killer app?
  • Many application scenarios: Home automation, building automation, industry automation, mobile health, connected cars
  • What are the (economical, egological …) benefits from connected devices?

Any Questions?