|
1 | 1 | --- |
2 | | -title: Overview |
| 2 | +title: Set up the board |
3 | 3 | weight: 2 |
4 | 4 |
|
5 | 5 | ### FIXED, DO NOT MODIFY |
6 | 6 | layout: learningpathall |
7 | 7 | --- |
8 | 8 |
|
9 | | -## Hardware Overview - NXP's FRDM i.MX 93 Board |
| 9 | +In this section, you’ll learn what makes the NXP FRDM i.MX 93 board a useful ML development platform, then you’ll boot the board and log in. |
10 | 10 |
|
11 | | -Selecting the best hardware for machine learning (ML) models depends on effective tools. You can visualize ML performance early in the development cycle by using NXP's [FRDM i.MX 93](https://www.nxp.com/design/design-center/development-boards-and-designs/frdm-i-mx-93-development-board:FRDM-IMX93) board. |
| 11 | +## Why this board is useful for ML on Arm |
12 | 12 |
|
13 | | -<center> |
14 | | -<iframe src='//players.brightcove.net/4089003392001/Sk5u9ln3l_default/index.html?videoId=6366294691112' allowfullscreen frameborder=0 width="800" height="400"></iframe> |
| 13 | +The NXP [FRDM i.MX 93](https://www.nxp.com/design/design-center/development-boards-and-designs/frdm-i-mx-93-development-board:FRDM-IMX93) board is a practical way to validate ML workloads on real Arm hardware early in your workflow. |
15 | 14 |
|
16 | | -*Unboxing NXP's FRDM i.MX 93 board* |
17 | | -</center> |
| 15 | +It combines: |
| 16 | + |
| 17 | +- An Arm Cortex-A55 application processor for Linux-based development |
| 18 | +- An Arm Cortex-M33 microcontroller for real-time tasks |
| 19 | +- An Arm Ethos-U65 NPU (neural processing unit) for on-device inference acceleration |
| 20 | + |
| 21 | +The following image highlights the i.MX 93 SoC and the NPU location on the board: |
18 | 22 |
|
19 | 23 |  |
20 | 24 |
|
21 | | -### NXP's FRDM i.MX 93 Processor Decoded |
| 25 | +If you connect the board to a display, you can see ML demos and application output directly on the device. This is useful when you want quick visual confirmation that your model runs on the target hardware. |
| 26 | + |
| 27 | +## Unbox and power the board |
| 28 | + |
| 29 | +To set up the hardware, follow NXP’s getting started guide: [Getting Started with FRDM-IMX93](https://www.nxp.com/document/guide/getting-started-with-frdm-imx93:GS-FRDM-IMX93). |
| 30 | + |
| 31 | +Stop when you complete section "1.6 Connect Power Supply". |
| 32 | + |
| 33 | +## Connect to the serial console and log in |
| 34 | + |
| 35 | +To log in, you connect to the board over a USB-to-UART serial console using `picocom`. Use a package manager to install it. |
| 36 | + |
| 37 | +{{< tabpane code=true >}} |
| 38 | + {{< tab header="MacOS" language="shell">}} |
| 39 | +brew install picocom |
| 40 | + {{< /tab >}} |
| 41 | + {{< tab header="Ubuntu" language="shell">}} |
| 42 | +sudo apt update |
| 43 | +sudo apt install -y picocom |
| 44 | + {{< /tab >}} |
| 45 | +{{< /tabpane >}} |
| 46 | + |
| 47 | + |
| 48 | +{{% notice macOS %}} |
| 49 | + |
| 50 | +On macOS, you might need an extra USB-to-UART driver depending on which USB serial bridge the board exposes. You can get the drivers from Silicon Labs [Downloads page](https://www.silabs.com/developer-tools/usb-to-uart-bridge-vcp-drivers?tab=downloads). |
| 51 | +{{% /notice %}} |
| 52 | + |
| 53 | +The next step is to establish a USB-to-UART (serial) connection. Connect the board’s debug (**DBG**) USB-C connector to your computer. |
| 54 | + |
| 55 | +Find the board’s serial device: |
| 56 | + |
| 57 | +If you see more than one candidate device, use this quick method to identify the right one: |
| 58 | + |
| 59 | +1. Run the command once with the board disconnected. |
| 60 | +2. Connect the **DBG** USB-C cable. |
| 61 | +3. Run the command again and use the *new* device that appeared. |
| 62 | + |
| 63 | +{{< tabpane code=true >}} |
| 64 | + {{< tab header="MacOS" language="shell">}} |
| 65 | +ls /dev/tty.* |
| 66 | + {{< /tab >}} |
| 67 | + {{< tab header="Ubuntu" language="shell">}} |
| 68 | +ls /dev/ttyUSB* /dev/ttyACM* 2>/dev/null |
| 69 | + {{< /tab >}} |
| 70 | +{{< /tabpane >}} |
| 71 | + |
| 72 | +Connect to the board using the `picocom` command by updating the serial device identifier. |
| 73 | + |
| 74 | +```bash |
| 75 | +sudo picocom -b 115200 /dev/tty* |
| 76 | +``` |
| 77 | + |
| 78 | +You will see the below output on a successful connection. |
| 79 | + |
| 80 | +```output |
| 81 | +picocom v3.1 |
| 82 | +... |
| 83 | +Terminal ready |
| 84 | +``` |
| 85 | + |
| 86 | +Now you're ready to log in to Linux on the board. Connect the board’s **POWER** USB-C connector to your laptop and toggle the **OFF/ON** switch if it's set to off. You should see one red and one white light on the board. In the `picocom` terminal window, the board will print boot logs. The last line should end with a login prompt. |
| 87 | + |
| 88 | +```bash |
| 89 | +... |
| 90 | +[ OK ] Reached target Graphical Interface. |
| 91 | + Starting Record Runlevel Change in UTMP... |
| 92 | +[ OK ] Finished Record Runlevel Change in UTMP. |
| 93 | + |
| 94 | +NXP i.MX Release Distro 6.6-scarthgap imx93frdm ttyLP0 |
| 95 | + |
| 96 | +imx93frdm login: |
| 97 | +``` |
22 | 98 |
|
23 | | - |
| 99 | +Type `root` to log in as root (no password is needed). |
24 | 100 |
|
25 | | -**NXP's Processor Labeling Convention:** |
26 | | -|Line|Meaning| |
27 | | -|----|-------| |
28 | | -|MIMX9352|• MI – Microcontroller IC<br>• MX93 – i.MX 93 family<br>• 52 – Variant:<br>• Dual-core Arm Cortex-A55<br> • Single Cortex-M33<br>• Includes **Ethos-U65 NPU**| |
29 | | -|CVVXMAB|• C - Commercial temperature grade (0°C to 95°C)<br>• VVX - Indicates package type and pinout (BGA, pitch, etc.)<br>• MAB - Specific configuration (e.g., NPU present, security level, memory interfaces) |
30 | | -| |
31 | | -|1P87F|• Silicon mask set identifier| |
32 | | -|SBBM2410E|• NXP traceability code| |
| 101 | +## (Optional) Run the built-in NXP demos |
33 | 102 |
|
34 | | -## Benefits and applications |
| 103 | +- Connect the board to a monitor via HDMI. |
| 104 | +- Connect a mouse to the board’s USB-A port. |
35 | 105 |
|
36 | | -NPUs, like Arm's [Ethos-U65](https://www.arm.com/products/silicon-ip-cpu/ethos/ethos-u65) NPU are available on physical devices specifically made for developers. Development boards like NXP's [FRDM i.MX 93](https://www.nxp.com/design/design-center/development-boards-and-designs/frdm-i-mx-93-development-board:FRDM-IMX93) also connect to displays via a HDMI cable. Additionally the board accepts video inputs. This is useful for for ML performance visualization due to: |
37 | | -- visual confirmation that your ML model is running on the physical device, |
38 | | -- image and video inputs for computer vision models running on the device, |
39 | | -- clearly indicated instruction counts, |
40 | | -- confirmation of total execution time and |
41 | | -- visually appealing output for prototypes and demos. |
| 106 | + |
0 commit comments