Discuss STM32 and TouchGFX implementations, including configuration, debugging, and optimization.
Most recent activity
Hi, Thank you for reading it.I made project using TouchGFX.I want to use a EXTI Falling Edge. (it will be use IRQ)I add the weak function. please see my codeapp_freertos.cvoid HAL_GPIO_EXTI_Falling_Callback(uint16_t GPIO_Pin) {UNUSED(GPIO_Pin);}when compile, I have following error.TouchGFX/Target/STM32TouchController.cpp:53: multiple definition of `HAL_GPIO_EXTI_Falling_Callback' So, I open the target source file.STM32TouchController.cppextern "C" void HAL_GPIO_EXTI_Falling_Callback(uint16_t GPIO_Pin){if (GPIO_Pin == TS_INT_PIN){if (_initialized){if (BSP_TS_GetState(0, &state) != BSP_ERROR_NONE){assert(0 && "Failed to read TS state");}}}} same name functions are in a one project.So I disabled the funtion in STM32TouchController.cpp.Then I can not touch anything in display. please let me know how to avoid the error and to work two function (touch and irq falling edge exti). thanks
Hello everyoneCan I also add an svg image to a button? I can embed images in svg format (almost) without any problems. However, if I want to assign an image to a flex button, only png works. Is there a workaround for this or does it just not work?Regards, Roger
Please share resources , I am trying to use the display with stm32h735gdk . but all i am able to do by now is turn it on and it is showing blank white screen. please guide me through it.
I'm currently working on a project that needs to decode JPEG's and do so as fast as possible, natuarlly I've looked for alternatives to the libjpeg offered by CubeMX and stumbled upon Libjpeg Turbo which uses SIMD instructions to optimize the de-/compression process - Seeing as my MCU (STM32F407) is a Cortex-M4 core which seems to include SIMD instructions naturally I would like to give it a try, however my attempt of replacing the original lib files was unsuccessful and after trying to fix hundreds of compile errors I gave up as I was unable to resolve some of them.Has somebody given this a try before?
Hi, I'm trying to find adress space for not memory mapped 16MB NOR.I have external PSRAM IS66WVE4M16EBLL + NOR MT28EW128ABA1LPC-0SIT with STM32H753ZIT6. They are both on the same bus:FMC: NOR 0x60000000,PSRAM 0x68000000. Not using MPU. I use raw addresses of PSRAM as memory mapped, and HAL functions to transfer data to NOR. I tested memory integrity, R/W - all fine.So far I had TouchGFX running with internal FLASH for graphics + doublebuffers in external PSRAM - it was working fine with stable 32 FPS @ 480 x 272px RGB565.Now I want to use external FLASH for storing graphics. Seems it is not memory mapped so I started with this article and to cache most of graphics to external PSRAM and faced this section:"In this example we will put the image data in the ExtFlashSection at address 0x24000000. You can select any address that is otherwise unused (not part of the code or data address space)."I grab 288k of RAM_D2 to test (0x30000000) as unused address space. Then
I have been trying to display continuous data on Scroll wheel container for the past 2 months but have been very unsuccessful. Could someone help or tell me if it's even possible to do that?? The example in the documentation does not help in that regard.I would like to display a counter that goes from 0 to 255 on a scroll wheel but what I get is the exact same value on each row of the scroll updating in real time. What I want is each counter value displayed on each row, e.gThis is my customContainer setup:void CustomContainer2::RX_UART(char* data) { TX_BufferArea.setWideTextAction(touchgfx::WIDE_TEXT_WORDWRAP); sprintf(USART_Array, "%d", data); Unicode::strncpy(TX_BufferAreaBuffer, USART_Array, TX_BUFFERAREA_SIZE); TX_BufferArea.invalidate(); }This is displayed via the View:void Screen2View::scrollWheel2UpdateItem(CustomContainer2& item, int16_t itemIndex) { item.RX_UART((char*)CounterTimer); //I feel itemIndex should be somehow added to this line here but I don't know how to
Hello community!I have updated my environment STMcubeIDE, TouchGFX to the latest versions. I have already some issues with the IDE and Designer team but after 4.22.1 update STM32CubeIDE doesn't recognize TouchGFX Generator 4.22.1 and got some pop screen shows message like CMSIS pack doesn't support TouchGFX Generator 4.22.1 version. I have tried multiple times to update TouchGFX generator in Embedded Software Packages and not listed 4.22.1 only 4.22 last I have viewed.How can I solve this issue?Thanks in advance!
Good morning community. I have developed a project with touchgfx on a custom electronic board. I am using STM32H735IGT6. The problem I'm having is when I turn the power supply off and on. Sometimes some streaks appear, which can only be fixed by restarting the board. Attached photo and video of the screen. As I said, it happens very rarely. What could be the problem? https://drive.google.com/file/d/11D_si5w0vC9acBfwNiP10S5IlYLLBngv/view?usp=drive_link
Hi!, My touchGFX application show nothing but the backlight is on as is expected after soft reset?Does anyone know the problem?Thank you
Hi GuysHow on earth does ST expect anyone to use, learn and embrace their products when there seem to be so little help , videos training??TouchGFX is appalling for step by step examples, YES it's free, but no value to engineers if you have no idea or can't understand Toucgfx I have been days traying to create an event from a custom container with a toggle switchunder the container I have created an event for a toggle buttonI have called the container panel which holds the toggle button and eventunder generated gui I see the generated event handlerI then want to copy that event handler in to panel.cpp and create a new event for a custom container The compiler just errors every time ????? I ready to lunch the PC There must be a better easier way than touch GFX, im sure its great if you know what on earth you are doing
Hi, I have a question about the swipe operation in the TouchGFX Designer.There is a function called swipe container, but even if you check it on the demo screen, you can only find horizontal swipe.I would like to know how to enable vertical swipe.
I have a container with a switch on my screen. On the screen there are about 20 other containers that should change their appearance depending on the switch in the first container. How can I refresh a whole screen with all elements from one container?Best regards, Roger
Hello!I've searched but can't find a solution for my problem.I'm developing a project with TouchGfx and Cube IDE that I'll be using to send CAN bus messages to wakeup automotive components like ecu's and dashboards. I've made all the GUI and also tested the buttons by activating the onboard led's. I've made the connection to CAN1 (that is connected to micro USB port and i've already tested and it's working fine (making a simple project without touchgfx) but I'm lost on how to send my messages from the GUI by pressing a button. I've seen some examples that put the code on the files like Screen1View.cpp and I've tested the led's example sucessfuly doing that but no CAN bus.Configured CAN1 for 500kbit's, RX pullup, and all atached to MCP2515 transceiver.I've tried also other similar methods like UART send but can't get CAN working.Can you point me to some tutorials or tell me the best way to do it?Thank you for your help!!!Rick
Hello everyone,Most of you have read my post here (I recommended reading it first before getting into this topic.In short: I mentioned in the previous post that I want to design a new independet project based on TouchGFX lets call it (Toolchain or Graphical Custom Tool....etc) and this also based on the first application. So whatever i would change in the toolchain and then write its .bin file to the MCU then this change should somehow be applied to the first project and means here the texts or the colours whatever.The first application already implemented and released but i would explain my idea below:Now i would divide this topic into three parts 1. Images (which i already implemented) 2. Texts and 3. Colours.1- Lets start with the texts part.. So we have too many text objects in the main project, but the customer only needs to change one text object using the tool. The problem is that we are using 4 different languages so i have two challenge:- The first is how to write the changed
Target Board: STM32G0 LCD Used: UC1629 256*160 No RTOSI am using scroll list widget to display my menus and have switches to navigate between screens. When I put 2 as the no of items on the screen, the scroll list is working fine, for 3 only part of the screen is being displayed, for >3 the TouchGFX is going into assert error in LCD1bpp.hpp file stating HAL::Frame_BUFFER_WIDTH > 0 & Hal has not been initialized yet. Could I get some help to solve this?I am facing this issue not just while using scroll list, but also when I add more that 5 widgets on the screen.
Like topic i can compiler demo code successfully and "run" simulator.exe, but result console will closed immediately, i only can use virtual studio 2019 open the "simulator.exe" and press debug then i can see the result, any good suggestion that i can do? i already tried reinstall TouchGFX and VS2019, Or use admin excute TouchGFX, but it useless.
Hi. I tried to modify the demo that comes with the STM32U5A9J-DK.When I modified display orientation (Config->Display->Display orientation in TGFXD) I found that it's not handled correctly. In the "SVG" screen there's a couple of logos which should move around to show all the resizing and transforming capabilities of svg graphics.If orientation is changed they still move around but they leave a kind of "trail" and some other artifact.If I switch back orientation everything works properly.After applying the modifications, I just generated code by using TouchGFX Designer 4.22.0 and then compiled and loaded it with STMCubeIDE 1.13.1. I had no errors or warnings.Is it a bug?
Hi Guysbeen use to developing C and embedded ST nucleo boards, now venturing in to touch gfx, must say seems very convoluted and hard work and very timely! using touch gfx seems so long winded to do simple tasks with graphics ??i'm using the designer to layout switches and the image widget for led display ie. image for red led off, red led on, green led off, green led onso for switch1 putting these 4 led images in the designer on top of each other allows me to have 4 leds a red and green on /offwhen i multiply this up for the next 7 switches the code to control all these led images gets really messywhat i would like is to create an array for the widgets so i can reference each led_red_off[1]= false;I have no idea how to do this or whether its is even possible, but the thought of initialising all these image widgets can not be right ??OUTPUT_ZONE1ViewBase::red_off_1a.setVisible(false);OUTPUT_ZONE1ViewBase::red_off_2a.setVisible(false);OUTPUT_ZONE1ViewBase::red_off_3a.setVisibl
I am working on a custom board STM32H750VB with the screen pixel size(800x480) but it does not have SDRAM and the FLASH size is 128Kbytes.Version of stm32cubidie :1.13.1,stm32cubeMX : 6.9.1, TOUCHGFX:4.22.0. FW:1.11.1. I am using RAM_D1 of 512KB as framebuffer. Single buffer with allocation by address(0x24000000) is used in CUBEMX.QUADSPI flash used is of 16MB and have created partition of 2MB of application code and rest for the asset of TOUCHGFX . Every precaution which needs to be taken care of in LD file is done. The problem is coming inn displaying the screen with FreeRTOS.It is working fine without freeRTOS. My pixel size is 800x480 but I used 480x272 so it comes in resolution size.I used TIM6 as a systick timer.
I have to work on a long term project that involves using the LCD on the STM32H745XIH6 board and deciding which pathway to choose is crucial at the beginning of a project to avoid as much hassle as possible.If I use STemWin, will I get support from the community here? If not, where can I get direct support? Does SEGGER still provide support for this?Reason is, even though TouchGFX seems to be more user friendly in terms of modifying UI and creating amazing animation, I am not familiar with C++ and my boss seems unkeen to have a project mix with C and C++ due to difficulty in reading the assembly code when debugging errors. Plus we don't use RTOS and CMSIS in our project, so these have to be disable every time when creating project from TouchGFX.
Hi ,I've implemented multiple screen in my project(Custom project using STM32F429zi controller with external RAM and Flash). I'm getting memory fault issue whenever I'm transitioning from one particular screen to any other screen. When I debugged I got source of problem at below mentioned line assert(sizeof(TransType) <= heap.transitionStorage.element_size() && "Transition allocation error: Check that all transitions are added to FrontendHeap::TransitionTypes");in function'PresenterType* makeTransition(Screen** currentScreen, Presenter** currentPresenter, MVPHeap& heap, Transition** currentTrans, ModelType* model)' under file 'mvp/MVPApplication.hpp'I think I've added more widget and container to screen, due to which during transitioning it is crossing allocated heap memory for transitioning screen, correct me if I'm wrong here. If yes , how can we increase allocated heap for screen transition.thank you.
HelloI'm still very new to Touch GFXStill finding my way with programming in C++ as I'm more C based,The biggest drawback I’m finding is the TouchGFX design environment when laying out screens does not allow you to add objects (Widgets) as arrays (multiples of the same).Why on earth would this not have been implemented ??This approach allows for much more efficient and logical coding for controlling each widget in for loops etc.Is there any plan in the future to add this much needed option in the ToughGFX designer when laying out more complex screens of multiple objects / widgetsThank in advance for any info
Is there a way of detecting a swipe has been performed using the swipe container?I see others have used some callbacks but these posts are a few years old.I would think this would be a "default" out of the box functionality, after all it is a SWIPE container?Do anyone have some sample project code they could post cc:@Martin KJELDSEN
Hello guys!Is anyone knows how to store background image of touchgfx into SDRAM. I have tried changing linker script ... but while dumping the the, in builds logs im getting "Reading from SDRAM 0xD010000l: Verify failed".
Hello everyone,We are working on a project that involves an LCD display and we are using the STM32F767 MCU. We have designed the board to work with both a 4.3" LCD with a resolution of 480x272 and a 7" LCD with a resolution of 800x480. While we are satisfied with the performance on the 4.3" LCD, we are facing issues with the 7" LCD, particularly with the FPS (Frames Per Second) and screen tearing.We were able to increase the FPS on the 7" LCD from 25 to around 65 by adjusting the LCDCLK value using the formula "TotalW x TotalH x refresh rate". However, we encountered visible tearing on the screen (moving and colorful lines) when using the RGB888 Color Format. Switching to RGB565 resolved these issues and provided a cleaner display. This effect was consistent across different UI designs.We have tested different UI designs using both ST TouchGFX and Embedded Wizard, and observed the same results.We suspect that the problem might be related to DMA2D or SDRAM, but we are not sure how to pr
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.