Module Overview

Internet of Things

The aim of this subject is to learn about the control of remote hardware using internet technologies. It covers areas of embedded system software design such asweb pages and web servers, client side and server side programming and remote hardware access.

Module Code

IOTN H4000

ECTS Credits

5

*Curricular information is subject to change

Overview of internet technologies :

Client and server definitions, The web browser, HTTP protocol, HTTP and TCP/IP, HTTP methods, Web pages and web servers, Lightweight machine-to-machine (M2M) protocols such as MQTT. Security considerations of the IOT.

Web Pages :

The Document Object Model(DOM). Hypertext markup language (HTML). HTML elements and their use. New features of HTML5, CSS for formatting web pages. New features of CSS3.

Client Side Programming :

Javascript, History and overview, Basic syntax, Interaction with the browser, Variables Datatypes and operations, Loop and selection constructs, Functions, Scope and hoisting, Arrays and simple objects. JQUERY, how JQUERY makes javascript easier.

Server Side Programming :

Node.js, Javascript on the server side, implementing a Node.js server, blocking and non-blocking code, callbacks and the event loop, asynchronous file io, Simplifying file serving using the express.js framework, directory structure, serving different file types, websockets, dynamic web pages with the socket.ie framework, JSON format, sending and receiving JSON messages. Description and use of Cloud applications that automate the distribution of sensor data.

Hardware Interfacing:

Implementing Node.js on a linux based development board/system, Interfacing with sensors/peripherals using libraries/firmware, interfacing with serial devices using Node-serialport. Closures in javascript, non-blocking methods for calling sequential functions in javascript using state-machines, callbacks, promises and async/await.

Module Content & Assessment
Assessment Breakdown %
Other Assessment(s)40
Formal Examination60