Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.


IoT: from hardware to practice

ITMO University via edX Professional Certificate


You will start from the basic tools of the Internet of Things technology and will finish with a high-level programming. During this program you will work on IoT projects with Arduino, Raspberry Pi, ESP32 hardware.

At first part of the program we’ll focus on the IoT basics, like:

  • Definition of IoT devices with use cases and scenarios for IoT;
  • IoT hardware design including Arduino and Espressif SoCs;
  • IoT sensors and actuators, their connectivity and its programmatic control;
  • Programming in C++ general and specific for aforementioned SoCs;
  • IP networking principles for Espressif SoCs.

The second part is about programming solutions and include several topics:

  • IoT network topologies including star and mesh, device to device, device to gateway and device to cloud;
  • 6LoWPan and its relation to IPv4 and IPv6;
  • General information about Bluetooth Scatternet and Bluetooth Mesh (5.0) network topologies;
  • Cellular communication principles and their use in IoT solutions;
  • Information about hardware and operating systems for Raspberry Pi platform;
  • Programming (including GPIO and interfacing sensors and actuators) in Python for Raspberry Pi under Raspbian OS. This includes basic information on OS installation and development environment configuration.

And the last part is about high-level IoT development, like:

  • IoT security and privacy guideline;
  • Several cases of how to find and fix vulnerabilities;
  • Robot Operating System programming introduction;
  • OpenHAB as a common interface for home automatization and IoT;
  • Peer-to-peer device communication.


Courses under this program:
Course 1: A Subjective Introduction to the IoT

If you have no idea what is IoT and how to start your adventure with IoT, programming and networking, keep studying. This course is a painless introduction to the IoT technology.

Course 2: IoT Networking and Fog Layer Devices

In this course students will learn about specific IoT networking protocols and Fog devices programming, here Raspberry Pi, in Python and C# languages.

Course 3: Data Management, Data Security and Robot Operating System as a Common Tool for IoT

Data management and its security and privacy is an important topic for IoT. Development of the common solutions with the same vulnerabilities creating a new challenge!


Taught by

Dmitrii Dobriborsci, Igor Pantiukhin, Aleksandr Kapitonov, Krzysztof Tokarz, Piotr Czekalski, Salvatore Distefano, Karlis Berkolds and Agris Nikitenko


Start your review of IoT: from hardware to practice

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.