From 79fee70ed22822cb3b4f1178671b0faa253f543e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Esa=20T=C3=B6rm=C3=A4nen?= Date: Thu, 6 Apr 2023 09:18:15 +0300 Subject: [PATCH] Doc: Add Qt Design Studio on MCUs intro topic Added the Add Qt Design Studio on MCUs intro topic and modified the related topics (index, toc, and external resources) accordingly. Task-number: QDS-9284 Change-Id: Ibdf27111170b2931511e2ab349ec07210a02e70b Reviewed-by: Mats Honkamaa --- .../external-resources-qds.qdoc | 40 ++++++++ .../src/howto/creator-external-tools.qdoc | 2 +- .../images/qds-mcu-target-deployment.png | Bin 0 -> 45811 bytes .../src/mcus/qtdesignstudio-on-mcus.qdoc | 92 ++++++++++++++++++ .../src/qtdesignstudio-help-overview.qdoc | 2 +- .../src/qtdesignstudio-toc.qdoc | 1 + doc/qtdesignstudio/src/qtdesignstudio.qdoc | 1 + 7 files changed, 136 insertions(+), 2 deletions(-) create mode 100644 doc/qtdesignstudio/images/qds-mcu-target-deployment.png create mode 100644 doc/qtdesignstudio/src/mcus/qtdesignstudio-on-mcus.qdoc diff --git a/doc/qtcreator/src/external-resources/external-resources-qds.qdoc b/doc/qtcreator/src/external-resources/external-resources-qds.qdoc index 8f9eead2d9d..b1c64e785d1 100644 --- a/doc/qtcreator/src/external-resources/external-resources-qds.qdoc +++ b/doc/qtcreator/src/external-resources/external-resources-qds.qdoc @@ -17,3 +17,43 @@ \externalpage https://doc.qt.io/qtdesignstudio/studio-optimized-3d-scenes.html \title Creating Optimized 3D Scenes */ +/*! + \externalpage https://doc.qt.io/QtForMCUs/ + \title \QMCU documentation +*/ +/*! + \externalpage https://doc.qt.io/QtForMCUs/qtul-qsg-traveoii-designui.html + \title Designing a UI for Infineon Traveo II +*/ +/*! + \externalpage https://doc.qt.io/QtForMCUs/qtul-qsg-miimxrt1170-designui.html + \title Designing a UI for NXP i.MX RT1170 +*/ +/*! + \externalpage https://doc.qt.io/QtForMCUs/qtul-qsg-ra6m3g-designui.html + \title Designing a UI for Renesas RA6M3G +*/ +/*! + \externalpage https://doc.qt.io/QtForMCUs/qtul-qsg-rh850-designui.html + \title Designing a UI for Renesas RH850-D1M1A +*/ +/*! + \externalpage https://doc.qt.io/qtcreator/creator-developing-mcu.html + \title Connecting MCUs +*/ +/*! + \externalpage https://doc.qt.io/QtForMCUs/qtul-infineon-traevoii-qsg.html + \title Infineon Traveo II quick start guide +*/ +/*! + \externalpage https://doc.qt.io/QtForMCUs/qtul-nxp-rt1170-qsg.html + \title NXP i.MX RT1170 quick start guide +*/ +/*! + \externalpage https://doc.qt.io/QtForMCUs/qtul-renesas-ra6-qsg.html + \title Renesas EK-RA6M3G quick start guide +*/ +/*! + \externalpage https://doc.qt.io/QtForMCUs/qtul-renesas-rh850-qsg.html + \title Renesas RH850-D1M1A quick start guide +*/ diff --git a/doc/qtcreator/src/howto/creator-external-tools.qdoc b/doc/qtcreator/src/howto/creator-external-tools.qdoc index dee3f838abe..219856879c5 100644 --- a/doc/qtcreator/src/howto/creator-external-tools.qdoc +++ b/doc/qtcreator/src/howto/creator-external-tools.qdoc @@ -11,7 +11,7 @@ \page creator-editor-external.html \if defined(qtdesignstudio) \previouspage quick-converting-ui-projects.html - \nextpage studio-help.html + \nextpage studio-on-mcus.html \else \previouspage creator-keyboard-shortcuts.html \nextpage creator-task-lists.html diff --git a/doc/qtdesignstudio/images/qds-mcu-target-deployment.png b/doc/qtdesignstudio/images/qds-mcu-target-deployment.png new file mode 100644 index 0000000000000000000000000000000000000000..456a75560a7e20299b632ed4bd11ef24fd763abd GIT binary patch literal 45811 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%0D< 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

bY>~ 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 literal 0 HcmV?d00001 diff --git a/doc/qtdesignstudio/src/mcus/qtdesignstudio-on-mcus.qdoc b/doc/qtdesignstudio/src/mcus/qtdesignstudio-on-mcus.qdoc new file mode 100644 index 00000000000..b8409d9e442 --- /dev/null +++ b/doc/qtdesignstudio/src/mcus/qtdesignstudio-on-mcus.qdoc @@ -0,0 +1,92 @@ +// Copyright (C) 2023 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only + +/*! + \previouspage creator-editor-external.html + \page studio-on-mcus.html + \nextpage studio-help.html + + \title \QDS on MCUs + + \QMCU is a comprehensive framework that supports various hardware ecosystems + and platforms. One of the most important libraries provided by the \QMCU + framework is \QUL (QUL), a lightweight implementation of the Qt Quick + framework. \QUL provides a QML API and an efficient graphics rendering engine + that has a low memory footprint and is optimized for MCUs and other + resource-constrained devices. + + In addition to a lightweight graphics framework, \QMCU offers a toolkit that + enables you to design, develop, and deploy graphical user interfaces (GUI) + on microcontrollers (MCU). Also, it lets you run the applications either + on BareMetal or a real-time operating system (RTOS). + + For more information on \QMCU, see \l {\QMCU documentation}. + + \section1 Designing application UIs for MCU devices with \QDS + + As a technical artist or a designer you can use specialized UI design tools, + such as Adobe Photoshop, Sketch, Figma, Blender, or Maya to create the + original UI design files for your MCU application. After the initial design + work, export your design from the design tools, and import your 2D and 3D UI + design assets into \QDS, which can convert them into code for developers. + For more information on managing the original assets created with + specialized UI design tools, see \l {Asset Creation with Other Tools}. + + Once your UI design assets are in \QDS, use it to \l {Wireframing} {wireframe} + your MCU application, to visualize its structure. To modify the look and feel + of your UI further, utilize the preset UI components available in \QDS. + + For an example on how to create a UI that runs both on the desktop and + on MCUs, see \l {Washing Machine UI}. For step-by-step instructions on how + to use \QDS to design a UI for a specific MCU target device, see: + + \list + \li \l {Designing a UI for Infineon Traveo II} + \li \l {Designing a UI for NXP i.MX RT1170} + \li \l {Designing a UI for Renesas RA6M3G} + \li \l {Designing a UI for Renesas RH850-D1M1A} + \endlist + + \section1 Developing applications for MCU devices with \QDS + + As a GUI/application developer, use \QDS to bring your designs to life. Add + further functionality to your applications and utilize the \l {Prototyping} + {prototyping} features of \QDS to simulate and validate interactions and + their dynamic behavior. + + You can also test, preview, and fine-tune your designs to pixel-perfection + live on the desktop or on an actual MCU target device. For more information, + see \l {Validating with Target Hardware}. + + \image qds-mcu-target-deployment.png + + \QDS enables designers and developers to work together on common projects to + develop applications. Designers can use the views in the Design mode to modify + UI files (.ui.qml), whereas developers can use Qt Creator to work on the Qt + Quick (.qml) and other files that are needed to implement the application + logic and to prepare the application for production. For more information, + see \l {Implementing Applications}. + + \section1 Connecting MCUs with Qt Creator + + \l {Connecting MCUs} {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 BareMetal software development on devices + based on the Arm Cortex-M processors. Deploy the applications on MCUs to run + and debug them using Qt Creator. + + The toolchains are available for cross-compilation on Microsoft Windows, + Linux, and macOS. However, the \QMCU SDK is currently only available for + Windows and Linux. + + For more information on how to manage the complete cycle of developing \QMCU + applications using Qt tools, see: + + \list + \li \l {Infineon Traveo II quick start guide} + \li \l {NXP i.MX RT1170 quick start guide} + \li \l {Renesas EK-RA6M3G quick start guide} + \li \l {Renesas RH850-D1M1A quick start guide} + \endlist + +*/ diff --git a/doc/qtdesignstudio/src/qtdesignstudio-help-overview.qdoc b/doc/qtdesignstudio/src/qtdesignstudio-help-overview.qdoc index 772885ca385..d63f049659f 100644 --- a/doc/qtdesignstudio/src/qtdesignstudio-help-overview.qdoc +++ b/doc/qtdesignstudio/src/qtdesignstudio-help-overview.qdoc @@ -3,7 +3,7 @@ /*! \page studio-help.html - \previouspage creator-editor-external.html + \previouspage studio-on-mcus.html \nextpage creator-help.html \title Help diff --git a/doc/qtdesignstudio/src/qtdesignstudio-toc.qdoc b/doc/qtdesignstudio/src/qtdesignstudio-toc.qdoc index 89a93a4d435..4a5bb3c3f21 100644 --- a/doc/qtdesignstudio/src/qtdesignstudio-toc.qdoc +++ b/doc/qtdesignstudio/src/qtdesignstudio-toc.qdoc @@ -263,6 +263,7 @@ \li \l{Converting Qt 5 Projects into Qt 6 Projects} \li \l{Converting UI Projects to Applications} \li \l{Using External Tools} + \li \l{\QDS on MCUs} \endlist \li \l Help \list diff --git a/doc/qtdesignstudio/src/qtdesignstudio.qdoc b/doc/qtdesignstudio/src/qtdesignstudio.qdoc index e9f302ce859..adf772987d4 100644 --- a/doc/qtdesignstudio/src/qtdesignstudio.qdoc +++ b/doc/qtdesignstudio/src/qtdesignstudio.qdoc @@ -81,6 +81,7 @@ \li \l{Converting Qt 5 Projects into Qt 6 Projects} \li \l{Converting UI Projects to Applications} \li \l{Using External Tools} + \li \l{\QDS on MCUs} \endlist \li \b {\l Help} \list