강의

멘토링

커뮤니티

Hardware

/

Embedded IoT

TRACE32 Introduction - Practical Debugging Course for MCU & RTOS Developers

This is an essential skill course for becoming an MCU developer that companies want to hire - TRACE32 beginner course. You can quickly learn TRACE32 debugging methods that can be immediately applied in practical work.

(5.0) 5 reviews

78 learners

  • austinkim
실습 중심
trace32
실무적용
문제해결
임베디드
MCU
debugging
riscv
cortex-m3

Reviews from Early Learners

What you will learn!

  • You can identify the cause of problems by using the TRACE32 debugger to read and modify register and memory contents.

  • I can write and debug CMM scripts that are widely used in TRACE32.

  • You can control the execution flow of code by utilizing TRACE32's breakpoint setting functionality.

  • You can efficiently perform dump debugging by utilizing the functionality to save or load memory dumps.

  • You can learn the core functions of Cortex-M3 processors and RISC-V by utilizing TRACE32's features.

Notice 🎯

To commemorate the launch of Korea's first TRACE32 course (Basic), we're issuing a 30% discount coupon (limited to the first 100 people).

Coupon link: https://inf.run/2VPew

Upgrade your career and salary

Attention aspiring MCU developers!!!

Do you want to become an MCU developer that companies are eager to hire? TRACE32 debugging skills are essential. By taking this course, you can quickly learn TRACE32 debugging methods that can be immediately applied in real-world work. You can start TRACE32 debugging practice (simulator mode) immediately upon enrollment.

TRACE32

Reasons why it should be handled well

TRACE32 is a widely used hardware debugger and program worldwide. Particularly in MCU development, TRACE32 is not only a hardware debugger but also a development environment with SDK characteristics. Especially large corporations (Samsung, Hyundai Motor, SK) and global semiconductor companies (Qualcomm, NXP, Infineon) use TRACE32 as a standard tool in MCU development stages. Therefore, for career advancement, learning how to use TRACE32 for MCU developers is not simply a choice, but an essential competency required in practical work.

This lecture explains how MCU developers can effectively use TRACE32.

The reason for creating the course

Over 14 years of solving various crash issues, I have resolved countless challenging problems (crashes, lockups, watchdog resets, hardware bugs) using TRACE32. Like a knight sleeping with his armor the night before a medieval one-on-one duel, I have even slept holding TRACE32 equipment during business trips. This is because TRACE32 equipment is like armor that protects a knight for embedded system developers.

With the hope that embedded system developers who are still working overtime would have less hardship, I conducted a TRACE32 debugging seminar targeting embedded developers and managers. However, I heard the following complaints.

  • Administrator's perspective: Even when we purchase TRACE32 licenses for developers, they don't use them effectively. (Reason: Developers don't know how to properly utilize TRACE32)

  • Developer's perspective: Management won't purchase TRACE32 licenses, so debugging is impossible. Additionally, there are no senior colleagues or peers who can properly teach how to debug with TRACE32.

After hearing this feedback, I thought people aren't utilizing TRACE32, which provides powerful features, as well as expected. So I decided to create an introductory TRACE32 course that MCU firmware developers who haven't used TRACE32 yet or aren't familiar with it can apply in their practical work.

Differentiation Points of the Course

This course is not simply a process of listing TRACE32 usage methods. It is a hands-on practice-centered course designed with situations that MCU developers can definitely encounter in actual work.

1. Providing a hands-on practice environment

Students can download the TRACE32 program (simulator version) and run it immediately. Even without hardware debugger equipment, you can install TRACE32 in a PC environment and practice debugging commands directly. This allows you to gain sufficient experience before using actual equipment.

2. Cortex-M3 and RISC-V MCU Support

This course covers all features related to both Arm Cortex-M3 and RISC-V architectures. The current MCU market is divided between Arm-based products and RISC-V-based products, and understanding both architectures is an important factor in enhancing the competitiveness of future MCU developers. You can directly experience the differences between the two architectures using TRACE32.

3. Easy and systematic debugging methods explained through hands-on practice

TRACE32 provides powerful features, but it may seem somewhat complex to those encountering it for the first time. This course is structured based on scenarios you might encounter in actual development. It covers frequently needed functions in MCU development through hands-on practice, including register checking, memory dump analysis, and function call stack tracing. Additionally, it explains TRACE32's debugging methods step by step in an easy and clear manner.

4. Providing CMM Script Usage Methods

Beyond simply debugging in a GUI environment, this course also covers how to use CMM scripts to dump memory or parse specific data. This functionality brings significant productivity improvements in large-scale projects or repetitive analysis tasks. We provide practical script examples that can be immediately applied in real-world scenarios to maximize learning effectiveness.

After taking this course...

  • You can directly load the ELF files you develop with TRACE32 and debug symbols. You can check section information and information about variables and functions. Based on this, you can efficiently analyze source code you're seeing for the first time and perform debugging in the shortest time possible.

  • Using TRACE32, you can set breakpoints and immediately check related global or local variables. You can also directly modify register or memory contents, allowing you to effectively handle unexpected issues.

  • You can execute assembly instructions (Cortex-M3, RISC-V) for direct debugging. You can check the values of changed registers or memory contents.

  • You can debug problems encountered while using the TRACE32 program. In particular, you can directly handle issues encountered during CMM script execution and immediately identify the primary cause.

You'll learn this kind of content

Detailed explanation of why MCU firmware developers should master TRACE32 from practical development and career perspectives. **Practical Development Perspective:** TRACE32 is an essential tool that significantly enhances debugging efficiency and code quality in MCU firmware development. Unlike basic debuggers, TRACE32 provides real-time trace capabilities that allow developers to analyze program execution flow, identify performance bottlenecks, and detect hard-to-find bugs that occur intermittently. Its advanced breakpoint features enable conditional debugging and complex trigger scenarios, making it invaluable for debugging interrupt-driven systems and real-time applications. The tool's memory analysis capabilities help developers optimize memory usage and detect memory leaks or corruption issues that are critical in resource-constrained MCU environments. **Career Development Perspective:** Mastering TRACE32 positions developers as highly skilled professionals in the embedded systems industry. Companies developing automotive, aerospace, medical devices, and industrial control systems specifically seek engineers proficient with advanced debugging tools like TRACE32. This expertise demonstrates deep understanding of low-level system behavior and debugging methodologies, making candidates more competitive for senior firmware engineer, embedded systems architect, and technical lead positions. The knowledge also opens opportunities in specialized fields like automotive AUTOSAR development, safety-critical systems, and high-performance embedded applications where TRACE32 proficiency is often a


Specifically explains what kind of work can be done in practical development using TRACE32.

To use TRACE32 effectively, you need to understand the basic functions of the CPU architectures supported by TRACE32. This explains the core functions of Cortex-M3/M4 processors that are widely used in MCU firmware development.

This explains the basic functions of RISC-V processors that are widely used in MCUs recently.

Let's run TRACE32 and introduce the basic commands you need to know during this process. We'll proceed with hands-on practice debugging CMM scripts.

This explains each menu of TRACE32. We will proceed with hands-on practice of setting breakpoints and debugging assembly instructions.

In a state where a RISC-V-based ELF file (u-boot) is loaded, we will conduct a hands-on exercise using the TRACE32 features covered in previous lectures. From the perspective of an MCU firmware developer, you can learn which features are used together in TRACE32 when the CPU is changed.

We will conduct specific hands-on practice for debugging symbols and loading binary files in TRACE32.

I organize frequently used commands during the debugging process while looking at the TRACE32 reference manual.

Pre-enrollment Reference Information

Copyright and Precautions for Educational TRACE32 Program

  • The TRACE32 educational program used in this course belongs to MDSTech and Lauterbach, and cannot be copied or distributed without a license.

  • This course is designed exclusively for developers in Korea. (Overseas developers in regions other than Korea cannot take this course. Reason: TRACE32 license issues)

Copyright and Notice

  • The TRACE32 training software used in this course is owned by MDSTech and Lauterbach. It cannot be copied or distributed without a license.

  • This course is created only for South Korean developers in South Korea. Developers outside of Korea cannot take this course due to TRACE32 license restrictions.

Practice Environment and Prerequisites

  • The TRACE32 program (simulator mode) can be used in 'Windows 10' or 'Windows 11' environments. (This TRACE32 program does not run on Mac)

  • There are no prerequisites for this course, but having knowledge of MCU or RTOS will make it easier to follow the lessons.

  • It's good to know the basic grammar of the C language.

Prerequisites and Important Notes

  • Whether essential prerequisite knowledge is required considering learning difficulty

  • Course video quality (audio/video quality) and other content directly related to taking the course, as well as recommended learning methods

  • Questions/Answers and Future Update Related Content

  • Notice Regarding Copyright of Lectures and Learning Materials

Recommended for
these people

Who is this course right for?

  • Embedded software engineer who wants to learn efficient debugging methods while developing MCU-based firmware

  • A junior developer who is encountering TRACE32 for the first time but must use it in their project

  • Linux BSP engineers who face difficulties when first bringing up boards or debugging peripheral devices

  • Firmware developer who wants to analyze task behavior and system behavior in an RTOS environment

  • Developers who want to quickly identify MCU crashes or exceptions and improve their problem-solving skills

Need to know before starting?

  • C language

  • MCU

  • RTOS

Hello
This is

5,974

Learners

193

Reviews

89

Answers

4.9

Rating

22

Courses

글로벌 저자 & 리눅스 시스템 소프트웨어 개발자 (Arm, RISC-V 아키텍처)

국내 시스템 소프트웨어 분야에서 전무후무한! 'Arm 아키텍처(Armv8-A, Armv7-A)'와 '리눅스 커널' 책을 쓴 저자(2권의 책 모두 대한민국 학술원 우수도서에 선정)이며, 국내 최초로 해외 출판사(Packt)를 통해 "Reverse Engineering Armv8-A Systems" 책(영어)을 집필한 글로벌 저자입니다. 무엇보다 최신 시스템 소프트웨어 트렌드(전기자동차, 시스템 반도체- 시스템 소프트웨어)를 가장 잘 알고 있는 현업 개발자입니다. 또한 시스템 소프트웨어 분야에서 가장 지식 전파 활동을 활발하게 하는 교육자입니다. 

  • 'Reverse Engineering Armv8-A Systems: A practical guide to Kernel, Firmware, and TrustZone analysis' 책(영어) 저자, (Packt 출판사)

  • '시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리'(2024년, 대한민국 학술원 우수도서상) 저자

  • '디버깅을 통해 배우는 리눅스 커널의 구조와 원리' (2021년, 대한민국 학술원 우수도서상) 저자

  • '프로그래머스 데브 코스: 리눅스 시스템 및 커널 전문가' 메인 강사

  • 2022년 6월, 한국컴퓨터종합학술대회 (KCC2022) - 튜토리얼 발표 [ftrace를 이용해 리눅스 커널 정복하기]

  • LG전자 '리눅스 커널' 및 'Armv8 아키텍처' 사내 강사(국내 및 해외 개발자 포함) - (2020년~현재)

국내에서 어느 누구보다 리눅스 커널과 Arm 아키텍처(Armv8-A, Armv7-A)를 잘 설명할 수 있는 교육자라고 자신있게 말씀드릴 수 있습니다.

강의문의 : austindh.kim@gmail.com

주요 로드맵 🎯

'시스템 소프트웨어 개발자를 위한 Arm - basic course'

'시스템 소프트웨어 개발자를 위한 Arm - advanced course'

시스템 소프트웨어 개발자를 위한 Linux kernel - basic course

Curriculum

All

81 lectures ∙ (9hr 16min)

Course Materials:

Lecture resources
Published: 
Last updated: 

Reviews

All

5 reviews

5.0

5 reviews

  • sagekang님의 프로필 이미지
    sagekang

    Reviews 6

    Average Rating 5.0

    5

    100% enrolled

    Trace32 보유하고 있다면 꼭 수강하면 좋은 강의입니다. 요약 자료는 부족해 보일 수도 있지만, 강의 내용이 상세히 잘 되어 있어 요약 자료 없어도 충분합니다.

    • alond lee님의 프로필 이미지
      alond lee

      Reviews 1

      Average Rating 5.0

      5

      44% enrolled

      생소해서 도전하기 어려웠던 주제인데 덕분에 많은 지식을 얻고 갑니다!

      • 컴돌이님의 프로필 이미지
        컴돌이

        Reviews 10

        Average Rating 5.0

        5

        99% enrolled

        • 권강현님의 프로필 이미지
          권강현

          Reviews 3

          Average Rating 5.0

          Edited

          5

          30% enrolled

          Vㅔ리 굿입니다 !!

          • sunny75님의 프로필 이미지
            sunny75

            Reviews 112

            Average Rating 5.0

            5

            100% enrolled

            (25/09/21/일 10:30) T32를 사용하기 위한, 모든 명령어를 자세히 설명해 주셔서 감사합니다. TRACE32 고급 강의에는 에러 발생 시, 원인을 파악해 주시면 좋을 것 같습니다. 예전 강의에서 crash 가 발생했을 때, stack 주소를 통해서 crash 발생 전 함수를 찾아 주셨던 내용이 기억나서 적어 봅니다. 전 김동현님의 모든 강의를 신청 & 듣고 있는 중입니다. ^^;; 좋은 강의 만들어 주셔서 감사합니다.

            Limited time deal ends in 1 days

            $49,500.00

            25%

            $51.70

            austinkim's other courses

            Check out other courses by the instructor!

            Similar courses

            Explore other courses in the same field!