Discuss STM32 and TouchGFX implementations, including configuration, debugging, and optimization.
Most recent activity
Hello,working with TGFX 4.10. I use the circular progress bar from git, respectively from one of the examples and so far I'm happy with it although it's a bit strange not to have it in graphical editor...Now I need to overlay it with additional buttons for - | + , see attached picture:Is there a chance to do the buttons in the graphical editor and put them to top layer so they are visible and clickable?If not: Is there a good eaxample how to create buttons in C++ ?Thanks in advance and best regardsStefan
sir we are using the stm32f7508-dk board , code is generated through touchgfx working properly (display part). when add led toggle code , led not toggling ,
Hello!Im having some problems with STM32F429ZIT about the interrupt handler. My microcontroller is connected on a LCD display by LTCD bus pheripheral and also has a interrupt input pin (PG2 - EXTI2 on falling edge detection border) connected on a external driver. All the hardware connections are ok.The problem is that my EXTI callback is being triggered even if i let PG2 always in low! At this moment my callback funcion has just only this code to test: void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin){if( GPIO_Pin == GPIO_PIN_2) HAL_GPIO_TogglePin(LED_GPIO_Port, LED_Pin);} Note: the LCD display is being controlled by a GUI library from STemWin. I have noted that when i disable the library (remove the init function from my main code), the interrupt handler of EXTI works as expected. But if i enable the LCD, the interrupt handler get triggered randomly.Can someone give me some idea about wich trouble is and a solution?Al the others GPIO Pins 2 are disabled (none of them are also u
I got a project with a flex button in screen and custom container with the same name ("ButtonBack"). Both flex buttons got an action to call a virtual function. After generate, close TouchGFX Designer and reopen, the reference button in action is missing, there is no button selected in the action in the screen and custom container.Do you know how to solve it?
Hey I have 5000 data that i want to display it in scroll list , means total index of scroll list is 5000so How can i manage it in scrollable containers. I have tried after some data(1000) its not supported please let me know solution
I recently tried to use importing and exporting feature on custom container.It works.However, I encountered some very annoying problems:Some of my custom container share resources, and sometimes I just need to create a couple of variations of the same custom container, like different theme.By default, the generated manifest includes all affected parts. So - if I create several exports with the shared parts, then I include only my individual part - it works. However - it's quite tedious to maintain.I have to export several files for 1 custom container, and remember to import them in the right sequence or it breaks.The main problem is - when there's any resource conflict - the import just fails. There's no option to resolve the conflicts. The option to either leave existing resource or overwrite existing resource would totally fix it. I could export any number of versions of the same control and then decide what resources to import from it.In the window area where yellow exclamation mark
Dear Help, I ran into a series of anomalies while following TouchGFX tutorial on Win10, resulting in code not able to run in Simulator and download failed in Programmer. Here are the steps and results:1. Using TouchGFX 4.21 and following Tutorial 2: Creating your own application. GFX insisted on creating the project under STM32F746G-DISCO with name Application even though I have explicitly selected the STM32H7B3I-DK board, and I couldn't find where to specify the directory names in GFX.2. Created button and screen and ran in simulator. Proceeded to add virtual function ToggleLED in STM32CubeIDE (1.12.1), but Simulator failed on not finding stm32h7xx_hal.h. I followed some examples online to add: #ifndef SIMULATOR #include "stm32h7xx_hal.h" #endifto allow Simulator to run, but then the ToggleLED function that called a HAL function would create an error.3. I generated the code (not sure if CubeMX or GFX d
Let's say I have a custom container with my custom code.It is exported, so I can import it any time.However, when I delete the container, the code files remain in the project. That prevents importing the container again. I have to manually delete the files to import the control. Also, unused files clutter the project.When a user deletes the custom container, it should be deleted completely. If the code files are needed - they can be backed up either manually, or with exporting the custom container to a file.
please help someone if you can. The program in CubeIDE compiles and Run without errors , but TouchGFX Simulator not recognize variable exported from another xxx.c file ( usbd_cdc_if.c ; uint8_t my_char_Rx_buf ; ) . In Screen1View.cpp file ( extern uint8_t my_char_Rx_buf ; ) . In TouchGFX .......Screen1View.cpp:72: undefined reference to `my_char_Rx_buf ...collect2.exe: error: ld returned 1 exit statusgenerated/simulator/gcc/Makefile:160: recipe for target 'build/bin/simulator.exe' failed
I am designing a product with touchgfx, my UI designer is providing a full user interface design in XD format. He is using Adobe XD for this. Is there any way I can import this into Touchgfx?
I am using TouchGfx to generate code for CubeMx and STM32IDE. But it returns error as seen in the image.I tested it with different versions but in the end i couldnt get successful build.Could you please tell me how to cope with it.When i pass to IDE program and build it returns error like these;******************************************************************************************arm-none-eabi-gcc: error: ../STM32CubeIDE/Application/User/Startup/startup_stm32f429z??tx.s: Invalid argumentarm-none-eabi-gcc: fatal error: no input filescompilation terminated.../TouchGFX/target/TouchGFXHAL.cpp:92:6: error: no declaration matches 'bool TouchGFXHAL::blockCopy(void*, const void*, uint32_t)' 92 | bool TouchGFXHAL::blockCopy(void* RESTRICT dest, const void* RESTRICT src, uint32_t numBytes) | ^~~~~~~~~~~../TouchGFX/target/TouchGFXHAL.cpp:92:6: note: no functions named 'bool TouchGFXHAL::blockCopy(void*, const void*, uint32
I'm working on STM32H7 controller with TFT LCD.Can anyone help me to splash screen for 3 seconds(The image should display for 3 sec and then switch to default screen).Thank youKomala
handleTickEvent() - what is the period? And how to change it?Thanks
How to Display Time on X-Label in Dynamic Graph instead of incremental integer numbers, I have working RTC date and time which I am displaying on corner of screen. Also my graph is updating as per RTC second update
I am using stm32h745, How to make the password encrypted and appear as a star instead of normal characters on custom keyboard?
Hello,I have question about DCMI : I set DCMI with a capture rate with DCMI_CR_ALTERNATE_2_FRAMEI toggl pin in callback to see in my digital scopeFirst line : line event ( green line)4th line : frame event ( green arrow)I assume that the DMA copy the image capture in the ram buffer with le line event synchronisation. 1st remark : Why the frame event callback rise at the begining of the capture? I was expected it was at the end2d remark : Even if I set alternate capture, why I received line event ( surround in red). I hope there is no copy in ram during this time? Am I right?Many thanks for you help to understand.Bertrand
If possible, how can be anti-aliasing disabled/enabled ?
Hi, How can we create a loading spinner using TextureMapper in TouchGFX. Currently we are using a Texture Mapper and in interactions for every tick rotating the texture mapper but not able to achieve the smoothness in rotation. Can you please guide on how we can achieve the same and also explain how Linear Easing Options (LinearEaseIn, LinearEaseOut and LinearEaseInOut) work? Attached is the expected result.
Good evening. I am developing in the medical field and have encountered a problem: to eliminate accidental touch errors, it's necessary for the user to be able to change slider values only through deliberate actions, such as a thoughtful movement of the slider. Could you please tell me if it's possible to implement slider behavior using standard means in such a way that the value changes only if the user moves the slider thumb? That is, if a click occurs within the slider nothing will happen, but if the click is on the slider thumb and it starts moving, only then will the values change? Thank you for your response. Regards, Alexander.
Container Has 3 Widget (Box , 2 Button ) Container is used in scroll list , I have selectedHandler for Index but how can we get Which widget is selected form this itemIndex .
Hello,Here is an example of what I am trying to make in TouchGFX Designer. So, since I need different text colors for text inputs, I am using 2 text area inputs here. Both inputs are wildcards and should change value dynamically. I am having trouble centering them on the screen, as I would like that no matter the length of each value the texts are centered in the container. (like in the attached image).If I were to present this as one text area with 2 wildcard inputs I would just remove auto-size, expand text area to full width of the container and center it. But here I am using two textareas.Is there a way to do this in Designer alone or do I need some code added later on to fix the positions?
I started to use TouchGFX version 4.21.1 recently. Noticed that code generation in Designer is changed compared to some old versions and this renders unusable many tutorials and documentations that can be found on net. My problem is that I can not display variable using TextAreaWithOneWildcard.Basically invalidate function does nothing.I prepared new typography with more or less default settings (-,+ as default wildcard characters, A-Z,0-9 as Wildcard ranges).According many tutorials on net, code generator should generate buffer for this TextAreaWithOneWildcard.But I can see in MainViewBase::MainViewBase() textArea1.setTypedText(touchgfx::TypedText(T___SINGLEUSE_CPF7)); and no buffer for user use.I have added my bufferUnicode::UnicodeChar myBuffer[20];and in void MainView::setupScreen()I have added the line:textArea1.setWildcard(myBuffer); I expected after execution of this codevoid MainView::update_text_field(uint16_t new_val){Unicode::snprintf(my
Hi, I am working on the Touchgfx Version4.21.0 and STM32CubeIDE Version 1.11.2Existing Config: Flash Memory : 2MB RAM: 512KBWe have 14 Screens Its consuming Memory around 79.72%.Still We have to Add 4 to 5 more screens after adding those Its Increases upto 99%, due to memory limitations we are not able to Add those screens.Can You Please Provide the best Solution to reduce the memory consumption.Attached the File "memory_consumption_by_file.txt" of Table for reference to Memory Consumption by generated and written code files. Excluded Generated Fonts, Images and Texts Code as Its configured to store in External Memory.
Hi,I am working on implementing the graph using Dynamic graph widget which was recently introduced in latest TouchGFX release. In our application we collect data points after regular time interval e.g We may collect 144 data points for 12 hours. So, I want to plot the chart for parameters values Vs Time. To do that I need to show a time as X-axis label.As I am selecting the number of data points as 144 here, it by default configure the label according to number of data points. So, how can I show time on X-axis and parameter value on Y-axis?BR,Shree
Good day everyone, I am trying to use the existing dynamic graph in such a way, that the x-axis labels are using a timestamp rather than a simple incrementing number. This is what I currently have:And this is what I need:I guess I haven't fully understood the concept of wildcards, but this is currently the settings I have:Any hint is highly appreciated as I found several posts like this in this forum but none of them got answered properly, so I hope that this post would clarify how to properly use the X-Axis LabelsEDIT:I probably found the place where the formatting of the Axis is done:But due to the fact, that the "formatLabel" method is not virtual, it seems that using the existing widget will no work for me, correct?
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.