Domain Track : Embedded System Design
embedded-system
Syllabus
Faculty: Swarna Prabha Jena
1.
Micro-Controller
Based Embedded System Design (1-3-0)
2. Real-Time Operating system and Porting (1-3-0)
3. Embedded Linux on ARM (1-3-0)
4. Autosar Design Using CAN,CAN Analysis and LIN(1-1-0)
5. Project (0-0-6)
Course Outcomes:
Course Syllabus:
1.1 Introduction to Embedded System
1.2 Embedded System Development Life Cycle
1.3 Introduction to ARM
1.4 AMBA & AHB
1.5 Features of ARM7, ARM9, ARM 11, ARM Cortex
1.6 Datasheet analysis
1.7 GPIO programming – LED, Seven Segment Display, LCD, Matrix keypad, Actuators ( Relay, Motors, and valves)
1.8 System control block
1.9 ADC & DAC -- Sensors(Analog and Digital)
1.10 Timer/Counter
1.11 Pulse Width Modulation (PWM)
1.12 Vectored Interrupt Controller (VIC)
1.13 Real-Time Clock (RTC)
1.14 Watch Dog timer (WDT)
1.15 Debugging with JTAG
1.16 Inter System Protocols – UART, USART, USB,
1.17 Intra System Protocols – I2C, SPI, CAN
1.18 Wireless Protocols and its Complete setup – NFC/ RFID, ZigBee, Bluetooth, GPS, GSM Wi-Fi, MQTT, LORA
Text Books:
Course Outcomes:
Course Syllabus:
2.1 Real-Time OS
2.2 Types of RTOS
2.3 GPOS vs RTOS
2.4 Task Management & its API
2.5 Scheduling Algorithms & its API
2.6 Inter Task Communication & its API
2.7 Resource Management & its API
2.8 AWS IoT Core for FreeRTOS
2.9 AWS IoT Green Grass setup on Raspberry Pi
Text Books:
Course Outcomes:
Course Syllabus:
3.1 Embedded Linux Overview
3.2 Linux File System
3.3 Types of Kernel
3.4 Shell Commands
3.5 Shell Scripting
3.6 Process Management System calls
3.7 Inter-Process Communication System calls
3.8 Linux Booting Sequence
3.9 Toolchains Configuration and Cross Compilation
3.10 Configuring & Installing Bootloaders (U-Boot)
3.11 Kernel Configuration and Compilation
3.12 Creating Custom Root File system
3.13 Remote Debugging Embedded Applications using GDB
3.14 Device Drivers- Char drivers
3.15 Static Linking & Dynamic Linking
3.16 Adding Static Module to the Kernel
Text Books:
Course Outcomes:
Course Syllabus:
4.1 Introduction to Automotive Systems
4.2 Introduction to AUTOSAR
4.3 Details on CAN Protocols
4.4 SBUS CAN Analyser
4.5 LIN Protocol
4.6 AutoSAR Communication Mechanisms
4.7 Autosar Basic Software (BSW) stack
4.8Diagnostic Communication Manager (DCM
4.9 Introduction to AUTOSAR Runtime Environment (RTE)
4.10 Error Handling in AutoSAR
Text Books:
Session 1: Embedded System Definition, Examples and Classifications
https://www.youtube.com/watch?v=nccWuB5ypxI&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n
Sesssion-1
Session 2: Career in Embedded System
To understand and use the tools required for simulation, code compilation, and flashing of the LPC2148 microcontroller
https://youtu.be/cs8tBpCfaCw
https://www.youtube.com/watch?v=vbaFMT9LXmg&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=24
Session-2
Session 3: Difference between GPCS and ES
https://www.youtube.com/watch?v=17VCuvKZNAA&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=2
Session 4: Understanding Microprocessor
https://www.youtube.com/watch?v=8CbIaC5hJEo&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=3
Session-4
Session 5: Microprocessor Internal Architecture and Pipeline
https://www.youtube.com/watch?v=xYRvSWtf_6k&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=4
Session_5_Microcontroller & Micro processor
Session 6: Big Endian vs Little Endian
https://www.youtube.com/watch?v=a9lVoThjV7o&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=27
ARM_datatype_registrers
Session 7: Embedded System Block Diagram & Components
https://www.youtube.com/watch?v=Fj326iP-xLc&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=5
Session 8: Difference Between Microprocessor and Microcontroller
https://www.youtube.com/watch?v=euyc7rlKwoM&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=6&pbjreload=101
Session_5_Microcontroller & Micro processor
Session 9: Introduction to ARM Processors and its versions
https://www.wikinote.org/mod/page/view.php?id=317&forceview=1
Introduction to ARM
Session 10: ARM7, ARM9, ARM11 features, Advantages and Suitability in Embedded Applications
https://www.wikinote.org/mod/page/view.php?id=318
Introduction to ARM
Session 11: ARM Programmers Model
https://www.wikinote.org/mod/page/view.php?id=319&forceview=1
Session 12: ARM RISC Design Philosophy
https://www.wikinote.org/mod/page/view.php?id=320&forceview=1
Session 13: ARM7 Fundamentals, Data Flow model , Programmers Model
https://www.wikinote.org/mod/page/view.php?id=321
Session 14: ARM7 based LPC2148 – Features and Architecture
https://www.wikinote.org/mod/page/view.php?id=323&forceview=1
features of LPC2148
lpc2148_architechture
Session-14
Session 15: System Control Block(PLL and VPB Divider)
https://www.wikinote.org/mod/page/view.php?id=325&forceview=1
Session 16: Memory Map of LPC2148
https://www.wikinote.org/mod/page/view.php?id=324&forceview=1
Session 17: Software Compilation
https://www.youtube.com/watch?v=8XBsNtx6Wyk&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=15
Session 18: Memory EEPROM & Flash it's application
https://www.youtube.com/watch?v=bfcr_7Vn1rQ&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=16
Session 19: Scripting Language vs Programming Language
https://www.youtube.com/watch?v=hW-8voz6Vko&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=18
Session 20: Getting Started with Keil uVision & its legacy Software installation
https://www.youtube.com/watch?v=mJCcsSaHPiw&list=PLKbSRxrdxkT3sRzWE465KoxOH00BFbRs6&index=3
Session 21: Getting started with Proteus Professional software
https://www.youtube.com/watch?v=FhDjujpSSVg&list=PLKbSRxrdxkT3sRzWE465KoxOH00BFbRs6&index=4
Session 22: Arduino IDE and Proteus simulation
https://www.youtube.com/watch?v=yReV-B0fVqU&list=PLKbSRxrdxkT3sRzWE465KoxOH00BFbRs6&index=20
Session 23: GPIO Configuration and Application
https://www.youtube.com/watch?v=QxvdmzKxEeg&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=32
Session 24: GPIO Pull UP, Pull Down, Output Configuration
https://www.youtube.com/watch?v=IjKDKGqCm_4&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=33
Session 25: Bit Masking and its Type
https://www.youtube.com/watch?v=IjKDKGqCm_4&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=33
https://www.youtube.com/watch?v=FmY-PjukO8I&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=37
Session 26: GPIO Programming of ARM7
https://www.wikinote.org/mod/page/view.php?id=326&forceview=1
https://www.youtube.com/watch?v=oFd911fKmI0&feature=emb_logo
Session 27: ARM7 GPIO
https://www.youtube.com/watch?v=EiP3JOYlJUU&list=PLcYzlQJ999Bl6gyxNJ9NTJNWKKYBTsxHN&index=1
Session 28: Pin connect Block
https://www.wikinote.org/mod/page/view.php?id=327&forceview=1
https://www.youtube.com/watch?v=uuLtT14ny44
Session 29: Communication Protocols
https://www.wikinote.org/mod/page/view.php?id=376&forceview=1
https://www.youtube.com/watch?v=GjMW1zqyTOk&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=7
Session 30: UART Protocols and Configuration
https://www.youtube.com/watch?v=MebhACqcdno&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=8
https://www.youtube.com/watch?v=UnKc3_-K5Lk&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=9
Session 31: ARM7 UART
https://www.youtube.com/watch?v=p1pyt9UK-7Y&list=PLcYzlQJ999Bl6gyxNJ9NTJNWKKYBTsxHN&index=5
Session 32: Serial Communication Between ARM7 LPC2148 And PC
https://www.wikinote.org/mod/page/view.php?id=340&forceview=1
https://www.youtube.com/watch?v=UcmjdhXDwlc&list=PLkZZR-eAtzdq2COvMm644aSOZBYkR1hHg&index=7
Session 33: Bluetooth Interfacing with LPC2148
https://www.youtube.com/watch?v=Au3MPh8E47Q
Session 34: Interfacing and Programming GSM and GPS using LPC2148
https://www.youtube.com/watch?v=qR1zigFP7K0
Session 35: RFID based simulation in Proteus professional
https://www.youtube.com/watch?v=DRZPIP1gSKw
Session 36: GSM Module Interfacing with LPC2148
https://www.wikinote.org/mod/page/view.php?id=373&forceview=1
https://www.youtube.com/watch?v=qj95zn4qqPs&list=PLkZZR-eAtzdq2COvMm644aSOZBYkR1hHg&index=8
Session 37: GPS Module Interfacing with LPC2148
https://www.wikinote.org/mod/page/view.php?id=374&forceview=1
https://www.youtube.com/watch?v=4iMSttGMkLQ&list=PLkZZR-eAtzdq2COvMm644aSOZBYkR1hHg&index=9
Session 38: I2C Protocol and Driver Development
https://www.youtube.com/watch?v=HGX457RA4IU&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=10
https://www.youtube.com/watch?v=kfuZtu4v3gc&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=11
Session 39: EEPROM interfacing with LPC2148 using I2C Protocol
https://www.wikinote.org/mod/page/view.php?id=377&forceview=1
https://www.youtube.com/watch?v=NKYvLXRdQpk&list=PLkZZR-eAtzdq2COvMm644aSOZBYkR1hHg&index=13
Session 40: ARM7 SPI
https://www.youtube.com/watch?v=Gk3nYQ1jiPA&list=PLcYzlQJ999Bl6gyxNJ9NTJNWKKYBTsxHN&index=2
Session 41: SPI Protocol & driver development
https://www.youtube.com/watch?v=qyHaiDMf7p4&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=12
https://www.youtube.com/watch?v=7F5TGZleOgw&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=13
Session 42: SD card Interfacing with LPC2148 using SPI Protocol
https://www.wikinote.org/mod/page/view.php?id=378&forceview=1
Session 43: Difference between SPI & I2C
https://www.youtube.com/watch?v=HRi-J9TdE48&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=14
Session 44: CAN Protocols and Architecture
https://www.youtube.com/watch?v=kS0d4GfCuVk&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=19
https://www.youtube.com/watch?v=--QANl29EP0&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=20
Session 45: CAN Frame Format
https://www.youtube.com/watch?v=nyef9xoZjqc&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=21
https://www.youtube.com/watch?v=xYqv3aopYUM&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=31
Session 46: CAN Bus Arbitration
https://www.youtube.com/watch?v=EIVQzv6-LRo&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=22
https://www.youtube.com/watch?v=egS-FNndwME&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=23
Session 47: ARM7 Timers
https://www.wikinote.org/mod/page/view.php?id=339&forceview=1
https://www.youtube.com/watch?v=nBP0B3Hwj5s&list=PLcYzlQJ999Bl6gyxNJ9NTJNWKKYBTsxHN&index=6
Session 48: ARM7 Interrupts
https://www.wikinote.org/mod/page/view.php?id=331&forceview=1
https://www.youtube.com/watch?v=UbwMz-ZFCa8&list=PLcYzlQJ999Bl6gyxNJ9NTJNWKKYBTsxHN&index=3
Session 49: ARM7 PWM
https://www.electronicwings.com/arm7/lpc2148-watchdog-timer
Session 50: ARM7 WDT
https://www.electronicwings.com/arm7/lpc2148-watchdog-timer
Session 51: ARM7 RTC
https://www.youtube.com/watch?v=IHKE98jN_ns&list=PLcYzlQJ999Bl6gyxNJ9NTJNWKKYBTsxHN&index=4
Session 52: ARM7 ADC
https://www.youtube.com/watch?v=pZeNMIOAbys
Session 53: ADC without Interrupt
https://www.youtube.com/watch?v=Sr7gqod18A4&list=PLkZZR-eAtzdq2COvMm644aSOZBYkR1hHg&index=10
Session 54: ADC with Interrupt
https://www.wikinote.org/mod/page/view.php?id=375&forceview=1
https://www.youtube.com/watch?v=4s4xd1lyjQg&list=PLkZZR-eAtzdq2COvMm644aSOZBYkR1hHg&index=11
Session 55: ARM7 DAC
https://www.wikinote.org/mod/page/view.php?id=379&forceview=1
https://www.youtube.com/watch?v=uGj4BTb7SRM
Session 56: Setting up MQTT using DHT11/DHT22 and NodeMCU
https://randomnerdtutorials.com/esp8266-and-node-red-with-mqtt/
Session 57: Wi-Fi setup with NodeMCU
https://www.electronicwings.com/nodemcu/nodemcu-wi-fi-with-esplorer-ide
Session 58: LoRa features, Configuration and setup to Things Network
https://www.youtube.com/watch?v=jp_2gwBrQc8
Session 1: Operating System, Objective, Function and types
https://www.youtube.com/watch?v=0ZjkUMKy6x0
Session 2: Introduction to RTOS
https://www.youtube.com/watch?v=Cj8HFbnwr7U&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z
Session 3: RTOS Software Architecture
https://www.youtube.com/watch?v=1BE0Oz1qjW8&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=2
Session 4: Multitasking and Multiprogramming
https://microcontrollerslab.com/difference-between-multiprogramming-and-multitasking/
Session 5: RTOS Task Scheduling
https://www.youtube.com/watch?v=WV6i_mjl-cA&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=3
Session 6: Types of Scheduling & its difference
https://microcontrollerslab.com/difference-between-preemptive-and-non-preemptive-scheduling-in-os/
Session 7: RTOS shared data problem and Mutual exclusion
https://www.youtube.com/watch?v=4hF0i5VWLFc&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=4
Session 8: RTOS Semaphore, Mutex and synchronization
https://www.youtube.com/watch?v=5P5AFoG6mw4&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=5
Session 9: RTOS Scheduling
https://www.youtube.com/watch?v=AQzMmcKSfZE&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=6
Session 10: RTOS Inter task communication
https://www.youtube.com/watch?v=a-iPhMxHB2s&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=7
Session 11: RTOS Time & Memory Management
https://www.youtube.com/watch?v=uN0DmICBSl4&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=8
Session 12: RTOS Events and ISR
https://www.youtube.com/watch?v=f1XNBTDLtR0&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=9
Session 13: RTOS Design
https://www.youtube.com/watch?v=1Mjwfv5x32g&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=10
Session 14: FreeRTOS Introduction
https://www.youtube.com/watch?v=aXgErqz33sE&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=11
Session 15: Downloading & Installing FreeRTOS on Arduino IDE
https://www.youtube.com/watch?v=sjJkyBH_oks
Session 16: Downloading & Installing FreeRTOS on Keil uVision
https://www.youtube.com/watch?v=yNGZqB1MGFs
Session 17: FreeRTOS Creating New Project, files in CCS
https://www.youtube.com/watch?v=YFJK5Y2USRo&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=12
Session 18: Setting up FreeRTOS on Atmel Studio
https://www.youtube.com/watch?v=dMM9u_1G5Qo&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=3
Session 19: Setting up FreeRTOS on Eclipse Based IDE
https://www.youtube.com/watch?v=7efj3bJbGbk&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=4
Session 20: FreeRTOS app debussing using SEGGER SystemView Tools
https://www.youtube.com/watch?v=FklzdUt97gE&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=17
Session 21: FreeRTOS Task & its API
https://www.youtube.com/watch?v=Mz0o2--LhP0&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=13
Session 22: FreeRTOS Task Control
https://www.youtube.com/watch?v=Jnbk8lHaljg&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=14
Session 23: FreeRTOS Task - Creating & Deleting
https://www.youtube.com/watch?v=nYlpeApGXwQ&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=2
Session 24: FreeRTOS suspending and Deleting Task
https://www.youtube.com/watch?v=cV_DEoA0c4Y&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=16
Session 25: Changing Task Priorities
https://www.youtube.com/watch?v=POzTm7oZQoA
Session 26: FreeRTOS Task Utilities
https://www.youtube.com/watch?v=cUO_Hn6536s&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=27
https://www.youtube.com/watch?v=8ssuhkEf-Hc&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=15
Session 27: FreeRTOS Direct to Task Notifications part 1
https://www.youtube.com/watch?v=Ht7QRfUvWsI&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=30
Session 28: FreeRTOS Direct to Task Notifications part 2
https://www.youtube.com/watch?v=cv9VIotr4Ms&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=31
Session 29: FreeRTOS Kernel Control
https://www.youtube.com/watch?v=9BjZaWGJTQ4&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=16
Session 30: FreeRTOS Delays
https://www.youtube.com/watch?v=Fty7p2MS8nI&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=1
Session 31: FreeRTOS Binary Semaphore
https://www.youtube.com/watch?v=T-ZnY0-G1RI&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=18
https://microcontrollerslab.com/freertos-binary-semaphore-tasks-interrupt-synchronization-u-arduino/
Session 32: FreeRTOS interrupt Processing with Semaphore
https://www.youtube.com/watch?v=06TH2NgrKkA&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=15
Session 33: FreeRTOS Counting Semaphore
https://microcontrollerslab.com/freertos-counting-semaphore-examples-arduino/
https://www.youtube.com/watch?v=3OPX7U3K4ug&feature=emb_logo
Session 34: FreeRTOS Mutex
https://www.youtube.com/watch?v=8WVcHo3hIuA&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=19
https://microcontrollerslab.com/arduino-freertos-mutex-tutorial-priority-inversion-priority-inheritance/
Session 35: FreeRTOS Recursive Mutex to avoid Deadlocks
https://microcontrollerslab.com/freertos-recursive-mutex-avoid-deadlocks-examples-arduino/
https://www.youtube.com/watch?v=pfjYgdSytqs&feature=emb_logo
Session 36: FreeRTOS Software Timer
https://www.youtube.com/watch?v=rqSAKKi5WsQ&feature=emb_logo
https://www.youtube.com/watch?v=bwKxGymYRmo&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=20
Session 37: Update & Query timer ID
https://microcontrollerslab.com/freertos-software-timer-with-arduino-update-and-query-timer-id/
https://www.youtube.com/watch?v=uFfLpLngC3M&feature=emb_logo
Session 38: Change Period Timer and Reset Timer
https://microcontrollerslab.com/change-period-reset-software-timer-freertos-arduino/
https://www.youtube.com/watch?v=gsRYYmfEFQA&feature=emb_logo
Session 39: FreeRTOS Queue Management
https://microcontrollerslab.com/arduino-freertos-queues-create-read-write-examples/
Session 40: FreeRTOS structure Queue to Receive Data from multiple Task
https://microcontrollerslab.com/arduino-freertos-structure-queue-receive-data-multiple-resources/
https://www.youtube.com/watch?v=ptRphJPEx8k&feature=emb_logo
Session 41: FreeRTOS Queue set
https://microcontrollerslab.com/freertos-queue-set-arduino/
https://www.youtube.com/watch?v=iII_KPi_ObI&feature=emb_logo
Session 42: Creating MailBox with Queue
https://microcontrollerslab.com/create-mailbox-with-queues-using-freertos-arduino/
https://www.youtube.com/watch?v=rqSAKKi5WsQ&feature=emb_logo
Session 43: FreeRTOS Queue part 1
https://www.youtube.com/watch?v=PlPcGNcDeZw&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=17
https://www.youtube.com/watch?v=elgkseFUpmk&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=14
Session 44: FreeRTOS Queue Part 2
https://www.youtube.com/watch?v=Z-XD3Q7Hqps&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=29
Session 45: FreeRTOS Events
https://www.youtube.com/watch?v=bIXl-JpvgN8&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=21’
Session 46: FreeRTOS handling Interrupt
https://www.youtube.com/watch?v=0lX6OERAwsM&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=26
Session 47: FreeRTOS Stack & Heap Management
https://www.youtube.com/watch?v=bLQWB4H0TpE&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=6
Session 48: FreeRTOS Stack Space
https://www.youtube.com/watch?v=9zxU9uAifMI&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=12
Session 49: ESP8266 with AWS IoT
https://www.youtube.com/watch?v=LNVRzr4oDW0
Session 50: Setup AWS IOT with Raspberry pi
https://www.youtube.com/watch?v=PyniYh7yaos
Session 51: Amazon FreeRTOS
https://www.youtube.com/watch?v=aeP0A67eNEg.
Session 52: AWS IoT Device Tester for Amazon FreeRTOS using STM32
https://www.youtube.com/watch?v=UOyMrALAx2w
https://aws.amazon.com/freertos/device-tester/
Session 53: Introduction to IoT Greengrass
https://thenewstack.io/how-aws-iot-greengrass-brings-cloud-capabilities-to-the-edge/
Session 54: AWS Greengrass Setup on Raspberry Pi
https://www.youtube.com/watch?v=nreWYKsuZGs
Session 55: Managing Smart Camera and bulb with Greengrass using Raspberry pi
https://www.youtube.com/watch?v=qC2U_dZfGCo
Session 56: AWS IoT Device Tester for Amazon Greengrass STM32
https://aws.amazon.com/greengrass/device-tester/
Session 57: Perform Object Detection at the Edge with AWS IoT Green grass
https://thenewstack.io/tutorial-perform-object-detection-at-the-edge-with-aws-iot-greengrass/#:~:text=First%2C%20we%20create%20a%20Greengrass,the%20bulb%20and%20the%20camera.
Session 1: Installation of Ubuntu on Virtual box in Windows
https://www.youtube.com/watch?v=GGorVpzZQwA&list=PLS1QulWo1RIYmaxcEqw5JhK3b-6rgdWO_&index=30
notes1
Session 2: Embedded Linux
https://www.youtube.com/watch?v=dhk9uzFeGio&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=54
notes 2
Session 3: Installation of Raspbian OS on Raspberry pi
https://www.youtube.com/watch?v=jsi50bCo_W4
notes 3
Session 4: Linux Architecture
https://www.youtube.com/watch?v=7pogTKrfjOs&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=48
notes 4
Session 5: Linux shell commands
https://www.youtube.com/watch?v=YHFzr-akOas&list=PLS1QulWo1RIb9WVQGJ_vh-RQusbZgO_As
notes 5
Session 6: Linux shell commands-I https://www.youtube.com/watch?v=0utcg3ztzuI&list=PLS1QulWo1RIb9WVQGJ_vh-RQusbZgO_As&index=26
notes 6
Session 7: Grep in Linux
https://www.youtube.com/watch?v=_SxRZ4HMIBE&list=PLS1QulWo1RIb9WVQGJ_vh-RQusbZgO_As&index=37
notes 7
Session 8: Linux File System
https://www.youtube.com/watch?v=YSh1SFZzgbk&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=22
notes 8
Session 9: Create own Linux command
https://www.youtube.com/watch?v=aao3c0mAbEQ&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=21
notes 9
Session 10: Inode number, soft-link, hard-link in Linux
https://www.youtube.com/watch?v=fFvl4uyjiJs&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=23
https://www.youtube.com/watch?v=XfxDek4Zl9w&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=27
notes 10
Session 11: Shell Scripting
https://www.youtube.com/watch?v=GGorVpzZQwA&list=PLS1QulWo1RIYmaxcEqw5JhK3b-6rgdWO_&index=30
notes 11
Session 12: Shell scripting – 1 File test operator
https://www.youtube.com/watch?v=uVi5o38NGi0&list=PLS1QulWo1RIYmaxcEqw5JhK3b-6rgdWO_&index=6
notes 12
Session 13: Shell Scripting – 2
https://www.youtube.com/watch?v=dW3oYQbNFyI&list=PLS1QulWo1RIYmaxcEqw5JhK3b-6rgdWO_&index=12
Session 13
Session 14: Shell Scripting – 3
https://www.youtube.com/watch?v=PgVIvWIi89I&list=PLS1QulWo1RIYmaxcEqw5JhK3b-6rgdWO_&index=18
notes 14
Session 15: Shell scripting – 4
https://www.youtube.com/watch?v=16T4e4DME8I&list=PLS1QulWo1RIYmaxcEqw5JhK3b-6rgdWO_&index=24
notes 15
Session 16: I/O Linux System Calls - open(), write
https://www.youtube.com/watch?v=3xETQv3DtSc&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=12
https://www.youtube.com/watch?v=jDkQc7a1y1A&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=16
notes16
Session 17: I/O Linux system calls - Creat()
https://www.youtube.com/watch?v=9IOj_267jbY&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=17
notes 17
Session 18: I/O Linux System calls- close() and ulink()
https://www.youtube.com/watch?v=XU57oIvRW98&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=28
https://www.youtube.com/watch?v=1KMK967_fiQ&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=30
notes 18
Session 19: Linux system calls – execl (), execlp(), dup(), dup2()
https://www.youtube.com/watch?v=fz2jhcTltdw&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=11
https://www.youtube.com/watch?v=GB01KM1JH7k&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=13
notes 19
Session 20: Linux system call fcntl() as dup ()
https://www.youtube.com/watch?v=6kYIpRvRNkk&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=20
notes 20
Session 21: File locking in Linux
https://www.youtube.com/watch?v=0wrdcxkgujc&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=14
notes 21
Session 22: Process, PCB, File Descriptor
https://www.youtube.com/watch?v=kiiQBK8sGeQ&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=33
https://www.youtube.com/watch?v=W9C_N-JfvHo&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=18
notes 22
Session 23: How to create a child process with fork in Linux
https://www.youtube.com/watch?v=7VOW4zkDZrQ&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=4
notes 23
Session 24: Zombie and Orphan
https://www.youtube.com/watch?v=qdBLhJhiOKQ&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=24
notes 24
Session 25: Daemons in Linux
https://www.youtube.com/watch?v=rj2LRRxspvM&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=9
notes25
Session 26: Semaphores implementation in Linux
https://www.youtube.com/watch?v=Om2t1xgEUQE&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=5
notes26
Session 27: Semaphores and Mutex
https://www.youtube.com/watch?v=8wcuLCvMmF8&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=15
notes27
Session 28: Signals in Inter-process Communication
https://www.youtube.com/watch?v=p-qltZWQKAs&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=8
notes28
Session 29: Pipes in Inter-process Communication
https://www.youtube.com/watch?v=NeSHcoAJaGU&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=7
notes 29
Session 30: Inter-process communication-Named Pipes or FIFO
https://www.youtube.com/watch?v=hLGwgbrrlXM&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ
notes 30
Session 31: Message Queue-IPC Mechanism
https://www.youtube.com/watch?v=JbmOegG9-J0&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=2
notes 31
Session 32: Shared Memory
https://www.youtube.com/watch?v=PRmUybI61cA&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=3
notes 32
Session 33: Socket in Linux System programming
https://www.youtube.com/watch?v=pdkGTYyvbPQ&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=6
notes 33
Session 34: Threads in Linux
https://www.youtube.com/watch?v=ZXW-iVivWF4&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=10
notes 34
Session 35: BBB board and SOC
https://www.youtube.com/watch?v=FpzOGye3RcQ&list=PLERTijJOmYrC64uu5wAGQQuYFR45ZoITj&index=1
notes 35
Session 36: AM335 Functional block overview
https://www.youtube.com/watch?v=RCdV6FnSuKg&list=PLERTijJOmYrC64uu5wAGQQuYFR45ZoITj&index=2
https://www.youtube.com/watch?v=DzkGROq_hQg&list=PLERTijJOmYrC64uu5wAGQQuYFR45ZoITj&index=3
notes 36
Session 37: BBB networking Configuration
https://www.youtube.com/watch?v=CoJOObE6zJg&list=PLERTijJOmYrC64uu5wAGQQuYFR45ZoITj&index=7
notes 37
Session 38: Linux booting process
https://www.youtube.com/watch?v=DV5S_ZSdK0s&t=1s
notes 38
Session 39: Embedded Linux Toolchain
https://www.youtube.com/watch?v=9CmZXuHdCUM&list=PLMB3ddm5Yvh1H_e4IqXyFH25efrNYEDnP
notes 39
Session 40: uBoot
https://www.youtube.com/watch?v=rVaiLgXccSE
https://www.youtube.com/watch?v=rVaiLgXccSE&list=PLMB3ddm5Yvh1H_e4IqXyFH25efrNYEDnP&index=5
notes 40
Session 41: Busybox
https://www.youtube.com/watch?v=wWA6SvzvElU
notes 41
Session 42: Buildroot
https://www.youtube.com/watch?v=IE-aRcTjPVw
notes 42
Session 43: Eclipse setup for BBB
https://www.youtube.com/watch?v=T9yFyWsyyGk&t=10s
notes 43
Session 44: Linux Device Drivers
https://www.youtube.com/watch?v=U7QFcpVh248&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750
notes 44
Session 45: System Memory, Static Modules and Dynamic Modules
https://www.youtube.com/watch?v=VXIFibjNLhU&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=2
notes 45
Session 46: Process and Memory Management, Device Control
https://www.youtube.com/watch?v=1v_ALs6zuRw&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=3
notes 46
Session 47: Linux Kernel Modules, User Space and Kernel Space
https://www.youtube.com/watch?v=kpKZPBUepxo&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=4
notes 47
Session 48: Implementing Device Driver and Running
https://www.youtube.com/watch?v=RwRje_Vy2u4&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=5
notes 48
Session 49: Loading and unloading Kernel Modules
https://www.youtube.com/watch?v=zTTzIc1zJ3s&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=6
notes 49
Session 50: Kernel Modules Vs Applications
https://www.youtube.com/watch?v=Sp0vfWll7H8&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=7
notes 50
Session 51: Kernel Symbol Tables
https://www.youtube.com/watch?v=sen-FlxJu_M&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&i
notes 51
Session 52: Kernel Symbol tables
https://www.youtube.com/watch?v=sen-FlxJu_M&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=8
notes52
Session 53: Kernel Symbols and Symbol Tables
https://www.youtube.com/watch?v=_k6zg5mLDXk&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=9
notes53
Session 54: Module Parameters and Array Module
https://www.youtube.com/watch?v=3ccMOOLS6xY&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=10
notes 54
Session 55: Device Driver Types
https://www.youtube.com/watch?v=jP9mLe2nAN4&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=11
notes55
Session 56: Major and Minor Numbers
https://www.youtube.com/watch?v=deOZGzIOlPI&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=12
notes56
Session 57: Allocating device Numbers
https://www.youtube.com/watch?v=UztjkDcECkw&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=13
notes 57
Session 58: File structure, File Operations, and Inode Structure.
https://www.youtube.com/watch?v=_WS_2bR07KQ&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=14
notes 58
Session 59: Adding and Removing character device from Linux System
https://www.youtube.com/watch?v=kl3PcktVB5I&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=15
notes 59session-1_MICRO4 . AUTOSAR Design using CAN, CAN Analyser, and LIN
Session 1: Origin of Automobile and how it started in India, major systems included in a Automobile
https://www.youtube.com/watch?v=5cFovJ4HZ8s
notes 1Session 2: ECU design for mirror control
https://www.youtube.com/watch?v=GVUjmz0fvkk
notes 2Session 3:
Components of Automobiles,
Transmission system in vehicles.
https://www.youtube.com/watch?v=fPjOWekzeGI
notes 3Session 4. ECU design for measurement of heat produced in engine
https://www.youtube.com/watch?v=UN8F6nZ65JI
notes 4Session 5. Data Transfer and Communication Interface in Automotive, Electronics in automobiles
https://www.youtube.com/watch?v=gfRCBmitWPw
notes 5Session 6. ECU design for fuel indicator
https://www.youtube.com/watch?v=-Mn8Va-UaiE
notes 6Session 7 . Electronics in automobile
https://www.youtube.com/watch?v=4R27hc4qruE
notes 7Session 8. ECU design for wiper control
https://www.youtube.com/watch?v=MZcjvQlX60k
notes 8Session 9. What is AUTOSAR, More on Why AUTOSAR for Automotive
https://www.youtube.com/watch?v=Ltt2i6VuVTs
notes 9Session 10. ECU design for seat belt control system
https://www.youtube.com/watch?v=CJ2PidvTDSY
notes 10Session 11. Benefits to members and Limitation of AUTOSAR, Objective of AUTOSAR
https://www.youtube.com/watch?v=s3LpH_wiKHA
notes11Session 12. ECU design for door locking system
https://www.youtube.com/watch?v=HAVX1Zth8Tk
notes 12Session 13. AUTOSAR in Vehicle Telematics and HMI
https://www.youtube.com/watch?v=j-Yne3btbr8
notes13Session 14. A ECU design for dash board panel
https://www.youtube.com/watch?v=GVUjmz0fvkk
notes 14Session 15.How AUTOSAR is used in Chassis Domain , AUTOSAR in Vehicle Body Domain.
https://www.youtube.com/watch?v=BopPYdu9o20
notes 15Session 16. ECU design for door locking system
https://www.youtube.com/watch?v=RZkHUhZagv4
notes16Session 17. RTE layer in AUTOSAR
https://www.youtube.com/watch?v=RomGNzRQIyo
notes 17Session 18. ECU design for fire Alaram safety system.
https://www.youtube.com/watch?v=cvCzMIv9LRQ
notes 18Session 19.
AUTOSAR interfaces, Application layer features in AUTOSAR
https://www.youtube.com/watch?v=g-V64RZ-z4w
notes 19Session 20.
ECU design for door glass control
https://www.youtube.com/watch?v=hyuJbL39hPc
notes 20Session 21.
AUTOSAR Methodology Overview general
https://www.youtube.com/watch?v=oo5iz_OnN3c
notes 21Session 22.
Interfacing of CAN module with ECU for sending
http://Interfacing of CAN module with ECU for sending https://www.youtube.com/watch?v=spVgKZkNpT8
notes 22Session 23. Serial communication protocol, CAN protocol and its advantages
https://www.youtube.com/watch?v=kS0d4GfCuVk&list=PLcbIZiT62e1gKGBxVBY3AKXmQBdGGvTQB
notes23Session 24. LIN protocol and its advantages
https://www.youtube.com/watch?v=TresvW4dxlc
notes 24Session 25. Interfacing of CAN modeule with ECU for receiving
https://www.youtube.com/watch?v=GA-KNEuAR9w
notes25Session 26. I2C,SPI communication protocol
https://www.youtube.com/watch?v=IyGwvGzrqp8
notes 26Session 27. ECU design for dash board panel
https://www.youtube.com/watch?v=ajICfIG82yg
notes 27
1. Real-Time IoT based Apparel Tracking System using Apriso Solution
2. Real-Time IoT based Smart Agriculture Monitoring & Controlling
3. Design and Development of Insulin Pump
4. IoT -Based Covid Patient Blood Oxygen Monitor and Calling an Ambulance on critical blood oxygen levels
5. Portable IoT Based Fingerprint Biometric Attendance System
6. Smart AI-Driven Autonomous Vehicle with Multi-Protocol Connectivity and Real-Time Control
7. Integration of Embedded AI with IoT and Edge Computing for Intelligent Driver Assistance and Smart Navigation System
8. Real-Time Embedded Control of a Voice-Guided Autonomous Vehicle Using Hybrid Speech Recognition and Sensor Fusion Techniques
Gate 0: Idea
Gate 1: Scope
Project Scope(Video)
Gate 2: Development (Work Breakdown Structure)
Project Life Cycle(Video)
Work Breakdown Structure(Video)
Gate 3: Testing and Validation
Gate 4: Documentation
Domain Track Title : Embedded System Design
Track Total Credits ( 4-10-6)
Domain Code : ESCU2050
Courses Division:
1.
Micro-Controller
Based Embedded System Design (1-3-0)
2. Real-Time Operating system and Porting (1-3-0)
3. Embedded Linux on ARM (1-3-0)
4. Autosar Design Using CAN,CAN Analysis and LIN(1-1-0)
5. Project (0-0-6)
Domain Track Objectives:
- Develop skilled workforce with the knowledge on latest technologies to meet the need of Embedded Industry.
- Make the student industry-ready with hands-on experience in the various Real-Time Embedded Systems.
Domain Track Learning Outcomes:
- Distinguish between the general computing system and Embedded System.
- Identify and develop various product-based Embedded Systems.
- Able to configure and build a customized Linux Kernel.
- Ability to set up and use Cross Development platform.
- Execute on the knowledge gained on the Embedded Systems to become an entrepreneur.
Domain Syllabus:
1. Microcontroller-Based Embedded System Design
Course Outcomes:
| COs | Course outcomes |
| CO1 | Understand the architecture and internal features of ARM-based microcontrollers |
| CO2 | Develop programs for GPIO, timers, PWM, ADC, DAC, and interrupts on LPC2148 |
| CO3 | Interface sensors, actuators, and display modules with the microcontroller |
| CO4 | Implement serial communication protocols (UART, SPI, I2C, CAN) in embedded systems. |
| CO5 | Design and test embedded applications using LPC2148 in real-time scenarios |
1.1 Introduction to Embedded System
1.2 Embedded System Development Life Cycle
1.3 Introduction to ARM
1.4 AMBA & AHB
1.5 Features of ARM7, ARM9, ARM 11, ARM Cortex
1.6 Datasheet analysis
1.7 GPIO programming – LED, Seven Segment Display, LCD, Matrix keypad, Actuators ( Relay, Motors, and valves)
1.8 System control block
1.9 ADC & DAC -- Sensors(Analog and Digital)
1.10 Timer/Counter
1.11 Pulse Width Modulation (PWM)
1.12 Vectored Interrupt Controller (VIC)
1.13 Real-Time Clock (RTC)
1.14 Watch Dog timer (WDT)
1.15 Debugging with JTAG
1.16 Inter System Protocols – UART, USART, USB,
1.17 Intra System Protocols – I2C, SPI, CAN
1.18 Wireless Protocols and its Complete setup – NFC/ RFID, ZigBee, Bluetooth, GPS, GSM Wi-Fi, MQTT, LORA
Text Books:
- Andrew N. Sloss, Dominic Symes, and Chris Wright, ARM System Developer's Guide: Designing and Optimizing System Software, 1st ed., San Francisco, CA, USA: Morgan Kaufmann, 2004.
- Raj Kamal, Embedded Systems: Architecture, Programming and Design, 3rd ed., New Delhi, India: McGraw-Hill Education, 2017.
- LPC2148 User Manual and Datasheet
- Keil μVision IDE (with uVision Simulator)
- Arduino IDE
- Proteus Professional (by Labcenter Electronics)
- Flash Magic
- ESP32/ESP8266
- LPC2148/LPC2129/ LPC1768
2. Real-Time Operating System & Porting
Course Outcomes:
| COs | Course outcomes |
| CO1 | Explain the concepts, characteristics, and architecture of real-time operating systems |
| CO2 | Demonstrate task management, inter-task communication, and synchronization using FreeRTOS. |
| CO3 | Apply FreeRTOS features like queues, semaphores, and timers to develop multitasking applications |
| CO4 | Interface peripherals (UART, I2C, SPI, ADC) using FreeRTOS-based task scheduling on ESP32/LPC2148. |
| CO5 | Port FreeRTOS onto ARM7/ESP32-based embedded hardware and develop real-time embedded solutions. |
2.1 Real-Time OS
2.2 Types of RTOS
2.3 GPOS vs RTOS
2.4 Task Management & its API
2.5 Scheduling Algorithms & its API
2.6 Inter Task Communication & its API
2.7 Resource Management & its API
2.8 AWS IoT Core for FreeRTOS
2.9 AWS IoT Green Grass setup on Raspberry Pi
Text Books:
- V. K. K. Prasad, Real-Time Operating Systems: Design and Implementation, 1st ed., New Delhi, India: Dreamtech Press, 2003.
- V. Shibu, Introduction to Embedded Systems, 2nd ed., New Delhi, India: McGraw-Hill Education, 2017.
- V. Shibu, Introduction to Embedded Systems, 2nd ed., Tata McGraw-Hill Education, 2017. . Available: https://www.mheducation.co.in/introduction-to-embedded-systems-9781259006135-india
- Barry, Using the FreeRTOS Real-Time Kernel – A Practical Guide, FreeRTOS.org, 2010. . Available: https://www.freertos.org/Documentation/RTOS_book.html
- Espressif Systems, ESP-IDF Programming Guide, Espressif Systems, 2024. . Available: https://docs.espressif.com/projects/esp-idf/en/latest/
- FreeRTOS
- ESP-IDF (Espressif IoT Development Framework)
- Arduino IDE (with FreeRTOS prebuilt support via ESP32 core)
- Keil µVision 5 (MDK-ARM)
- Flash Magic
- ESP32
- LPC2148/ LPC1768
3. Embedded Linux for ARM
Course Outcomes:
| COs | Course outcomes |
| CO1 | Master shell commands and shell scripting for automating tasks in embedded environments. |
| CO2 | Understand and manage the Linux file system and its structure. |
| CO3 | Differentiate between types of kernels and understand their roles in embedded systems |
| CO4 | Utilize process management and inter-process communication system calls to handle multitasking and data exchange between processes. |
| CO5 | Develop and manage character device drivers for interacting with hardware components. |
3.1 Embedded Linux Overview
3.2 Linux File System
3.3 Types of Kernel
3.4 Shell Commands
3.5 Shell Scripting
3.6 Process Management System calls
3.7 Inter-Process Communication System calls
3.8 Linux Booting Sequence
3.9 Toolchains Configuration and Cross Compilation
3.10 Configuring & Installing Bootloaders (U-Boot)
3.11 Kernel Configuration and Compilation
3.12 Creating Custom Root File system
3.13 Remote Debugging Embedded Applications using GDB
3.14 Device Drivers- Char drivers
3.15 Static Linking & Dynamic Linking
3.16 Adding Static Module to the Kernel
Text Books:
- Hallinan, Embedded Linux Primer: A Practical Real-World Approach, 2nd ed. Boston, MA, USA: Prentice Hall, 2010.
- Smith, Learning Embedded Linux Using the Raspberry Pi, 1st ed. Berkeley, CA, USA: Apress, 2016
- Molloy, Exploring Raspberry Pi: Interfacing to the Real World with Embedded Linux, 1st ed. Hoboken, NJ, USA: Wiley, 2016.
- Abbott, Linux for Embedded and Real-Time Applications, 4th ed. Cambridge, MA, USA: Newnes, 2017.
- Raspbian OS/ Ubuntu LTS
- Raspberry Pi
4. Autosar Design Using CAN,CAN Analysis and LIN(1-1-0)
Course Outcomes:
| COs | Course outcomes |
| CO1 | Understand and describe the evolution and major systems of automobiles, including key components and their functions. |
| CO2 | Design and implement ECU (Electronic Control Unit) systems for various vehicle functions such as mirror control, fuel indication, and safety systems. |
| CO3 | Apply communication protocols (CAN, LIN, I2C, SPI) for effective data transfer and system integration in automotive systems |
| CO4 | Explain the AUTOSAR (Automotive Open System Architecture) framework, including its layers, interfaces, and application across different vehicle domains. |
| CO5 | Utilize AUTOSAR to design and manage automotive software systems, including diagnostics and error handling. |
4.1 Introduction to Automotive Systems
4.2 Introduction to AUTOSAR
4.3 Details on CAN Protocols
4.4 SBUS CAN Analyser
4.5 LIN Protocol
4.6 AutoSAR Communication Mechanisms
4.7 Autosar Basic Software (BSW) stack
4.8Diagnostic Communication Manager (DCM
4.9 Introduction to AUTOSAR Runtime Environment (RTE)
4.10 Error Handling in AutoSAR
Text Books:
- AUTOSAR A Complete Guide - 2021 Edition Kindle Edition by Gerardus Blokdyk
- AUTOSAR Compendium - Part 1: Application and RTE Book by Oliver Scheid
- AUTOSAR - AUTomotive Open System Architecture by y Kevin Roebuck
- AUTOSAR: A Practical Guide to Automotive Systems and Development" by M. N. Hsu
- Understanding and Designing Automotive Electronic Systems" by Tom Denton
- MATLAB (AUTOSAR BLOCKSET)
Session Plan for the Entire Domain:
1. Microcontroller Based Embedded System Design
Session 1: Embedded System Definition, Examples and Classifications
https://www.youtube.com/watch?v=nccWuB5ypxI&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n
Sesssion-1
Session 2: Career in Embedded System
To understand and use the tools required for simulation, code compilation, and flashing of the LPC2148 microcontroller
https://youtu.be/cs8tBpCfaCw
https://www.youtube.com/watch?v=vbaFMT9LXmg&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=24
Session-2
Session 3: Difference between GPCS and ES
https://www.youtube.com/watch?v=17VCuvKZNAA&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=2
Session 4: Understanding Microprocessor
https://www.youtube.com/watch?v=8CbIaC5hJEo&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=3
Session-4
Session 5: Microprocessor Internal Architecture and Pipeline
https://www.youtube.com/watch?v=xYRvSWtf_6k&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=4
Session_5_Microcontroller & Micro processor
Session 6: Big Endian vs Little Endian
https://www.youtube.com/watch?v=a9lVoThjV7o&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=27
ARM_datatype_registrers
Session 7: Embedded System Block Diagram & Components
https://www.youtube.com/watch?v=Fj326iP-xLc&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=5
Session 8: Difference Between Microprocessor and Microcontroller
https://www.youtube.com/watch?v=euyc7rlKwoM&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=6&pbjreload=101
Session_5_Microcontroller & Micro processor
Session 9: Introduction to ARM Processors and its versions
https://www.wikinote.org/mod/page/view.php?id=317&forceview=1
Introduction to ARM
Session 10: ARM7, ARM9, ARM11 features, Advantages and Suitability in Embedded Applications
https://www.wikinote.org/mod/page/view.php?id=318
Introduction to ARM
Session 11: ARM Programmers Model
https://www.wikinote.org/mod/page/view.php?id=319&forceview=1
Session 12: ARM RISC Design Philosophy
https://www.wikinote.org/mod/page/view.php?id=320&forceview=1
Session 13: ARM7 Fundamentals, Data Flow model , Programmers Model
https://www.wikinote.org/mod/page/view.php?id=321
Session 14: ARM7 based LPC2148 – Features and Architecture
https://www.wikinote.org/mod/page/view.php?id=323&forceview=1
features of LPC2148
lpc2148_architechture
Session-14
Session 15: System Control Block(PLL and VPB Divider)
https://www.wikinote.org/mod/page/view.php?id=325&forceview=1
Session 16: Memory Map of LPC2148
https://www.wikinote.org/mod/page/view.php?id=324&forceview=1
Session 17: Software Compilation
https://www.youtube.com/watch?v=8XBsNtx6Wyk&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=15
Session 18: Memory EEPROM & Flash it's application
https://www.youtube.com/watch?v=bfcr_7Vn1rQ&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=16
Session 19: Scripting Language vs Programming Language
https://www.youtube.com/watch?v=hW-8voz6Vko&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=18
Session 20: Getting Started with Keil uVision & its legacy Software installation
https://www.youtube.com/watch?v=mJCcsSaHPiw&list=PLKbSRxrdxkT3sRzWE465KoxOH00BFbRs6&index=3
Session 21: Getting started with Proteus Professional software
https://www.youtube.com/watch?v=FhDjujpSSVg&list=PLKbSRxrdxkT3sRzWE465KoxOH00BFbRs6&index=4
Session 22: Arduino IDE and Proteus simulation
https://www.youtube.com/watch?v=yReV-B0fVqU&list=PLKbSRxrdxkT3sRzWE465KoxOH00BFbRs6&index=20
Session 23: GPIO Configuration and Application
https://www.youtube.com/watch?v=QxvdmzKxEeg&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=32
Session 24: GPIO Pull UP, Pull Down, Output Configuration
https://www.youtube.com/watch?v=IjKDKGqCm_4&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=33
Session 25: Bit Masking and its Type
https://www.youtube.com/watch?v=IjKDKGqCm_4&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=33
https://www.youtube.com/watch?v=FmY-PjukO8I&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=37
Session 26: GPIO Programming of ARM7
https://www.wikinote.org/mod/page/view.php?id=326&forceview=1
https://www.youtube.com/watch?v=oFd911fKmI0&feature=emb_logo
Session 27: ARM7 GPIO
https://www.youtube.com/watch?v=EiP3JOYlJUU&list=PLcYzlQJ999Bl6gyxNJ9NTJNWKKYBTsxHN&index=1
Session 28: Pin connect Block
https://www.wikinote.org/mod/page/view.php?id=327&forceview=1
https://www.youtube.com/watch?v=uuLtT14ny44
Session 29: Communication Protocols
https://www.wikinote.org/mod/page/view.php?id=376&forceview=1
https://www.youtube.com/watch?v=GjMW1zqyTOk&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=7
Session 30: UART Protocols and Configuration
https://www.youtube.com/watch?v=MebhACqcdno&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=8
https://www.youtube.com/watch?v=UnKc3_-K5Lk&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=9
Session 31: ARM7 UART
https://www.youtube.com/watch?v=p1pyt9UK-7Y&list=PLcYzlQJ999Bl6gyxNJ9NTJNWKKYBTsxHN&index=5
Session 32: Serial Communication Between ARM7 LPC2148 And PC
https://www.wikinote.org/mod/page/view.php?id=340&forceview=1
https://www.youtube.com/watch?v=UcmjdhXDwlc&list=PLkZZR-eAtzdq2COvMm644aSOZBYkR1hHg&index=7
Session 33: Bluetooth Interfacing with LPC2148
https://www.youtube.com/watch?v=Au3MPh8E47Q
Session 34: Interfacing and Programming GSM and GPS using LPC2148
https://www.youtube.com/watch?v=qR1zigFP7K0
Session 35: RFID based simulation in Proteus professional
https://www.youtube.com/watch?v=DRZPIP1gSKw
Session 36: GSM Module Interfacing with LPC2148
https://www.wikinote.org/mod/page/view.php?id=373&forceview=1
https://www.youtube.com/watch?v=qj95zn4qqPs&list=PLkZZR-eAtzdq2COvMm644aSOZBYkR1hHg&index=8
Session 37: GPS Module Interfacing with LPC2148
https://www.wikinote.org/mod/page/view.php?id=374&forceview=1
https://www.youtube.com/watch?v=4iMSttGMkLQ&list=PLkZZR-eAtzdq2COvMm644aSOZBYkR1hHg&index=9
Session 38: I2C Protocol and Driver Development
https://www.youtube.com/watch?v=HGX457RA4IU&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=10
https://www.youtube.com/watch?v=kfuZtu4v3gc&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=11
Session 39: EEPROM interfacing with LPC2148 using I2C Protocol
https://www.wikinote.org/mod/page/view.php?id=377&forceview=1
https://www.youtube.com/watch?v=NKYvLXRdQpk&list=PLkZZR-eAtzdq2COvMm644aSOZBYkR1hHg&index=13
Session 40: ARM7 SPI
https://www.youtube.com/watch?v=Gk3nYQ1jiPA&list=PLcYzlQJ999Bl6gyxNJ9NTJNWKKYBTsxHN&index=2
Session 41: SPI Protocol & driver development
https://www.youtube.com/watch?v=qyHaiDMf7p4&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=12
https://www.youtube.com/watch?v=7F5TGZleOgw&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=13
Session 42: SD card Interfacing with LPC2148 using SPI Protocol
https://www.wikinote.org/mod/page/view.php?id=378&forceview=1
Session 43: Difference between SPI & I2C
https://www.youtube.com/watch?v=HRi-J9TdE48&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=14
Session 44: CAN Protocols and Architecture
https://www.youtube.com/watch?v=kS0d4GfCuVk&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=19
https://www.youtube.com/watch?v=--QANl29EP0&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=20
Session 45: CAN Frame Format
https://www.youtube.com/watch?v=nyef9xoZjqc&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=21
https://www.youtube.com/watch?v=xYqv3aopYUM&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=31
Session 46: CAN Bus Arbitration
https://www.youtube.com/watch?v=EIVQzv6-LRo&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=22
https://www.youtube.com/watch?v=egS-FNndwME&list=PLcbIZiT62e1gNZ-VWPO3rpTpXkHBMZa2n&index=23
Session 47: ARM7 Timers
https://www.wikinote.org/mod/page/view.php?id=339&forceview=1
https://www.youtube.com/watch?v=nBP0B3Hwj5s&list=PLcYzlQJ999Bl6gyxNJ9NTJNWKKYBTsxHN&index=6
Session 48: ARM7 Interrupts
https://www.wikinote.org/mod/page/view.php?id=331&forceview=1
https://www.youtube.com/watch?v=UbwMz-ZFCa8&list=PLcYzlQJ999Bl6gyxNJ9NTJNWKKYBTsxHN&index=3
Session 49: ARM7 PWM
https://www.electronicwings.com/arm7/lpc2148-watchdog-timer
Session 50: ARM7 WDT
https://www.electronicwings.com/arm7/lpc2148-watchdog-timer
Session 51: ARM7 RTC
https://www.youtube.com/watch?v=IHKE98jN_ns&list=PLcYzlQJ999Bl6gyxNJ9NTJNWKKYBTsxHN&index=4
Session 52: ARM7 ADC
https://www.youtube.com/watch?v=pZeNMIOAbys
Session 53: ADC without Interrupt
https://www.youtube.com/watch?v=Sr7gqod18A4&list=PLkZZR-eAtzdq2COvMm644aSOZBYkR1hHg&index=10
Session 54: ADC with Interrupt
https://www.wikinote.org/mod/page/view.php?id=375&forceview=1
https://www.youtube.com/watch?v=4s4xd1lyjQg&list=PLkZZR-eAtzdq2COvMm644aSOZBYkR1hHg&index=11
Session 55: ARM7 DAC
https://www.wikinote.org/mod/page/view.php?id=379&forceview=1
https://www.youtube.com/watch?v=uGj4BTb7SRM
Session 56: Setting up MQTT using DHT11/DHT22 and NodeMCU
https://randomnerdtutorials.com/esp8266-and-node-red-with-mqtt/
Session 57: Wi-Fi setup with NodeMCU
https://www.electronicwings.com/nodemcu/nodemcu-wi-fi-with-esplorer-ide
Session 58: LoRa features, Configuration and setup to Things Network
https://www.youtube.com/watch?v=jp_2gwBrQc8
2. Real-Time Operating System & Porting
Session 1: Operating System, Objective, Function and types
https://www.youtube.com/watch?v=0ZjkUMKy6x0
Session 2: Introduction to RTOS
https://www.youtube.com/watch?v=Cj8HFbnwr7U&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z
Session 3: RTOS Software Architecture
https://www.youtube.com/watch?v=1BE0Oz1qjW8&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=2
Session 4: Multitasking and Multiprogramming
https://microcontrollerslab.com/difference-between-multiprogramming-and-multitasking/
Session 5: RTOS Task Scheduling
https://www.youtube.com/watch?v=WV6i_mjl-cA&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=3
Session 6: Types of Scheduling & its difference
https://microcontrollerslab.com/difference-between-preemptive-and-non-preemptive-scheduling-in-os/
Session 7: RTOS shared data problem and Mutual exclusion
https://www.youtube.com/watch?v=4hF0i5VWLFc&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=4
Session 8: RTOS Semaphore, Mutex and synchronization
https://www.youtube.com/watch?v=5P5AFoG6mw4&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=5
Session 9: RTOS Scheduling
https://www.youtube.com/watch?v=AQzMmcKSfZE&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=6
Session 10: RTOS Inter task communication
https://www.youtube.com/watch?v=a-iPhMxHB2s&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=7
Session 11: RTOS Time & Memory Management
https://www.youtube.com/watch?v=uN0DmICBSl4&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=8
Session 12: RTOS Events and ISR
https://www.youtube.com/watch?v=f1XNBTDLtR0&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=9
Session 13: RTOS Design
https://www.youtube.com/watch?v=1Mjwfv5x32g&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=10
Session 14: FreeRTOS Introduction
https://www.youtube.com/watch?v=aXgErqz33sE&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=11
Session 15: Downloading & Installing FreeRTOS on Arduino IDE
https://www.youtube.com/watch?v=sjJkyBH_oks
Session 16: Downloading & Installing FreeRTOS on Keil uVision
https://www.youtube.com/watch?v=yNGZqB1MGFs
Session 17: FreeRTOS Creating New Project, files in CCS
https://www.youtube.com/watch?v=YFJK5Y2USRo&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=12
Session 18: Setting up FreeRTOS on Atmel Studio
https://www.youtube.com/watch?v=dMM9u_1G5Qo&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=3
Session 19: Setting up FreeRTOS on Eclipse Based IDE
https://www.youtube.com/watch?v=7efj3bJbGbk&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=4
Session 20: FreeRTOS app debussing using SEGGER SystemView Tools
https://www.youtube.com/watch?v=FklzdUt97gE&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=17
Session 21: FreeRTOS Task & its API
https://www.youtube.com/watch?v=Mz0o2--LhP0&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=13
Session 22: FreeRTOS Task Control
https://www.youtube.com/watch?v=Jnbk8lHaljg&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=14
Session 23: FreeRTOS Task - Creating & Deleting
https://www.youtube.com/watch?v=nYlpeApGXwQ&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=2
Session 24: FreeRTOS suspending and Deleting Task
https://www.youtube.com/watch?v=cV_DEoA0c4Y&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=16
Session 25: Changing Task Priorities
https://www.youtube.com/watch?v=POzTm7oZQoA
Session 26: FreeRTOS Task Utilities
https://www.youtube.com/watch?v=cUO_Hn6536s&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=27
https://www.youtube.com/watch?v=8ssuhkEf-Hc&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=15
Session 27: FreeRTOS Direct to Task Notifications part 1
https://www.youtube.com/watch?v=Ht7QRfUvWsI&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=30
Session 28: FreeRTOS Direct to Task Notifications part 2
https://www.youtube.com/watch?v=cv9VIotr4Ms&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=31
Session 29: FreeRTOS Kernel Control
https://www.youtube.com/watch?v=9BjZaWGJTQ4&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=16
Session 30: FreeRTOS Delays
https://www.youtube.com/watch?v=Fty7p2MS8nI&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=1
Session 31: FreeRTOS Binary Semaphore
https://www.youtube.com/watch?v=T-ZnY0-G1RI&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=18
https://microcontrollerslab.com/freertos-binary-semaphore-tasks-interrupt-synchronization-u-arduino/
Session 32: FreeRTOS interrupt Processing with Semaphore
https://www.youtube.com/watch?v=06TH2NgrKkA&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=15
Session 33: FreeRTOS Counting Semaphore
https://microcontrollerslab.com/freertos-counting-semaphore-examples-arduino/
https://www.youtube.com/watch?v=3OPX7U3K4ug&feature=emb_logo
Session 34: FreeRTOS Mutex
https://www.youtube.com/watch?v=8WVcHo3hIuA&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=19
https://microcontrollerslab.com/arduino-freertos-mutex-tutorial-priority-inversion-priority-inheritance/
Session 35: FreeRTOS Recursive Mutex to avoid Deadlocks
https://microcontrollerslab.com/freertos-recursive-mutex-avoid-deadlocks-examples-arduino/
https://www.youtube.com/watch?v=pfjYgdSytqs&feature=emb_logo
Session 36: FreeRTOS Software Timer
https://www.youtube.com/watch?v=rqSAKKi5WsQ&feature=emb_logo
https://www.youtube.com/watch?v=bwKxGymYRmo&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=20
Session 37: Update & Query timer ID
https://microcontrollerslab.com/freertos-software-timer-with-arduino-update-and-query-timer-id/
https://www.youtube.com/watch?v=uFfLpLngC3M&feature=emb_logo
Session 38: Change Period Timer and Reset Timer
https://microcontrollerslab.com/change-period-reset-software-timer-freertos-arduino/
https://www.youtube.com/watch?v=gsRYYmfEFQA&feature=emb_logo
Session 39: FreeRTOS Queue Management
https://microcontrollerslab.com/arduino-freertos-queues-create-read-write-examples/
Session 40: FreeRTOS structure Queue to Receive Data from multiple Task
https://microcontrollerslab.com/arduino-freertos-structure-queue-receive-data-multiple-resources/
https://www.youtube.com/watch?v=ptRphJPEx8k&feature=emb_logo
Session 41: FreeRTOS Queue set
https://microcontrollerslab.com/freertos-queue-set-arduino/
https://www.youtube.com/watch?v=iII_KPi_ObI&feature=emb_logo
Session 42: Creating MailBox with Queue
https://microcontrollerslab.com/create-mailbox-with-queues-using-freertos-arduino/
https://www.youtube.com/watch?v=rqSAKKi5WsQ&feature=emb_logo
Session 43: FreeRTOS Queue part 1
https://www.youtube.com/watch?v=PlPcGNcDeZw&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=17
https://www.youtube.com/watch?v=elgkseFUpmk&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=14
Session 44: FreeRTOS Queue Part 2
https://www.youtube.com/watch?v=Z-XD3Q7Hqps&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=29
Session 45: FreeRTOS Events
https://www.youtube.com/watch?v=bIXl-JpvgN8&list=PLVxBVAdu4pn7UTHjmslHicZiYtyRbxs6z&index=21’
Session 46: FreeRTOS handling Interrupt
https://www.youtube.com/watch?v=0lX6OERAwsM&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=26
Session 47: FreeRTOS Stack & Heap Management
https://www.youtube.com/watch?v=bLQWB4H0TpE&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=6
Session 48: FreeRTOS Stack Space
https://www.youtube.com/watch?v=9zxU9uAifMI&list=PL2LyNz9Xb_UmMwheCvf7Wrs4MDb_uQ9fd&index=12
Session 49: ESP8266 with AWS IoT
https://www.youtube.com/watch?v=LNVRzr4oDW0
Session 50: Setup AWS IOT with Raspberry pi
https://www.youtube.com/watch?v=PyniYh7yaos
Session 51: Amazon FreeRTOS
https://www.youtube.com/watch?v=aeP0A67eNEg.
Session 52: AWS IoT Device Tester for Amazon FreeRTOS using STM32
https://www.youtube.com/watch?v=UOyMrALAx2w
https://aws.amazon.com/freertos/device-tester/
Session 53: Introduction to IoT Greengrass
https://thenewstack.io/how-aws-iot-greengrass-brings-cloud-capabilities-to-the-edge/
Session 54: AWS Greengrass Setup on Raspberry Pi
https://www.youtube.com/watch?v=nreWYKsuZGs
Session 55: Managing Smart Camera and bulb with Greengrass using Raspberry pi
https://www.youtube.com/watch?v=qC2U_dZfGCo
Session 56: AWS IoT Device Tester for Amazon Greengrass STM32
https://aws.amazon.com/greengrass/device-tester/
Session 57: Perform Object Detection at the Edge with AWS IoT Green grass
https://thenewstack.io/tutorial-perform-object-detection-at-the-edge-with-aws-iot-greengrass/#:~:text=First%2C%20we%20create%20a%20Greengrass,the%20bulb%20and%20the%20camera.
3. Embedded Linux on ARM (57.5 Hrs)
Session 1: Installation of Ubuntu on Virtual box in Windows
https://www.youtube.com/watch?v=GGorVpzZQwA&list=PLS1QulWo1RIYmaxcEqw5JhK3b-6rgdWO_&index=30
notes1
Session 2: Embedded Linux
https://www.youtube.com/watch?v=dhk9uzFeGio&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=54
notes 2
Session 3: Installation of Raspbian OS on Raspberry pi
https://www.youtube.com/watch?v=jsi50bCo_W4
notes 3
Session 4: Linux Architecture
https://www.youtube.com/watch?v=7pogTKrfjOs&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=48
notes 4
Session 5: Linux shell commands
https://www.youtube.com/watch?v=YHFzr-akOas&list=PLS1QulWo1RIb9WVQGJ_vh-RQusbZgO_As
notes 5
Session 6: Linux shell commands-I https://www.youtube.com/watch?v=0utcg3ztzuI&list=PLS1QulWo1RIb9WVQGJ_vh-RQusbZgO_As&index=26
notes 6
Session 7: Grep in Linux
https://www.youtube.com/watch?v=_SxRZ4HMIBE&list=PLS1QulWo1RIb9WVQGJ_vh-RQusbZgO_As&index=37
notes 7
Session 8: Linux File System
https://www.youtube.com/watch?v=YSh1SFZzgbk&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=22
notes 8
Session 9: Create own Linux command
https://www.youtube.com/watch?v=aao3c0mAbEQ&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=21
notes 9
Session 10: Inode number, soft-link, hard-link in Linux
https://www.youtube.com/watch?v=fFvl4uyjiJs&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=23
https://www.youtube.com/watch?v=XfxDek4Zl9w&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=27
notes 10
Session 11: Shell Scripting
https://www.youtube.com/watch?v=GGorVpzZQwA&list=PLS1QulWo1RIYmaxcEqw5JhK3b-6rgdWO_&index=30
notes 11
Session 12: Shell scripting – 1 File test operator
https://www.youtube.com/watch?v=uVi5o38NGi0&list=PLS1QulWo1RIYmaxcEqw5JhK3b-6rgdWO_&index=6
notes 12
Session 13: Shell Scripting – 2
https://www.youtube.com/watch?v=dW3oYQbNFyI&list=PLS1QulWo1RIYmaxcEqw5JhK3b-6rgdWO_&index=12
Session 13
Session 14: Shell Scripting – 3
https://www.youtube.com/watch?v=PgVIvWIi89I&list=PLS1QulWo1RIYmaxcEqw5JhK3b-6rgdWO_&index=18
notes 14
Session 15: Shell scripting – 4
https://www.youtube.com/watch?v=16T4e4DME8I&list=PLS1QulWo1RIYmaxcEqw5JhK3b-6rgdWO_&index=24
notes 15
Session 16: I/O Linux System Calls - open(), write
https://www.youtube.com/watch?v=3xETQv3DtSc&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=12
https://www.youtube.com/watch?v=jDkQc7a1y1A&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=16
notes16
Session 17: I/O Linux system calls - Creat()
https://www.youtube.com/watch?v=9IOj_267jbY&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=17
notes 17
Session 18: I/O Linux System calls- close() and ulink()
https://www.youtube.com/watch?v=XU57oIvRW98&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=28
https://www.youtube.com/watch?v=1KMK967_fiQ&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=30
notes 18
Session 19: Linux system calls – execl (), execlp(), dup(), dup2()
https://www.youtube.com/watch?v=fz2jhcTltdw&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=11
https://www.youtube.com/watch?v=GB01KM1JH7k&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=13
notes 19
Session 20: Linux system call fcntl() as dup ()
https://www.youtube.com/watch?v=6kYIpRvRNkk&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=20
notes 20
Session 21: File locking in Linux
https://www.youtube.com/watch?v=0wrdcxkgujc&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=14
notes 21
Session 22: Process, PCB, File Descriptor
https://www.youtube.com/watch?v=kiiQBK8sGeQ&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=33
https://www.youtube.com/watch?v=W9C_N-JfvHo&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=18
notes 22
Session 23: How to create a child process with fork in Linux
https://www.youtube.com/watch?v=7VOW4zkDZrQ&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=4
notes 23
Session 24: Zombie and Orphan
https://www.youtube.com/watch?v=qdBLhJhiOKQ&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=24
notes 24
Session 25: Daemons in Linux
https://www.youtube.com/watch?v=rj2LRRxspvM&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=9
notes25
Session 26: Semaphores implementation in Linux
https://www.youtube.com/watch?v=Om2t1xgEUQE&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=5
notes26
Session 27: Semaphores and Mutex
https://www.youtube.com/watch?v=8wcuLCvMmF8&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=15
notes27
Session 28: Signals in Inter-process Communication
https://www.youtube.com/watch?v=p-qltZWQKAs&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=8
notes28
Session 29: Pipes in Inter-process Communication
https://www.youtube.com/watch?v=NeSHcoAJaGU&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=7
notes 29
Session 30: Inter-process communication-Named Pipes or FIFO
https://www.youtube.com/watch?v=hLGwgbrrlXM&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ
notes 30
Session 31: Message Queue-IPC Mechanism
https://www.youtube.com/watch?v=JbmOegG9-J0&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=2
notes 31
Session 32: Shared Memory
https://www.youtube.com/watch?v=PRmUybI61cA&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=3
notes 32
Session 33: Socket in Linux System programming
https://www.youtube.com/watch?v=pdkGTYyvbPQ&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=6
notes 33
Session 34: Threads in Linux
https://www.youtube.com/watch?v=ZXW-iVivWF4&list=PL3uLubnzL2Tlbyrr2GFVRE7Azo8FJe-dJ&index=10
notes 34
Session 35: BBB board and SOC
https://www.youtube.com/watch?v=FpzOGye3RcQ&list=PLERTijJOmYrC64uu5wAGQQuYFR45ZoITj&index=1
notes 35
Session 36: AM335 Functional block overview
https://www.youtube.com/watch?v=RCdV6FnSuKg&list=PLERTijJOmYrC64uu5wAGQQuYFR45ZoITj&index=2
https://www.youtube.com/watch?v=DzkGROq_hQg&list=PLERTijJOmYrC64uu5wAGQQuYFR45ZoITj&index=3
notes 36
Session 37: BBB networking Configuration
https://www.youtube.com/watch?v=CoJOObE6zJg&list=PLERTijJOmYrC64uu5wAGQQuYFR45ZoITj&index=7
notes 37
Session 38: Linux booting process
https://www.youtube.com/watch?v=DV5S_ZSdK0s&t=1s
notes 38
Session 39: Embedded Linux Toolchain
https://www.youtube.com/watch?v=9CmZXuHdCUM&list=PLMB3ddm5Yvh1H_e4IqXyFH25efrNYEDnP
notes 39
Session 40: uBoot
https://www.youtube.com/watch?v=rVaiLgXccSE
https://www.youtube.com/watch?v=rVaiLgXccSE&list=PLMB3ddm5Yvh1H_e4IqXyFH25efrNYEDnP&index=5
notes 40
Session 41: Busybox
https://www.youtube.com/watch?v=wWA6SvzvElU
notes 41
Session 42: Buildroot
https://www.youtube.com/watch?v=IE-aRcTjPVw
notes 42
Session 43: Eclipse setup for BBB
https://www.youtube.com/watch?v=T9yFyWsyyGk&t=10s
notes 43
Session 44: Linux Device Drivers
https://www.youtube.com/watch?v=U7QFcpVh248&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750
notes 44
Session 45: System Memory, Static Modules and Dynamic Modules
https://www.youtube.com/watch?v=VXIFibjNLhU&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=2
notes 45
Session 46: Process and Memory Management, Device Control
https://www.youtube.com/watch?v=1v_ALs6zuRw&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=3
notes 46
Session 47: Linux Kernel Modules, User Space and Kernel Space
https://www.youtube.com/watch?v=kpKZPBUepxo&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=4
notes 47
Session 48: Implementing Device Driver and Running
https://www.youtube.com/watch?v=RwRje_Vy2u4&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=5
notes 48
Session 49: Loading and unloading Kernel Modules
https://www.youtube.com/watch?v=zTTzIc1zJ3s&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=6
notes 49
Session 50: Kernel Modules Vs Applications
https://www.youtube.com/watch?v=Sp0vfWll7H8&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=7
notes 50
Session 51: Kernel Symbol Tables
https://www.youtube.com/watch?v=sen-FlxJu_M&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&i
notes 51
Session 52: Kernel Symbol tables
https://www.youtube.com/watch?v=sen-FlxJu_M&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=8
notes52
Session 53: Kernel Symbols and Symbol Tables
https://www.youtube.com/watch?v=_k6zg5mLDXk&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=9
notes53
Session 54: Module Parameters and Array Module
https://www.youtube.com/watch?v=3ccMOOLS6xY&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=10
notes 54
Session 55: Device Driver Types
https://www.youtube.com/watch?v=jP9mLe2nAN4&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=11
notes55
Session 56: Major and Minor Numbers
https://www.youtube.com/watch?v=deOZGzIOlPI&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=12
notes56
Session 57: Allocating device Numbers
https://www.youtube.com/watch?v=UztjkDcECkw&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=13
notes 57
Session 58: File structure, File Operations, and Inode Structure.
https://www.youtube.com/watch?v=_WS_2bR07KQ&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=14
notes 58
Session 59: Adding and Removing character device from Linux System
https://www.youtube.com/watch?v=kl3PcktVB5I&list=PL1zwAXk5ZrWKxLyCq73lzFn3oSLruM750&index=15
notes 59session-1_MICRO4 . AUTOSAR Design using CAN, CAN Analyser, and LIN
Session 1: Origin of Automobile and how it started in India, major systems included in a Automobile
https://www.youtube.com/watch?v=5cFovJ4HZ8s
notes 1Session 2: ECU design for mirror control
https://www.youtube.com/watch?v=GVUjmz0fvkk
notes 2Session 3:
Components of Automobiles,
Transmission system in vehicles.
https://www.youtube.com/watch?v=fPjOWekzeGI
notes 3Session 4. ECU design for measurement of heat produced in engine
https://www.youtube.com/watch?v=UN8F6nZ65JI
notes 4Session 5. Data Transfer and Communication Interface in Automotive, Electronics in automobiles
https://www.youtube.com/watch?v=gfRCBmitWPw
notes 5Session 6. ECU design for fuel indicator
https://www.youtube.com/watch?v=-Mn8Va-UaiE
notes 6Session 7 . Electronics in automobile
https://www.youtube.com/watch?v=4R27hc4qruE
notes 7Session 8. ECU design for wiper control
https://www.youtube.com/watch?v=MZcjvQlX60k
notes 8Session 9. What is AUTOSAR, More on Why AUTOSAR for Automotive
https://www.youtube.com/watch?v=Ltt2i6VuVTs
notes 9Session 10. ECU design for seat belt control system
https://www.youtube.com/watch?v=CJ2PidvTDSY
notes 10Session 11. Benefits to members and Limitation of AUTOSAR, Objective of AUTOSAR
https://www.youtube.com/watch?v=s3LpH_wiKHA
notes11Session 12. ECU design for door locking system
https://www.youtube.com/watch?v=HAVX1Zth8Tk
notes 12Session 13. AUTOSAR in Vehicle Telematics and HMI
https://www.youtube.com/watch?v=j-Yne3btbr8
notes13Session 14. A ECU design for dash board panel
https://www.youtube.com/watch?v=GVUjmz0fvkk
notes 14Session 15.How AUTOSAR is used in Chassis Domain , AUTOSAR in Vehicle Body Domain.
https://www.youtube.com/watch?v=BopPYdu9o20
notes 15Session 16. ECU design for door locking system
https://www.youtube.com/watch?v=RZkHUhZagv4
notes16Session 17. RTE layer in AUTOSAR
https://www.youtube.com/watch?v=RomGNzRQIyo
notes 17Session 18. ECU design for fire Alaram safety system.
https://www.youtube.com/watch?v=cvCzMIv9LRQ
notes 18Session 19.
AUTOSAR interfaces, Application layer features in AUTOSAR
https://www.youtube.com/watch?v=g-V64RZ-z4w
notes 19Session 20.
ECU design for door glass control
https://www.youtube.com/watch?v=hyuJbL39hPc
notes 20Session 21.
AUTOSAR Methodology Overview general
https://www.youtube.com/watch?v=oo5iz_OnN3c
notes 21Session 22.
Interfacing of CAN module with ECU for sending
http://Interfacing of CAN module with ECU for sending https://www.youtube.com/watch?v=spVgKZkNpT8
notes 22Session 23. Serial communication protocol, CAN protocol and its advantages
https://www.youtube.com/watch?v=kS0d4GfCuVk&list=PLcbIZiT62e1gKGBxVBY3AKXmQBdGGvTQB
notes23Session 24. LIN protocol and its advantages
https://www.youtube.com/watch?v=TresvW4dxlc
notes 24Session 25. Interfacing of CAN modeule with ECU for receiving
https://www.youtube.com/watch?v=GA-KNEuAR9w
notes25Session 26. I2C,SPI communication protocol
https://www.youtube.com/watch?v=IyGwvGzrqp8
notes 26Session 27. ECU design for dash board panel
https://www.youtube.com/watch?v=ajICfIG82yg
notes 27
List of Projects to be done in Domain:
1. Real-Time IoT based Apparel Tracking System using Apriso Solution
2. Real-Time IoT based Smart Agriculture Monitoring & Controlling
3. Design and Development of Insulin Pump
4. IoT -Based Covid Patient Blood Oxygen Monitor and Calling an Ambulance on critical blood oxygen levels
5. Portable IoT Based Fingerprint Biometric Attendance System
6. Smart AI-Driven Autonomous Vehicle with Multi-Protocol Connectivity and Real-Time Control
7. Integration of Embedded AI with IoT and Edge Computing for Intelligent Driver Assistance and Smart Navigation System
8. Real-Time Embedded Control of a Voice-Guided Autonomous Vehicle Using Hybrid Speech Recognition and Sensor Fusion Techniques
Gate Process for Project
Gate 0: Idea
Gate 1: Scope
Project Scope(Video)
Gate 2: Development (Work Breakdown Structure)
Project Life Cycle(Video)
Work Breakdown Structure(Video)
Gate 3: Testing and Validation
Gate 4: Documentation
Course Materials
- stage-gate-process-slide2
- Gate Process
- Gate Process
- 44
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- notes 51
- notes 45
- notes 44
- notes 46
- notes 47
- notes 48
- notes 49
- notes 50
- notes52
- notes53
- notes 54
- notes55
- notes56
- notes 57
- notes 58
- notes 59
- notes 51
- notes16
- notes 17
- notes 18
- notes 23
- notes24
- notes 24
- notes25
- notes 23
- notes27
- notes26
- notes28
- notes1
- notes3
- session 2
- notes 2
- notes 3
- notes 4
- notes 5
- notes 6
- notes 7
- notes 8
- notes 9
- notes 10
- notes 11
- notes 12
- Session 13
- notes 14
- Session 15
- notes 20
- notes 20
- notes 21
- notes 22
- notes 33
- notes 34
- notes 35
- notes 36
- notes 37
- notes 38
- notes 39
- notes 40
- notes 41
- notes 42
- notes 43
- notes 29
- notes 30
- notes 31
- notes 32
- notes 19
- session-1
- Session-2_Micro
- Session-3_micro
- AMBA & AHB
- Session-3_micro
- session-1_MICRO
- Introduction to ARM
- lpc2148
- AMBA & AHB
- notes 27
- Session 27
- notes 26
- notes25
- notes 8
- notes 9
- notes 10
- notes11
- notes 12
- notes13
- notes 14
- notes 24
- notes 23
- notes 22
- notes 21
- notes 20
- notes 15
- notes16
- notes 17
- notes 18
- notes 19
- notes 1
- notes 7
- notes 6
- notes 5
- notes 4
- notes 3
- notes 2
- notes 1
- Session_5_Microcontroller & Micro processor
- Session-4
- ARM_datatype_registrers
- Introduction to ARM
- features of LPC2148
- lpc2148_architechture
- Session-14
- Sesssion-1
- Session-2
Session plan & materials
No materials published yet.
