Domain-Specific Training in Embedded Systems
Durations – 300 Hrs.-Online & Offline
Program Objective
Embedded & AutomotiveSystems with AI equips learners to design
intelligent embedded applications and understand key automotive
protocols and electronics. Students gain hands-on experience with
microcontrollers, RTOS, device drivers, and industry-standard
embedded C (MISRA-C).
With a focus on project-based learning and tools like ARM, FreeRTOS, Qt, and MATLAB/Simulink, the program prepares students for cross-functional engineering roles which enhances the employability of a student
With a focus on project-based learning and tools like ARM, FreeRTOS, Qt, and MATLAB/Simulink, the program prepares students for cross-functional engineering roles which enhances the employability of a student
Program Structure
Semester 3: Competitive Programming using C & DSA
- Mastering C Programming
- DSA & Competitive problem solving
- Linux System Programming using C
- ARM Cortex-M Architecture with Embedded C Programming
Domain Specialization:
Semester 6: Embedded Protocols and Driver Development
- Embedded Protocols and Driver Development
Semester 7: Embedded RTOS (Free RTOS) Firmware Programming
- Embedded RTOS (Free RTOS) Firmware Programming
- Experiential Project based Learning A prototype embedded System development using LPC1768 and KEIL IDE
Program Outcome
- Build strong programming foundations in C, C++, Embedded C, and Linux system programming, aligned with industry standards like MISRA-C.
- Design and develop embedded systems using ARM Cortex-M, integrating RTOS, peripheral drivers, embedded protocols, and AI-based edge computing
- Apply skills in model-based design, Qt application development, and automotive electronics to create and deploy complete embedded system prototypes through hands-on, project-based learning
Project streams
Core Programming
- Application development based on Data Structure (e.g., Flood Fund Releasing Data, Cyber Management Systems, Bank Management System, Contact Management System)
- A concurrent server to replicate a chat application using socket programming
- Multi-Peripheral Integration Project (Combining GPIO, UART, SPI, I2C)
- Real-Time Data Acquisition using ADC & DMA
- Wireless Communication using LPC1768 + GSM/Bluetooth/Wi-Fi Modules
- Automated Sensor Data Logging with RTC & SD Card Storage
Technology Platforms
- Ubuntu (Linux OS, with GCC compiler)
- WSL (Windows Subsystem for Linux)
- Code::Blocks, VSC, Dev-C++
- LPC1768 Development Board
- FreeRTOS
- Keil uVision IDE, Flash Magic
- Raspberry Pi 4 Board, Raspberry OS
- Arduino IDE, Arduino Uno Board
- ESP32 Board, MicroPython, Thonny IDE
- MATLAB and Simulink
- Qt Framework
Semester 3: Competitive Programming using C & DSA
Mastering C Programming – 48 hrs. – 8 Days – 1.5 Weeks
| Introduction to C: Simple C program structure, Literals, constants, variables | Operators with precedence and associativity | Control flow statements with Examples |
| Modular Programming using functions | Numeric Arrays: 1D and 2D arrays | Character Arrays, String functions |
| Searching algorithms | Sorting Algorithms | Problem Solving using Hacker rank |
Project - Intermediate project & Demo
Assessment – Module Test – MCQ, Theory
Technical Mock
DSA & Competitive problem solving – 90 hrs. – 16 Days – 2.5 Weeks (Including Project)
Time and Space Complexity
Utopian Tree
Viral Advertising
Birthday Cake Candles
Migratory Birds
Kaprekar Number
Pangram String and Anagram String
Palindrome Index
Array Rotation
Pointers: Declaration and Initialization, types, pointer to pointers
Structures: Definition, structure variable, member access, nested structures
Introduction to Data Structures: Stacks, Queues, Linked List
Dynamic Memory Allocation
Static Stack and Dynamic Stack
Static Queue and Dynamic Queue
Circular Queue
Linked List: Singly Linked List
Doubly Linked List
File Handling Using C
Git and Github
Problem Solving using Hacker rank
Project - Advanced project & Demo
Assessment – Module Test – MCQ, Theory
Technical Mock & Skill Gap Analysis
Semester 4: Linux System Programming using C
Linux System Programming using C – 48 hrs – 8 Days – 2.5 Weeks (Including Project)
Linux Shell Commands
Manipulating files and directories
Manipulating data
Find and Grep
Variables in Bash Scripting
Control Statements in Bash
File Related System Calls
Process Management
Signal
IPC – Pipes, Message Queue, Shared Mem
Multithreading
Handling Race Condition using Mutex
Project - Intermediate project & Demo
Assessment – Module Test – MCQ, Theory
Technical Mock
Semester 5: Embedded Systems Programming & Real-Time Control
ARM Cortex-M Architecture with Embedded C Programming – 36 hrs. – 6 Days – 1 Weeks
Cross Compilers- arm-none-eabi-gcc, armclang, Toolchain: compiler(gcc), assembler(as), linker (ld), debugger(gdb)
Conditional compiler directives and their significance in Embedded Software
Const, volatile qualifier and their use in Embedded Systems
Bit-wise operators and their use in low level programming
Structure padding, bitfields
Function pointers
Make-file
Building an Executable
Startup code, linker script and their use
Object file and map file
Debugging and Tracing
Coding standards/guidelines for secure and safe coding
ARM Cortex-M3 Architecture & LPC1768 Overview
GPIO Registers, GPIO Programming: LED Programming
Buzzer and switch programming IO device programming: 16 x 2 LCD interfacing and programming
4X4 matrix keypad Interfacing and programming
ADC Programing: LM35 temperature sensor interfacing and programming
Timer Peripheral Programming
Semester 6: Embedded Protocols and Driver Development
Embedded Protocols and Driver Development – 36hrs. – 6 Days – 1Weeks
PWM peripheral Programming
RTC (Real-Time Clock)
Watchdog Timer (WDT)
PLL (Phase-Locked Loop) & Clock Configuration
NVIC (Nested Vectored Interrupt Controller) & Interrupt Handling
UART (Universal Asynchronous Receiver Transmitter) Communication
SPI (Serial Peripheral Interface)
Communication
Communication
SSP (Synchronous Serial Peripheral)
Communication
Communication
I2C (Inter-Integrated Circuit)
Communication
Communication
Semester 7: Embedded RTOS (Free RTOS) Firmware Programming
Embedded RTOS (Free RTOS) Firmware Programming – 24hrs. – 4 Days – 0.5Week
Overview of FreeRTOS: Features of FreeRTOS, FreeRTOS source code organization
RTOS Concepts: Hard real time vs soft real time, Multi-threading/ Multi-tasking / Concurrent execution
Scheduling and Context switching
Memory management: Heap vs Stack memory, program memory vs data memory
FreeRTOS Heap Memory Management: different memory allocation schemes free RTOS Heap Utility Functions, Optimizing memory
Concept of FreeRTOS Tasks: freeRTOS Tasks APIs, Creating Tasks, Task Priorities, Task State Transitions
Scheduler: Scheduler Algorithms, Tick Interrupt, Idle task
Inter task Communication and synchronization: FreeRTOS Queue APIs Data storage for Queue
Blocking read, write Receiving data from multiple queues Mailbox (using queue)
Interrupt Management Events and ISRs, Tasks vs ISRs
Semaphores: Concept of semaphores, Binary Semaphores, Counting semaphores
Resource Management: Shared resources Mutual Exclusion, Critical Section
Experiential Project based Learning
A prototype Embedded System Development using Multi-Peripheral Integration and Real-Time Data Acquisition (AGILE+SCRUM+GIT+GITHUB)
