1.. _mimxrt1015_evk:
2
3NXP MIMXRT1015-EVK
4##################
5
6Overview
7********
8
9The i.MX RT1015 expands the i.MX RT crossover processor families by providing
10high-performance feature set in low-cost LQFP packages, further simplifying
11board design and layout for customers. The i.MX RT1015 runs on the Arm®
12Cortex®-M7 core at 500 MHz.
13
14.. image:: ./mimxrt1015_evk.jpg
15   :width: 720px
16   :align: center
17   :alt: MIMXRT1015-EVK
18
19Hardware
20********
21
22- MIMXRT1015DAF5A MCU
23
24- Memory
25
26  - 128 Mbit QSPI Flash
27
28- Connectivity
29
30  - Micro USB host and OTG connectors
31  - Arduino interface
32
33- Audio
34
35  - Audio Codec
36  - 4-pole audio headphone jack
37  - External speaker connection
38  - Microphone
39
40- Debug
41
42  - JTAG 10-pin connector
43  - OpenSDA with DAPLink
44
45For more information about the MIMXRT1015 SoC and MIMXRT1015-EVK board, see
46these references:
47
48- `i.MX RT1015 Website`_
49- `i.MX RT1015 Datasheet`_
50- `i.MX RT1015 Reference Manual`_
51- `MIMXRT1015-EVK Website`_
52- `MIMXRT1015-EVK Quick Reference Guide`_
53- `MIMXRT1015-EVK Design Files`_
54
55Supported Features
56==================
57
58The mimxrt1015_evk board configuration supports the following hardware
59features:
60
61+-----------+------------+-------------------------------------+
62| Interface | Controller | Driver/Component                    |
63+===========+============+=====================================+
64| NVIC      | on-chip    | nested vector interrupt controller  |
65+-----------+------------+-------------------------------------+
66| SYSTICK   | on-chip    | systick                             |
67+-----------+------------+-------------------------------------+
68| GPIO      | on-chip    | gpio                                |
69+-----------+------------+-------------------------------------+
70| I2C       | on-chip    | i2c                                 |
71+-----------+------------+-------------------------------------+
72| UART      | on-chip    | serial port-polling;                |
73|           |            | serial port-interrupt               |
74+-----------+------------+-------------------------------------+
75| USB       | on-chip    | USB device                          |
76+-----------+------------+-------------------------------------+
77
78The default configuration can be found in the defconfig file:
79``boards/arm/mimxrt1015_evk/mimxrt1015_evk_defconfig``
80
81Other hardware features are not currently supported by the port.
82
83Connections and I/Os
84====================
85
86The MIMXRT1015 SoC has five pairs of pinmux/gpio controllers.
87
88+---------------+-----------------+---------------------------+
89| Name          | Function        | Usage                     |
90+===============+=================+===========================+
91| GPIO_AD_B0_05 | GPIO            | LED                       |
92+---------------+-----------------+---------------------------+
93| GPIO_EMC_09   | GPIO            | SW4                       |
94+---------------+-----------------+---------------------------+
95| GPIO_AD_B0_06 | LPUART1_TX      | UART Console              |
96+---------------+-----------------+---------------------------+
97| GPIO_AD_B0_07 | LPUART1_RX      | UART Console              |
98+---------------+-----------------+---------------------------+
99| GPIO_EMC_32   | LPUART4_TX      | UART Console              |
100+---------------+-----------------+---------------------------+
101| GPIO_EMC_33   | LPUART4_RX      | UART Console              |
102+---------------+-----------------+---------------------------+
103| GPIO_AD_B1_15 | LPI2C1_SDA      | I2C SDA                   |
104+---------------+-----------------+---------------------------+
105| GPIO_AD_B1_14 | LPI2C1_CLK      | I2C SCL                   |
106+---------------+-----------------+---------------------------+
107
108System Clock
109============
110
111The MIMXRT1015 SoC is configured to use the 24 MHz external oscillator on the
112board with the on-chip PLL to generate a 500 MHz core clock.
113
114Serial Port
115===========
116
117The MIMXRT1015 SoC has four UARTs. ``LPUART1`` is configured for the console,
118and the remaining are not used.
119
120Programming and Debugging
121*************************
122
123Build and flash applications as usual (see :ref:`build_an_application` and
124:ref:`application_run` for more details).
125
126Configuring a Debug Probe
127=========================
128
129A debug probe is used for both flashing and debugging the board. This board is
130configured by default to use the :ref:`opensda-daplink-onboard-debug-probe`,
131however the :ref:`pyocd-debug-host-tools` do not yet support programming the
132external flashes on this board so you must reconfigure the board for one of the
133following debug probes instead.
134
135:ref:`jlink-external-debug-probe`
136-------------------------------------------
137
138Install the :ref:`jlink-debug-host-tools` and make sure they are in your search
139path.
140
141Attach a J-Link 10-pin connector to J55. Check that jumpers J47 and J48 are
142**off** (they are on by default when boards ship from the factory) to ensure
143SWD signals are disconnected from the OpenSDA microcontroller.
144
145Configuring a Console
146=====================
147
148Regardless of your choice in debug probe, we will use the OpenSDA
149microcontroller as a usb-to-serial adapter for the serial console. Check that
150jumpers J45 and J46 are **on** (they are on by default when boards ship from
151the factory) to connect UART signals to the OpenSDA microcontroller.
152
153Connect a USB cable from your PC to J41.
154
155Use the following settings with your serial terminal of choice (minicom, putty,
156etc.):
157
158- Speed: 115200
159- Data: 8 bits
160- Parity: None
161- Stop bits: 1
162
163Flashing
164========
165
166Here is an example for the :ref:`hello_world` application.
167
168.. zephyr-app-commands::
169    :zephyr-app: samples/hello_world
170    :board: mimxrt1015_evk
171    :goals: flash
172
173Open a serial terminal, reset the board (press the SW9 button), and you should
174see the following message in the terminal:
175
176.. code-block:: console
177
178    ***** Booting Zephyr OS v1.14.0-rc1-1297-g312d75f2459e *****
179    Hello World! mimxrt1015_evk
180
181
182.. _MIMXRT1015-EVK Website:
183   https://www.nxp.com/support/developer-resources/run-time-software/i.mx-developer-resources/i.mx-rt1015-evaluation-kit:MIMXRT1015-EVK
184
185.. _MIMXRT1015-EVK Quick Reference Guide:
186   https://www.nxp.com/webapp/Download?colCode=IMXRT1015QSG
187
188.. _MIMXRT1015-EVK Design Files:
189   https://www.nxp.com/webapp/Download?colCode=MIMXRT1015-EVK-REVB-DS
190
191.. _i.MX RT1015 Website:
192   https://www.nxp.com/products/processors-and-microcontrollers/arm-based-processors-and-mcus/i.mx-applications-processors/i.mx-rt-series/i.mx-rt1015-crossover-processor-with-arm-cortex-m7-core:i.MX-RT1015
193
194.. _i.MX RT1015 Datasheet:
195   https://www.nxp.com/docs/en/data-sheet/IMXRT1015CEC.pdf
196
197.. _i.MX RT1015 Reference Manual:
198   https://www.nxp.com/webapp/Download?colCode=IMXRT1015RM
199