Skip to main content
Romain DIELEMAN
ST Employee
July 1, 2021
Question

X-CUBE-TOUCHGFX 4.17.0 is out

  • July 1, 2021
  • 71 replies
  • 14492 views

Hi Everyone,

If you haven't noticed by now, X-CUBE-TOUCHGFX 4.17.0 is out, available from STM32CubeMX 6.0+ and from st.com as a zip (Also installable through STM32CubeMX).

Here is the documentation for 4.17.0: https://support.touchgfx.com/

Main features:

  1. Complete redesign of the TouchGFX Designer
  2. Dual core support of TouchGFX Generator
  3. FMC interface support of TouchGFX Generator
  4. Various minor framework improvements like font handling

You can see all the bug fixing and improvements in the changelog.

KNOWN ISSUES:

If you wish to use L8 images in 16-,24- or 32bpp configurations, for some RTOS you will need to remove the OSWrappers::taskYield() function call in the DMA2D file templates of the X-CUBE installation (FreeRTOS from CubeMX works OK):

  • Navigate to your Users/<user name>/STM32Cube/Repository/Packs/STMicroelectronics/X-CUBE-TOUCHGFX/4.17.0/CubeMX/templates/Target folder
  • Depending on your bit depth open the dma_XXbpp_implementation_tmp.ftl file (16. 24 and 32 bpp)
  • Delete (or comment) the OSWrappers::taskYield() call in the while ((READ_REG(DMA2D->FGPFCCR) & DMA2D_FGPFCCR_START) != 0U) loop
while ((READ_REG(DMA2D->FGPFCCR) & DMA2D_FGPFCCR_START) != 0U)
{
 // OSWrappers::taskYield();
}
  • Regenerate code from STM32CubeMX for your project

/Romain

This topic has been closed for replies.

71 replies

Senior
July 26, 2021

Romain Dieleman (ST Employee)

Hi, I have real problem with new TouchGFX , in Keil area. I'm using stm32H743, and my program stuck in touchgfx init function with hard fault ....

Tuoman
Senior II
July 27, 2021

I'm extremely disappointed on your priorities. You literally cannot add features in TouchGFX that span across multiple Screens, and yet you spend time to redesign perfectly fine UI and add useless light&dark themes?

You expect us to maintain copy&pasted code in 100+ views that cannot share functionality, or start hacking the library?

6 months ago you promised to deliver BaseViews:

https://community.st.com/s/question/0D53W000003NieG/example-grouping-of-views-with-common-functionality

Ridiculous. It is just a inherited class, and you cannot deliver it in 6 months, while you work on light&dark themes.

Senior
July 27, 2021

Hi, I have same problems too, after 2 month not only my issues not solved, but also my whole system on Keil environment, hangs on TouchGFX_init() function and after 3 days no one even answer me what can I do.... now I have to degrade version and back to old one to have my last status .... it is really funny!

YSN
Associate III
July 30, 2021

That's good news, @Romain DIELEMAN​ Last year we struggled lot to get dual core MCU running with touchgfx

But Touchgfx 4.17 is now having dual core support for STM32H745.

But could not get any application template in the touchgfx designer files. When it is planned to release Application template as well for

STM32H745I-DISCO boards ?

Romain DIELEMAN
ST Employee
August 30, 2021

Hi,

​

Digging this up a bit, we are currently working on creating a TBS (new name for AT) for the STM32H745. We are also struggling a bit :grinning_face_with_sweat: so it might take a few more weeks unfortunately.

/Romain

Tuoman
Senior II
August 3, 2021

TouchGFX 4.17 UI is WORSE than 4.16.

  1. Poor contrast in dark theme text/background makes impossible to see texts, I must use light theme
  2. Selecting elements from a small laggy dropdown menu is way more annoying than before, when you could see them all at side.

Why are you spending 6 months to make the product worse for no reason? You now completely disregard all problems in forums.

1-2 years ago this project was promising (good features, quick support), but you have obviously changed your management to something awful (+1 month support time, not improving product).

Romain DIELEMAN
ST Employee
August 30, 2021

Hi,

Thank you for those feedbacks. The issues reported are known issues which will be fixed.

As it is a re-design of a software I would advise to stick to TouchGFX Designer 4.16.1 until the release of TouchGFX 4.18 or 19 if the current version does not meet your needs, until those problems are fixed.

/Romain

VKost.1
Visitor II
August 9, 2021

I'd like to report major performance issue with 4.17.

Both Texts and Images lists are beyond slow, rendering a scrolled page takes around 2 seconds. On version 4.16 there's still some lag but is bearable (the project has 430 Texts & 205 Bitmaps).

This many texts makes navigation impossible without any kind of sorting & filtering, so a simple search box for the texts & bitmaps would make this part of the Designer much more usable.

I second for improving the contrast of the UI, the light theme is a step in the right direction, but a bit more dark text would be nicer.

As an overall, we're pretty happy with the product, keep up the good work!

Romain DIELEMAN
ST Employee
August 30, 2021

Hi,

Thank you for reporting this. It is a known and really annoying issue we are working on, which should be fixed in TouchGFX 4.18

/Romain

Ezgi
Associate III
September 15, 2021

Hi,

I want to make a gui template for TouchGFX 4.17.0. Before this version following this link https://support.touchgfx.com/docs/development/scenarios/scenarios-create-at , instead of TGAT, I wrote TGUI and it worked. However, I'm doing same thing for 4.17.0 and I can't see my template in examples. What could I do?

Romain DIELEMAN
ST Employee
September 15, 2021

Hi,

It should still work, nothing has been changed. Could you share your JSON file ? Or maybe even share your tpa if not confidential so that I can try to replicate it.

/Romain

Ezgi
Associate III
September 21, 2021

I'm sorry for the late reply.

I made a simple gui to try. Here are the files :

AUnte.1
Associate
October 13, 2021

Hi,

I just updated a project from TouchGFX Designer 4.16 to 4.17

Unfortunately I get a runtime error in a generated codepart.

File: mainBase.cpp: line 17 --- bool sdl_init_result = static_cast<touchgfx::HALSDL2&>(hal).sdl_init(argc, argv);

Run-Time Check Failure #0 - The value of ESP was not properly saved across a function call. This is usually a result of calling a function declared with one calling convention with a function pointer declared with a different calling convention.

It seems there is a problem with the hal object.

I already tried to use dynamic_cast instead of static_cast and as well leave out the baseclass type (HAL) and use the methods with the specific type (HALSDL2) which is used in the project.

This as well did not show any change.

Do you know what this problem is and how I can solve it?

I appreciate any help.

best

Andreas