This is an old revision of the document!
Table of Contents
Systems for Industry 4.0 and Environment (IoT)
Assistant: Stefano Scanzio
www: https://www.skenz.it/ss
email: stefano.scanzio [ AT_SYMBOL ] unimib.it
Telegram of the course: https://t.me/+fBD8jxVQfLRkYmVk
News
- [2026/03/03]: Added all slides of the course.
Calendar
- [2026/03/04] from 10:30 to 12:30 (room U6-10)
- [2026/03/04] from 14:30 to 16:30 (room LAB905 (U9a))
- [2026/03/11] from 10:30 to 12:30 (room U6-10)
- [2026/03/11] from 14:30 to 16:30 (room LAB905 (U9a))
- [2026/03/18] from 10:30 to 12:30 (room U6-10)
- [2026/03/18] from 14:30 to 16:30 (room LAB905 (U9a))
- [2026/03/25] from 10:30 to 12:30 (room U6-10)
- [2026/03/25] from 14:30 to 16:30 (room LAB905 (U9a))
- [2026/04/01] from 10:30 to 12:30 (room U6-10)
- [2026/04/01] from 14:30 to 16:30 (room LAB905 (U9a))
- [2026/05/27] from 10:30 to 12:30 (room U6-01e)
- [2026/05/27] from 14:30 to 16:30 (room LAB905 (U9a))
Slides/Material
- Slide of the course: IoT_practice_slides.pdf
- Other slide used during the course:
Example in Classroom
Week 1
Explanation of the python language using examples. In the following you can download all the examples commented in classroom. Remember, it is important that you completely understand them, and you practice using python in your PC.
Download of the example: examples_20260304.zip
Week 2
Explanation of the python language using examples, second part.
Download the full list of examples until now: examples_20260311.zip
Week 3
Explanation of the python language using examples, second part.
Download the full list of examples until now: examples_20260318.zip
The CoAP and MQTT protocols.
Week 4
- A simple MQTT subscriber and publisher: 00100-sub.py, 00100-pub.py
- A simple MQTT subscriber and publisher (new API): 00100-sub_v2.py, 00100-pub_v2.py
- A publisher that publishes a temperature value that is managed by a first subscriber that in turns (depending on the fact that the temperature is lower or greater than 20.0 °C) publishes a topic to which a second subscriber is subscribed: 00200-ex_sensor.py, 00200-ex_server.py, 00200-ex_actuator.py
- Conversion between json and python structures and vice-versa: 00700-json_example.py
Week 5
Example analyzed in classroom during week 5 of the course:
- The tkinter package for graphical interfaces: 00300-tkinter_window.py, 00300-tkinter_entry.py, 00300-tkinter-calc.py
- Example about a publisher based on a tkinter interface: 00400-tkinter-pub.py
- MQTT chat with graphical interface: 00500-mqtt_chat_client.py
- MQTT chat with graphical interface and json messages: 00600-mqtt_chat_client_json.py
Remember that, depending on your installation, you may be using the new version of the MQTT API.
Week 6
Example analyzed in classroom during week 6 of the course:
- Use of the requests library to perform HTTP requests: 01000-requests-ex.py (Using the following scripts uploaded to a PHP server 01000-uppercase.php_, 01000-uppercase_post.php_)
- Use of the requests library to perform HTTP requests: 01050-requests_test.py
- Test of a small Flask application: 01150-webservice_flask_example.py
- Another example of a small Flask application: 01200-webservice_test.py
- Use of Flask to make an example of REST API: 01300-webservice_book.py
- Linux terminal commands analyzed in classroom: command_history.txt
- Annotated slides Message Passing Protocols: rest_api_handout_annotated.pdf
- Annotated slides JSON and REST API: rest_api_handout_annotated.pdf
- Annotated slides practical part: IoT_practice_slides_annotated.pdf
Other Examples
Installations
For the course, you need to install python and a programming environment such as Visual Studio Code.
Please, follow this guideline: video guide
Proposed Theses (Master Degree)
New research Master Theses (Research thesis, four different topics, starting May 2026) (watch the video)
Thesis proposals can be downloaded here: https://www.skenz.it/ss/theses
If interested, for informations, contact: stefano.scanzio [ AT_SYMBOL ] polito.it www: https://www.skenz.it/ss
If you found any error, or if you want to partecipate to the editing of this wiki, please contact: admin [at] skenz.it
You can reuse, distribute or modify the content of this page, but you must cite in any document (or webpage) this url: https://www.skenz.it/iot?rev=1780042589
