Arduino Network & Communication

8 Hours
High School, Adult
How to use Arduino to communicate?
To build a real-time server for device communication, using ESP32 with MQTT is an option. ESP32 is a development board that works with the Arduino software. It acts as a web server which allows the device connecting to; meanwhile, as a web client to connect to another website. MQTT (Message Queueing Telemetry Transport), installed in a Raspberry Pi, is a simple messaging protocol for data exchange between multiple IoT devices.
Why Arduino Network?
You can set up your own real-time server with low-cost, low-power devices. ESP32 is a system on a chip (SoC), which is with a microprocessor and many components of a computer in a single chip. You can use the Arduino software to program its firmware easily. MQTT is designed as an extremely lightweight publish/subscribe messaging transport. It is specialized for low-bandwidth, high-latency environments, which is ideal for connecting remote devices with a small code footprint.

Course Outline

HTTP Server

  • Introduction
  • Setup
  • Hello World
  • RESTful API

HTTP Client

  • Introduction
  • Setup
  • Send HTTP request


  • Introduction
  • MQTT client

Learning Outcome

This course marries together several disciplines. You will be master how to program to read inputs, and turn them into an output of Arduino. You will collect all kinds of device data and send the response to the real world with MQTT. You will be able to access the real-time data of your devices with the help of Raspberry Pi. By analyzing the data, you will be able to oversee your network and make fine adjustments, which will bring you real excitement and satisfaction.


Possible Projects

Web server IoT hub and controller ecosystem

Frequently Asked Questions

This course is ideal for those who have basic knowledge of Raspberry Pi and Arduino programming. If you are a high school student or an adult, you can join this course to have fun.
This is an 8 hours course. You will have 4 classes; 2 hours per class.
You can discuss with the tutor what time works best for you.
This course is open to students who have completed the C++ for Arduino and Raspberry Pi Server courses.
You can talk with our tutor either in English or Cantonese.
We will borrow you a Raspberry Pi and ESP32 board and some components for your projects during the course period. However, you will need to prepare your own monitor, keyboard, mouse, and internet connection (via a Wi-Fi network or an ethernet cable).
You can register for the course via the contact form.
Feel free to contact us with some information on your background and what you hope to learn. We can then provide some personalized course advisement.