Skip to content
CS-803 (C) · Internet of Things/Quick Revision Short Notes

Internet of Things (CS-803 (C)) - Unit 5 Short Notes

How unit 5 is examined

This unit covers the boards used to build IoT prototypes, IoT analytics, cloud and communication APIs, IoT security and case studies; the cloud and communication APIs topic (14 marks) and Arduino (7 marks) carry the marks.

IoT Platforms, Arduino

<span style="display:inline-block;padding:.16em .6em;border:1.5px solid currentColor;border-radius:999px;font-size:.68em;font-weight:700;letter-spacing:.06em;text-transform:uppercase;opacity:.75">Low weight</span>

Definition. <mark>Arduino is an open-source electronics prototyping platform made of a programmable microcontroller board and a free IDE, used to read sensors and control actuators.</mark>

Key points.

  1. The hardware is a microcontroller board (for example Arduino Uno with the ATmega328P) that has digital I/O pins, analog input pins, PWM outputs and a USB port for power and programming.
  2. Boards come in several types, such as Uno, Mega, Nano and Leonardo, which differ in pin count, memory and size.
  3. The software is the Arduino IDE, where a program called a sketch is written in simplified C/C++ and uploaded over USB.
  4. Every sketch has two functions: setup() runs once to configure pins, and loop() runs forever to read inputs and drive outputs.
  5. Arduino has no built-in network, so IoT use needs a Wi-Fi or Ethernet shield or an ESP8266 module; typical uses are weather stations, smart lighting and plant monitoring.

Asked: [7 marks] (May 2023) Give brief idea about Arduino.

Raspberry Pi Board, Other IoT Platforms

<span style="display:inline-block;padding:.16em .6em;border:1.5px solid currentColor;border-radius:999px;font-size:.68em;font-weight:700;letter-spacing:.06em;text-transform:uppercase;opacity:.75">Not asked since 2022</span>

Definition. <mark>Raspberry Pi is a low-cost, credit-card-sized single-board computer that runs a full operating system such as Linux.</mark>

Key points.

  1. Unlike Arduino, it has a processor, RAM, HDMI, USB, Ethernet or Wi-Fi and 40 GPIO pins, so it can run Python, a web server or a database.
  2. It suits gateway and vision tasks, while Arduino suits simple real-time sensor control.
  3. Other IoT platforms include ESP8266/ESP32 (Wi-Fi microcontrollers), BeagleBone Black and Intel Galileo.

Data Analytics for IoT

<span style="display:inline-block;padding:.16em .6em;border:1.5px solid currentColor;border-radius:999px;font-size:.68em;font-weight:700;letter-spacing:.06em;text-transform:uppercase;opacity:.75">Not asked since 2022</span>

Definition. <mark>IoT data analytics is the process of collecting the huge streams of sensor data and analysing them to find patterns and support decisions.</mark>

Key points.

  1. IoT data is high in volume, velocity and variety, so it is stored in cloud or big-data systems.
  2. Descriptive analytics tells what happened, predictive analytics tells what will happen, and prescriptive analytics suggests the action.
  3. Real-time (stream) processing acts on data immediately, while batch processing analyses stored data later; edge analytics processes data near the device to cut delay.
  4. Applications are predictive maintenance, traffic control and energy saving.

Cloud for IoT, Cloud storage models & communication APIs

<span style="display:inline-block;padding:.16em .6em;border:1.5px solid currentColor;border-radius:999px;font-size:.68em;font-weight:700;letter-spacing:.06em;text-transform:uppercase;opacity:.75">High weight</span>

Definition. <mark>Cloud for IoT means using internet-hosted computing and storage to collect, store and process device data, with APIs and protocols giving devices and applications a way to communicate.</mark>

Key points.

  1. Cloud gives IoT scalable storage, processing power and pay-as-you-go cost, and services are offered as IaaS, PaaS and SaaS.
  2. Storage models are public, private and hybrid cloud; data is kept as time-series or NoSQL databases and object storage, and device data flows in through a gateway.
  3. Communication APIs in IoT are the interfaces through which devices, gateways, cloud and apps exchange data; they include REST, WebSocket, MQTT and CoAP, which are message-based and secured with tokens or TLS.
  4. REST (Representational State Transfer) is a stateless client-server style over HTTP where every resource has a URI and is used with GET, POST, PUT and DELETE, usually returning JSON; every request carries all the information needed, so it scales well.
  5. WebSocket gives a full-duplex, persistent two-way channel over one TCP connection, started by an HTTP upgrade handshake; the server can push data at once without polling, which suits live dashboards and alerts.
  6. Media Access Control (MAC) is the data-link sub-layer that decides which device may use the shared wireless medium and when, using channel-access methods such as CSMA/CA in IEEE 802.15.4 or TDMA, and it also gives each device a unique 48-bit MAC address.
  7. Example flow: a sensor posts a reading to the cloud over a REST call, and the dashboard receives it live over a WebSocket.

Diagram. <figure class="ds-fig" style="margin:1.4rem 0;overflow-x:auto"><svg xmlns="http://www.w3.org/2000/svg" id="dsfig-u5-01" viewBox="0 0 467 252" width="467" height="252" role="img" aria-label="Device to cloud flow; Dev = IoT device, GW = gateway, API = cloud API, DB = cloud storage, App = user application, WS = WebSocket"><style>#dsfig-u5-01 .e{stroke:#454C5A;stroke-width:1.4;fill:none}#dsfig-u5-01 .e.hi{stroke:#2340B8;stroke-width:2.6}#dsfig-u5-01 .n{fill:#FFFFFF;stroke:#16181D;stroke-width:1.4}#dsfig-u5-01 .n.hi{fill:#E3E9FC;stroke:#2340B8;stroke-width:2.2}#dsfig-u5-01 .n.rb-b{fill:#16181D;stroke:#16181D}#dsfig-u5-01 .n.rb-r{fill:#BD3227;stroke:#BD3227}#dsfig-u5-01 text{font-family:"JetBrains Mono",ui-monospace,Menlo,Consolas,monospace;font-size:13px}#dsfig-u5-01 .t{fill:#16181D;font-weight:500}#dsfig-u5-01 .t.inv{fill:#FFFFFF;font-weight:700}#dsfig-u5-01 .kd{stroke:#16181D;stroke-width:1.2}#dsfig-u5-01 .dot{fill:#16181D}#dsfig-u5-01 .ann{fill:#2340B8;font-size:11px;font-weight:700}#dsfig-u5-01 .lbl{fill:#6F7787;font-family:system-ui,-apple-system,sans-serif;font-size:12px;font-weight:700}#dsfig-u5-01 .ptr{fill:#2340B8;font-size:12px;font-weight:700}#dsfig-u5-01 .ah{fill:#454C5A}#dsfig-u5-01 .ah.hi{fill:#2340B8}#dsfig-u5-01 .wl rect{fill:#FFFFFF;stroke:#DCE0E7}#dsfig-u5-01 .wl .t{font-size:12px;font-weight:700}#dsfig-u5-01 .wl.hi rect{fill:#2340B8;stroke:#2340B8}#dsfig-u5-01 .wl.hi .t{fill:#FFFFFF}html.dark #dsfig-u5-01 .e{stroke:#B1B7C3}html.dark #dsfig-u5-01 .e.hi{stroke:#8FA3FF}html.dark #dsfig-u5-01 .n{fill:#161920;stroke:#E6E8ED}html.dark #dsfig-u5-01 .n.hi{fill:#1E2748;stroke:#8FA3FF}html.dark #dsfig-u5-01 .n.rb-b{fill:#E6E8ED;stroke:#E6E8ED}html.dark #dsfig-u5-01 .n.rb-r{fill:#FF7E71;stroke:#FF7E71}html.dark #dsfig-u5-01 .t{fill:#E6E8ED}html.dark #dsfig-u5-01 .t.inv{fill:#0F1115}html.dark #dsfig-u5-01 .kd{stroke:#E6E8ED}html.dark #dsfig-u5-01 .dot{fill:#E6E8ED}html.dark #dsfig-u5-01 .ann{fill:#8FA3FF}html.dark #dsfig-u5-01 .lbl{fill:#858D9C}html.dark #dsfig-u5-01 .ptr{fill:#8FA3FF}html.dark #dsfig-u5-01 .ah{fill:#B1B7C3}html.dark #dsfig-u5-01 .ah.hi{fill:#8FA3FF}html.dark #dsfig-u5-01 .wl rect{fill:#161920;stroke:#2A2E37}html.dark #dsfig-u5-01 .wl.hi rect{fill:#8FA3FF;stroke:#8FA3FF}html.dark #dsfig-u5-01 .wl.hi .t{fill:#0F1115}</style><defs><marker id="ah7" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path class="ah" d="M0,1 L9,5 L0,9 z"/></marker><marker id="ahh7" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path class="ah hi" d="M0,1 L9,5 L0,9 z"/></marker></defs><path class="e" d="M59,126 L148,126" marker-end="url(#ah7)"/><path class="e" d="M188,126 L277,126" marker-end="url(#ah7)"/><path class="e" d="M313.8,115.5 L409.5,51.6" marker-end="url(#ah7)"/><path class="e" d="M315.5,137.6 L409.5,200.4" marker-end="url(#ah7)" marker-start="url(#ah7)"/><g class="wl"><rect x="213.1" y="117" width="40.8" height="18" rx="9"/><text class="t" x="233.5" y="126" dy=".35em" text-anchor="middle">REST</text></g><g class="wl"><rect x="349.3" y="160" width="26.4" height="18" rx="9"/><text class="t" x="362.5" y="169" dy=".35em" text-anchor="middle">WS</text></g><circle class="n" cx="40" cy="126" r="18"/><text class="t" x="40" y="126" dy=".35em" text-anchor="middle">Dev</text><circle class="n" cx="169" cy="126" r="18"/><text class="t" x="169" y="126" dy=".35em" text-anchor="middle">GW</text><circle class="n" cx="298" cy="126" r="18"/><text class="t" x="298" y="126" dy=".35em" text-anchor="middle">API</text><circle class="n" cx="427" cy="40" r="18"/><text class="t" x="427" y="40" dy=".35em" text-anchor="middle">DB</text><circle class="n" cx="427" cy="212" r="18"/><text class="t" x="427" y="212" dy=".35em" text-anchor="middle">App</text></svg><figcaption style="font-size:.82em;opacity:.72;margin-top:.45rem">Device to cloud flow; Dev = IoT device, GW = gateway, API = cloud API, DB = cloud storage, App = user application, WS = WebSocket</figcaption></figure>

Answer frame. Open with the definition of the chosen API or protocol; draw the device to cloud diagram; for each of three topics write definition, working, one example, then close with advantages (REST scalable and simple, WebSocket real-time and low overhead, MAC collision-free sharing).

Pitfall: REST is stateless and request-driven while WebSocket is persistent and server-push; do not mix them up.

Asked: [14 marks] (May 2023) Write short note on (any three): a) Communication APIs in IoT b) Web Socket c) Media Access control d) REST

Attacks in IoT system, vulnerability analysis in IoT

<span style="display:inline-block;padding:.16em .6em;border:1.5px solid currentColor;border-radius:999px;font-size:.68em;font-weight:700;letter-spacing:.06em;text-transform:uppercase;opacity:.75">Not asked since 2022</span>

Definition. <mark>IoT attacks are attempts to steal, alter or block IoT data or devices, and vulnerability analysis is finding and fixing the weaknesses they exploit.</mark>

Key points.

  1. Common attacks are eavesdropping, man-in-the-middle, DoS/DDoS botnets such as Mirai, device tampering and spoofing.
  2. Typical vulnerabilities are default or weak passwords, unencrypted communication, outdated firmware and open ports.
  3. Vulnerability analysis uses scanning, penetration testing and firmware review, and the fixes are encryption, authentication, secure updates and network segmentation.

IoT case studies: Smart Home, Smart framing etc.

<span style="display:inline-block;padding:.16em .6em;border:1.5px solid currentColor;border-radius:999px;font-size:.68em;font-weight:700;letter-spacing:.06em;text-transform:uppercase;opacity:.75">Not asked since 2022</span>

Definition. <mark>A case study shows how sensors, a gateway, the cloud and an app combine to solve a real problem, as in a smart home or smart farming.</mark>

Key points.

  1. Smart home: motion, temperature and door sensors feed a hub that controls lights, AC and locks, and the owner monitors it from a phone app to save energy and improve security.
  2. Smart farming: soil-moisture, temperature and humidity sensors trigger automatic irrigation and send crop data to the cloud, which saves water and raises yield.
  3. Both follow the same pattern of sense, transmit, analyse in the cloud and actuate.

Last-minute revision

  • Arduino is an open-source microcontroller board plus IDE; a sketch has setup() and loop().
  • Arduino Uno uses the ATmega328P microcontroller.
  • Raspberry Pi is a single-board computer running Linux with 40 GPIO pins.
  • Analytics types are descriptive, predictive and prescriptive.
  • Cloud service models are IaaS, PaaS and SaaS; deployments are public, private and hybrid.
  • REST is stateless over HTTP with GET, POST, PUT and DELETE.
  • WebSocket is full-duplex over one persistent TCP connection.
  • MAC layer controls medium access, for example CSMA/CA, and uses a 48-bit address.
  • Key attacks are eavesdropping, MITM, DDoS and spoofing.
  • Smart farming automates irrigation using soil-moisture sensors.

Memory hooks

  • Arduino = "set up once, loop forever".
  • Pi is a small computer, Arduino is a small controller.
  • REST asks, WebSocket keeps talking.
  • MAC = traffic policeman of the shared channel.
  • Case studies: sense, send, store, act.

Coverage checklist

  • IoT Platforms, Arduino: Q2 (Arduino, 7 marks).
  • Raspberry Pi Board, Other IoT Platforms: no past questions.
  • Data Analytics for IoT: no past questions.
  • Cloud for IoT, Cloud storage models & communication APIs: Q1 (short notes, 14 marks).
  • Attacks in IoT system, vulnerability analysis in IoT: no past questions.
  • IoT case studies: Smart Home, Smart framing etc.: no past questions.
Go to where you left off?

Quick Add to Notes

Save questions, your own notes and screenshots into notes filed by unit. It takes a free account.

Create free account

Have an account? Log in