Master'sElectronics, Embedded Systems & Telecom Applications open

Master’s in Embedded Linux and BSP Engineering

Online master's programme of 1,900 hours in embedded Linux and BSP engineering. 12 modules covering embedded Linux architecture, boot loaders and U-Boot, kernel configuration and Devicetree, board support packages, device drivers, Yocto Project, Buildroot, user space, performance and real time, system security and updates, with an assigned technical tutor.

Duration1900 h
ModeOnline
LanguageEnglish
Start datesSet by the faculty
AwardSEIUM Institute diploma
Virtual lab · try it before you enrol

Take the controls.

Run a real engineering trade-off from this programme. Move the sliders, watch the model react in real time and beat the challenge.

SIM · LIVE ●
Learning outcomes

What you will be able to do

01

Build custom Linux distributions with Yocto Project and Buildroot.

02

Develop and port board support packages for modern SoCs.

03

Configure boot loaders and start-up sequences.

04

Program device drivers for the Linux kernel.

05

Optimise performance, boot time and power consumption.

06

Apply security mechanisms and robust update strategies.

07

Manage open-source licence compliance.

Profile

Who it's for

  • Embedded Linux engineers.
  • BSP developers.
  • Kernel driver engineers.
  • Systems integration engineers.
  • Embedded DevOps engineers.
  • Embedded platform architects.
  • Engineering or science graduates looking to enter the automotive industry.
Standards & tools

What you'll work with

  • Yocto Project Reference Manual (embedded Linux build system)
  • IEEE 1003.1 POSIX (portable operating system interface)
  • Devicetree Specification (hardware description for the kernel)
  • UEFI Specification (unified extensible firmware interface)
  • IEC 62443-4-1 (secure product development life-cycle requirements)
  • Linux Foundation OpenChain ISO/IEC 5230 (open-source licence compliance)
  • ISO/IEC 17960 (embedded Linux development)
  • GNU General Public License v2 (open-source licence)
  • Yocto Project
  • Buildroot
  • U-Boot
  • QEMU
  • GDB
  • Lauterbach TRACE32
Syllabus

12 modules · 1900 h

  1. 1.1. Linux system architecture
  2. 1.2. Advantages and drawbacks compared with an RTOS
  3. 1.3. Embedded ARM, RISC-V and x86 processors
  4. 1.4. Components of an embedded Linux system
  5. 1.5. Cross toolchains
  6. 1.6. C libraries: glibc, musl and uClibc
  7. 1.7. Root file systems
  8. 1.8. Commercial embedded distributions
  9. 1.9. The kernel ecosystem and community
  10. 1.10. Case study: analysis of a commercial embedded system
  1. 2.1. Boot sequence of an SoC
  2. 2.2. Boot ROM and first-stage loaders
  3. 2.3. U-Boot: configuration and commands
  4. 2.4. Network and storage boot
  5. 2.5. UEFI and booting on ARM
  6. 2.6. Passing parameters to the kernel
  7. 2.7. FIT images and verification
  8. 2.8. Boot time optimisation
  9. 2.9. Recovery from boot failures
  10. 2.10. Practical exercise: porting U-Boot to a board
  1. 3.1. Linux kernel architecture
  2. 3.2. Configuration and cross-compilation
  3. 3.3. The Devicetree
  4. 3.4. Devicetree overlays
  5. 3.5. Kernel modules
  6. 3.6. Patches and version maintenance
  7. 3.7. LTS kernels and vendor branches
  8. 3.8. Debugging kernel boot
  9. 3.9. PREEMPT_RT patches for real time
  10. 3.10. Lab: kernel configuration for a board
  1. 4.1. Components of a BSP
  2. 4.2. DDR memory initialisation
  3. 4.3. Clocks, pins and regulators
  4. 4.4. eMMC and NAND storage drivers
  5. 4.5. Display, camera and multimedia
  6. 4.6. SoC power management
  7. 4.7. BSP validation
  8. 4.8. Maintenance against new releases
  9. 4.9. Documentation and delivery to the customer
  10. 4.10. Workshop: building a minimal BSP
  1. 5.1. The kernel device model
  2. 5.2. Character drivers
  3. 5.3. I²C, SPI and GPIO subsystems
  4. 5.4. Platform drivers
  5. 5.5. Interrupts and deferred work
  6. 5.6. DMA and coherent memory
  7. 5.7. IIO and input subsystems
  8. 5.8. Synchronisation in the kernel
  9. 5.9. Testing and debugging drivers
  10. 5.10. Practical exercise: driver for an I²C sensor
  1. 6.1. Yocto and Poky architecture
  2. 6.2. BitBake and recipes
  3. 6.3. Layers and meta-layers
  4. 6.4. Machine and distribution configuration
  5. 6.5. Images, packages and package managers
  6. 6.6. Standard SDK and extensible SDK
  7. 6.7. Reproducibility and shared state cache
  8. 6.8. Continuous integration with Yocto
  9. 6.9. Licence management in Yocto
  10. 6.10. Lab: custom image with Yocto
  1. 7.1. Buildroot architecture
  2. 7.2. Configuration with menuconfig and packages
  3. 7.3. Technical comparison with Yocto Project
  4. 7.4. Minimal systems and fast boot
  5. 7.5. Containers in embedded systems
  6. 7.6. Debian-based distributions
  7. 7.7. Dependency and version management
  8. 7.8. Automated image testing
  9. 7.9. Choosing the build tool
  10. 7.10. Case study: minimal system with Buildroot
  1. 8.1. systemd and BusyBox init systems
  2. 8.2. Service and dependency management
  3. 8.3. Inter-process communication
  4. 8.4. Graphical interfaces with Qt and Wayland
  5. 8.5. Network configuration with NetworkManager
  6. 8.6. System logs and diagnostics
  7. 8.7. Real-time applications
  8. 8.8. Resource management with cgroups
  9. 8.9. Lightweight containers on embedded devices
  10. 8.10. Practical exercise: systemd service for an application
  1. 9.1. Performance measurement with perf
  2. 9.2. Tracing with ftrace and LTTng
  3. 9.3. Latency with cyclictest
  4. 9.4. Boot time optimisation
  5. 9.5. Memory management and swap
  6. 9.6. CPU affinity and isolation
  7. 9.7. Power management with cpufreq
  8. 9.8. File systems for flash
  9. 9.9. Application profiling
  10. 9.10. Lab: latency analysis with PREEMPT_RT
  1. 10.1. Secure and verified boot
  2. 10.2. Storage encryption
  3. 10.3. Linux security modules
  4. 10.4. System hardening
  5. 10.5. CVE vulnerability management
  6. 10.6. OP-TEE trusted execution environments
  7. 10.7. Build chain security
  8. 10.8. IEC 62443-4-1 requirements
  9. 10.9. The Cyber Resilience Act
  10. 10.10. Workshop: hardening a Yocto image
  1. 11.1. A/B update strategies
  2. 11.2. SWUpdate, RAUC and Mender tools
  3. 11.3. Secure over-the-air updates
  4. 11.4. Device fleet management
  5. 11.5. Long-term maintenance
  6. 11.6. GPL licence compliance
  7. 11.7. Software bill of materials (SBOM)
  8. 11.8. The OpenChain compliance programme
  9. 11.9. Technical support throughout the life cycle
  10. 11.10. Case study: A/B update system
  1. 12.1. Selecting the platform
  2. 12.2. System requirements
  3. 12.3. Building the BSP
  4. 12.4. Driver development
  5. 12.5. Distribution integration
  6. 12.6. Optimisation and security
  7. 12.7. System validation
  8. 12.8. Conclusions and future work
  9. 12.9. Master's Thesis report
  10. 12.10. Master's Thesis: defence before a panel
Methodology, software & labs

How you'll learn

Training is 100% online on the SEIUM campus, with downloadable material, recorded classes and an assigned technical tutor. There are no fixed timetables: you progress at your own pace within each intake, so the programme is compatible with work.

Each module combines theory, guided reading of the original specification and applied exercises. The working software is Yocto Project, Buildroot, U-Boot, QEMU, GDB and Lauterbach TRACE32, in free, academic or evaluation versions. Exercises are based on real procedures for building a custom Linux distribution, porting a BSP to a new board and debugging kernel drivers. Assessment is continuous per module, plus the final Master's Thesis.

Standards covered: Yocto Project Reference Manual, IEEE 1003.1 POSIX, Devicetree Specification, UEFI Specification, IEC 62443-4-1, OpenChain ISO/IEC 5230, ISO/IEC 17960 and GNU GPL v2.

Assigned technical tutor:every module ends with a deliverable that your tutor marks individually.
Standards-based learning:guided reading of the Yocto Project Reference Manual, POSIX and the Devicetree Specification applied to real cases, not as a theoretical annex.
Industry software:Yocto Project, Buildroot, U-Boot, QEMU, GDB and Lauterbach TRACE32, in free, academic or evaluation versions.
Master's Thesis with defence:a complete embedded Linux platform, from BSP and drivers to distribution integration, optimisation, security and validation, defended before a panel.
Flexible format:100% online, no fixed timetables, compatible with full-time work.
Capstone project

Build it end to end

Your final project follows the real engineering workflow, step by step, reviewed by your tutor.

U-Boot port
Port U-Boot to a target board and configure the boot sequence.
Kernel and Devicetree
Configure and cross-compile the kernel and describe the board in Devicetree.
I²C sensor driver
Write, test and debug a kernel driver for an I²C sensor.
Custom Yocto image
Build a hardened custom image with Yocto layers, recipes and an SDK.
Master's Thesis
A complete, optimised and secured embedded Linux platform, defended before a panel.
Career opportunities

Where this takes you

Embedded Linux engineerBSP developerKernel driver engineerSystems integration engineerEmbedded DevOps engineerEmbedded platform architect
Admissions & scholarships

Requirements

  • University degree in engineering, science or architecture, or equivalent demonstrable professional experience.
  • An internet connection and a computer able to run the programme software.
  • English sufficient to read technical standards.

Ready to start?

Send your application today. Our admissions team replies within 72 hours with your study plan and funding options.

FAQ

Frequently asked questions

The programme totals 1,900 hours over 12–14 months. You set your own pace within each intake, and your tutor helps you plan the workload around your job.

You work with Yocto Project, Buildroot, U-Boot, QEMU, GDB and Lauterbach TRACE32, using free, academic or evaluation versions. Your tutor indicates the free alternative wherever one exists.

A SEIUM Institute diploma, awarded on passing the continuous assessment and the Master's Thesis. It is SEIUM's own qualification, not an official state degree; its recognition depends on the programme completed and the regulations of each country.

Yes. Modules passed in a course or postgraduate diploma in the same area are recognised in the higher programme. Ask about the recognition policy when you enrol.

A university degree in engineering, science or architecture (or equivalent professional experience), a computer able to run the software and English sufficient to read technical standards.

Start dates are set by SEIUM's faculty for each intake. Our admissions team will confirm the next available date when you apply.

Master’s in Embedded Linux and BSP EngineeringEnrol
Scroll to Top
SEIUM – Institute of Advanced Engineering
Privacy Overview

This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.