Networks and Protocols 2
General information
This subject will cover different topics about application-level communication APIs, standard and interfaces, with special emphasis on Internet of Things inter-communication. Specifically, we will cover both Linux and ESP-IDF programming on the ESP32, to fulfill the following specific goals:
- Get a global overview of the necessities and particularities of IoT from the application communication perspective.
- Advocate for open standards for IoT communication.
- Introduce the concept of Smart Object, and study how it can be ported to different APIs and languages.
- Introduce different techniques for information representation.
- Study a number of IoT frameworks and stream processing platforms.
Subject program and evaluation methodology
Professor
Francisco Igual (figual@ucm.es)
Paper work assignment
Here you can find description about this individual assignment
Final programming project (teams of 2 people), shared with NP1
Once ready you will find here the details on the final project for this course.
Work groups (for regular lab assignments)
Here you can find the current work groups
Quizzes
All quizzes will be done in this link. The name of the room is UCMIOTNP2. You MUST enter your email to answer the quizzes (the email address where you received mails from me).
Schedule
Day/Month | Topic | Lab instructions | Deliverable |
---|---|---|---|
18/01 | Basic Concepts (I) | ||
20/01 | Basic Concepts (II) | Assignment 1 | |
25/01 | Smart Objects, Lab 1. TCP/UDP sockets (Linux) | Lab 1. instructions | |
27/01 | Lab 1. TCP/UDP sockets (Linux) | Lab 1. instructions | |
01/02 | Week off (Chinese new year) | ||
03/02 | Week off (Chinese new year) | ||
08/02 | Transport layer, | Lab 1. instructions | |
10/02 | Lab 1. TCP/UDP sockets (Linux) | Lab 1. instructions | |
15/02 | Lab 2. TCP/UDP sockets (ESP32) | Lab 2. instructions | All tasks from Lab1. |
17/02 | Websockets, Lab2. TCP/UDP sockets (ESP32) | Lab 2. instructions | |
22/02 | Information representation Lab 2. TCP/UDP (ESP32) | Lab 2. instructions | Tasks up to 1.3 from Lab 2. |
24/02 | REST servers Lab 3. Information representation and REST servers | Lab 3. instructions | All tasks from Lab2 |
01/03 | MQTT | Lab 3. instructions | |
03/03 | Lab 3. Information representation and REST servers | Lab 3. instructions | |
08/03 | Lab 4. MQTT (I) | Lab 4 (I) instructions | All tasks from Lab3 |
10/03 | Lab 4. MQTT (II) | Lab 4 (II) instructions | |
15/03 | Advanced MQTT. LWT. Lab4 (II) | Lab 4 (II) instructions | All tasks from Lab4 (I) |
17/03 | OTA. Lab 4 (II) | Lab 4 (II) instructions | |
22/03 | Lab 5. Node-RED | Lab 5. instructions | All tasks from Lab4 (II) |
24/03 | Lab 5. Node-RED | ||
29/03 | Work on Final Project | Quiz | All tasks from Lab5 |
31/04 | Work on Final Project | Quiz | |
05/04 | Work on Final Project | Quiz | |
07/04 | Work on Final Project | Quiz |