Skip to content
Phuc's Blog
Go back

Deeper Dive into Internet of Things (IoT)

Edit page
πŸ“ŒSeries:Internet of Things
Part 2 of 7
View all articles in this series

This blog will go deep down into concepts around Internet of Things (IoT), its applications, and how to get started with IoT development.

Note

πŸ“Œ IoT Series (Part 2 of 5): This is the second article in our 5-part IoT series.

Deeper Dive into Internet Of Things

Table of contents

Open Table of contents

Components of IoT Applications

The two main components of an IoT Application are the Internet and the Thing

The Thing

One typical example is the smart thermostat - device that has a temperature sensor, the temperature sensor can detect the room is too cold and the actuator can turn on the heater to warm up the room.

Basic Thermostat

The Internet

AI Thermostat

Deeper dive into microcontrollers

In the last blog, I already mentioned about Microcontroller - MCU. Let’s now deeper dive into it.

The CPU

Note
  • CPU speeds are often at megahertz (MHz) or gigahertz (GHz). 1 MHz = 1 million cycles per second, 1 GHz = 1 billion cycles per second.
  • CPUs execute programs using the fetch-decode-execute cycle. It executes using arithmetic logic unit (ALU) to perform addition from 2 registers.

Fetch Decode Execute Cycle

The Memory

Microcontrollers typically feature two types of memory, which are thousands of times smaller than those in a typical PC:

Note

RAM Scale: A typical PC has 8 Gigabytes (GB) of RAM, whereas a microcontroller may only have Kilobytes (KB) (e.g. 192KB) β€” over 40,000 times smaller!

RAM Comparison 192KB vs 8GB

Input/Output (I/O) Connections

Microcontrollers interact with the physical world through General-Purpose Input/Output (GPIO) pins. These pins are configured in software to handle data flow:

Tip

GPIO Flexibility: The same pin can be configured via code to function either as an input or an output depending on your project requirements.

Framework and operating systems

Arduino

Arduino Logo

Arduino is the most popular open-source electronics platform, coded in C/C++ for fast execution and a small binary footprint on microcontrollers.

An Arduino program (called a sketch) revolves around two core functions:

Note

Power Saving: Sketches often include a delay in loop() (e.g., delay(10000)) allowing the device to sleep and conserve battery between readings.

Deeper dive into single-board computers

Unlike microcontrollers, Single-Board Computers (SBCs) are full-featured computers running complete operating systems (typically Linux).

The Raspberry Pi Ecosystem

Raspberry Pi Logo

Created by the UK-based Raspberry Pi Foundation, the Raspberry Pi is the most popular SBC for IoT development. All variants run Raspberry Pi OS (Debian Linux) on ARM-based processors.

Key Variants:

Raspberry Pi 4B

Programming Single-Board Computers

Because SBCs run a full OS, they support virtually any programming language:


πŸ“– Series Navigation

πŸ‘ˆ Back to Part 1: Introduction to Internet of Things (IoT)
πŸ‘‰ Continue to Part 3: Sensors and Actuators in Internet of Things (IoT)

πŸ“š Complete IoT Getting Started Series

  1. Part 1: Introduction to Internet of Things (IoT)
  2. Part 2: Deeper Dive into Internet of Things (IoT)
  3. Part 3: Sensors and Actuators in Internet of Things (IoT)
  4. Part 4: Connect your device to the Internet
  5. Part 5: Overview of Physical Works in IoT

Edit page
Share this post:

Previous Post
Connect your device to the Internet
Next Post
Sensors and Actuators in Internet of Things (IoT)

Comments