create new tag
view all tags

Design and development of embedded systems for the Internet of Things

You can download the STM32F4 HAL guide from: http://www.st.com/content/ccc/resource/technical/document/user_manual/2f/71/ba/b8/75/54/47/cf/DM00105879.pdf/files/DM00105879.pdf/jcr:content/translations/en.DM00105879.pdf

Class schedule:

Every Tuesday from 14:30 to 17:30 (plus other 30 minutes if necessary) in the Colossus Lab (Via Salaria 113).

The lessons will start on 6th March and end on 29th May.


Fabio Angeletti - angeletti@disNOSPAM.uniroma1.it

Fabrizio Gattuso - gattuso@diNOSPAM.uniroma1.it

The Subsidiary Formative Activity we propose will provide the students with an overall knowledge of embedded systems.
This course willl give basic and advanced notions about software development and hardware design for real-time systems, sensors networks and IoT. Throughout this course different embedded architectures will be introduced along with the most common operating systems employed in this sector. Furthermore, the principal sensors and actuators interfaces will be studied after a revision of C and system programming.
The class will consist of both theoretical and laboratory lectures.
A final project will be assigned to each student, who will be asked to put into practice what he/she learnt during the course.

If you are interested to this SFA (AFC) please fill the Google Form:


and join the Google Group:


In collaboration with WSense (http://www.wsense.it) and with the support/help of the Prof. Chiara Petrioli and ST Microelectronics (http://www.st.com).

Syllabus (Under Construction):

  1. What is the IoT?
  2. C in a nutshell
  3. HW communication: SPI, I2C, RS232, GPIO
  4. Sensors
  5. Hardware Platforms: TelosB, MagoNode, ST Microelectronics
  6. OS: TinyOS, FreeRTOS
  7. Wireless Communication (802.15.4/Zigbee, WiFi, Bluetooth, SigFox, LoRa)
  8. Energy Power Management
  9. Security
  10. Web Communication: REST, MQTT, CoAP
  11. Realtime and data analysis: ThingsBoard, Grafana
  12. Cloud platforms for the IoT
  13. Real Life Examples: Safe Art, Internet of Underwater Things and other projects

1. 06/03/2018: Introduction to the Internet of Things (IoT), ST Microelectronics Lect_01.pdf

2. 13/03/2018: Hardware, bus, interrupt Lect02.pdf

3. 20/03/2018: C in a nutshell Lect_03.pdf sw_afc.zip (C examples) Coding Style: https://www.doc.ic.ac.uk/lab/cplus/cstyle.html

4. 27/03/2018: FreeRTOS introduction with first examples Lect_04.pdf FreeRTOS_examples.zip

In order to develop software for FreeRTOS and your nucleo board you have to install System Workbench for STM32 ( here) and STM32 CUBE MX ( here).

You can download the FreeRTOS documentation by the Amazon Website: https://aws.amazon.com/it/documentation/freertos/

5. 03/04/2018: Cancelled

6. 10/04/2018: FreeRTOS overwiew (dynamic memory, heap systems, code style and conventions, tasks, interrupts, queues, task notifications) FreeRTOS_2.pdf

FreeRTOS_Examples_2.zip New examples related to the lesson

Importart informartions about the final project on the slides.

We suggest you to install a serial terminal (Mac: CoolTerm, Windows: Termite, Linux: Putty).

7. 17/04/2018: Network Communication #1 (Network Topologies, 802.15.4/ZigBee, Bluetooth, LoraWAN, SigFox)


You can find a lot of short clips about LoraWAN and Sigfox on: https://www.lora-alliance.org/lorawan-videos https://www.sigfox.com/en/sigfox-iot-technology-overview

8. 24/04/2018: Network Communication #2 (6LowPAN, MQTT, Rest, CoAP)


There are also some python scripts correlated with the lesson: python_scripts.zip (you have to install pyserial, requests and paho-mqtt)

9. 08/05/2018: IoT Security and Low Power

IoT_Security.pdf Low_Power.pdf

Final Exam:

Final project + Class presentation. (See lesson 6)


By the 21th April you have to submit your group details and the hardware you need.

By the 1th May you have to choose your final project.

By the 8th June you have to upload your project on GitHub. The presentation will be on the 12th June.

Another session can be scheduled.

Hardware available:

3x Bluetooth Low Energy (X-NUCLEO-IDB05A1, Arduino UNO R3 Connector)

1x Uart to Bluetooth

2x Uart to Serial

The verbalization responsible - prof. Anna Labella - will open a Infostud exam. Students have to present the final project. Once evaluated by the teacher, the grade will be communicated to prof. Labella, who shall record the exam result.

Topic attachments
I Attachment History Action Size Date Who Comment
PDFpdf FreeRTOS_2.pdf r1 manage 2315.4 K 2018-04-11 - 07:49 FabrizioGattuso FreeRTOS #2
Compressed Zip archivezip FreeRTOS_Blink.zip r1 manage 801.5 K 2018-03-26 - 13:20 FabrizioGattuso FirstProject
Compressed Zip archivezip FreeRTOS_Examples_2.zip r2 r1 manage 3008.1 K 2018-04-09 - 16:06 FabrizioGattuso FreeRTOS Examples 2
Compressed Zip archivezip FreeRTOS_examples.zip r1 manage 3209.0 K 2018-03-28 - 14:40 FabrizioGattuso FreeRTOS Examples
PDFpdf IoT_Security.pdf r1 manage 5516.9 K 2018-05-08 - 15:43 FabrizioGattuso Lecture 09 - IoT Security
PDFpdf Lect02.pdf r1 manage 2584.3 K 2018-03-14 - 12:10 FabrizioGattuso Lecture 02
PDFpdf Lect_01.pdf r1 manage 3751.9 K 2018-03-06 - 17:19 FabrizioGattuso Lect 01
PDFpdf Lect_03.pdf r1 manage 915.8 K 2018-03-21 - 10:35 FabrizioGattuso Lecture 03
PDFpdf Lect_04.pdf r1 manage 2100.7 K 2018-03-28 - 14:38 FabrizioGattuso Lecture 04
PDFpdf Low_Power.pdf r1 manage 6689.3 K 2018-05-08 - 15:42 FabrizioGattuso Lecture 09 - Low Power
PDFpdf Network_Communcation_2.pdf r1 manage 1663.8 K 2018-04-27 - 07:17 FabrizioGattuso Lect 08
PDFpdf Network_communication.pdf r1 manage 4890.6 K 2018-04-18 - 08:20 FabrizioGattuso Lect_07
Compressed Zip archivezip python_scripts.zip r1 manage 2.8 K 2018-04-23 - 16:44 FabrizioGattuso Python Scripts
Compressed Zip archivezip sw_afc.zip r2 r1 manage 10.3 K 2018-03-21 - 10:36 FabrizioGattuso C examples (Updated)
Edit | Attach | Watch | Print version | History: r26 < r25 < r24 < r23 < r22 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r26 - 2018-05-09 - FabrizioGattuso

Questo sito usa cookies, usandolo ne accettate la presenza. (CookiePolicy)
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2018 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback