Internet Of Things 2020
Elective in Internet of Things
(A. A. 2019/2020)
Syllabus
Technology is moving beyond the personal computer to everyday devices with embedded technology and connectivity as computing devices become progressively smaller and more powerful. We are going through a new phase of computing evolution that involves processing capabilities in everything: objects, places, people, and processes. Almost any device, from clothing to tools to appliances to cars to homes to the human body to your coffee mug, can be embedded with chips to connect the device to an infinite network of other devices.
The Internet of Things goes beyond the realm of personal computers: devices, networks, and cloud services are being merged with people and their activities - individuals or groups - to provide new and exciting possibilities in everything we do. Such highly interconnected computational components act autonomously and intelligently through the use of software agents that seamlessly integrate humans in the loop, creating new opportunities for intelligent systems where humans and agents interact continuously.
The course introduces emerging application scenaria, studies characteristic design approaches of Pervasive systems and networks, examines essential algorithmic techniques and performance limits and provides the foundations for engineer algorithms in open-design.
The course is organized in the following parts:
- Part 1: Technological Foundations of the Internet of Things: STM NUCLEO fast prototyping platform. Arm Mbed. IoT Lab for very large scale open real-world testbed. Riot-OS open-sources operating system. Machine-to-machine Communication (6LowPan - RPL, COAP, MQTT). Low-Power Wide-Area Networks (LPWAN - LoRa, The Things Network). Securing the Internet of Things (TinyDTLS).
- Part 2: "Enabling Technologies": Hardware Prototyping Platforms (Genuino 101, Estimote, Sensoro, AltBeacon). Wearables (Wear OS). Back-end Infrastructure and Middleware (InfluxDB, OpenTSDB). Cloud Services (AWS IoT, IBM Watson Internet of Things, Azure IoT Hub, Elasticsearch). Edge Computing (Apache Edgent, TensorFlow Lite, uTensor. Visual Analytics (Grafana, Kibana, Graphite, Tableau).
- Part 3: ''Intelligent Environments": Design aspects of Intelligent Environments. Experience/Interaction design. Ubiquitous Computing. Collective Intelligence. Participatory sensing. Delay-Tolerant Networking. Sociable Smart Cities.
Instructors
- Ioannis Chatzigiannakis, Sapienza University of Rome.
- Andrea Vitaletti, Sapienza University of Rome.
- Marco Zecchini, Sapienza University of Rome.
- Eleni Christopoulou, Hellenic Open University.
Location & Schedule
- Tuesday, 14:00 - 16:00, A3
- Thursday, 16:00 - 19:00, A3
Contact & Discussions
A Google Classroom is available using the following code: ykuozab
A slack channel is available at the following URL: https://iot2020diag.slack.com
Course Plan & Material
- Lecture 1: Tuesday, February 25, 2020. Introduction to Internet of Things
- Lecture 2: Thursday, February 27, 2020. UI/UX for Internet of Things
- Lecture 3: Tuesday, March 3, 2019. IoT Architectures
- Lecture 4: Thursday, March 12, 2020. STM Nucleo Platform and ARM Mbed
- Lecture 5: Tuesday, March 17, 2020. IoT Protocols
- Lecture 6: Thursday, March 19, 2020. Riot-OS
- Lecture 7: Tuesday, March 24, 2020. IoT-Lab.
- Video of Lecture Registration in MP4
- FIT IoT-LAB: A Large Scale Open Experimental IoT Testbed – C. Adjih, E. Baccelli, E. Fleury, G. Harter, N. Mitton, T. Noel, R. Pissard-Gibollet, F. Saint-Marcel, G. Schreiner, J. Vandaele, T. Watteyne – IEEE World Forum on Internet of Things (IEEE WF-IoT), Milan, Italy, December 2015. View Paper
- RIOT-OS Network example over IOT-Lab
- Public IPv6/6LoWPAN network with RIOT over IOT-Lab
- Lecture 8: Thursday, March 26, 2020. IoT Data Processing.
- Lecture Slides in PDF
- Video of Lecture Registration part 1
- Video of Lecture Registration part 2
- Dimitrios Amaxilatis, Orestis Akrivopoulos, Georgios Mylonas, Ioannis Chatzigiannakis: An IoT-Based Solution for Monitoring a Fleet of Educational Buildings Focusing on Energy Efficiency. Sensors 17(10): 2296 (2017) View Paper
- Georgios Mylonas, Dimitrios Amaxilatis, Ioannis Chatzigiannakis, Aris Anagnostopoulos, Federica Paganelli: Enabling Sustainability and Energy Awareness in Schools Based on IoT and Real-World Data. IEEE Pervasive Computing 17(4): 53-63 (2018) View Paper
- Dimitrios Amaxilatis, Ioannis Chatzigiannakis, Christos Tselios, Nikolaos Tsironis, Nikos Niakas, Simos Papadogeorgos: A Smart Water Metering Deployment Based on the Fog Computing Paradigm. Applied Sciences 10 (6), 1965 (2020) View Paper
- Lecture Hands-on Examples on Apache Flink
- Lecture Hands-on Examples on Apache Edgent
- Material on Apache Flink
- Material on Apache Edgent
- Lecture 9: Tuesday, March 31, 2020. Low-Power Wide-Area Networks
- Lecture 10: Thursday, April 2, 2020. Crowd Sensing (Part 1)
- Lecture 11: Tuesday, April 7, 2020. Smart Museums
- Lecture 12: Tuesday, April 16, 2020. Crowd Sensing (Part 2)
- Lecture 13: Tuesday, April 21, 2020. Blockchains and IoT (Part 1)
- Lecture 14: Thursday, April 23, 2020. Blockchains and IoT (Part 2)
- Lecture 15: Tuesday, April 28, 2020. Blockchains and IoT (Part 3)
- Lecture 16: Thursday, April 30, 2020. Group Project Design Presentation (Part 1)
- Lecture 17: Tuesday, May 5, 2020. Group Project Design Presentation (Part 2)
- Lecture 18: Thursday, May 7, 2020. Group Project Design Presentation (Part 3)
- Lecture 19: Tuesday, May 12, 2020. Mesh Networking (Part 1)
- Lecture Slides in PDF
- Video of Lecture Registration
- Chapter 5: Routing, Data Networks (2nd Edition) by Dimitri P. Bertsekas and Robert G. Gallager
- Mobile Ad Hoc Networks: Routing, MAC and Transport Issues slides by Nitin H. Vaidya
- The Dynamic Source Routing Protocol (DSR) for Mobile Ad Hoc Networks for IPv4, IETF MANET Working Group, INTERNET-DRAFT.
- Ad hoc On-Demand Distance Vector (AODV) Routing, IETF MANET Working Group, INTERNET-DRAFT.
- Lecture 20: Thursday, May 14, 2020. Mesh Networking (Part 2)
- Lecture Slides in PDF
- Video of Lecture Registration
- E. Gafni and D.P. Bertsekas: "Distributed Algorithms for Generating Loop-Free Routes in Networks with Frequently Changing Topology ". IEEE trans. On commun. , COMM-29:11-18, 1981. View Paper
- V. D. Park and M. S. Corson: A highly adaptive distributed routing algorithm for mobile wireless networks. 16th IEEE Conference on Computer Communications (INFOCOM), 1997. View Paper
- Temporally-Ordered Routing Algorithm (TORA) Version 1 Functional Specification, IETF MANET Working Group, INTERNET-DRAFT.
- RPL: IPv6 Routing Protocol for Low-Power and Lossy Networks, Internet Engineering Task Force (IETF), Standards Track.
- Riot-OS Tutorial on RPL (Step 1)
- Riot-OS Tutorial on RPL (Step 2)
- Running RPL on IOT-Lab
- Lecture 21: Tuesday, May 19, 2020. Delay Tolerant Networking (Part 1)
- Lecture 22: Thursday, May 21, 2020. Delay Tolerant Networking (Part 2)
- Lecture 23: Thursday, May 26, 2020. Delay Tolerant Networking (Part 3)
- Lecture 24: Tuesday, May 28, 2020. Group Project MVP Presentation (Part 1)
- Lecture 25: Thursday, June 4, 2020. Group Project MVP Presentation (Part 2)
Individual Assignments
Students will need to carry out a series of assignments that realize an IoT system. These assignments are individual and need to be submitted through Google Classroom.
- 1st Assignment
- For each cloud-based service used, a single student submissions is given that stands-out due to the clarity, completeness and quality of presentation:
- 2nd Assignment
- 3rd Assignment
- 4th Assignment
Group Assignments
Students are organized in groups of 3 and take over the design, development and evaluation of a pervasive system. The system goal is to address a real-world problem within the context of Smart Museums. Towards this end the students will be involved in a end-user driven design to define their project based on a series of interviews to identify the most important features and understand how to design their system. Each group will be supported by a student from the MSc in Product & Service Design. The development will be based on the STM NUCLEO platform allowing the students to try out their ideas and to quickly create prototypes for evaluation. Each project will be demonstrated at the end of the semester along with a detailed presentation of the evaluation of the end-to-end performance.
- Ablativo
- Group: Valerio Coretti, Manuel Ivagnes, Fabio Caputo
- Design Advisor: Elisa L'Angiocola
- GitHub Repository
- ARte
- Group: Claudiu Gabriel Ivan, Ivan Fardin, Francesco Ottaviani
- Design Advisor: Andrea Nardone
- GitHub Repository
- iMuseum
- Group: Gabriele Ursini, Giulio Serra, Simone Bartolini
- Design Advisor: Binu Nejat
- GitHub Repository
- ArTeller
- Group: Mattia Pocci, Giuliano Martinelli, Marco Cerino
- Design Advisor: Pegah Pedramfar
- GitHub Repository
- Look At M.E.
- Group: Andrea Gaetano Ferrara, Ruocco Giovanni, Andrea Vona
- Design Advisor: Camilla Gironi
- GitHub Repository
- Wise-Cube
- Group: Giulia Del Citto, Diego Sonaglia, Sorce Roberto
- Design Advisor: Francesco Gregori
- GitHub Repository
- SmartMuseum
- Group: Giovanni Buono, Atrin Barzegar, Nicola Di Santo
- Design Advisor: Camilla Gironi
- GitHub Repository
- TalkingChalks
- Group: Domiziana Catalano, Edoardo Puglisi, Gianluca Panici
- Design Advisor: Joy Abi Rizk
- GitHub Repository
- dynARTwork
- Group: Francesco Colasante, Di Tanna Simone, Emanuele Santo Iaia
- Design Advisor: Pegah Pedramfar
- GitHub Repository
- NextRoom
- Group: Nicoló Palmiero, Luigi Sigillo, Alireza Iran Pour
- Design Advisor: Joy Abi Rizk
- GitHub Repository
- QuizMuseum
- Group: Leonardo Razovic, Masoni Flavia, Federico Inserra
- Design Advisor: Elisa L'Angiocola
- GitHub Repository
- PlasterTalk
- Group: Valerio Valente, Giovanni Fiordeponti, Gianluca Circelli
- Design Advisor: Binu Nejat
- GitHub Repository
- Interactive
- Group: Alessandro Migliore, Lorella Landi
- Design Advisor: Andrea Nardone
- GitHub Repository
- Musa
- Group: Foti Stefano, Del Piano Silvia, Zizzo Gabriele
- Design Advisor: Francesco Gregori
- GitHub Repository