1
Plug it In2
Get Software3
Build, Run4
Modify a SDK ExampleSign in to save your progress. Don't have an account? Create one.
Let's take your MIMXRT595-EVK for a test drive! You have the choice of watching the sequence in a short video or following the detailed actions listed below.
Note:FXOS8700CQ accelerometer is in “End of Life” status. Your RT595-EVK may not have the accelerometer populated.
Something went wrong! Please try again.
There are three micro-USB connectors on the board. Plug the USB cable into the one labeled Link USB (J40
), as is shown in the photo below.
When the board is powered, the RGB LED D19 should flash on and off.
Something went wrong! Please try again.
Your MIMXRT595-EVK comes loaded with a "LED blinky" demo, explained below, and a demo that exercises the Cortex M33, Fusion F1 DSP and the GPU. This out of the box demo will be shown in an Application Note.
When the board is powered, the RGB LED D19 should flash on and off.
Something went wrong! Please try again.
The MCUXpresso Software Development Kit (SDK) is complimentary and includes full source code under a permissive open-source license for all hardware abstraction and peripheral driver software.
Click below to download a pre-configured SDK release for the MIMXRT595-EVK. Unzip the SDK into a directory path that does not contain any spaces.
You can also use the online SDK Builder to create a custom SDK package for the MIMXRT595-EVK.
Something went wrong! Please try again.
The MCUXpresso Software Development Kit (SDK) is complimentary and includes full source code under a permissive open-source license for all hardware abstraction and peripheral driver software.
Click below to download a pre-configured SDK release for the MIMXRT595-EVK. Unzip the SDK into a directory path that does not contain any spaces.
You can also use the online SDK Builder to create a custom SDK package for the MIMXRT595-EVK.
NXP offers a complimentary toolchain called MCUXpresso IDE. Please download MCUXpresso v11.3.0 or above.
Want to use a different toolchain?
The MCUXpresso SDK includes support for other tools such as IAR , Keil and command-line GCC .
Something went wrong! Please try again.
The MCUXpresso Config Tool is an integrated suite of configuration tools that guides users in creating new MCUXpresso SDK projects, and also provides pin and clock tools to generate initialization C code for custom board support, It is fully integrated as a part of MCUXpresso IDE, or you can download it as a seperate tool if using different toolchain. MCUXpresso Config Tool v9.0 or above is needed to support the i.MXRT595.
Something went wrong! Please try again.
Drivers for the debugger and virtual COM port also need to be installed. They are part of the LPCScrypt package, which can be download below. The LPC-Link2 circuiit firmaware will also need to be updated to use the J-Link interface. The tutorial below will walk through the steps.
Something went wrong! Please try again.
Many of the MCUXpresso SDK examples applications output data over the MCU UART. Install and configure your preferred terminal software to 115200 baud rate, 8 data bits, no parity and 1 stop bit. To determine the port number of the MIMXRT595-EVK's virtual COM port, open the device manager and look under the "Ports (COM and LPT)" group.
Not sure how to use a terminal application? Try one of these tutorials:
MCUXpresso Terminal, Tera Term Tutorial, PuTTY TutorialSomething went wrong! Please try again.
You will need to download the neccessary J-Link drivers in order to debug the Fusion F1 DSP. Follow the next tutorial to see how to download and install this software.
Something went wrong! Please try again.
To code and debug the DSP on the MIMXRT595-EVK, you will need to download Cadence Tensilica Xplorer. This is the only available development IDE for the DSP core of the MIMXRT595
Something went wrong! Please try again.
The MCUXpresso SDK comes with a long list of example applications code. To see what's available, browse to the SDK boards folder of your SDK installation and select MIMXRT595-EVK. (<SDK_Install_Directory>/boards/evkmimxrt595
).
To learn more about specific example code, open the readme.txt file in an example's directory.
Something went wrong! Please try again.
If one or more of the demo application or driver examples sounds interesting, you're probably wanting to know how you can build and debug yourself. The Getting Started with SDK guide provides easy, step-by-step instructions on how to configure, build, and debug demos for all toolchains supported by the SDK. Use the guide below to learn how to open, build and debug an example application in MCUXpresso IDE.
The RT500 SDK provides a collection of DSP example applications. Each DSP example has two source directories, one for the ARM CM33 and one for the DSP Fusion F1.
In order to debug a DSP demo you will need to follow two processes. The first one is to build and flash the CM33 application to your MIMXRT595-EVK. The second one is to build and debug the DSP application using Xtensa Xplorer IDE.
The following steps will guide you through the mu_polling application using MCUXpresso IDE for the Cortex-M33 application. The MCUXpresso IDE installation can be found at the section “2. Get Software” of this Getting Started guide.
dsp_examples
category, and then click the checkbox next to
dsp_mu_polling_cm33
to select that project. To use the UART for printing (instead of the default semihosting), select UART as the SDK Debug Console checkbox under the project options. Then, click on Finish.
DSP_IMAGE_COPY_TO_RAM
macro value. To do this, go to project properties doing right click on the project. DSP_COPY_IMAGE_TO_RAM to 0
.
The following steps will guide you through the mu_polling application using Xtensa Xplorer IDE for the DSP. The Xtensa Xplorer IDE installation can be found at the section “2. Get Software” of this Getting Started guide.
“<SDK install dir> \boards\evkmimxrt595\dsp_examples\mu_polling\dsp”
dsp_mu_polling_fusionf1
' in the Project Explorer. This project includes the code for the DSP. You can see the main function at source → main_dsp.c
. “C:\Program Files (x86)\Tensilica\Xtensa OCD Daemon 14.01”
and execute the following command: “xt-ocd.exe -c topology.xml
”. You should see the following:
The following steps will guide you through opening the mu_polling
application. This application consists of code for both the Cortex M33 and the DSP core. The instructions for compiling and debugging the Cortex M33 core are covered in the instructions below.
Instructions for compiling and debugging the DSP code can be found in Section 2 of the “Use MCUXpresso IDE” tutorial. These steps may change slightly for other example applications as some of these applications may have additional layers of folders in their path.
Please use IAR Embedded Workbench for Arm version 8.50.9 or above.
<install_dir>/boards/<sdk_board_name>/<example_type>/<application_name>/iar
Using the mu_polling demo as an example, the path is:
<install_dir>/boards/evkmimxrt595/dsp_examples/mu_polling/cm33/iar
dsp_mu_polling_cm33 - debug
” target. DSP_IMAGE_COPY_TO_RAM
macro value to 0. Open the project properties by doing a right-click on the project and selecting Options. DSP_IMAGE_COPY_TO_RAM
to 0. Note: In case of building errors, make sure that the correct board is selected, right-click in the Project >> Options >> General Options >> Target >> Device, Select the NXP MIMXRT595S_M33; this board is supported in IAR Embedded Workbench for Arm version 8.50.9 or higher.
The LPC-Link2 circuit on the board should have been updated to use the J-Link interface during Step 2.4 “LPCScrypt” of the Getting Started website. See that section of the Getting Started website for more details on using LPCScrypt to update the debug firmware on the board to use the J-Link interface if this has not already been done.
JP1
) is removed when powering the board. mu_polling_cm33
application is now running on the Cortex-M33.To build and debug the code for the DSP part of this application, open the “Use MCUXpresso IDE” tutorial and follow the instructions starting at “2. Build and Debug the DSP Application”.
This section contains the steps to install the necessary components required to build and run a KSDK demo application with the ARM GCC toolchain, as supported by the MCUXpresso SDK. There are many ways to use ARM GCC tools, but this example focuses on a Windows environment. Though not discussed here, GCC tools can also be used with both Linux OS and Mac OSX.
Please use GCC ARM Embedded version 9-2020-q2.
Install GNU-RM ARM Embedded Toolchain
Download and run the installer from: GNU Arm Embedded Toolchain Downloads . This is the GNU Arm Embedded Toolchain (i.e., compiler, linker, etc.) which includes the GNU compiler (GCC).
The Minimalist GNU for Windows (MinGW) development tools provide a set of tools that are not dependent on third party C-Runtime DLLs (such as Cygwin). The build environment used by the KSDK does not utilize the MinGW build tools, but does leverage the base install of both MinGW and MSYS. MSYS provides a basic shell with a Unix-like interface and tools.
Note: The installation path cannot contain any spaces.
mingw32-base
" and "msys-base" are selected under Basic Setup. <mingw_install_dir>\bin
Assuming the default installation path, C:\MinGW
, an example is shown below. If the path is not set correctly, the toolchain does not work.
Note: If you have "C:\MinGW\msys\x.x\bin"
in your PATH variable (as required by KSDK 1.0.0), remove it to ensure that the new GCC build system works correctly.
Create a new system environment variable and name it ARMGCC_DIR. The value of this variable should point to the ARM GCC Embedded tool chain installation path, which, for this example, is:
C:\Program Files (x86)\GNU Tools ARM Embedded\<version>
Reference the installation folder of the GNU ARM GCC Embedded tools for the exact path name of your installation.
To build an example application, follow these steps.
\boards\evkmimxrt595\dsp_examples\mu_polling\cm33\armgcc
' and open flags.cmake file.
DDSP_IMAGE_COPY_TO_RAM
to 0:
CMAKE_ASM_FLAGS_DEBUG
CMAKE_C_FLAGS_DEBUG
<install_dir>/boards/<board_name>/<example_type>/<application_name>/armgcc
For this guide, the exact path is:
<install_dir>/boards/evkmimxrt685/dsp_examples/mu_polling/cm33/armgcc
build_debug.bat
” on the command line or double click on the "build_debug.bat
" file in Windows operating system Explorer to perform the build. The output is shown in this figure:
When finished, a .elf
will be created inside a folder named 'debug' on the project directory.
The GCC tools require a J-Link debug interface. To update the OpenSDA firmware on your board to the latest J-Link app, visit OpenSDA. After installing the J-Link OpenSDA application, download the J-Link driver and software package from: Segger.
J40
“Link USB”. Ensure the DFULink jumper (JP1
) is removed when powering the board.
"C:\Program Files (x86)\SEGGER\ J-Link <version> \ J-Link GDB Server"
.
*Your device serial number may be different. You can obtain the device serial number, by opening Jlink.exe
(with your MIMXRT595 already connected through J40
).
<install_dir>/boards/<board_name>/<example_type>/<application_name>/armgcc/debug
<install_dir>/boards/<board_name>/<example_type>/<application_name>/armgcc/release
For this guide, the path is:
<install_dir>/boards/evkmimxrt595\dsp_examples\mu_polling\cm33\armgcc\debug
arm-none-eabi-gdb.exe <demo_name>.elf
". For this example, it is "arm-none-eabi-gdb.exe dsp_mu_polling_cm33.elf
". The mu_polling cm33 application is now running.
To build and debug the DSP application follow the instructions of chapter “2. Build the DSP Application” at MCUXpresso tutorial on this same section.
Something went wrong! Please try again.
Option A: Use the MCUXpresso IDE to clone an example project.
The following steps will guide you through the manipulation of the general-purpose outputs. The example sets up a SCTimer to generate a PWM signal and change a LED brightness.
driver_examples
category, then expand the sctimer
examples, click on the check box next to sctimer_pwm_with_dutycycle_change
to select it. To use the UART for printing (instead of the default semihosting), Select UART as the SDK Debug Console checkbox under the project options. Then, click on Finish.
evkmimxrt595_sctimer_pwm_with_duty_cycle_change
” project in the Project Explorer View and build, compile, and run the demo as described previously Note:. On “Use Pin Tool” tutorial you will learn how to change the LED output pin of the board.
Option B: Use the MCUXpresso Config Tool to clone an existing MCUXpresso SDK example for use with third party IDEs. Please use MCUXpresso Config Tool v9.0 or above.
The following steps will guide you through the manipulation of the general-purpose outputs. The example sets up a SCTimer to generate a PWM signal and change a LED brightness.
Then select the project to clone. For this example, we want to use the gpio led output project. You can filter for this by typing “sctimer” in the filter box and then selecting the
“sctimer_pwm_with_dutycycle_change”
example project. You can then also specify where to clone the project and the name. Then click on Finish.
Note: On “Use Pin Tool” tutorial you will learn how to change the LED output pin of the board.
Something went wrong! Please try again.
Now, let's use the Pins tool that is part of the MCUXpresso Config Tool to change the LED that is blinking to a different LED color.
Note: Previously, you had to clone an SDK project like in the previous step.
To open pin tools in MCUXpresso IDE:
“evkmimxrt595_sctimer_pwm_with_dutycycle_change”
project, and selecting “MCUXpresso Config Tools” and then “Open Pins”
To open pin tools in MCUXpresso Config tools:
pin_mux.c
and pin_mux.h
files that are generated by the Pins tool. Click on Update Project in the menu bar Note: The clocks and other files may also be tagged as being updated since the header has been changed.
pin_mux.c
file under board folder sctimer_update_dutycycle.c
file and change macro DEMO_SCTIMER_OUT to kSCTIMER_Out_7 Something went wrong! Please try again.
Next use the Clocks tool that is part of the MCUXpresso Config Tool to change the clock settings and change the rate that the LED blinks.
Note: Previously, you had to clone an SDK project like in the previous step.
To open pin tools in MCUXpresso IDE:
“evkmimxrt595_sctimer_pwm_with_dutycycle_change”
project, and selecting “MCUXpresso Config Tools” and then “Open Pins”
To open pin tools in MCUXpresso Config tools:
Use the pins tools to modify the LED routed pin:
pin_mux.c
and pin_mux.h
files that are generated by the Pins tool. Click on Update Project in the menu bar Note: The clocks and other files may also be tagged as being updated since the header has been changed.
pin_mux.c
file under board folder sctimer_update_dutycycle.c
file and change macro DEMO_SCTIMER_OUT to kSCTIMER_Out_7 Something went wrong! Please try again.
With the application modified, you will see the MIMXRT595-EVK green RGB LED blinking.
Something went wrong! Please try again.
LPCScrypt is a command-line based, fast flash, EEPROM, OTP and security programming tool for LPC microcontrollers. It is the recommended tool to program the latest CMSIS-DAP and J-Link firmware.
J40
and then put on the DFULink jumper.
JP1
is the LPCXpresso DFU. Connect JP1
using the jumper. J40
.C:\ProgramData\Microsoft\Windows\Start Menu\Programs\LPCScrypt
.
The most recent versions of MCUXpresso IDE count with a terminal emulation application. This tool can be used to display information sent from your NXP development platform's virtual serial port.
Tera Term is a very popular open source terminal emulation application. This program can be used to display information sent from your NXP development platform's virtual serial port.
PuTTY is a popular terminal emulation application. This program can be used to display information sent from your NXP development platform's virtual serial port.
Enter to SEGGER download page: Segger.
Accept terms and download the software
.exe
file you just downloaded by doing double-click. Follow the setup instructions until the J-Link installation is complete Cadence® Tensilica® Xplorer is a complete development environment that helps users create application code for high-performance Tensilica® processors. Xplorer is the interface to powerful software development tools such as the XCC compiler, assembler, linker, debugger, code profiler and full set of GUI tools.
Xplorer (including both GUI and command line environment.) is the only available development IDE for the DSP core of MIMXRT500.
You will receive an email confirmation with the activation link from “Tensilica tools”. Click the activation link to complete the registration.
Windows:
Linux:
Reload and return to the Tensilica URL: Fusion f1 DSP SDK For RT500 and click on “Get a License Key for RT500 SDK”.
Type your MAC address without "-" or ":" symbols.
Note: The generated license file only supports debug/run on the RT500 device target. It does not support software simulation/Xplorer ISS. Please contact Cadence directly if you have special needs to run software simulations.
Search the configuration you downloaded at Step 2.
Windows:
“C:\usr\xtensa\XtDevTools\downloads\RI2019.1\tools\xt-ocd-14.0.1-windows64-installer.exe”
Linux:
“~/xtensa/XtDevTools/downloads/RI2019.1/tools/xt-ocd-14.0.1-linux64-installer”
At this moment xt-ocd supports J-Link and ARM RVI/DSTREAM probes over Serial Wire Debug (SWD) for RT500. xt-ocd installs support for J-Link probes but does not install the required J-Link drivers which must be installed separately. The RT500 requires J-Link software version 6.92 or newer.
Linux Note: When installing xt-ocd on Linux, you must manually add a symlink to the installed J-Link driver: “ln -s <jlink-install-dir>libjlinkarm.so.6 <xocd-install-dir>/modules/libjlinkarm.so.6”
C:\Program Files (x86)\SEGGER\JLink
”
Every EVK/LPC-Link2 will have different Jlink S/N.
Note: Please note that J-Link firmware needs to be installed to identify this serial number. If you hasn't update the firmware, please refer to the step “2.4 LPCScrypt” on this guide.
Edit topology file. xt-ocd is configured with an XML input file 'topology.xml
'. The file is located in the Xtensa OCD installation directory at “C:\Program Files (x86)\Tensilica\Xtensa OCD Daemon 14.01”
You will need to modify this file for your debugger hardware. Using J-link as example, please use this topology.xml file to replace the original file. Or copy one of the examples below
Please note that you need to replace 'usbser section with your own Jlink serial number (9-digit number obtained on the previous step).
Below is shown another topology.xml example fot ARM RealView ICE (RVI) and DSTREAM debug probes:
Explore the world with a full assortment of NXP sensor solutions. From accelerometers, pressure sensors, touch sensors, and many more, NXP has a sensor solution for your project. Find out more at Sensors
Near Field Communication is a simple, intuitive technology that lets you interact securely with the world around you with a simple touch. Learn more about NXP's NFC solutions at NFC - Near Field Communication
Getting Started with NXP Wi-Fi modules using i.MX RT platform - Let's take your Wi-Fi module for a test drive. This guide uses the Wi-Fi modules and i.MX RT platforms
Connect with other engineers and get expert advice on designing with i.MX processors and MCUXpresso Software and Tools. Join the community discussion in one of our two dedicated communities: i.RT Community or MCUXpresso Software and Tools Community.