Discuss STM32 and TouchGFX implementations, including configuration, debugging, and optimization.
Most recent activity
Hello, I'm currently developing a GUI using TouchGFX version 4.23.0 and have encountered an issue with ghosting images on the display after programming my target device. Here's a brief overview of my process: I created a simple GUI project with TouchGFX Designer and generated the code.I imported the generated code into STM32CubeIDE version 1.14.0 without any issues.After compiling the code successfully, I downloaded it into my STM32 microcontroller.When I run the program, the GUI appears on the display, but there is noticeable ghosting of the images. This ghosting effect persists and is quite apparent. Do you have suggestions on what could be causing this ghosting effect or how to resolve it? Could this be related to the frame buffer, the DMA2D configuration, or perhaps some other timing issue? Any advice or guidance would be greatly appreciated. Thank you in advance for your help! Attached with the target GUI and GUI with problem photo.Paul
Hi. Updates:1) Cancelled our original order with DK due to the ECCN delays. Did receive a notice from the open ticket with ST support that the ECCN issue has been resolved with DK. Mouser did not have this delay so ordered the tool from their store.2) The STM32U5G9J-DK2 has arrived. Attempting to run anything on this target and facing the following error message log. Unable to locate the hardware guide for the STM32U5G9J-DK2 on the ST website. Can this required document (and schematics) be made available? Unable to determine which jumper setting and which USB cables are required to reflash. The board is powered up fine and did test the factory demos that were pre-loaded. Thanks. Program and Run TargetGenerateDoneGenerate Assetsmake -f simulator/gcc/Makefile assets -j8Reading ./application.configReading ./target.configDonePost Generatetouchgfx update_project --project-file=simulator/msvs/Application.vcxprojDonePost Generate Targettouchgfx update_project.cproject file: ../STM32
Im trying to use the TouchGFX designer "text & translations" as a database of sorts.I've tried to use the function getText(text id) from the Reference but i'm not able to locate the text ID. The code below is from the TouchGFX framework.const touchgfx::Unicode::UnicodeChar* touchgfx::Texts::getText(TypedTextId id) const { return &currentLanguagePtr[currentLanguageIndices[id]]; }Searching through the project files for the TouchGFX Designer text ID returns the texts.xml file with IDs but that is more of an internal framework thing.I simply want to do the following.setLanguage(GB); Text_GB = getText(Save); setLanguage(DE); Text_DE = getText(Save); //Text_GB would be Save //Text_DE would be SpeichernBelow is an image from the designer with the IDs. How would i go about doing this within the TouchGFX framework?Any help is appreciated!
Hello everyone,I encountered a problem while using TouchGFX. I want to use an external Flash which is connected via QUADSPI.The Flash works fine (manually loading and writing some informations into the memory). Block mode, Memory Mapped mode, both do not create a problem.But now I want to take the next step and integrate it into my custom project with TouchGFX.I want to store the images and so on in the external Flash. I saw the function "External Data Reader" in CubeMX.But in my project the enable option is greyed out. I don't know why.(TouchGFX Version 4.21.3, CubeMX 6.8.0) I "solved" the problem. If the DMA2D is disabled, I can choose the external data reader. But Why?Chrom-ART respectively DMA2D is "nice to have". If you could help it would be really nice. Thank you really much.
Hello,I made a custom f746 board like it is done on the discovery board. I have only implemented SDRAM and QuadSPIFlash. I can program the mcu without any problems. The display flickers heavily https://youtube.com/shorts/pYuCkyMqsgM?si=iGS41lJvxs_CgsnHI am trying to get an inage on the display without SDRAM to check if the basic setup with mcu and display works. Any other tips on what this could be? ThanksMartin
Hello,I really like the touchGFX framework. I am working in the startup company and we are developing the in-vitro medical device. One of our feature is LCD screen and I would like to build awesome and modern GUI for that purpose (gui's in medical looks often old-stylish). The main problem is, all existing software (libraries, frameworks) are known as SOUP (software of unknown provenance) and there are restrictions of using such a software in the medical target. Since we have to comply with IEC62304 and FDA510(k) standards this may be a problem. I have not too much experience with standarization, that is why I want to ask if somebody has used this framework in critical and safety-related systems?Probably there is not to many people doing such a things, so this question is directed rather to the developers of TouchGFX. Do you know some examples of application including TouchGFX? Maybe you can provide some extra resources (documentation, history files, tests) for an additional fee?Thanks
Hello,I have a STM32H747I-DISCO touchGFX project that has a 8-bit color depth and it is working very well, when I use external RAM for frame buffer. But when I disable external RAM and use internal RAM for the frame buffer by applying these instructions in the link below, I see partly corrupted screen.Ref:https://support.touchgfx.com/docs/development/board-bring-up/how-to/03-display-internaland this is the original screen:Should I do something else that is not written in the 'Display with framebuffer in internal RAM' instruction?Thanks for the answers
TouchGFX 4.23.0 is now out. Please follow this link to download it.Release details: Release date: December 5th, 2023 New TouchGFX Designer Features: Added ability to define typography as vector rendered font. Added possibility to use the IntFlash option in the designer. Added 'overshoot percentage' property on Scroll Wheel and Scroll List widgets. Added WideTextAction property to Text Area widget. Bugfixes in TouchGFX Designer: Fixed validation not being run when adding a new language. Fixed being able to move locked Custom Container Instances when loading a project. Fixed 'Operating System' label being shown when importing a UI into a project. Fixed generated '.svg.png' images with malformed format crashing the application. Fixed wrong typography selected for wildcard buffer. Fixed erroneous code generation when having two interactions and trigger on an interaction with 'Delay' as its action. Fixed crash when modifying a copied Custom Container. Fixed naming of
I need to simulate some external data while running simulator. For example, our device reads temperatures and I need some way to pass those temperatures (simulate) to simulator. Is there any way that is ready for this? Or I must write WinAPI code for that (sockets, COM, IPC, etc.)?
Hello. Interested to review the vector graphics support on the new STM32U5 series. Found on Mouser / DK website that there is a DK1 with LCD and the STM32U5G9 processor. Unable to locate a proper datasheet on these new devices. These kits are not yet listed on the ST website norWhat is the difference between the STM32U5F9 and the STM32U5G9? Flash memory size?Interested to deploy the MIPI display with either of the 2 series. What is the max resolution we can apply on MIPI with the above devices?Are demo / code examples available to demonstrate the vector graphics support with this new DK?Looking for the lowest cost microcontroller with MIPI & vector graphics support for our new widget design.Thanks.
I have encountered an issue on a project with the STM32H743 using FreeRTOS and TouchGFX v4.20.0. Occasionally the screen will freeze up and is not resposive to touch activity. I TouchGFX part seems to be frozen as we can view structure variables at runtime and see that counters placed in TouchGFX code are no longer increment, both in screens and in the Model::tick() function within Model.cpp...also flashing messages on the screen no longer change state.All other parts of the application continue to run normally such as communications on 2 UARTs as well as activity from the touch aspects of the display (can see x/y changes from touch but TouchGFX doesn't respond).ST support has suggested it could be speculative read access to external memory that has been known to cause this type of behavior but we have setup the MPU to prevent this as recommended. MPU configuration below, we are using external FMC SDRAM (32MB) at 0xC0000000 and external NORFlash (8MB) via QSPI at 0x90
Hi: TOUCHGFX is used by stm32f429. the image resolution is 800*480,but nly 82 pixels of one raw is output by the LTDC, which should be 800 normally. The error does not occur very often.
In my project I use TouchGFX for an STM32 microcontroller.After visually changing the view, I need to generate the updated viewBase classes in the TouchGFX Designer.Now I want to automate this process on my build-server. I am able to generate the files for the assets, but so far I am unable to generate these ..viewBase classes from the command line.So I saw an old question https://community.st.com/t5/stm32-mcus-touch-gfx-and-gui/how-to-generate-source-code-cpp-hpp-for-touchgfx-on-linux/td-p/315134 which is no longer relevant as tgfx.exe does no longer exist.With the current version there is a touchgfx executable which can be called with update: touchgfx update If I call this from the main directory of my project, nothing really seems to happen?For now added all the generated (viewbase classes) code to git, but this is really undesirable.Can someone explain to me how I can generate the updated files from a project.touchgfx file from the command line?@Martin KJEL
Dear ST, please help me resolve these issues. Here are the details:1. I create an app in GFX with some widgets that use images. The board is https://riverdi.com/product/7-inch-lcd-display-stm32h7-rvt70hssnwn00/I program it from GFX and everything looks correct.2. Open .project in IDE and run from there, the images are messed up as seen on screenshot. Edit: If I then reprogram from GFX everything looks fine again.3. Open ioc a) I am presented with option to migrate or continue, I think I tried both with similar outcome but cant be sure. b) I am told that I am missing a package (this is a new one for me, I think it is because I installed latest GFX version 4.21.4). I think this GFX package is not available to install from the manager. 4. Generate code - I get a warning about clock not being configured, frankly not sure how to fix that but I saw on YT some examples where people ignore this warning.5. After code has been generated, a large number of files are changed (tracking via git clie
Board name : stm32f746bgt6Sdram : AS4C4M32SA-7TCNMy display size is 800*480, interfacing sdram & display with mcu successfully. But my display having flickering issue, Frame buffer stored in sdram..!How to solve this error?
Hello, I'm using an STM32H750 and I need to implement a single small dynamic bitmap, but I have only ITCM RAM available. I read and made all the code from the articlehttps://support.touchgfx.com/docs/development/ui-development/touchgfx-engine-features/dynamic-bitmapsbut the funcion Bitmap::dynamicBitmapCreate return INVALID.The question is: is it possible to use ITCM for this purpose? I'm using IAR 8.32 Thank you
Can't touchgfx RGB565 images be mixed and displayed My two RGB 565 images overlap and only one can be displayed
I referred to the following link, added the configuration values to the config file,but still encountered issues downloading the template.Is there any solution can provide? Solved: DOWNTIME: TouchGFX Package Server issue. Temporary... - STMicroelectronics Community
Does STM32H745Hxi discovery board support touchGFX??
Bonjour à toutes et à tous.C'est la première fois que j'utilise la communauté ST. Pour un projet pour mes étudiants de BTS, je veux mettre en œuvre en C, la carte GFX01M2 (afficheur+mémoire+joystick) de chez ST avec une carte nucléo 64 STm32303RE.J'ai cablé l'ensemble, utilisé Xcube Display, réalisé un projet en C avec STM32 cube IDE, paramétré les "software packages" dans STM32cube IDE, sélectionné les bonnes broches du STM32 (enfin je pense...).Lorsque je compile, je récupère 5 erreurs. A priori des erreurs sur les fonctions LCD_IO_SendDataDMA..Auriez-vous une idée de ce qui se passe ? Ou un exemple d'utilisation de la carte GFX01M2 avec une carte Nucleo64 ?J'ai utilisé la version 1.0.1 de stm32cubeide et la version 2.0.0 de Xcube Dislay.Je suis à court d'idée, merci pour votre aide.Profbts liens vers les membres
Hello, I am trying to create external loader for MX25L12835F flash memory. My MCU is STM32H7B0RBTx and I followed "External QSPI loader how to" video series on Youtube. I used source files from the Github link that is shared below the videos. I had to change content of functions in quadspi.c file because STM32H7B0RBTx has OCTOSPI and contents of libraries are different. But I didn't change name of functions. When I try this test code it can reach end of the code without any error so I can read memory in the debug screen. After finishing test I include Dev_Inf.c, Dev_Inf.h, Loader_Src.c and linker.ld files. I used linker.ld for H7 devices to be sure that RAM start address is 0x24000000. In the Loader_Src.c file I only made these changes: I compiled code and created .stldr file and prepare it for STM32CubeProgrammer. When I try to read data STM32CubeProgrammer it says Data read successfully but it isn't showing correct data. When I try to upload test binary file with these
Hi,I am using stm32h753vi 100pin package.I have it set up with touchgfx, and am getting output on my lcd (Raystar RFS520A-AZH-DNG 128x480).I chose this stm32 as space is quite limited, and I don't need RGB888 (I don't think). I have connected it as RGB666, and tied the 2 lsb lines of the RGB to gnd.My problem is that the red and blue colours are not coming out as expected.When I display a green gradient all is fineBut when I display a red or blue gradient I have severe bandingI have LTDC display type set to RGB666 and everything else set to RBG888. I have been through all my pin designations, and connections on the circuit to make sure I have no shorts, or bad connections. I have also checked all lines at the lcd with my oscilloscope and there is data on all of the RGB666 lines.Here is the dma and ltdc code generated by the configuration tool.static void MX_DMA2D_Init(void) { /* USER CODE BEGIN DMA2D_Init 0 */ /* USER CODE END DMA2D_Init 0 */ /* USER CODE BEGIN
Board STM32H747i-DISCOID - STM32CubeIDE 1.14.0Samples from STM32Cube_FW_H7_V1.11.1stm32h747i_discovery_conf.h in common folder modified with/* LCD controllers defines */#define USE_LCD_CTRL_OTM8009A 0U#define USE_LCD_CTRL_NT35510 1U#define USE_LCD_CTRL_ADV7533 0U Compiled build and send to board, but dont work.some text are visible in the LCD but look like after the first prints, thenext text or draws are not send to the buffer, or buffer is not send to the display or..... Here is the display from the example HelloWorld using the 2DGL_DrawPolygon.c fromhttp://www.segger.com/emwin-samples.htmlthe Maintask call to :DrawPolygons() and this is the sourcestatic void _DrawPolygons(void) {int y; y = 90;//// clear display//GUI_SetBkColor(GUI_BLACK);GUI_Clear();//// display text//GUI_SetColor(GUI_WHITE);GUI_SetFont(&GUI_Font24_ASCII);GUI_SetTextAlign(GUI_TA_HCENTER);GUI_DispStringAt("DrawPolygon - Sample", 160, 5);GUI_SetFont(&GUI_Font8x16);GUI_DispStringAt("using",
As sure many of you know, the actual STM32H747i-disco can with a different display, so dont work with the examples in the 11.0 repository. But work perfect in the 11.1 if you set in the stm32h747i_discovery_conf.h /* LCD controllers defines */ #define USE_LCD_CTRL_OTM8009A 0U #define USE_LCD_CTRL_NT35510 1U #define USE_LCD_CTRL_ADV7533 0U But I can not find a smart way to modify the Segger examples from the 11.0 to make it work with the new display. In other words. how I can replace the repository files from an older version example to work with the new firmware package. Thanks and sorry if this issue was resolved previously
Hi all,I build a project with STM32CubeMX and using LibJPEG to decode the JPEG file from SDCard.And now I face a problem ,when it goes to the step 5 - start to decompress, it will stock in that function with no reason and the hardfault descripe like down below.Step 5 : Start decompressorIs there anyone have that experience about LibJPEG?Hope someone can help!Thank you!
ST Community highlights – April to June 2026
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.