Autoplay
Autocomplete
Previous Lesson
Complete and Continue
AI-Assisted Embedded Firmware Development: Professional Practices and Workflows
Introduction
Welcome(Same as Promo) (1:52)
Course Requirements
The Mental Model for AI-Assistance in Embedded Systems
Why We Need A Mental Model (1:03)
What LLMs Are and Are NOT (2:49)
Why LLMs Sound Confident Even When Wrong (1:13)
Why Embedded Systems Are A Special Case (3:04)
The Danger Of Implicit Trust (2:54)
A Better Model: LLM As A Peer Programmer (0:59)
Getting Value From LLMs Without Loosing Control (1:42)
Source Code Download
Setting Up the Environment
Overview of the Development Environment (3:21)
Chat Based Usage Vs. Inline Based Usage (3:33)
A Safe Baseline Workflow (0:52)
Prompt Discipline for Firmware Development
Why Prompting Matters More In Embedded Systems (3:44)
Prompting LLMs to Explain Legacy Code (2:29)
Prompting for Control Flow Explanation (1:20)
Prompting for Interrupt and Concurrency Explanations (1:26)
Prompting to Generate a New Function Safely (2:27)
Prompting to Generate Peripheral Drivers (3:45)
Prompting for Configuration Code (0:41)
Prompting for Refactoring the Firmware (3:37)
Improving Readability Without Changing Behavior (0:48)
Prompting LLMs for Test and Validation (2:01)
Prompting the LLM to Extract Test Cases from Requirements (0:54)
Asking the LLM to Think Adversarially (2:04)
Firmware Development Workflow with LLMs
The Human-In-The-Loop Workflow (2:52)
Prompting the LLM to Identify Code Smells (1:27)
Verification and Safety Habits
Never Ignore Warnings Without Thinking (3:38)
Cross Checking Against Reference Manuals (1:38)
Asking for Assumptions Before Trusting the Code (2:19)
Common Failure Modes and Pitfalls
Why This Section Exists (1:11)
Failure Mode1- Hallucinated Registers (2:57)
Failure Mode2- Incorrect Timing and Clock Assumptions (1:49)
FailureMode3- ABI and Memory Layout Mistakes (3:01)
FailureMode4- Over Refactoring and Loss of Intent (2:35)
Setting Up the IDE
Downloading CubeIDE (2:34)
Installing CubeIDE (2:38)
Getting the required documentation (7:41)
Getting the required package for bare-metal development (21:19)
Testing the project setup (15:54)
Setting Up the AI-Assisted Development Environment
Setting Up VSCode (2:22)
Setting Up Our AI-Assited Workspace (5:04)
Programming: Enabling the AI Peer Programmer (2:11)
Getting Started With AI-Assisted Development
Programming: Getting Familiar With the AI Chat Panel (4:20)
Programming: Understanding the File Context Capability of Copilot (4:05)
Understanding the Modes of AI-Assisted Development
Programming: Understanding the Key Differences Betwwen Edit Mode and Ask Mode (8:11)
Programming: Working with Plan Mode to Upgrade a Codebase (8:39)
Programming: Working with Plan Mode to Upgrade a Codebase(Pt.2) (6:45)
Programming: Running Multi-File Code Update With Agent Mode (8:37)
Inline AI-Assisted Development
Programming: Overview of Inline Code Completion (3:05)
Programming: Generating Sourcecode Inline Without the Chat Panel (2:26)
Programming: Configuring Inline Suggestions for Specific Languages and Files (7:52)
Programming: Review and Testing the Generated Sourcecode (11:44)
Instructing the LLM Using Shortcuts
Programming: Instructing the LLM to Explain a Block of Code Inline (7:30)
Programming: Instructing the LLM to Review a Block of Code Inline (5:58)
Programming: Instructing the LLM to Generate Docs for a Block of Code (2:54)
Programming: Scoping the Instructions to the LLM (3:06)
Invoking Commands and Tools
Programming: Invoking Useful Commands in the Chat Panel (4:05)
Programming: Invoking Tools Like Web Search with the Hash Symbol (4:42)
Programming: Adding External Documentation Files to the Chat Context (3:10)
Configuring the AI-Assisted Development Environment
Programming: Setting Up the Extension for Vibe Coding Capabilities
Programming: Changing the Large Language Model for Code Completion Functionality (1:51)
Programming: Adding Custom Instructions for Code Generation (4:50)
Programming: Instructing the LLM to Generate Custom Instructions by Scanning the Entire Codebase (5:29)
Programming: Adding External Documentation Files to the Chat Context
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock