Discuss STM32 and TouchGFX implementations, including configuration, debugging, and optimization.
Most recent activity
I am currently having a segmentation fault in the touchgfx simulator and after several ways to approach it I no longer know how to proceed. Note that it works perfectly on the device.The error is as follows: The error occurs when I transition from screen A (main screen) to screen B (no animation). If I set screen B as main it is properly displayed. However, (after setting screen B as main) if I go to screen A and then to screen B it will also crash.Screen B has a swipe object each wtih each "page" containing the same instance of a container and a few buttons. Adding or deleting objects to the pages in the container seems to fix or break the screen transition.
Hello,is there a method to get the RGB value of the touchpoint of the display?And if not how would a workaround look like?Thanks and Best regardsGerd
I am having a bug with Touchgfx designer. The pop up message asks to kindly report the issue. However, I am unable to find a palce to report and add my .log file.
hello, i want to use LFN with the STM32F7508. I tried both settings, once with a dynamic buffer on the stack and once with a dynamic buffer on the heap. Both times I get a black screen or the STM32 doesn't even start. Do I have to create the buffer myself or is there a guide on how to do it?
Hi! I'm running TouchGFX 4.21.3 on a custom board with the following hardware.STM32L452RET6QSPI W25Q128JV for storageLCD 320x172 SPI ST7789v3Everything is working fine expect that image widgets that contain alpha values are now shown properly. I'm still trying to understand the settings that might help solve this problem, here is my setup in TouchGFX:The icons on the top left and right corners have some colours that are not totally white.The icons are png files saved in RGB 8bit mode for all channels.The icons for the battery that are drawn with just completely white pixels work just fine.Images are stored in the external flash and are fetched through QSPI DMA.The configuration for TouchGFX images is as followsHere is how it looks like on the actual hardware I've also tried different settings and modifying the defaults on the Image asset table without any luck.Can anyone explain what I'm I missing or what combination of settings should I use?Thanks,Martin
Hi Good People. I have a custom board using a STM32F429 (loosely based on a STM32F429 DISCO) driving a 800 x 480 touch screen display (LTDC). I have used TouchGFX, STM32CubeMX (with FreeRTos) with Keil compiler. Everything is working fine, except the Touch controller. I had copied (what I believe to be) the relevant files from a Disco example, but the I2C locks up within a few msecs. The read/write routines are still accessed but the I2C locks up. I presume this must be a timing thing, but am lost as to where to go from here. The first screen shot is an expanded view of the last burst of the second shot. Any clues please? Thanks.
Hello,I'm trying to use a Scrollwheel inside in a Scrollable Container, but, the Scrollwheel don't recognize click events or draggable events. Is it possible to work both components together?
Hello, I just encountered "failed to download Segment[1]" error in the middle of tough gfx project downloading.Demo Board : STM32U5A9J-DKCubeProgrmmer version : 2.13.0TouchGFX version : 4.21.3Error message capture I found that toughgfx is using the Cubeprogrammer tool for binary downloading.So I searched if the CubeProgrammer has the STM32U5A9J-DK ext-flash binary but can't find for it.Seems tool update is needed.I also found that cuscumized ext-flashing binary can be created with IAR compiler.https://github.com/STMicroelectronics/stm32-external-loaderBut I don't have the IAR :( So it would be appreciated if to provide the patch file or update the CubeProgrammer ASAP.
If I expand screens tab on left column and there are many widgets added to a screen or there are multiple screens which requires to scroll down that list then TouchGFX Designer 4.15 gets hanged when you reach at end. Only fix then is to kill this Designer. As a workaround this bug, I had to group various widgets on a screen to different containers so that my over all list is small and I will then only expand the specific container I am currently working. The basic idea is that the list should not be expanded enough that it occupies the entire screen and you don't scroll down till end otherwise it hangs. Please refer to attached image in which I have highlighted the menu I am referring to.
Hi,I'm new with TouchGFX and working on my first project. My current problem is that I wnat to update display values from my software. I looked into several tutorials and found that when implementing the function virtual void handleTickEvent();in the ScreenView.hpp/ScreenView.cpp this function should be called with every update of the display. But this function is never called. The Constructor is called and also the (empty) setupScreen, but not the handler. I'm using a basic example at the moment so its running without an OS, just in the main loop.Coudl you give me any hints why this function is not called? Do I have to register it somewhere?Thanks and best regards!!!
I can't find the update option in TouchGFX designer software. Do I need to uninstall existing designer manually and download X-Cube-TouchGFX package again and install as a new software to update. I know that TouchGFX generator can be updated from the CubeIDE itself. But the problem is with the DesignerThank you
Hi everyone,The screen hierarchy is like below,--------------------------------------------------View|-->MyCustomContainer|------> PopupCustomContainer (under the MyCustomContainer)------------------------------------------------------------------------------------------------I can handle the click/drag event in MyCustomContainer which is under the view.I created another custom container that is a pop-up screen to show on MyCustomContainer. I want to handle the click-and-drag event in PopupCustomContainer but can't.View::handleClickEvent(evt); cntAirConditioner.handleClickEvent(evt); // my custom container that have a custom container.In the view screen, I called these functions but in this situation, the events are triggered twice on MyCustomContainer. If I just call the "View::handleClickEvent(evt)", I can handle the events in my custom container but I can't handle the other custom container which is in my custom container.I hope the explanation is clear.Thanks for your help.
..
Hi i am very new to all stm32, i have some project that i want to move to stm32 mcus. I would like to know if i have a nucleo board that is not in the list of selections that exist in designer, or i have selected an mcu that a dev board does not exist at all like H755ZI what should i select as board. Also about screens until now i have used 2 controllers ili9488 and RA8875 for larger resolution, how this can be used since the discovery boards have other displays that do not specify what they are, and how all these things can be fixed with touchgfx. Is there any guide that explains these cases that i could read?
void capture(Adafruit_OV7670 *platform){ uint32_t i =platform->bufferSize; uint16_t *shot =platform->buffer; uint8_t* pclk = platform->pins.pclk.Read_reg; uint8_t* vsync = platform->pins.vsync.Read_reg; uint8_t alt = 0; while(alt==0){ alt=*vsync; } //while(!OV7670_pin_read(platform->pins.hsync)); while(i-- >1){ shot[i]=0; uint8_t j = 16; alt=*pclk; while(alt==0){ alt=*pclk; } while(j-- > 9) shot[i]|= (OV7670_pin_read(platform->pins.data[j-8]))<<j; /*while(alt!=0){ alt=*pclk; }*/ while(alt==0){ alt=*pclk; } while(j-->1) shot[i]|= (OV7670_pin_read(platform->pins.data[j]))<<j; /*while(alt!=0){ alt=*pclk; }*/ } }"pins" is an array of Band pins, a strut defined in gpio.h. All the variables that assign their value to the variable "alt" map to the allias of bits of IDR registers. I am using nucleo-144 stm32f439zi. Everything is wired correctly and my main prob
I would like to know FrontendApplication (FrontendApplication.cpp) belogns to which part in MVP architecture. I have no idea what is the duty of FronendApplcation and how to use it because most of the given examples FrontendApplication.cpp do not have any custom codeThank you
Hi,I'm working on a project where I should display some parameters on display. The display resolution is 800 x 480. I followed some tutorials to how to set touchGFX on MXCube and then imported on Cube Ide the project. The problem is that when I compile the project it keeps me saying that the both RAM and Flash overflows, as you can see in listing below:c:\st\stm32cubeide_1.12.0\stm32cubeide\plugins\com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.win32_1.0.200.202301161003\tools\arm-none-eabi\bin\ld.exe: test1.elf section `TouchGFX_Framebuffer' will not fit in region `RAM' c:\st\stm32cubeide_1.12.0\stm32cubeide\plugins\com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.win32_1.0.200.202301161003\tools\arm-none-eabi\bin\ld.exe: test1.elf section `TouchGFX_Framebuffer' will not fit in region `FLASH' c:\st\stm32cubeide_1.12.0\stm32cubeide\plugins\com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.win32_1.0.200.202301161003\t
I have a STM32L562E-DK, which has an LCD with touch screen. I'm trying to figure out how to get that whole LCD thing working. I've been able to flash a sample program from the Cube IDE. But it doesn't use TouchGFX and doesn't make clear how to design it. I've tried to follow this video, but adapt it to my board (e.g. select my board which has a lot of stuff reconfigured instead of his chip). But my situation is different enough that I can't quite do it with this video as a guide. I can get something that seems to compile, but the LCD remains black. I have if course added some buttons in the TouchGFX designer first. I haven't been able to find a specific tutorial for my board, and I've had to cobble something together from chunks of information floating around, which has proven tricky. If I could just get one button to just do anything at all, I'm sure I could figure out anything else I want myself.
Hello,i have a maybe simple question but i did not get it.If i have an array of some unsinged chars, let`s say:value[0] = 0xAAvalue[1] = 0xABvalue[2] = 0x0Band i want to print them together as "AAAB0B" in a textarea, what is the best way?The problem is that i am losing the 0 from "0B" value.Unicode::snprintf(txt1Buffer, TXT1_SIZE, "%X%X%X", 0xAB, 0xCD, 0x0F);That gives me an output of:ABCDFBut i want the leading zero. ABCD0FHow can that be done?Thank you very much.
Hi,Not a question, but a bug report.Setup:TouchGFX 4.21.1Simulation on VS2022It seems that the internal variable holding the histogram bar position is not updated when the bar width is changed at execution time.Example:1- The bar width is set to 100 at design time.2- During execution, we move a red vertical line at the position returned by Graph.indexToScreenX(1). The position returned by Graph.indexToScreenX(1) is 204.// Original bar width = 100. testPosX = Graph.indexToScreenX(1); // testPosX = 204 line1.moveTo(Graph.getX() + Graph.indexToScreenX(1), line1.getY()); line1.invalidate(); 3- Bar width is changed to 504- We move the red vertical line at the position returned by Graph.indexToScreenX(1).But Graph.indexToScreenX(1) still returns 204.// New bar width = 50; GraphHistogram1.setBarWidth(50); testPosX = Graph.indexToScreenX(1); // testPosX = 204 line1.moveTo(Graph.getX() + Graph.indexToScreenX(1), line1.getY()); line1.invalidate(); We can of course workaround this pr
HelloEnvironment : [STM32H735 custom bd | TouchGFX | hyperRAM | NOR Flash | 7in 1024x600 LVDS LCD panel | GT911 TS]When refresh framebuffer, screen is glitch such like attached video clip.Please let me help... :)
im debugging an LTDC project for the stm32f429zit6 on the disc board and in the sfr tab under rcc apb2enr it stops at tim11 and doesnt show ltdcen why is that and it seems my configurations in the ltdc registers arnt being set . im looking in the .svd file on from what i can see LTDCEN isnt in there im attempting to add it but im not sure what all i have to do
Hi,I am using the STM32H753 EVAL board to control a 1024*768 LVDS display via an RGB/LVDS transmitter. I am displaying an application made with TouchGFX that was started with a 640*480 resolution, then modified to 1024*768 (don't know if that is relevant).When there is a change in the display that requires a refresh, I will get the right screen every other "refresh". One screen will be right, the other will be a mix of the new display and old display with a vertical offset.I have attached a few pictures of a simple example where a textarea buffer is being updated with an incremental value from an external event (pulse on a GPIO, CAN message received, whatever).The application starts with the default text ("xxxxxx") in the right place.First event, textarea gets updated with the right value ('1') in the right place.Second event, textarea gets updated with the right value ('2') in the right place but the previous value is also displayed higher on the screen.Third event, textarea gets upda
Hello,I am trying to use an LCD display on my custom board. I am utilizing the Rocktech RK043FN66HS-CTG display with the STM32H7B3IIT6 MCU. When I first initialize the firmware (in debugging mode), the screen flickers once or twice (showing signs of life), but then immediately goes to a black screen and stays like that. High Level Configuration Details:Utilizing LTDC interface with DMA2D accelerationInternal RAM (I have the footprint for External RAM, but I wanted to try and get it to work with the Internal RAM. I have sufficient RAM space internally)480 x 272 RGB565 display (hardware can handle up to RGB888, but to reduce RAM size, I am only using RGB565). Using FreeRTOS to do the TouchGFX taskI used this video as a general guide to make sure I got the right idea, but there are differences. However, he has the same issue during debugging that I am seeing. The screen flickers then goes black. https://www.youtube.com/watch?v=SRQD8JMeg_kIn that video, he notes that it was due to improper
Project = CubeMX + STM32F469ZITx + 320x240 TFT.I have set up CubeMX correctly as far as I can tell, but I am getting the error "Width/height values must equal LTDC Window width/height"In the TouchGFX Generator, they are populated automatically!, so how can they be wrong?Please advise where I have made a mistake.Thanks,Chris.
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.