Discuss STM32 and TouchGFX implementations, including configuration, debugging, and optimization.
Most recent activity
Hi, Created one UI project in TouchGFX, I have done some code modifications in Visual studio it was successful. But Once Try to run target pressed "Run Target" option in TouchGFX during that Visual studio changes reverted back. Visual studio changes not accepting in Touchgfx. How to control this? Please help me on this
is there a way to show the "<" symbol on the screen? I used a wildcard and want the string show likes this "< <value> %", but the "<" symbol will never see, is someone knows how to do that?
Hi, I am a fresher using STM32H7743I-EVAL2 board.We bought this demo board to test the performances of the LCD screen and STM32 in order to develop our final product.MCU demo boardLCD demo boardThis screen has one 8-bit R register, one 8-bit G register, one 8-bit B register (RGB) but we can see only 6 bits used.1st question, why 2 bits of each RGB registers are not connected?Also, we have subcontracted a firm which has designed a prototype board according to our needs, with a smaller screen.LCD Prototype boardWa can see the R and B registers only use use 5 bits, then I think we will need to modify the source code of the evaluation board to fit with the smaller screen of our prototype.I think there is a library or driver in the code of the evaluation board to manage the screen?Could you help me in finding that code and help me in understanding what changes make to work with our smaller screen?Thank you very much for teh help.
Hallo,I am using the TouchGFX framework on an STM32F750Z8T uC on a custom board. Connected to the uC is a SPI-flash and an external RAM. The application is loaded from the SPI flash to the external RAM on startup. After verification the application is started. Stack and heap are located in the internal RAM while all data like the frame buffer are also located in the external RAM. The connected display hast a resolution of 480 * 272.The application uses FreeRTOSv2 with two tasks. One for the TouchGFX, and the other for reading inputs and sending data. After startup the application is doing the hardware init, starting the first task and after that the TouchGFX task. Everythings runs fine until the TouchGFX switches to an other screen. Then the application freezes or completly crashes. With only one screen with colorchanges and anmations the application runs without any problems.What I have done so far is increasing the heap of the OS to 250 kbytes and the stack of the TouchGFX task to 60
Hi all,I`m trying to demo TouchGFX animation from my own board from CubeMX, and I have searched many method & document but less help,/* My Tool Version */TouchGFX 4.15STM32CubeMX 6.1.1Package: STM32Cube_FW_H7_V1.8.0/********************************/I debug code and find out that stuck in FontManager::setFontProvider(&fontProvider);Is there something I have to notice or setting before work on?Thanks for Helping!
Hi I have a display running in video mode over the DSI Burst Mode with attached B-LCDAD-HDMI1 hdmi adapter boart. Resolution is at 720x480.Is it possible to change the resolution to 1024x600? I see that the Stm32F7 board supports up to 720p so what configuration changes do I need to make?Kind Regards
i can overwrite the swipe Container ,but Page.moveTo() just like to list structure.,how can do circular.
I integrated succesfully the feature binary translations so that i can load my texts from external flash. However, when i rebuild the simulator in Visual Studio, my TypedTextDatabase.cpp and language files are back configured to the configuration without binary translations.I guess the adoptions need to happen to the touchgfx_prebuild.targets file, next to the RemapIdenticalTexts. Can anyone help me on further knowledge on this?TouchGFX 4.13.0 & Visual Studio 2019Many thanks
I'm having problems with widgets taking events that weren't supposed to go to them.For example, if I have a SwipeContainer with a Button. If I tap the button, I get a ClickEvent - that's good. But, if swipe, and just happen to start on the button, the button receives the ClickEvent, and the SwipeContainer doesn't receive a swipe event, even though I swiped, and didn't click.Is there anyway around this? The call stack seems to originate events in Gestures.cpp, but this file doesn't appear to be provided, so it is hard to see what is happening. Is Gestures.cpp available?Thanks,Frank
Hello,I am developing an application with: lcd with ILI9341STM32F411RET6SPI external flash memory model SST26VF032BI have already created the .stldr file for this memory and it works fine.I edited the STM32F411RETX_FLASH.ld file to add the external flash.I create the project from CubeMX, enable TouchGFX, create a test screen and do "Generate Code". Why are the .bin files of the bitmaps and fonts not created to put in the external flash?
..
Hi,I'm using STM32F746-disco board and I have a problem with screen transition. I have a starting screen which I have set for displaying 5000 ms. During that, the system will do some initial measurements (basically just one ADC measurement) and print the results on the screen. After that it should change for the main screen, but that never happens. The start screen hangs there (displaying the correct results). However, the transition happens if nothing is run during the start-up. Otherwise, the screen transitions work as they should. Wondering if that 5000 ms set time could somehow cause the blocking?Edit: I am using FreeRTOS.
Once upon a time I did a project for displaying images from a camera OV5640 and STM32H743XIH6Then I still used TrueSTUDIO and the project was created with version HAL 1.3.0Now I have successfully translated it to STM32CubeIDE (The picture is still good)-----I have now re-generated the project using CubeMX with HAL version 1.9.0And I get the wrong image (I haven't changed the periphery settings)----After that, I generated a project using CubeMX with version HAL 1.3.0And I get the wrong image again----I think the generated TrueSTUDIO project was somewhat different, I noticed that the CMSYS files are named slightly differentlyPerhaps someone has already encountered a similar problem and will understand everything from the photoI attach 2 photos (good and bad)I want to say in advance that the matter is not in the inversion of the high and low bytes of RGB565 (In this case, the picture turns green)I have an assumption that the picture is shifted by 1 byte (but I'm not sure)
The vertical Line seems to go away when I put a my finger on the LTDC CLK pin. I adjusted the clock frequency to above the minimum (12.5MHz) required for the display, and it still appears. I then added a 40k pulldown resistor to the LTDC CLK pin, and it went away, but I don't see any information anywhwere regarding the addition of the pulldown is an ok solution. I have read another post about the exact same issue, but the issue was closed out with no solution. Any help is greatly appreciated.
Hello,I am using slideMenu widget and it works fine. Now I am trying to open this widget by a gesture. Normally I would override gestureEventCallback in my View- and actually I did it but it does not work well. I have two slide menus on top and on the left and if I slide from the left to right at 30o angle I get 2 gestures- HORIZONTAL and VERTICAL, always in the same order therefore it is impossible for me to detect if I should open top or left menu.I came to idea that I can first check the click event for pressed, save the coordinates, wait for gesture event and then wait for released click event- in that combination I am able to get all data to find out if I should open top or left menu. But If I override click event in my view I can not trigger buttons which are present in the view.So my question is- is it possible to, after I trigger view's clickEventHandler pass the event further to trigger next widget in the area where the click occured? Is TouchGFX capable of doing that?
Hello, I am trying to port TouchGFX Designer generated code into an STM32 Project that is built in a different build system (i.e. not STM32CubeIDE).So I started at `TouchGFX/Core/Src/main.c` and trying to port over what was done as far as HW Initialization and testing. My platform is the STM32H735G-DK devKit.I noticed quite a difference between MX_OCTOSPI1_Init vs MX_OCTOSPI2_Init in the TouchGFX generated code (i.e. the USER CODE sections)MX_OCTOSPI1_Init pretty much undo all the CubeMX generates and relies on BSP_OSPI_NOR_InitMX_OCTOSPI2_Init kept what CubeMX generates cal cals a couple of HAL_OSPI functionsQuestions:Why was this approach taken? In a way I understand MX_OCTOSPI1 a bit more since the BSP code ends up calling the component specific functions. With MX_OCTOSPI2_Init, I am not clear how it maps to the S70KL1281 component functions? There are BSP_OSPI_RAM functions provided, why does the TouchGFX generated code choose to use it for OCTOSPI1 but not OCTOSPI2 ?I am also hopi
Are there any examples how to move images to external flash using IAR? All the examples seem to be using STM32IDE .ld linker files.
I'm getting a Hardfault with DynamicGraph in a scrollable container.(graph and container 1024 pixels, with LCD screen 800)Environment: STM32F469I-Disco, TGFX 4.15 and latest everything. Everything is fine until I drag the container and then I get the hard fault - always.below is the stack traceIf I make the screen with the graph the startup screen, the error does not occur until I exit to another screen and return to it. It also crashes if I make another screen startup, then enter this screen. - I dont think this is the cause, just a symptom.However I can make the fault go away if I put a Box infront of the graph (z order), with its alpha 0 and a dummy click listener. With this, everything works fine and I can drag the graph etc - this will be my solution (yucky hack) if I cant get to the bottom of this.I've given the GUI, FreeRTOS and stacks etc loads of extra memory and makes no difference. I've played with the MAXINS and other settings, but it wont go away unless I have the box. I g
I'm working on a project that requires setup for various controls. I've built a main screen (MainMenu) which transitions into a sub screen (ZoneSetup) to move a few temp selection sliders, toggle some buttons, etc. for the setup. I need to pass that information back/retain that setup information so anytime the user returns the previously set information is present. I followed the pool example project to pass the information via the model (only focusing on the top slider right now), but when I update the slider (zone1) and try to return the program crashes.Also, another issue that I'm trying to solve is why one slide also affects/glitches the indicated text for a non-corresponding slider (ex: move zone2 resets/changes zone1). Any thoughts on these errors or how I should be doing this?See the attached .zip of the associated project.
hiI have a 1280 x 800 lcd with rtp.when I touch near the coordinate 1122 x 300 system goes to hard fault. but It doesnt go tohardfault when screen first entered. it does this hardfault when I go to other screen and turn back to this screen.thanks for any help
1�?Used in smartWatch .2�?Which widgetcan be used to drag up and down in video
Having issues running a GUI project generated using CubeIDE with TouchGFX application. Please see details below:Software Versions in use:STm32CubeIDE v1.5.1TouchGFX v4.16.1HardwareSTM32F429I-DISC1Steps followed to start a test project:Start a fresh project in STM32CubeIDE using STM32F429I-DISC1 template Select C++ as target language and Initialise all peripheral in default modeProject Builds and loads on the board with no issueNext, use Software Packs to add TouchGFX. Activate Graphics Application, Interface = Parallel RGB , Application Tick Source = LTDC.Save and Generate Codeopen .part to open TouchGFX and create a single screen. Save and Generate CodeProject Build Fails with error "GPIO.hpp no such file or directory Go to properties of Main Project and "Middlewares/ST/touchgfx/framework/include/touchgfx/hal" to path which contains the missing GPIO.hpp fileProject Builds successfully and uploads on board however nothing happens on display.A new project created using TouchGFX runs wit
For around the last month and a half I've been working on implementing the LVGL open source GUI framework on an STM32H743II utilizing this external SDRAM on a Alientek board that shares similarities to the STM32H743II-Eval board. This should be the RAM Chip: https://www.digikey.com/en/products/detail/winbond-electronics/W9825G6KH-6/5001919I've been able to get LVGL running and implemented along with displaying on an LTDC display I have configured properly the only hold up is that I cannot create a display buffer large enough to actually display across the entire screen so I obviously need to use the external ram to handle this.Going through the documentation provided with the board the pinout for the SDRAM appears to be the same as that generated by the CUBEMX for the STM32H743I-EVAL Board, now its possible I've misunderstood the documentation provided so I've included a couple screen shots just so people can point out if I'm clearly being stupid in terms of my physical hardware connec
HelloI have a TextArea Wildcard in my display that shows "ON" or "OFF" when the screen entered and has a FlexButton in front of it. when FlexButton clicked, I want to change the current State. To do that (I believe) have to get the wildcard value and compare it with the constant "ON", then change the wildcard value in the IF statement. So what is a straight way to do that?
Hello, I am using TouchGFX with STM32F746. I noticed that my system gets reset (With Hardfault ) several time before working fine. I wrote code at Hardfault to get PC and LR before reset and found out its getting reset at function SCB_CleanInvalidateDCache () ( PC : 0x08011420 or 0x08011410 ). And SCB_CleanInvalidateDCache() is getting called by TouchGFXGeneratedHAL::flushFrameBuffer() Any suggestion ?Thanks
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.