DCU Home | Our Courses | Loop | Registry | Library | Search DCU

Module Specifications..

Current Academic Year 2023 - 2024

Please note that this information is subject to change.

Module Title Connected Embedded Systems
Module Code EE513
School School of Electronic Engineering
Module Co-ordinatorSemester 1: Derek Molloy
Semester 2: Derek Molloy
Autumn: Derek Molloy
Module TeachersDerek Molloy
NFQ level 9 Credit Rating 7.5
Pre-requisite None
Co-requisite None
Compatibles None
Incompatibles None
Repeat examination

Connected embedded systems are the building blocks of the Internet of Things (IoT). Connected refers to the fact that the systems interface to the real world via sensors and actuators, and also that the embedded systems can communicate to one another and to cloud-based Platform-as-a-Service (PaaS) solutions. This module exposes students to state-of-art research and solutions for such embedded systems, including: embedded Linux, multi-platform SoC solutions, real-time interfacing, telemetry protocols for IoT, and messaging.

Learning Outcomes

1. Describe current state-of-art research and solutions for connected embedded systems
2. Design embedded systems that utilize full-stack mainline Linux, appreciating the strengths and weaknesses of OS-based embedded solutions
3. Interface embedded systems to the real world using a variety of sensors and actuation hardware, and write high-level program code that wraps low-level sensor interfaces
4. Evaluate state-of-art real-time approaches (e.g., SoC-based) and research for embedded applications that require determinism, and to appreciate real-time constraints on the communication required for interconnected embedded systems
5. Identify and research an appropriate communications framework to suit a specific connected embedded application
6. Develop a distributed locally-connected multi-processor system using wired and/or wireless network topologies and communications
7. Build full stack IoT solutions (real-world interfacing to cloud-based platform-as-a-service (PaaS) solutions) and document the processes and design detail involved

Workload Full-time hours per semester
Type Hours Description
Lecture36Classroom Lectures
Independent Study87Study of the on-line tutorials, self-directed research and study of the materials.
Independent Study20Exam study
Independent Study45Completion of Assignment work
Total Workload: 188

All module information is indicative and subject to change. For further information,students are advised to refer to the University's Marks and Standards and Programme Specific Regulations at: http://www.dcu.ie/registry/examinations/index.shtml

Indicative Content and Learning Activities

A Networked Future
The module begins with a big-picture introduction to the Internet of Things (IoT) that describes technology, services and frameworks. Opportunities and challenges are described along with discussions on emerging technologies as they relate to applications such as the environment, biomedicine, consumer electronics, defence, and communications. Other topics related to embedded devices include the: Internet of Industrial Things, Internet of Tiny Things, and the Internet of Nano Things.

Embedded Linux
Linux on an embedded system, including topics such as: bootloaders; Git; managing Linux systems; systemd, and, real-time limitations of OS-based embedded devices. The Embedded Linux OS is used as a practical platform for this module, allowing for the application of the concepts to be applied in practical assignments.

Interfacing to the Real-World
Programming on embedded devices using high-level languages. The conflict between OS and non-OS (bare metal) coding. Interfacing to the real world using embedded Linux, which includes the use of electronics for sensing and actuation. Brief discussion on interfacing electronics via ADC, SPI, I2C, CAN bus, and UART devices. Cross-platform development in C/C++, and wrapping low-level devices with high-level OOP constructs. Linux kernel programming is described, including a discussion on user-space versus kernel-space coding.

Real-Time Embedded Systems
Principals of real-time operating systems, including: software architectures for real-time embedded, multicore processors, RTOS, Real-Time Scheduling, Resource Sharing, Message Queueing and Inter-task Signalling and Communication. FPGA solutions and microkernel-based QNX Oss are also discussed. System on a Chip (SoC) based real-time acceleration and the challenges of multi-platform integration are investigated.

Communicating with Embedded Systems
Frameworks for messaging with distributed embedded systems are discussed, including historical and current solutions. Other topics include: Ad-hoc communication; Machine-to-machine communication and autonomy; and, telemetry protocols for IoT (including MQTT, CoAP, XMPP).

Local Distributed Embedded
Wired and wireless network topologies for local distributed embedded applications (e.g., Ethernet, CAN bus, RFID, ZigBee, Wi-Fi, Bluetooth) are described. Other topics include: communication efficiency; frameworks for service processor integration; messaging passing interfaces (MPIs) and XML/JSON; data aggregation; embedded data storage; and, Rete algorithm rules engines.

Internet Connected Embedded
This section describes a detailed coverage of the concepts involved in an Internet distributed connected embedded system, such as: device management, key management, debugging, triggers, listeners, alarms, design for failure (e.g., Last Will and Testament (LWT)). Platform-as-a-Service (PaaS) solutions such as ThingSpeak, Amazon AWS IoT, IBM BlueMix IoT are examined, and one such PaaS is utilized in the second assignment.

Assessment Breakdown
Continuous Assessment25% Examination Weight75%
Course Work Breakdown
TypeDescription% of totalAssessment Date
AssignmentInterfacing Embedded Systems to the Real World: Students are required to develop a self-contained embedded system that interfaces to the real world using electronic sensors. High-level software must be written to wrap the low-level interface.10%Week 6
AssignmentInternet Connected Embedded: In this assignment students must develop a full-stack IoT solution that interfaces to a high-end Platform as a Service (PaaS). There is a significant reporting element to this assignment.15%Week 12
Reassessment Requirement Type
Resit arrangements are explained by the following categories;
1 = A resit is available for all components of the module
2 = No resit is available for 100% continuous assessment module
3 = No resit is available for the continuous assessment component
This module is category 1
Indicative Reading List

  • Derek Molloy: 2014, Exploring BeagleBone: Tools and Techniques for Building with Embedded Linux, 1, Wiley, New York, 978-111893512
  • Derek Molloy: 2016, Exploring Raspberry Pi: Interfacing to the Real-World with Embedded Linux, 1, Wiley, New York, 978-111918868
Other Resources

22913, Website, Derek Molloy, 2016, Course Notes Website, DCU, ee5IOT.eeng.dcu.ie,
Programme or List of Programmes
ECEIMMasters of Eng in Elec & Comp Eng
ECSAOStudy Abroad (Engineering & Computing)
GCECEGrad Cert. in Electronic & Computer Eng
MCMECMicro-Credential Modules Eng & Comp
MCTYMSc Electronic and Computer Technology
MECEMEng Electronic & Computer Engineering
MEQMasters Engineering Qualifier Course
MQTYQualifier Prog MSc Electronic & Computer
SMPECSingle Module Programme (Eng & Comp)

My DCU | Loop | Disclaimer | Privacy Statement