Objectives
|
- Theoretical course
- PDF course material (in English)
- The trainer to answer trainees’ questions during the training and provide technical and pedagogical assistance
| Exercise : | Practical activities | |
| • | Practical activities represent from 40% to 50% of course duration | |
| • | Example code, labs and solutions | |
| • | NXP FRDM Board or simulated board (IMXRT) using Zazu Simulator | |
- C Language knowledge (see for example our L2 training course)
- Familiarity with Git and command-line tools
- Cours théorique
- Support imprimé et PDF (en anglais).
- Assistance du formateur tout au long de la formation.
- Activités pratiques (40-50% de la durée)
- Exemples de code, exercices et solutions.
- Un PC (un par binôme au-delà de 6 stagiaires) avec carte cible si nécessaire.
- Machine virtuelle préconfigurée téléchargeable pour refaire les TP après le cours.
- Chaque session débute par un point avec les stagiaires.
- Tout ingénieur ou technicien en systèmes embarqués possédant les prérequis ci-dessus.
- Les prérequis sont évalués avant la formation.
- Les progrès sont évalués par le formateur via les exercices pratiques, et par des quizz pour les sections sans exercices.
- Chaque stagiaire reçoit une attestation de réussite.
- En cas de prérequis manquant, une formation différente ou complémentaire est proposée.
Plan du cours
- SDK structure and components
- Toolchains, CMake and Ninja integration
- Application structure and examples
- Overview
- Application components and structure
- Application
- Application
- Modules
- West workspace
- Why West? Problems solved
- West as a meta-tool: repository + commands
- Alternatives (git submodules, repo) and limitations
- West
- West structure
- Using west
- West manifest
- West commands
- West topologies
- Anatomy of west.yml
- Specific commands and common extensions
- Init, update, list, config
- Build, debug, attach, flash
- Other common commands
- Extending West with custom commands
| Exercise : | Exercise: Getting started with West and MCUXpresso SDK | |
| Exercise : | Exercise: Create a custom workspace manifest while importing only required projects | |
- Setting up host tools (Git, Python, CMake, Ninja)
- Integrating LinkServer, Jlink and other debuggers
- Debugging workflow with GDB
- VSCode integration (tasks, debug sessions)
- MCUXpresso for VSCode
| Exercise : | Exercise: Build, flash and debug using command line and customize IDE | |
- Overview of the configuration tool suite (Pins, Clocks, Peripherals, Device settings)
- How Config Tools integrate with MCUXpresso SDK and West builds
- Generating initialization code (pin_mux.c/h, clock_config.c/h, peripheral setup)
- Using the graphical interface to configure GPIO, UART, and system clocks
- Exporting configuration files and re-integrating them into applications
- Limitations and best practices when combining with Kconfig/prj.conf
| Exercise : | Exercise: Customize existing boards | |
- Custom manifests for minimal projects
- Writing custom West commands
- Modifying in-tree applications (LED blinky)
- Freestanding applications outside the SDK
| Exercise : | Exercise: Extend west commands | |
| Exercise : | Exercise: Create a custom freestanding application | |
- Adding FreeRTOS using West
- Multicore projects with Sysbuild
- SPDX analysis and compliance check
- Memory footprint and Puncover analysis
| Exercise : | Exercise: Extend the workflow with FreeRTOS and advanced tools | |
| Exercise : | Exercise: Using west memory analysis features | |
- Configuration phase in West/CMake
- Kconfig framework:
- Enabling/disabling global features
- Tuning and conditional compilation
- Default values and symbol dependencies
- Role of prj.conf and fragments
- Interactive configuration (menuconfig, guiconfig)
- Generated config files: .config, mcux_config.h
- Writing new Kconfig entries (symbols, menus, defaults)
- Limitations and best practices
- MCUXpresso SDK specifics (custom prefixes, no CONFIG_ macros)
| Exercise : | Exercise: Customize prj.conf | |
| Exercise : | Exercise: Create and use custom kconfig options | |
- Board Architecture Overview
- Structure and components of a board port
- Creating a New Board Definition
- Configuring custom boards
- Board debuggers
- Linker Script
- Integrating the custom Board into the SDK
| Exercise : | Exercise: Write a custom board | |
- Why to use modules?
- Module structure
- Out-of-tree module
- Module’s YAML
- Module CMakeLists.txt
| Exercise : | Exercise: Create a custom library module | |
Plus d'information
Pour vous enregistrer ou pour toute information supplémentaire, contactez nous par email à l'adresse info@ac6-formation.com.
Les inscriptions aux sessions de formation sont acceptées jusqu'à une semaine avant le début de la formation. Pour une inscription plus tardive nous consulter
Vous pouvez aussi remplir et nous envoyer le bulletin d'inscription
Ce cours peut être dispensé dans notre centre de formation près de Paris ou dans vos locaux, en France ou dans le monde entier.
Les sessions inter-entreprises programmées sont ouvertes dès deux inscrits. Sous condition d'un dossier complet, les inscriptions sont acceptées jusqu'à une semaine avant le début de la formation.
Dernière mise à jour du plan de cours : 20 mai 2026
L'inscription à nos formations est soumise à nos Conditions Générales de Vente