Please rely on the training document in the download section of this project.
The text that follows is for a quick understanding of what we intend to accomplish during this training. It is a copy of sections 1 and 2 of the training document.
Purpose of this trainingTo provide students with an introduction of enabling co-processor Cortex-M core in NXP MPU i.MX8M processor. Every i.MX8 series comes with Cortex-M core and number of A-cores. The M-core is used for Real Time applications when embedded systems require deterministic response which can’t be achieved with A-cores running Linux embedded OS.
Difficulty levelThis is a beginner level training, but some basic proficiency in using Linux is expected. If you completed our first training from the spring of 2021, “Avnet MaaXBoard Training 2021 April-May”, then you have the technical skills required for the training.
Agenda. How are the trainings organized?- Build and Run Yocto image on i.MX8M MaaXBoard SBC. We need this to be able to make modification to the device tree enabling running M-core along with A-cores in Linux.
- Set up MCUXpresso SDK for Cortex-M4 core. Next step we will download and set up MCUXpresso SDK for i.MX8M processor platform with M4-core inside. This will allow us to compile applications for Cortex-M4 co-processor.
- Build and Run Hello World example on Cortex-M4 core from bootloader. Next topic will be building and running our first application on Cortex-M4 core in standalone, from U-boot bootloader.
- Modifying Linux Device Tree. Build and Run Hello World example on Cortex-M4 from Linux. And the last one is Modifying Linux Device Tree to be able to run both M-core and A-cores simultaneously and exchange messages between the cores in Linux.
Avnet provides three operating system options; Debian Linux, Yocto Project (Linux), and Android. We are using the Yocto operating system for this lab. Yocto is Open-source collaborative project focused on embedded Linux development. It helps developers create custom efficient Linux-based systems for embedded products. Yocto is default Embedded Linux software support for i.MX applications processors from NXP.
Why are we using the MaaXBoard?The Avnet MaaXBoard is designed to provide a Raspberry Pi type of user experience while also showcasing the NXP i.MX 8M processor based on the ARM Cortex-A53 and ARM Cortex-M4 cores. The MaaXBoard is a low-cost, single board computer ideal for embedded computing and smart edge IoT applications.
What processors does this training support?Since all the processors that are part of the i.MX 8 family have certain Cortex-M coprocessor inside, they can be used for this training.
What other hardware is compatible with this training?There are 3 MaaXBoard flavors available from Avnet at the time of this training.
- MaaXBoard – NXP i.MX 8M
- MaaXBoard Mini – NXP i.MX 8M Mini*
- MaaXBoard Nano – NXP i.MX 8M Nano*
* Yocto build configuration, Device Tree and M-core configuration should be modified accordingly.
How do I learn more about what is provided in this training?· MaaXBoard Linux Yocto Lite Development Guide V1.3-EN
· MaaXBoard Hardware User Manual V1.2-EN
· NXP MCUXpresso SDK Builder (After building SDK and downloading refer to /docs/folder) *
· NXP Introduction to Device Trees
· NXP Linux 5.4.24_2.1.0 Documentation *
* Requires login to the NXP account
How should I prepare for this training?Make sure you have the appropriate hardware needed for this training, and purchase anything you do not have: Chapter 2 Hardware Prerequisites for this training.
Go to the hackster.io project “Avnet MaaXBoard Multi-core and Device Tree Training” and under the “Schematics” section, download this document: Avnet MaaXBoard Multi-core and Device Tree Training.
What should I do if I have questions during the training?If you have questions, please visit the hackster.io project “Avnet MaaXBoard Multi-core and Device Tree Training” and under the “Comments” section, write your question to us. Please specify which document section number that issue happens, which command failed, what your result is, and what your setup is.
Hardware prerequisites for this trainingIn this section we will describe the hardware needed for this training.
If you attended our first training from the spring of 2021, “Avnet MaaXBoard Training 2021 April-May”,
List of required hardware
This is a list of what we recommend for this training:
• MaaXBoard (Avnet p/n AES-MC-SBC-IMX8M-G)
• External USB Type-C Power Supply 5V/3A (Avnet p/n AES-ACC-MAAX_PWRUL)
• Two Console adapters (TTL to USB) *
• MicroSD card (4GB mimimum)
• Adapter for programming the MicroSD card
• Computer running GNU/Linux – Ubuntu 18.04 LTS
Comments
Please log in or sign up to comment.