cancel
Showing results for 
Search instead for 
Did you mean: 

Webinar: Low cost GUI solution with TouchGFX Q&A part 1

Part 1 Q&A from the webinar "Low cost GUI solution with TouchGFX"

Can I use an STM32G0 and TouchGFX without any RTOS?

Yes, it is possible. See here: https://support.touchgfx.com/docs/basic-concepts/operating-system/#no-rtos

What is the license cost for using TouchGFX?

TouchGFX comes free with the use on STM32 products.

Can this solution be used with a touch display?

Yes, it is possible. See here: https://support.touchgfx.com/docs/development/board-bring-up/how-to/09-touch-controller/

Which other UI frameworks can used on STM32G0?

Any other ported on STM32.

Can you provide the MX25L6433F_STM32G071B_NUCLEO.stldr project so that I can modify it and use it on other NUCLEO board, such as the NUCLEO-F446RE ?

In theory yes, any external loader source code can be provided on-demand, just log a ticket to https://my.st.com/ols#/ols/

We are going to use TouchGFX on STM32F7

Great, good choice, the F7 family is well supported in the TouchGFX Designer and is well suited for GUI applications

How/where to implement a basic main loop in this event driven TouchGFX system?

TouchGFX is not event driven, each time a rendering is performed some information are gathered such as "has a key been pressed ?", "has the touch screen been touched ?", but this is already included in a rendering loop which is driven by either a synchronization signal from the display or a timer. See https://support.touchgfx.com/docs/basic-concepts/rendering/ for more details

Is the display expansion board also compatible to the STM32G474RE Nucleo Board?

No, the full list of compatible NUCLEO boards can be found here : https://www.st.com/en/evaluation-tools/x-nucleo-gfx01m1.html

Is there any sample code ready to import and modify?

Indeed, some examples can be found in the TouchGFX Designer under the "Online Applications" tab at project creation step, see https://support.touchgfx.com/docs/development/ui-development/working-with-touchgfx/examples/#online-applications

Otherwise just start on an empty UI using the NUCLEO-G071 application template and create your own

Hi, It should run with STM32L073VBT6 but how fast it will redraw LCD screen 320x240? assume SPI between STM32L073VBT6 and LCD.

SPI has of course some bandwidt limitation that prevents from driving the display as a real display controller would do, instead, as on the X-NUCLEO-GFX01-M1 shield, you should use a display with its own controller and thus its own internal memory, in this case you can only send the area that needs update. Depending on the achievable SPI frequency (depends on both MCU and display) a full screen refresh may take up to 1 second in worst cases, but can be improved using DMA transfers.

Will there be support for F1 series MCU's?

For the time being the Cortex-M3 is not supported by the TouchGFX library, it may change in the future depending on the demand

can you send us the material after ,

Sure, you may ask for it by logging a ticket to OLS (https://my.st.com/ols#/ols/) until it is released as a MooC and be then available more directly

When switching between two screens there is always an invalidate of the whole screen. Is it possible that only the different elements are updated, for example if both screens have the same background? With partial framebuffer this would result in a much faster and nicer change between two displays.

This would assume that at some point 2 screens (or more) are allocated in memory to compare their content and refresh the screen accordingly. Instead the internal strategy, which targets the minimal memory usage, is to allocate only one screen at a time.

can we create custom "templates" ?

Yes, you can. Here is a link how to do that: https://support.touchgfx.com/docs/development/scenarios/scenarios-create-at/

How do you generate the images and assets in first place? External design/marketing house?

Any tools can be used to generate input assets but yes this must be done externally and in PNG format.

For this lab the assets were provided by our partner Mjolner (https://mjolner.dk/en/) who is an implementer of TouchGFX solution and offers consultancy contracts on such topics, from assets creation down to TouchGFX implementation.

rather than complete day screen, and complete night screen which are almost identical - could we have just made a "day/night" icon?

Definitely ! A custom container containing all widgets except day/night logo could have also been used. This lab purpose was only to show basic UI creation with a strong time constraint due to the webinar format.

For Nicolas : How do you set/link a value on the screen to an integer or a String in our C code ?

You need to use the Model component to store what is entered/changed on the screen since it is the only component that is unique and only destroyed when application stops (see https://support.touchgfx.com/docs/development/ui-development/software-architecture/screen-definition-and-mvp/#model-view-presenter-in-touchgfx). This cannot be done in the Designer, you must edit the source code directly to propagate the value from the screen to the model (see https://support.touchgfx.com/docs/development/ui-development/touchgfx-engine-features/backend-communication/#propagating-data-to-ui)

How we can interact with ADC ?

You can open CubeMX ioc file and enable ADC. It is automatically included to project after generation. You can vision our online MOOC sesion where ADC is used: https://www.st.com/content/st_com/en/support/learning/stm32-education/stm32-moocs/STM32_Graphics_Workshop.html

Hello. How is the support for TouchGFXDesigner on Linux ?

TouchGFX Designer is only available on Windows for now on.

To Nicolas : Can you copy interractions from a screen to another ?

Yes but not in the Designer interface, you must even close it and directly edit the <project>.touchgfx project file. It is a textual file with quite simple rules. However make a copy of it before editing.

Hi, I'm a little confused with the hardware interaction. Why is the joystick input "50 2" or any of those other numbers listed in the drop down menu?

This is the correspondance between the character "2" and the ascii code "50", see http://www.asciitable.com/

- Can we duplicate interactions ?

Yes but not in the Designer interface, you must even close it and directly edit the <project>.touchgfx project file. It is a textual file with quite simple rules. However make a copy of it before editing.

Would the language selection that we saw in the video earlier be implemented by creating a screen for each language (with only 1 up and one down interaction), or is there a way to have this "move up several pixel" instead of a fixed position?

In the designer the current implementation of the "Move Widget" only allows to set a widget to a new fixed position however this can be tuned to your needs directly in the source code by overriding the corresponding method, see handleKeyEvent() method of the screen. The multi-language is handled per textual element meaning that you provide translation for each textual element that may appear on any screen (see https://support.touchgfx.com/docs/development/ui-development/touchgfx-engine-features/using-binary-fonts/#the-font-and-text-system-classes). It is then up to you to change the language by the press of a button but then the interaction will be to "Call C++ function".

Can you first define Daytime page including interactions, the copy as nighttime and then edit the night settings?

Yes but in the Designer interface the interactions will not be copied. The best way is to edit directly the <project.touchgfx> textual file

Is there a guide line for create an own template with this type of display?

Yes, see the following article : https://support.touchgfx.com/docs/development/scenarios/scenarios-create-at/#create-application-template

Does CubeMX fially supports project generation with main.cpp?

Yes and no, CubeMX now supports project with both C and C++ source code but only generates C code (main.c). However the TouchGFX Designer only generates C++ code and both C and C++ part works together

- Can we esaily apply the same interaction on the same widget present on different screen ?

By edtiting directly the <project>.touchgfx project file (textual format) you can indeed save a lot of time, but make a copy of it before as you can also break its coherency and make it unreadable by the Designer

where/how is the size of the partial frame buffer determined?

It is set in the CubeMX project in the TouchGFX Generator section as shown at the end of the webinar.

Does the touchgfx generate the ioc file ?

No, the Designer does not generate the CubeMX file but Application Templates (v.3.0.0 and higher) include an ioc file.

Is the demo kit shown in first slide available ?

Speaking of NUCLEO display daughter board, yes they are, here : https://www.st.com/en/evaluation-tools/x-nucleo-gfx01m1.html

Can we see the webinar again ? Or get the full video ?

Hello, you will receive a postevent email with the link to the on demand version of this webinar

1 REPLY 1