cancel
Showing results for 
Search instead for 
Did you mean: 

X-CUBE-TOUCHGFX 4.20.0 is out

Yoann KLEIN
ST Employee

TouchGFX 4.20.0 is now out.

Please follow this link to download it.

 Attention : Please regenerate code from CubeMX when you migrate your projects from older versions of TouchGFXDesigner to this new one.

Details:

* New TouchGFX Designer Features:

 * Import and Export of custom containers.

 * A new notification will tell why F5- and F6-shortcuts are unavailable.

 * A new Code-menu with the ability to run simulator, run target, generate

  code and open project files.

 * New trigger added, with the ability to trigger on every N-tick.

 * Ability to copy text ressource Id, similar to copying image-Id.

* Bugfixes in TouchGFX Designer:

 * Run-buttons update when validation changes.

 * Some widgets now support non-int radius, including circle.

 * Fixed Menu-items being available via shortcuts in the lobby.

 * Fixed SetShapeColor Action not generating correct code.

 * Fixed TextArea widget was not showing text when outside its parent, when

  canvas was set to show clipped content.

 * Fixed text alignment for auto-generated text not being copied correctly

  when copying and pasting a widget using the text.

 * Removed "FileNameImage"-property from the .touchgfx file which appeared by

  clicking "Image"-button, the "Color"-button and then generating code.

 * Changed order and categorization ButtonWithLabel of properties.

 * Fixed rotation of text in TextArea widget not rotating as expected.

 * Fixed not being able to write a newline in text-fields.

 * Action SetLanguage will now work without a text area.

 * Fixed fonts in font picker dropdown not being sorted alphabetically.

 * Fixed dropdowns not responding to keyboard input to navigate to a desired

  item.

* New TouchGFX Core Features:

 * Canvas Widget Renderer (CWR) is now significantly faster. CWR has been

  optimized and all painters have been rewritten and optimized to give

  faster rendering even with less memory. Painters now have a new interface,

  so old custom painters have to be rewritten, e.g. by altering one of the

  painters included in TouchGFX or reading the article on the subject.

  Further, painters for 16bpp and 24bpp will use hardware acceleration (when

  possible).

 * If using CanvasWidgetRenderer::setupBuffer(), remember to include the line

  #include <touchgfx/canvas_widget_renderer/CanvasWidgetRenderer.hpp>

 * Function mixColors() has been renamed to alphaBlend() in AbstractPainters

  for 16bpp and 8bpp.

 * Text remapping in TextConvert has been changed slightly so "yes" works the

  same, but "no" will remap texts within a language, not across languages.

 * Updated Freetype 2.11.0 to 2.12.1 (used by the font convert utility).

 * Updated zlib 1.2.11 to 1.2.12 (used by the font/image convert utility).

 * Applications compiled using arm gcc are now approximately 15Kb smaller and

  1% faster (due to removal of debug code in the library).

* Bugfixes in TouchGFX Core:

 * Slide transition did not work in portrait mode on 16bpp and 24bpp.

 * TextArea::getTypedText(), TextProgress::getTypedText(),

  GraphTitle::getTitleTypedText() and GraphLabelsBase::getLabelTypedText()

  now returns a "const TypedText &".

 * Special fonts, such as wingding.ttf, are now supported.

 * Unicode::snprintf no longer sign extends char values from 128 to 255 in

  the format string.

* Deprecated TouchGFX Core Features:

 * CanvasWidget::resetMaxRenderLines() has been removed as it has no function

  with the rewritten CWR.

 * Color::getColorFrom24BitRGB() removed. Use Color::getColorFromRGB().

 * Color::getRedColor() removed. Use Color::getRed().

 * Color::getGreenColor() removed. Use Color::getGreen().

 * Color::getBlueColor() removed. Use Color::getBlue().

 * Color::getRGBFrom24BitHSV() removed. Use Color::getRGBFromHSV().

 * Color::getHSVFrom24BitRGB() removed. Use Color::getHSVFromRGB().

 * Color::getRGBFrom24BitHSL() removed. Use Color::getRGBFromHSL().

 * Color::getHSLFrom24BitRGB() removed. Use Color::getHSLFromRGB().

 * Color::getHSVFromHSL(uint8_t, uint8_t&, uint8_t, uint8_t&) removed. Use

  Color::getHSVFromHSL(uint8_t,uint8_t,int8_t,uint8_t&,uint8_t&,uint8_t&).

 * Color::getHSLFromHSV(uint8_t, uint8_t&, uint8_t, uint8_t&) removed. Use

  Color::getHSLFromHSV(uint8_t,uint8_t,int8_t,uint8_t&,uint8_t&,uint8_t&).

Known issues :

  • General link
  • STM32U599 Board Specific Demo is not compatible with TouchGFX 4.20.0 for now. 

Hope you enjoy this new version!

Yoann KLEIN
ST Software Developer | TouchGFX
9 REPLIES 9
egoltzman
Senior

I upgrade to 4.20 from a previous upgrade I did to 4.19.1 and I have those linker error:

C:\Projects\projextx\Middlewares\ST\touchgfx\lib\core\cortex_m4f\gcc\libtouchgfx-float-abi-hard.a(PainterRGB565.o): in function `touchgfx::PainterRGB565::paint(unsigned char*, short, short, short, short, unsigned char) const':
(.text._ZNK8touchgfx13PainterRGB5655paintEPhssssh+0x1a): undefined reference to `touchgfx::paint::rgb565::lineFromColor(unsigned short*, unsigned int, unsigned long, unsigned char, unsigned long)'
 
C:\Projects\projectx\Middlewares\ST\touchgfx\lib\core\cortex_m4f\gcc\libtouchgfx-float-abi-hard.a(PainterRGB565.o): in function `touchgfx::PainterRGB565::tearDown() const':
(.text._ZNK8touchgfx13PainterRGB5658tearDownEv+0x0): undefined reference to `touchgfx::paint::rgb565::tearDown()'

Any idea what I did wrong?

Thanks

wired
Senior III

This is my 3rd day trying to update an STM32CubeIDE project utilizing TouchGFX from 4.18 to 4.20. I was running IDE version 1.7.1, and CubeMX version 6.3.0. All I can say is, good luck trying to make this work, everyone. 4.20 is not compatible with CubeMX 6.3.0, and you are asked to migrate to CubeMX 6.6.1 and newer firmware. When you do, it destroys your project. If you choose not to migrate, it still doesn't work. I've made a support case, but I can see this taking weeks to get resolved. I'm looking forward to my upcoming interview with the TouchGFX customer experience rep.

Hello @wired​,

Indeed, CubeMX version 6.3.0 is not compatible with TouchGFX version 4.20.0.

It's better to always make sure that your project works with the latest versions of ST softwares.

If it is not already done, I invite you to create a post on the forum and describe your issues please.

ST employees or other people might be able to help you.

Thanks,

/Yoann

Yoann KLEIN
ST Software Developer | TouchGFX

I have created a customer support case for this. I really hate to have to post the same information in two places. And I am trying my best to get my project to work with the latest versions of ST software. The ST software remains uncooperative... Perhaps there is a secret sauce recipe for the order of performing the tool upgrades that we have to figure out for ourselves. I've tried just about every combination so far.

gokhanozata
Associate II

I want to move my project to TouchGFX 4.20 from TouchGFX 4.18. 

But I allways take a error in IDE.

I uptaded MX, IDE and TouchGFX.

I opened project on MX. I selected TouchGFX 4.20 on Software Packs. And i generate, it open on IDE and I build all in IDE. So everything perfect.

But I must change GUI on the Touch GFX. For example I add pushbutton. I generate code in Touch GFX. Then i opened the project for writting the code in IDE. I build all in IDE but it gives error(linker).

I use this current version:

Touch GFX 4.20, IDE 1.10.1, MX 6.6.1

Hello @gokhanozata​ ,

This post was made for informing users of the new release of TouchGFX.

Could you please create a new post for your question/issues ?

Me or other people will be happy to help you.

Thanks,

/Yoann

Yoann KLEIN
ST Software Developer | TouchGFX
jhasa.2
Associate III

I have setting a button with it's interaction

When I touch the button is detected (the picture of it changes) but the interaction of the button (calling function) not works

I tested in keil and stm32cubeide but the problem doesn't solved

can everybody help me?

I write in virtual function in screenViewBase.hpp file

Nice

Yoann KLEIN
ST Software Developer | TouchGFX