Discuss STM32 and TouchGFX implementations, including configuration, debugging, and optimization.
Most recent activity
Can I use FreeRTOS when using MVP?
I would like to use the Shape widget to essentially paint a masked image into a Dynamic Bitmap instead of the frame buffer. It looks like the painters are written for the frame buffer as the target.One reason I want to do this is to reduce the number of alpha blends by blending parts of a number of images into one Dynamic Bitmap which I can then store into one Image widget on the display as a background. This would significantly improve animation performance. I need to use a Dynamic Bitmap because the background needs to be able to be determined at run time.I have been writing my own code to add images as well as parts of images into the Dynamic Bitmap, but am wondering if it is possible to use images masked by the Shape widget to accomplish this?I know I can place Shapes and other widgets on the display, and copy the frame buffer to a Dynamic Bitmap. I am looking for a way to do this without needing to place them on the display first.
HelloTouch controllers vary depending on the LCD panel.It seems that the controller called FT6206 is used in STM32F769I-DISCO.If I use another controller, do I have to create the driver software from scratch?What should I refer to?Thank you.
I'm using NUCLEOL053 with a customize Segment LCD. LCD Segments work with 2.7v and for that i was not able to use other contrast output levels from lcd driver. I also tried using PULSE_ON duration and DEAD_TIME attributes but it was not helpful either and could not get the desired contrast level.I'd be really glad if someone help me.Thank you in advance.(I apologize if i'v asked my question in wrong category)
I think it is 0.8mm but want to make sure.
Hello I have STM32H747I_DISCO board. I can use and program the MCU in it from the STM32Cube ide (such as LED Blinking etc.). Also I can show some simple things on the display on it by using Touch GFX Designer application. But when I program the MCU after that when I insert Touch GFX output into the board, led blinking disappers and I can only use display. So I need a way to use Touch GFX in STM32Cube ide. Is there a way to do it? In CubeMX there is no Graphics option in Middlewares. I believe that is where you enable the Touch GFX. How can I enable and use it? Thanks beforehand.
Hello,I would like to implement TouchGFX on a custom board equipped of a STM32L4R9 microcontroller, but I can't find the TouchGFX framework neither on the CubeMX interface nor on the CubeIDE interface, at the topic "MIDDLEWARE/GRAPHICS ..."Please help for implentation !And yet, ST Microelectronics clearly mentions that Touch GFX is supported on STM32L4+ family.It's not very friendly for the developpers to observe that the "marketing speech" doesn't match the "technical" one !!Please update CubeMX and/or CubeIDE to be able to use the FULL TouchGFX functionalities on STM32L4+ microcontrollers family.Thank you.
Hello.Im trying to flash evaluation board STM32H743I-EVAL with help of touchgfx designer 4.10.0.In the simplest case i create project with application template ST STM32H743I EVAL and without any elements (no backgrounds, buttons etc.).But when i try to flash (button "run target"), i havethis:make -f target/gcc/Makefile -j10 flashAn error occured during flash. Please make sure you have the right target connected.Converting imagesSTM32 ST-LINK CLI v3.3.0.0STM32 ST-LINK Command Line InterfaceST-LINK SN: 0672FF323338424E43254935ST-LINK Firmware version: V2J32S22 (Need Update)Connected via SWD.SWD Frequency = 4000K.Target voltage = 3.2 VConnection mode: NormalReset mode: Hardware resetDevice ID: 0x450 Device flash Size: 2048 KbytesDevice family: STM32H7xxLoading file...Flash Programming: File : build/bin/target.hex Address : 0x08000000The elf loader file is not accessible.MCU Reset.target/gcc/Makefile:389: recipe for target '_extflash_' failedmake[1]: *** [_extflash_] Error 12target/gc
I have successfully logged in and when I am trying to view certain pages related to the TouchGFX I get an error "Not Authorized to View Page". I was able to view the Hardware selection guide a few weeks back and all of a sudden I am getting this error. Here is an example of the error when accessing this page: https://touchgfx.zendesk.com/hc/en-us/articles/204993902-Porting-to-STM32F4-F7-boardsThanks,Yogesh
I apologize if this is a very simple question, but I can't seem to figure out how to change the color of a Circle in my TouchGFX project.I know that for a Box, I can do something like...box1.setColor(touchgfx::Color::getColorFrom24BitRGB(0, 0, 255)); box1.invalidate();I would like to do the equivalent but for a Circle, however there is no setColor() method.I understand that Circles have something called a painter, which allows me to do...circle1Painter.setColor(touchgfx::Color::getColorFrom24BitRGB(0, 0, 255);...but I do not know how to re-draw the circle with the updated painter.I've tried...circle1.setPainter(circle1Painter); const Rect rect(0, 0, circle1.getWidth(), circle1.getHeight()); circle1.drawCanvasWidget(rect); circle1.invalidate();but this did not work.I appreciate any advice you can provide.
Hello I am really new to both C++ and Touch GFX and trying to put a click listener to scrollWhell so that user will be able to go to chosen screnn from the scrollWhell. This is my MenuView.hpp:public: . . . void ScrollWheelClickHandler(const ScrollWheel& b, const ClickEvent& e); protected: . . Callback<MenuView, const ScrollWheel&, const ClickEvent&> ScrollWhellClickedCallback;And this is my MenuView.cpp:MenuView::MenuView() { ScrollWhellClickedCallback(this,&MenuView::ScrollWheelClickHandler){} } void MenuView::setupScreen() { . . scrollWheel.setClickAction(ScrollWhellClickedCallback); } void MenuView::ScrollWheelClickHandler(const ScrollWheel& b, const ClickEvent& evt) { if (&b == &scrollWheel) { //bla bla } }But the compiler gives an "call of an object of a class type without appropriate operator() or conversion functions to pointer-to-function type" error. In the l
Hej Hej,Since I upgrated my project from version 4.12 to 4.13, the simulator won't launch anymore (the project was initially created with TouchGFX 4.10). VS throws two error msgs :1) unresolved external symbols void __cdecl touchgfx::simulator_enable_stdio(void) in the function void __cdecl touchgfx_enable_stdio(void)2) unresolved external symbols void __cdecl touchgfx::simulator_printf(char const*, char*) in the function void __cdecl touchgfx_printf(char const*,...)It seems it's related to a known issue but my project does use HALSDL2 and the functions mentioned in the joined article are present in the HALSDL2.cpp file so the problem stems from somewhere else. How can I solve it?I'm sure it's trivial but any guidance would be more than welcomed.Thanks in advance.
Getting started with STMcubeIDE version 1.2 I had problems with not having access to the graphics settings to configure TouchGFX.In this way I upgraded STMcubeMX to version 5.5.0. And I also installed the X-Cube-TouchGFX on it.But on both STMcubeMX and STMcubeIDE I still have trouble accessing graphics settings in Middle ware.
Hello, I have a few questions about the subject.Suppose you use a display TFT with a controller any as ILI9341 or ST778 320x240 256k color 8bit interface or SPI. with STM32F427.The first question concerns how to connect the LCD to the MCULCD support Intel 8080 and Motorola 6800 modes 8/16 bit LCD parralel interface and 4 line SPI too. MCU have Flexible memory controller with support LCD paralel interface. Which interface to use for LCD to MCU connection? 8bit paraller or SPI? In other words, in terms of display speed or STemWIN, does the 8bit interface bring any advantages over SPI?MCU include Chrom-ART Accelerator, is this hardware accelerator supported by STemWIN?Generally, i also have an MDK-ARM that contains emWIN, is there any difference between emWIN from Segger in MDK-ARM and STemWIN? Clearly STemWIN is probably limited to ST products, but besides.Is there any sample project to connect LCD (with integrated LCD controller) to STM32F4?
With the newest version V1.6.0 of stm32cube the call to BSP_LCD_InitHDMI() cause a TIMEOUT while calling to HAL_DSI_Init() waiting for the flag DSI_FLAG_RRS. In Version V1.5.0 the example" JPEG_DecodingFromFLASH_DMA" was running without errors
HelloI bought an Stm32f769-disco board to evaluate the STM32F7 and I'd mike to go forward on my design...On the board you have a 4" Mipi Dsi display and I would like to implement a 7" mipi display.The problem that i found is that most ipi display on the market have 4 serial lines D0 D1 D2 and D3The LTDC drive on CPU only provide D0 and D1 lines.How can i make it compatible with other displays??Thanks for your answer
HI, I am using a custom board with STM32F429IGT, and 480X272 TFT screen which are wired to LTDC Pins . The TFT part number is K430WQA-V4-F.I built a Project using CubeMxVer 5.1 and Touchgfx Ver 4.1. Compiled and downloaded the code in the board after removing the simulator files in the code.In the Touchgfx ,made a application with two screens each having one image ,which toggle every 1 sec.When , I run the code, the display is blank.The Touchgfx is not updating the screen and toggling the screen. The hardware is working good . I checked this by manually updating the framebuffer start address in the HW_Init.cpp file to a picture address i used in the touchgfx application. But if i keep the Framebuffer start address as 0x0000000 in the cubemx and generate the file again , the screen is blank.Dont know what is missing
Hi,I use the .ioc file in STM32F746-DISCO v.3.0.0 project, import it to CUBE IDE and used the option to create a project form ioc file. But even i compiled and run in in stm32f746 board, nothing happens. Any reason for this, or whats the fix. My end goal is to make it compatible with a display of 800x480.
Hello, I cannot run target nor run the simulator eventhough I can debug the solution file from VisualStudio. There are no errors in the VisualStudio. So what might be the reason behind that? Detailed Log is showing tons of errors and failures. Here is the TouchGFX Designer Output: (It is too long so I put last lines of it.)gui/include/gui/model/Model.hpp:15:19: error: '_int16' has not been declared void saveHour(_int16 saveHour) ^~~~~~ gui/include/gui/model/Model.hpp:20:21: error: '_int16' has not been declared void SaveMinute(_int16 saveMinute) ^~~~~~ gui/include/gui/model/Model.hpp:24:5: error: '_int16' does not name a type _int16 getHour() ^~~~~~ gui/include/gui/model/Model.hpp:29:5: error: '_int16' does not name a type _int16 getMinute() ^~~~~~ gui/include/gui/model/Model.hpp:37:5: error: '_int16' does not name a type _int16 hour; ^~~~~~ gui/include/gui/model/Model.hpp:38:5: error: '_int16' does not name a type _int16 minute; ^~~~~~ gui/include/gui/model/Model.hpp
I want to start with TouchGFX, but I see too much people in this forum struggling to do a basic project for a development boards from ST. I imagine how hard it should be a custom board.Has ST plans to release a basic step by step tutorial showing how to do a basic project for the STM32F746G Discovery board?
Hi!I have a STM32 F446RE Nucleo board and that bord have DCMI included.I wonder if I only need to connect the OV2640 camera module to the GPIO's of F446RE and then I'm done?Or do I need to write some more code?Where do I start?The only information I found about OV2640 is herehttp://pcbartists.com/design/imaging/stm32-ov2640-camera-interfacing/Picture:Does this mean that I only need to connect the DCMI pins to the camera + I need to connect the I2C pins to the camera as well?Then I only need to write the I2C commands that can be found inside the data sheet of the camera module?http://pcbartists.com/wp-content/uploads/2019/06/Reference-1-OV2640-datasheet.pdfI assume that the picture will be like an array or something of 32 bit uint?Or will the data be a struct?
I have switched from TouchGFX 4.12 to the latest 4.13.0.At the TouchGFXGeneratedHAL.cpp, I found a following line in the void TouchGFXGeneratedHAL::initialize() function.uint32_t frameBuf[(800 * 480 * 2 + 3) / 4] LOCATION_ATTRIBUTE("TouchGFX_Framebuffer"); (The actual number of allocation is depends on LCD width, height, and bit depth)This is not in the old version, for example at the file, STM32H7HAL.cppSince the allocation uses too much RAM, I am facing linker error.Are there any ways to fix the problem?
How to use TouchGFX to make the button change textu color from green to red each time it is pressed?
Hello I cannot see an option to enable advance graphics in STM32CubeMX in order to use TouchGFX. (In order to see graphics windown in middleware.) In the new update log it was written that they no longer support TouchGFX and Stemwin. Is it the reason that we can no longer enable advanced graphics in board selector window?
Posted on October 18, 2017 at 15:55Dear community,I got the following statement from the reference manual for STM32L496 (RM0351) and it confuses me;This interface is for use with black & white cameras, X24 and X5 cameras, and it is assumed that all preprocessing like resizing is performed in the camera module.So does this mean this interface was not meant for color cameras? I mean it supports RGB and YCbCr, why does it have this statement?Can someone please clarify this for me?ps: I was planning to use an OV5640.Best Regards,Mete#stm32l4 #stm32l496ae #stm32l496 #dcmi #camera
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.