Information for current:

Principles and Design of IoT Systems


All students wishing to take this course should attend the first lecture at 10am, Tuesday 19th September in G.16 Seminar Room - Doorway 4 - Medical School, and the tutorial at 11am in Room AT 3.02.

Week 1 Update

Thanks to everyone who attended the introductory lecture and tutorial. These IoT Setup Instructions explain how to program the board with the provided example firmware images and provide some links for background reading.

Course Description

PDIoT is a Level 11 course (worth 20 credits) offered for the first time in the academic year 2017-18. The principles underlying the design of Internet of Things are taught in a series of 10 lectures delivered in the first 5 weeks of Semester 1, and examined in the April diet of exams (30% of the marks). PDIoT has a major coursework component (70% of the marks) undertaken by students working in pairs, and involving the end-to-end design of an IoT system based on wireless sensors, from specification to its implementation, and the demonstration of a working prototype at the end of the semester.

Lecture times (Week 1 - 5 only)

Tuesdays 10:00 - 10:50 LG.11 David Hume Tower (week 1 lecture in G.16 Seminar Room - Doorway 4 - Medical School)

Fridays 10:00 - 10:50 G.08 1 GSQ

Tutorial times (Week 1 - 11)

One slot on Tuesdays, 11:00, 12:00 or 13:00 - Room 3.02, Appleton Tower


Introductory Machine Learning, Computer Communications and Networking courses. Please consult the lecturer in case you wish to take this course but don't have the necessary pre-requisites. We can waive them on a case-by-case basis.

Contact Details

Lecturer: Professor D K Arvind (

Course Tutor: Andrew Bates (


Week 1

Overview of IoT: industrial, wearable, environmental, healthcare, and digital media, illustrated with videos of case studies; architecture of a typical IoT system and its components; Overview of privacy and security issues; Sensors and actuators - Introduction to commonly-used sensors/actuators, mode of operation, and data format.

Week 2

Sensor fusion algorithms: data from homogeneous and heterogeneous sensors; examples include quaternion calculations with 6-DOF IMU sensor for 3D animation.

Week 3

Sensor data analytics: calibration of sensor data against reference sensors; use of Bland-Altman plots for sensor data comparisons, illustrated with examples in healthcare and environmental monitoring.

Week 4

Sensor data analytics: Methods for pre-processing and feature extraction methods in time-series sensor data - Time warp algorithm; Principal component analysis; feature extraction methods illustrated with examples of IoT for wellbeing, musical instrument tutoring.

Week 5

Sensor data analytics: Classification methods using Machine Learning/Hidden Markov models (Naïve Bayes, k-NN, Decision Tree, Logistic Regression, Mulitlayer Perceptron, SVM) applied to features in time-series sensor data, illustrated with examples in sports, healthcare.


Issued on 19th September 2017; Deadline: 19th January 2018

The PDIoT coursework (worth 70% of the marks) is conducted by students working in pairs to develop an Internet of Things application based on wireless sensors. Students will experience the different stages in the design and implementation of a complex system, from its specification to the demonstration of a working prototype and evaluation of its performance. You will be exposed to aspects of embedded systems programming, sensor data analytics using machine learning techniques, wireless protocols, user interface design, system integration and testing.

More details are available on the coursework page.


On completion of this course, the student will have:

  1. An understanding of the constituent parts of a typical IoT system, the operation of a selection of sensors and actuators, and an appreciation of methods employed to address the security and privacy issues in IoT.
  2. Knowledge of a selection of sensor fusion algorithms, and data analytic methods for pre-processing of time-series sensor data, feature extraction and its classification, and illustrated with case studies.
  3. Gained expertise in the end-to-end design of a practical IoT system employing the principles taught in the lectures, and the quantitative evaluation of performance in terms of speed, memory usage and power consumption.
  4. Experience working with another team member with complimentary skill sets, and develop skills in requirements capture, user interface design, project management, negotiations and verbal and written presentations.
  5. Experience using tools such as compilers for IoT development board using inertial sensors.

Home : Teaching : Courses 

Informatics Forum, 10 Crichton Street, Edinburgh, EH8 9AB, Scotland, UK
Tel: +44 131 651 5661, Fax: +44 131 651 1426, E-mail:
Please contact our webadmin with any comments or corrections. Logging and Cookies
Unless explicitly stated otherwise, all material is copyright © The University of Edinburgh