summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorLeena Miettinen <riitta-leena.miettinen@qt.io>2019-10-11 15:02:52 +0200
committerLeena Miettinen <riitta-leena.miettinen@qt.io>2019-10-18 12:27:00 +0000
commitb6d071c2461efc49532ee2cff55fd225d4deded2 (patch)
tree50cfec540d7ca01a347dfbbc828c31cbeb390668 /doc
parent7bbfa2de16b3fa64805bbbe0866fea78e704072a (diff)
downloadqt-creator-b6d071c2461efc49532ee2cff55fd225d4deded2.tar.gz
Doc: Describe developing apps for Qt for MCUs
Fixes: QTCREATORBUG-22926 Change-Id: I6c494858bcd637e4ae11ab0e8ea2687fb1eb26ef Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io> Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Diffstat (limited to 'doc')
-rw-r--r--doc/images/qtcreator-mcu-device.pngbin0 -> 8321 bytes
-rw-r--r--doc/images/qtcreator-mcu-kit.pngbin0 -> 26040 bytes
-rw-r--r--doc/images/qtcreator-mcu-options.pngbin0 -> 19827 bytes
-rw-r--r--doc/src/ios/creator-ios-dev.qdoc4
-rw-r--r--doc/src/mcu/creator-mcu-dev.qdoc203
-rw-r--r--doc/src/overview/creator-only/creator-mobile-targets.qdoc5
-rw-r--r--doc/src/overview/creator-only/creator-target-platforms.qdocinc7
-rw-r--r--doc/src/projects/creator-only/creator-projects-creating.qdoc7
-rw-r--r--doc/src/qnx/creator-developing-qnx.qdoc2
-rw-r--r--doc/src/qtcreator-toc.qdoc1
10 files changed, 226 insertions, 3 deletions
diff --git a/doc/images/qtcreator-mcu-device.png b/doc/images/qtcreator-mcu-device.png
new file mode 100644
index 0000000000..4159ec10c6
--- /dev/null
+++ b/doc/images/qtcreator-mcu-device.png
Binary files differ
diff --git a/doc/images/qtcreator-mcu-kit.png b/doc/images/qtcreator-mcu-kit.png
new file mode 100644
index 0000000000..e91f784a39
--- /dev/null
+++ b/doc/images/qtcreator-mcu-kit.png
Binary files differ
diff --git a/doc/images/qtcreator-mcu-options.png b/doc/images/qtcreator-mcu-options.png
new file mode 100644
index 0000000000..e5bcf1f4e6
--- /dev/null
+++ b/doc/images/qtcreator-mcu-options.png
Binary files differ
diff --git a/doc/src/ios/creator-ios-dev.qdoc b/doc/src/ios/creator-ios-dev.qdoc
index ba67111ea2..633d027521 100644
--- a/doc/src/ios/creator-ios-dev.qdoc
+++ b/doc/src/ios/creator-ios-dev.qdoc
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2018 The Qt Company Ltd.
+** Copyright (C) 2019 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Creator documentation.
@@ -28,7 +28,7 @@
\contentspage index.html
\previouspage creator-developing-generic-linux.html
\page creator-developing-ios.html
- \nextpage creator-developing-qnx.html
+ \nextpage creator-developing-mcu.html
\title Connecting iOS Devices
diff --git a/doc/src/mcu/creator-mcu-dev.qdoc b/doc/src/mcu/creator-mcu-dev.qdoc
new file mode 100644
index 0000000000..c4da995de3
--- /dev/null
+++ b/doc/src/mcu/creator-mcu-dev.qdoc
@@ -0,0 +1,203 @@
+/****************************************************************************
+**
+** Copyright (C) 2019 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the Qt Creator documentation.
+**
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU Free Documentation License Usage
+** Alternatively, this file may be used under the terms of the GNU Free
+** Documentation License version 1.3 as published by the Free Software
+** Foundation and appearing in the file included in the packaging of
+** this file. Please review the following information to ensure
+** the GNU Free Documentation License version 1.3 requirements
+** will be met: https://www.gnu.org/licenses/fdl-1.3.html.
+**
+****************************************************************************/
+
+/*!
+ \contentspage index.html
+ \previouspage creator-developing-ios.html
+ \page creator-developing-mcu.html
+ \nextpage creator-developing-qnx.html
+
+ \title Connecting MCUs
+
+ \l{Qt for MCUs} enables you to use subsets of QML and Qt Quick Controls
+ to create user interfaces for devices that are powered by microcontroller
+ units (MCU). It includes a new graphics rendering engine that has a low
+ memory footprint and is optimized for MCUs and other resource-constrained
+ devices.
+
+ You can connect MCU boards to a development host to build applications for
+ them using the GNU Arm Embedded GCC compiler, libraries, and other GNU tools
+ necessary for bare metal software development on devices based on the Arm
+ Cortex-M processors. You can deploy the applications on MCUs to run and
+ debug them using \QC.
+
+ The toolchains are available for cross-compilation on Microsoft Windows,
+ Linux, and macOS.
+
+ The following MCU boards are currently supported:
+
+ \list
+ \li \l{https://www.st.com/en/evaluation-tools/stm32f7508-dk.html}
+ {STM32F7508-DK}
+ \li \l{https://www.st.com/en/evaluation-tools/32f769idiscovery.html}
+ {32F769IDISCOVERY}
+ \li \l{https://www.nxp.com/design/development-boards/i.mx-evaluation-and-development-boards/i.mx-rt1050-evaluation-kit:MIMXRT1050-EVK}
+ {NXP i.MX RT1050 EVK}
+ \endlist
+
+ For a list of Qt for MCU reference implementations, see the Qt for MCU
+ documentation.
+
+ You use the \l{Connecting Bare Metal Devices}{Bare metal plugin} to connect
+ to OpenOCD or ST-LINK Utility for debugging on MCUs.
+
+ \section1 Requirements
+
+ To use \QC to develop QML applications for MCUs, you need the following:
+
+ \list
+ \li Qt for MCU SDK
+ \li The Bare Metal plugin
+ \li GNU ARM Embedded Toolchain
+ \li For STM32 boards:
+ \list
+ \li \l{https://www.st.com/en/embedded-software/stm32cubef7.html}
+ {STM32Cube SDK}
+ \li \l{https://www.st.com/en/development-tools/stm32cubeprog.html}
+ {STM32Cube Programmer}
+ \endlist
+ \li For NXP boards:
+ \list
+ \li \l{https://www.nxp.com/design/development-boards/i.mx-evaluation-and-development-boards/i.mx-rt1050-evaluation-kit:MIMXRT1050-EVK}
+ NXP EVKB-IMXRT 1050 SDK
+ \li \l{https://www.segger.com/downloads/jlink}{SEGGER JLink}
+ \endlist
+ \endlist
+
+ \section1 Setting Up the Development Environment
+
+ You must download and install the required software and create connections
+ between \QC and MCUs.
+
+ \section2 Enabling Bare Metal and MCU Plugins
+
+ To be able to develop for MCUs, you must enable the Bare Metal and MCU
+ plugins:
+
+ \list 1
+ \li Select \uicontrol Help > \uicontrol {About Plugins} >
+ \uicontrol {Device Support} > \uicontrol {Bare Metal} and
+ \uicontrol {MCU Support} to enable the Bare Metal and MCU
+ plugins.
+ \li Restart \QC to be able to use the plugins.
+ \li Create connections for debugging on the MCU board, as described in
+ \l{Connecting Bare Metal Devices}.
+ \endlist
+
+ \section2 Specifying MCU Settings
+
+ To configure a connection between \QC and your MCU board, select
+ \uicontrol Tools > \uicontrol Options > \uicontrol Devices >
+ \uicontrol MCU:
+
+ \image qtcreator-mcu-options.png "MCU options"
+
+ \list 1
+ \li In the \uicontrol {MCU board} field, select your MCU board.
+ \li In the \uicontrol {GNU ARM Embedded Toolchain} field,
+ specify the path to the directory where you installed the
+ tool chain.
+ \li For STM32 boards:
+ \list
+ \li In the \uicontrol {STM32Cube SDK} field, specify the
+ path to the directory where you installed the SDK.
+ \li In the \uicontrol {STM32Cube Programmer} field,
+ specify the path to the directory where you
+ installed the tool.
+ \endlist
+ \li For NXP boards:
+ \list
+ \li In the \uicontrol {NXP EVKB-IMXRT 1050 SDK} field,
+ specify the path to the directory where you
+ installed the SDK.
+ \li In the \uicontrol {SEGGER JLink} field, specify the
+ path to the directory where you installed the tool.
+ \endlist
+ \li In the \uicontrol {Qt MCU SDK} field, specify the path to the
+ directory where you installed Qt MCU.
+ \li Select \uicontrol Apply to save the settings and to generate
+ a MCU device and kit.
+ \endlist
+
+ \section2 Adding MCU Devices
+
+ \QC automatically adds a default MCU device when you select
+ \uicontrol Apply in the \uicontrol MCU tab after configuring the
+ MCU tool chain.
+
+ \image qtcreator-mcu-device.png "MCU devices"
+
+ To add MCU devices, select \uicontrol Tools > \uicontrol Options >
+ \uicontrol Devices > \uicontrol Add > \uicontrol {MCU Device} >
+ \uicontrol {Start Wizard}:
+
+ \list 1
+ \li In the \uicontrol Name field, give the device a name.
+ \li In the \uicontrol Type field, select the board type.
+ \li Select \uicontrol Apply to add the device.
+ \endlist
+
+ \section2 Adding MCU Kits
+
+ \QC automatically adds kits for building applications and running them
+ on the specified MCU boards when you select \uicontrol Apply in the
+ \uicontrol MCU tab after configuring the MCU tool chain.
+
+ \image qtcreator-mcu-kit.png "MCU kits"
+
+ To add kits, select \uicontrol Tools > \uicontrol Options > \uicontrol Kits
+ > \uicontrol Add:
+
+ \list 1
+ \li In the \uicontrol Name field, specify a name for the kit.
+ \li In the \uicontrol {Device type} field, select
+ \uicontrol {MCU}.
+ \li In the \uicontrol Device field, select the MCU board for the kit.
+ \li In the \uicontrol Compiler field, select the Arm GCC compiler for
+ the kit.
+ \li Select \uicontrol Apply to add the kit.
+ \endlist
+
+ \section1 Running Applications on MCUs
+
+ You can use a wizard to set up a project for developing an application that
+ you can run on MCUs. The project uses a subset of QML and Qt Quick Controls
+ that are supported by Qt for MCUs. For more information about developing
+ applications for MCUs, see the Qt for MCU documentation.
+
+ To create an application and run it on a MCU board:
+
+ \list 1
+ \li Select \uicontrol File > \uicontrol {New File or Project} >
+ \uicontrol Application > \uicontrol {MCU Support Application} >
+ \uicontrol Choose.
+ \li Follow the instructions of the wizard to create the project.
+ \li Select \uicontrol Projects > \uicontrol {Build & Run}, and then
+ select the kit for building the application and running it on the
+ MCU board specified in the kit.
+ \li Select \uicontrol Run to specify run settings.
+ Usually, you can use the default settings.
+ \endlist
+*/
diff --git a/doc/src/overview/creator-only/creator-mobile-targets.qdoc b/doc/src/overview/creator-only/creator-mobile-targets.qdoc
index 37822c534f..470d5c2360 100644
--- a/doc/src/overview/creator-only/creator-mobile-targets.qdoc
+++ b/doc/src/overview/creator-only/creator-mobile-targets.qdoc
@@ -83,6 +83,11 @@
\QC detects the tools and configured devices automatically and uses
the tools to build, deploy, and run applications.
+ \li \l{Connecting MCUs}
+
+ You can connect MCU boards to a development host to deploy, run, and
+ debug applications on them from \QC.
+
\li \l{Connecting QNX Devices}
You can connect QNX devices to the development PC to deploy, run and
diff --git a/doc/src/overview/creator-only/creator-target-platforms.qdocinc b/doc/src/overview/creator-only/creator-target-platforms.qdocinc
index c269e61404..95015bd805 100644
--- a/doc/src/overview/creator-only/creator-target-platforms.qdocinc
+++ b/doc/src/overview/creator-only/creator-target-platforms.qdocinc
@@ -42,6 +42,8 @@
\li iOS
+ \li Microcontroller Units (MCU)
+
\li QNX
\li Universal Windows Platform (UWP)
@@ -96,6 +98,11 @@
\li \image ok
\li
\row
+ \li MCUs
+ \li \image ok
+ \li \image ok
+ \li \image ok
+ \row
\li QNX
\li \image ok
\li \image ok
diff --git a/doc/src/projects/creator-only/creator-projects-creating.qdoc b/doc/src/projects/creator-only/creator-projects-creating.qdoc
index 557b2acfcb..1bca73e551 100644
--- a/doc/src/projects/creator-only/creator-projects-creating.qdoc
+++ b/doc/src/projects/creator-only/creator-projects-creating.qdoc
@@ -133,6 +133,13 @@
code for a QApplication or create one that contains an
empty window.
+ \li MCU Support Application
+
+ Creates an application that uses a subset of QML and
+ Qt Quick Controls (as supported by Qt for MCUs) that
+ you can deploy, run, and debug on MCU boards. For more
+ information, see \l {Connecting MCUs}.
+
\endlist
\li Libraries
diff --git a/doc/src/qnx/creator-developing-qnx.qdoc b/doc/src/qnx/creator-developing-qnx.qdoc
index 7787437303..8dce60438d 100644
--- a/doc/src/qnx/creator-developing-qnx.qdoc
+++ b/doc/src/qnx/creator-developing-qnx.qdoc
@@ -30,7 +30,7 @@
/*!
\contentspage index.html
- \previouspage creator-developing-ios.html
+ \previouspage creator-developing-mcu.html
\page creator-developing-qnx.html
\nextpage creator-setup-webassembly.html
diff --git a/doc/src/qtcreator-toc.qdoc b/doc/src/qtcreator-toc.qdoc
index 7527b8a965..7774af4951 100644
--- a/doc/src/qtcreator-toc.qdoc
+++ b/doc/src/qtcreator-toc.qdoc
@@ -175,6 +175,7 @@
\li \l{Connecting Bare Metal Devices}
\li \l{Connecting Embedded Linux Devices}
\li \l{Connecting iOS Devices}
+ \li \l{Connecting MCUs}
\li \l{Connecting QNX Devices}
\li \l{Building Applications for the Web}
\endlist