C

Known Issues or Limitations

The following is a list of known issues in Qt for MCUs 2.2. For workarounds or information about the status of these issues, contact Qt Support.

To view all user-reported issues, visit the Qt for MCUs public bug tracker.

Qt Quick Ultralite

  • Qt Quick Ultralite is a subset of Qt Quick and as such does not provide all the base and control QML types, which are available on the non-MCU platforms. Refer to Qt Quick Ultralite vs Qt Quick and Differences between Qt Quick Ultralite Controls and Qt Quick Controls for more information.
  • EventQueue::postEvent is not interrupt safe.
  • The Text type does not properly render unicode sequences that require complex text layout if the Static Font Engine is used. Use Monotype Spark font engine for complex text.
  • SequentialAnimation and ParallelAnimation do not start automatically when assigned to a property using the "on" syntax. Explicitly set the running property to true to start the animation.
  • font.pointSize does not respect screen DPI. Recommend using font.pixelSize instead.
  • The default state has some limitations. Refer to Default state limitations for more information.
  • States where multiple PropertyChanges or AnchorChanges target anchor properties on the same item will not work as expected. Use a single PropertyChanges instead.
  • Setting anchors to undefined does not restore previous position and size bindings.
  • A RotationAnimation in a transition may apply to non-rotation properties. Use PropertyAnimation::properties instead.
  • All delegates in a ListView must have the same size. The size must be explicitly specified and cannot be dynamically changed.
  • onPropertyChanged is not supported for grouped properties.
  • The scale, rotation, and transformOrigin properties are only generated if they have bindings. For example, if an item's scale is not explicitly declared with an initial value, setting item.scale = 2 results in a compilation error. This can be resolved by adding the scale: 1 binding to the item.
  • Bindings on color value accessors are not supported.
  • Using the clip property on transformed items is not supported.
  • Transforms on an item do not apply to the item's children. Individually set transforms on each child instead.
  • Qul::ListModel<std::string> will return an empty string. To avoid this issue, wrap the type in a struct as shown in the following example:
    struct ModelData
    {
        std::string text;
    };
    class MyModel: public Qul::ListModel<ModelData>
    {
        ...
    };
  • The onPropertyChanged callback fails for QML properties, which are defined in C++ as an std::string type. The workaround for this is to use a QML property of string type instead:
    MyItem {
        // Qul::Property<std::string> text; // defined in C++
        property string tempText: text
        onTempTextChanged: console.log(text)
    }

Qt Creator

  • QML debugging is not supported
  • QML profiling is not supported

Qt Design Studio

  • On-device preview is not supported. To preview the design on your MCU board, use the auto-generated CMake project and compile it using Qt Creator.

Renesas RH850

The following is a list of known issues on the Renesas RH850 hardware.

  • Qt Quick Ultralite 2.2 does not enter low CPU power mode because enterSleepMode is not implemented on this platform. If no frame is rendered and no other tasks are running, Qt Quick Ultralite loops until next frame needs to be rendered or another task needs CPU time.

NXP i.MXRT1170

The following is a list of known issues on the NXP i.MXRT1170 hardware.

  • Qt Quick Ultralite 2.2 does not enter low CPU power mode. In normal conditions Qt Quick Ultralite enters this mode when it doesn't update application UI or there is no new touch events to process. Low CPU power mode is disabled on this platform because it interferes with debugging and flashing.

Other

  • To work around a GNU Arm Embedded Toolchain bug (https://bugs.launchpad.net/gcc-arm-embedded/+bug/1747966), all the object files and libraries are passed to ld in a linker group (using --start-group/--end-group). Additionally, libraries are passed to linker before application object files, which is opposite to default behavior.

Available under certain Qt licenses.
Find out more.