Discuss STM32 and TouchGFX implementations, including configuration, debugging, and optimization.
Most recent activity
Hello,I initially implemented TouchGFX on an Nucleo board with an STM32G071RBT6 (128K flash).Currently, I am using a custom PCB with an STM32G071R8T6 (64K flash), but I did not change the MCU model in STM32CubeIDE.However, despite the build analyzer showing a flash usage of 90K, the application appears to be running normally.The images are stored in SPI flash, but I expected the application to fail due to exceeding the MCU’s 64K flash limit.What could be the reason why the application is still functioning seemingly without issues?I have attached an image showing the memory usage in the build analyzer.Thank you!
I wanted to import a custom container from another project. It however does not work because typographies and images are already present in the current project. I use the same buttons in several custom containers and screens. In this case it should be possible to continue to import by using the already present resources.
Does anybody know a graphics library that is "mostly" Misra compliant?Then is there a graphics solution which could be used for Functional Safety projects (>=SIL2)?best regardsWerner
Is there a way to make the built-in TouchGFX keyboard act as a numberpad? I just want a way to enter numbers, decimals, backspace, and confirm data entry. This is for the STM32F469I-Disco board.
Run SimulatorGenerateDoneGenerate Assetsmake -f simulator/gcc/Makefile assets -j8 --tracesimulator/gcc/Makefile:32: target 'assets' does not existmake -r -f generated/simulator/gcc/Makefile -s -j --jobserver-fds=gmake_semaphore_3068 --trace assets -C "C:/Users/Administrator/Desktop/13123/MyApplication"generated/simulator/gcc/Makefile:221: target 'images' does not existtouchgfx/framework/tools/imageconvert/build/win/imageconvert.out -r assets/images -w generated/imagesgenerated/simulator/gcc/Makefile:225: target 'texts' does not existruby touchgfx/framework/tools/textconvert/main.rb assets/texts/texts.xml touchgfx/framework/tools/fontconvert/build/win/fontconvert.out generated/fonts generated/texts assets/fonts .generated/simulator/gcc/Makefile:229: target 'videos' does not existruby touchgfx/framework/tools/videoconvert/videoconvert.rb assets/videos generated/videosReading ./application.configReading ./target.configDonePost Generatetouchgfx update_project --project-file=simulator/msvs/
Assume in dynamic graph, I want to plot value range from 0.0 - 1.0, and I want to setup Y grid and label in between say in step of 0.2. This mean I need the Y grid and Y label on 0, 0.2. 0.4, 0.6, 0.8 and 1.0. Is this doable? It seems to me TouchGFX Designer Y-label and Y-grid resolution is 1, but I could be wrong.
hi,i'm new touchgfx user, i want to have a numpad , is there any way to custmize keyboard sample?
1. Hardware is STM32U5A9J-DK, which owns 3M internal onchip rom and 64M external nor flash.2. Using TouchGFX Designer-Demo6 to 'Generate Code', 'Run Simulator', 'Program and Run Target', STM32U5A9J-DK works well.3. Using CubeMX to load project STM32U5A9J-DK-FreeRTOS.ioc(generated by TouchGFX Designer in step 2) and set IDE as EWARM, then click 'GENERATE CODE' to generate IAR project.4. Open IAR project and compile it successfully.5. Click 'download and debug' in IAR tool bar, error occurs: Flash download warning: 22290240 out of 22290240 bytes from data record CODE:[0x9000'0000,0x9154'1f3f] will not be flashed,it seems that image cannot be downloaded into external memory. 6. icf file:The question is: what step shall I take to download image into external memory?Best regards~
Hello,I bought a RVA35HI-NUCLEO144 Riverdi display that is featured on TouchGFX with a NUCLEO-H563ZI board.3.5” STM32 Nucleo 144 Display Kit - RiverdiHowever I already had a NUCLEO-H7S3L8 board with similar features. How difficult is it to reconfigure TouchGFX generated files to a different device?One answer could be, why not go with suggested board. But please try to see if my request is achievable with some minor manipulation of generated files.Thank you!
I am using a Rivierdi display with their board that uses a STM32H757XIH6. I am using touchgfx and starting with their pre-made example in touchGFX. Their board has a 40 pin connector that give access to I/O. I am using their project as a starting point and trying to change I/O functions to simple GPIO from alternate function however when I make this change, the project ceases to build. Here is a specific example: I changed PD11 to GPIO output from LPTIM2_IN2 using pinout view:I then generated code in CubeMX and tried to build the new project in CubeIDE. The project built fine before the change but failed after this with the following error:make: *** No rule to make target 'C:/TouchGFXProjects/Regal_shutoff/CM7/Core/Src/lptim.c', needed by 'Application/User/Core/lptim.o'. Stop. What do I need to do to clear this?
Hi,I am currently waiting for the Riverdi RVA35HI display to arrive at my door.On the website (3.5” STM32 Nucleo 144 Display Kit - Riverdi) it says the display is compatible with NUCLEO-H563ZI and NUCLEO-U575ZI-Q and I have already seen the Nucleo-U575ZI + RVA35HI integration in TouchGFX.Since I have a NUCLEO-U5A5ZJ-Q at home and it is quite similar to the NUCLEO-U575ZI-Q, can I use the display with the integration in TouchGFX for my MCU or do I have to be aware of anything?Thanks & best regardsZarzi
hello,In the Touch GFX application, I have integrated quad SPI, and I am getting the following error.Error: Data mismatch found at address 0x90000000 (byte = 0x00 instead of 0x89) Error: Download verification failed
I am having trouble receiving data with my Riverdi Display rvt70hssfwca0. I am not sure if it is a software or a hardware problem since when I was testing the RS485 I shorted pin 2 (Signal A - Non inverting) and Pin 1 (Vin - 24V). When debugging this is what I observed.Signal coming from Pin 2 of RS485 port is little over 1V instead of 3.3V while Pin 3 (Signal B -Inverting) is working fine at 3.3V. When the device connected to the RS485 port replies back both signals (A and B) are at 3.3V. I believe D4 might be damaged because I could see a physical discrepancy on the casing (a little hole).At U2 the incoming signal and the outputting signals seem similar to what was observed at the RS485 connector port. (Outgoing A is ~1V, everything else is 3.3V) This is where I find the main suspect:The receiving signal observed from RO pin (going back to the MCU I suppose) are pulse-like (noise maybe) instead of the expected squared IO signal observed at the port. In other
In the following post the question is asked to add the same functionality to multiple screens: https://community.st.com/t5/stm32-mcus-touchgfx-and-gui/how-to-display-the-same-content-in-different-screen-of-touchgfx/td-p/723711 I run into the same issue. Where I want to add the same custom containers to multiple screens. Since there is some interaction with these custom containers (updates for the clock and status bar, but also button interaction with a popup window) I now have to copy the code for this interaction to each corresponding view and presenter.Would it be possible to make a sort of base class which contains this functionality so that all the screens which need to implement the functions can inherit from this base class?This would greatly reduce maintenance efforts since the code would not have to be replicated for each screen.I have made a project where I try this and it compiles however the software crashes when I try load a screen which adds the container to the view.
1. Hardware is STM32U5A9J-DK.2. Using TouchGFX Designer-Demo6 to 'Generate Code', 'Run Simulator', 'Program and Run Target', STM32U5A9J-DK works well.3. When I want to compile the generated code in step 2 by IAR IDE, error occurs:'F:/3_softprj/02_stm32cube/touchgfx/gfx0207/Middlewares/ST/touchgfx_components/gpu2d/NemaGFX/lib/core/cortex_m33/IAR8.x/nemagfx_core_release.a', needed by 'F:/3_softprj/02_stm32cube/touchgfx/gfx0207/EWARM/STM32U5A9J-DK-FreeRTOS/Exe/STM32U5A9J-DK-FreeRTOS.out', missing and no known rule to make it There is no IAR8.x in directry 'F:/3_softprj/02_stm32cube/touchgfx/gfx0207/Middlewares/ST/touchgfx_components/gpu2d/NemaGFX/lib/core/cortex_m33', besides gcc.IAR version is 9.32.why does the compiling error occur?
..
这可能是什么原因造成的呢?
1. Developing tools directories as this:D:\ProgramData\STMicroelectronics\STM32Cube\STM32CubeMXD:\ProgramData\STMicroelectronics\STM32Cube\STM32CubeProgrammerD:\ProgramData\STMicroelectronics\TouchGFX\4.24.2\2. ST link drivers are installed well.(because code can be compiled and downloaded via usb ST-link)3. Hardware is STM32U5A9J-DK.4. TouchGFX Designer demo is TouchGFX Demo6. Run simulator is OK. My question is: I want to run this demo on STM32U5A9J-DK, but the run button can not work and display 'Cannot Run Target'. which procedure is wrong? Or is there any guidance to solve this problem?
Dear Gfx TeamWhen launching project.touchgfx, often the splash screen dissapears but IDE apears only after ~10 seconds. During tose 10 seconds, it is not clear what is goung on. Neither splash screen nor the IDE is visible.Please make splash screen go away only after IDE is available i.e. splash screen is shown over IDE for second or two.Thanks
Requirments-LCM->1024x600 TFT With CTP and Or 1028x 800 LVDS TFT With CTPColor Depth-> 24bppFPS-> ~30MCU-> _________?RAM-> __________?QSPI-> __________?I have Selected the following Hardware But need expert opinion on this subjectMy Selection-MCU->STM32H750 BGASDRAM-> 16 BIT (IS42S32400F-6BL)QSPI->MT25QL512The above parts are used in STM32H750B-DK
Issue DescriptionI am experiencing a debugging issue with a project generated using TouchGFX Designer 4.24.2 for STM32H7B3I-DK, running on STM32CubeIDE 1.17.0. When I attempt to start debugging, I get the following error: Failed to execute MI command: load C:\TouchGFXProjects\Test01\STM32CubeIDE\Debug\STM32CubeIDE.elf Error message from debugger back end: Load failed Tests PerformedProject generated with TouchGFX 4.24: If I generate the project from TouchGFX and try to debug, I get the error mentioned above.The firmware loads correctly when flashed (.hex) manually via STM32CubeProgrammer, but the graphics appear corrupted.Empty STM32CubeIDE Project (No TouchGFX): If I create a new empty project for the STM32H7B3I-DK in STM32CubeIDE 1.17.0, the debugger works without any issues.Flashing and debugging function properly.ObservationsThe issue seems specific to projects generated using TouchGFX 4.24.2There might be a problem with memory configuration, linke
I would like to rotate my screen 180 degrees, I know that Touchgfx does not support this option but it is possible to do so by modifying the internal registers of the display controller.In my case the display has a resolution of 480x272 and the controller is an HX8247-A and I only have the RGB interface available, I do not have access to the pins for screen rotation but I saw that I have to set the UD and LR bits of the 'Driver Data Control' register to a low level.Do you think it is possible to modify the internal registers via the LTDC peripheral of the microcontroller (STM32H7)?Thanks
I've configured a skeleton CubeMX project upon which ive enabled the DMA2D, DSIHOST and LTDC IPs for a custom board. The boards test okay, access to the MCU, programming, sane registers, but upon flashing the CubeMX generated firmware the DSI clock signal doesn't present itself on the oscilloscope.Am I missing something simple?
I’m running into some trouble when trying to create a new application with TouchGFX Designer version 4.24.2 on the STM32N6570-DK board. After generating the code and opening the project in STM32CubeMX, I encounter a clock configuration error. It seems to resolve itself automatically, but the real issue starts when I move to STM32CubeIDE.In STM32CubeIDE, I get an error saying the .elf file does not exist. When I try to build the project, I encounter numerous errors like "bad instruction" in tx_initialize_low_level.S.Has anyone successfully set up a TouchGFX project for the STM32N6570-DK? Any guidance on how to resolve these issues would be greatly appreciated!Thanks in advance for your help.
Dear Gfx Team,CWRUtil::toQ5 causes Cube compiler giving this warningc:\TouchGFX\4.24.1\touchgfx\framework\include\touchgfx\widgets\canvas\CWRUtil.hpp ../touchgfx/widgets/canvas/CWRUtil.hpp: In instantiation of 'static touchgfx::CWRUtil::Q5 touchgfx::CWRUtil::toQ5(T) [with T = float]': ../touchgfx/widgets/canvas/Canvas.hpp:120:36: required from here ../touchgfx/widgets/canvas/CWRUtil.hpp:518:31: warning: arithmetic between floating-point type 'float' and enumeration type 'touchgfx::Rasterizer::<unnamed enum>' is deprecated [-Wdeprecated-enum-float-conversion] 518 | return Q5((int)(value * Rasterizer::POLY_BASE_SIZE)); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Could you possibly cast Rasterizer::POLY_BASE_SIZE to the static_cast<T> : static Q5 toQ5(T value) { return Q5(static_cast<int>(value * static_cast<T>(Rasterizer::POLY_BASE_SIZE))); } What do you think ?
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.