Discuss STM32 and TouchGFX implementations, including configuration, debugging, and optimization.
Most recent activity
Hi, I used STM32H750 and I want to copy some important interrupt function into ITCM, but the function entity is stored in the library file (touchgfx_core.lib). This prevented me from proceeding. Has anyone encountered the same problem ?
..
The recommended way to update the UI from the backend app seems to be using sampling of a message queue in the Model class: Backend Communication | TouchGFX Documentation.Now, maybe I am missing something out, but is this really a practical methodology if let say, there are dozens of params that are needed to by propagated for updates in the UI (and vice versa)?Is there any other way? Lets say that a backend task acquire a mutex for the whole Model class and update (or polls) the params in Model directly via getters and setters? Any example of this or any other viable method?Thanks in advance
Hi, i'm working on a project where TouchGFX is running, but when i call the DAC via a FreerTOS task, nothing shows up in the output...Hardware wise everything is ok, tested baremetal and with a single FReertos Task, so TouchGFX or some interrupts might be the problem.any suggestion?
Hi there, I have a STM32f030c8t6 and I want to run emWin on it. in documents it is said that minimum requirements for emWin is as followsRAM: 100 BytesStack: 600 BytesROM: 10-25 KBytesand based on datasheet stm32f030c8t6 has following characteristics:16 to 64 Kbytes of Flash memory4 to 8 Kbytes of SRAM so I assume I can run emWin on it. but when I write GUI_Init(); I get following errorError: L6406E: No space in execution regions with .ANY selector why is that?
Hi, I am trying to use Touch GFX with a custom hardware. I have a 800*480 tft screen using ili 6122 as the driver. Since touchgfx is hardware agnostic it should be capable of driving this ic with rgb 565 or rgb888 yet I fail to start up the device, not even a simple wallpaper. To simplify the process I have deactivated my external flash/ram and trying to run 300x200 rgb 565 from internal ram/flash. Does anyone have a driver for ili 6122? If not, how can I write one?I have some experience with the touchgf enviroment and can set and use it in st developer boards h735g-dk and f4-discovery.
https://streamable.com/7xet2bDoes anyone had a similar issue, or maybe know what can be causing this?Thanks in advance!
Using TouchGFX with FreeRTOS I got very strange screen flickering issue. For me it looks like broken LTDC buffer addresses, but I have no idea how it could happen.https://youtu.be/sbEkdzT7yIcScreen is updated few times every second.And the thing what I can't understand is that code breaking screen has absolutely nothing related to LTDC or TouchGFX. For example, I can repair video by disabling one of the FreeRTOS tasks. Or comment out a function that does only some memory buffers initialization and moreover this function is not called for first 10 minutes of firmware uptime. But as soon as I uncomment this function call my screen become crazy. So it is more like kind of static memory issue.Tasks stacks are placed in separate MCU memory region and all tasks have free stack space.
When I add the characters into Wildcard Characters, I can't see the letters on screen. How could I do?
The MCU is STM32H743. In CubeMX LTDC settings, I have set the framebuffer address as 0x3000000, and selected buffering strategy and buffer location as "Single" and "Allocate" respectively inb TouchGfx. Also, in main.c I've declared an array uint16_t framebuffer[100*100]; and set the framebuffer address to this array with HAL_LTDC_SetAddress(&hltdc, framebuffer, LTDC_LAYER_1); The display is 640x480, and all that is shown in the display is the backgorund color and a 100x100 black square.I suspect the framebuffer addess is not understood by TouchGfx. What can I do correctly link the two framebuffer address?Thanks,E
Hi,I am using a custom lcd 800x480 on stm32f746 disco, with touchgfx.The project is generated by cubeMX ( Freertos , FMC 16bit, LTDC RGB565 one layer) and modified with lcd parameters.Static images are printed OK on lcd, but when any widget moves, in every second frame the widget will appear on multiple locations on the screen, while every odd frame is ok.https://www.youtube.com/watch?v=ZEJZd1ZOXqcIn the video, the actual widget is only the one in the center line.I checked the framebuffer (located on sdram 0xc0000000) in debugging, and the widget actually exists in framebuffer multiple locations, the times it is shown on lcd, so i conclude that it is not an ltdc issue.Could that be an issue related on Freertos or touchgfx memory?Thanks.
Hi,I am trying to integrate an 24-BIT parallel LCD RVT50HQTNWN00 with stm32f746disco board.Code was initially exported from touchgfx designer 4.18.0. for the disco board and then edited in cubemx. original 480x272 was removed and the new lcd was soldered.Parameters edited:LTDC sychronization parameters exported from lcd datasheet.LCD clock frequency.gfx second framebuffer address set to 0xC00BB800 (16x800x480/8) The rest are the default for disco board. (FMC 16bit, DMA2D ARGB8888)I think i am missing something basic because the display output is wrong and not stable, but it is clear that color at colums are seperated somehow based on the input image. https://www.youtube.com/watch?v=gdUrviNSBj0I also tried to write manually color at framebuffer address before touchgfx init, but no matter what color i write the result is always black (stable until touchgfx inits).Do you have any idea what is wrong here??Thank you.
Hello,I want to drive 5"-7" LCD TFT screens. Do you have a suitable integration where I can do this? What do you think I should use? I will do mass production. I am waiting for your good integrated suggestions to avoid stock shortages and get quick results. I will also be using a touchscreen. I would be more pleased if there is only one integrated that does both. I will be using DSP in the center of my board. For this, I want to drive a screen over communication. I don't want to do it with the processor. Thank you for your interest.Have a nice day.
Hi!I recently got a hold of a stm32H735G development kit, and after flashing a simple blinky project or any other example application projects from STM (touchGFX examples etc.), my application code doesn't seem to run. I've followed the provided setup guides of setting JP7 to STLK and making sure my project has the correct power supply configuration as per @Markus GIRDLAND comments in other support threads: But no luck. Simply in my current application i'm just trying to blink USER LED 2 atm, i've also tested externally exposed GPIOs (D0 etc.) and i dont seem to get any output which is indicating the application not running on the core. Any suggestions? i've tried switching Boot sw1 from 0(flash)/1(sys mem) for flashing process and nothing seems to help, if switched to 0(flash) i just get a constant red led on user led 2 and green on user led 1. Thanks!Blinky STM32Cube IDE files here: https://github.com/AirChandler/stm32h735g-dk-test-proj
I'm running a GUI using v4.18.0 of the Designer. I am using the Designer's widgets, and some of them are activating in areas outside of the PNG border shown in the Designer when running on the actual display. The Simulator works perfectly, and only registers a press when I am clicking within the outline of the widget as shown in edit mode.With my STM32F469I-DISCO board, the Small and Medium Rounded Edge Buttons with Label are activating on both sides of the button, as much as 50 pixels away. The Icon button seems to be fine. I have two radio buttons as well, one on the left side of the screen and one on the right (running in Portrait orientation). The left radio button activates almost exclusively to the left of the widget, as if there was another identically sized widget next to it. The rightmost radio button activates almost exclusively on the right of the button.I initially was using the Designer's OEM round radio buttons that have the blue fill when selected, but I was having issue
So I recently prucahsed a stm32F769I-disco baord and for some reason the Arduino connector GPIOs do not output any voltage when I try to run a simple UART test. I'm sure I have not shorted anything as I did not connect to the power GPIOs. I then tried to run a simple blink led test and it doesn't work either. The LCD works though, just not the GPIOs. Could this be a sign of a faulty board?Update:Thank you for all the help! After troubleshooting for a day, I realised that the problem is due to the configuration of the board. I should have doubled checked the standard configurations set by stm32cubemx.
I have an application where there is a potential for lots of text. It would be nice to break up the next into a bulleted list or a numbered list. Is there a clever way to do this with the Touchgfx framework? I think making typed text values for each block will be too tedious for the amount of text I will be working with. The only other option I can think of is creating an image of the formatted text and using that. Thanks.
I'm trying to build application on my custom STM32F429IITX board (no OS), external sdram is ISSI- IS42S16400J-7TL, 480x272 display, when I try to build app ,I'm getting some errors as you see below FirstProject.elf section `TouchGFX_Framebuffer' will not fit in region `RAM'region `RAM' overflowed by 71688 bytesmake: *** [makefile:105: FirstProject.elf] Error 1I guess my external ram is not detected. but I'dont know what to do. Could you help me?
I'm working on a project using TouchGFX 4.18.1 on a STM32H750VB MCU.As it's a corporate project, I use an internal framework/platform that works fine with TouchGFX 4.18.1, on IAR Workbench in addition of TouchGFX Designer.Now I'm trying to integrate a video widget in one of my screens.All the examples are based on CubeMX projects, and as long as I'm not using a Cube project structure, I don't know which files needs to be added and what needs to be configured in my code.Thanks for you help !
I am using STM32H743II { Flash(2MB), DTCMRAM(128KB), RAMD1 (512KB), RAMD2 (288KB), RAMD3 (64KB), ITCMRAM (64KB) } microcontroller. By this controller with internal RAM can i run 800x480 RGB888 display or i need External RAM. if i Need Ext. RAM then what will be the exact calculation for choosing external RAM.
HiWhat is the best way to start with TouchGFX and import all the screens and images from Zeplin design?How can I estimate the flash size needed based on that Zepling design!?
Hi, While we were writing codes, everything is working perfectly in the simulator. When it was time to try it on our device, we had a problem about touchgfx and couldn't find it for a long time. However we realized that we added a variable to touchgfx's drawable class , which caused our device to stop working. How could we fix this problem?
Hi,I am trying to add the character '123∞' to the "verdana_40" font data. Before this, Some characters (between 0x20 - 0x7A)has been added to it.They are managed by array "unicodes_verdana_40_4bpp_0[]", while I found that the the character '∞' was generated in a new array "unicodes_verdana_40_4bpp_4[]".They are of the same font but the '∞' was separated. The texts_all_languages generated like this:// Texts.cpp TEXT_LOCATION_FLASH_PRAGMA KEEP extern const touchgfx::Unicode::UnicodeChar texts_all_languages[] TEXT_LOCATION_FLASH_ATTRIBUTE = { 0x31, 0x32, 0x33, 0x221e, 0x0, // @0 "123?" 0x2, 0x0 // @5 "<>" }; // Table_verdana_40_4bpp.cpp extern const uint8_t* const unicodes_verdana_40_4bpp[] = { unicodes_verdana_40_4bpp_0, 0, 0, 0, unicodes_verdana_40_4bpp_4 };It seems that it cannot be indexed.So where is the problem? How to generate the character beyond the range of ASCII?Thanks for watching!/jjlin
Hello,This is an interesting problem. We are developing a system. Touchgfx task are independent from main task. It is hard to explain all software but i will try to make it simple.There is only one screen in touchgfx project and it is startup screen. There are two box on main screen and their colors are different.When we start the application, touchgfx doesnt change anything in frame buffer but calls flushframe function and fill the TFT with full garbage (because frame buffer has full garbate). STM32DMA::initialize has been invoking as normal. Normally after STM32DMA::initialize, touchgfx calls STM32DMA::getBlitCaps() function but in our software getBlitCaps is not being invoked never. Why? Model::Tick is being invoked periodicly, but flush frame buffer is calling just one time at beginning. (this is normal because there is nothing change on screen. )What can be the problem? Why doesn't touchgfx invoke STM32DMA::getBlitCaps() never?
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.