Discuss STM32 and TouchGFX implementations, including configuration, debugging, and optimization.
Most recent activity
HelloI am trying to encode an image of (160*120) in grayscale format - i.e a bmp file of 1bpp color depth.Unfortunately, the encoder would not finish its conversion. and the `HAL_JPEG_EncodeCpltCallback` is not called.My setup is based on the `JPEG_EncodingUsingFs_DMA` from ST, while this example is designed for 24bits pixel depth, I tried to modify it for my application - with changing the `ReadBmpRgbLines`to read only 1 color:static void ReadBmpRgbLines(FIL *file, JPEG_ConfTypeDef Conf, uint8_t * pDataBuffer, uint32_t *BufferSize) { uint32_t bytesReadfile = 1; uint32_t CurrentBlockLine = 1; *BufferSize = 0; while((CurrentLine <= Conf.ImageHeight) && (CurrentBlockLine <= MAX_INPUT_LINES)) { f_lseek (file,BMP_HEADER_SIZE + Conf.ImageWidth *(Conf.ImageHeight - CurrentLine)*1); f_read (file, pDataBuffer , Conf.ImageWidth*1 , (UINT*)(&bytesReadfile)); pDataBuffer += bytesReadfile; *BufferSize += bytesReadfile; CurrentLine +=1 ; CurrentBlock
Hi to all!,I try to run a Gui designed with TouchGFX on my hardware ( a Nucleo-F767ZI board and a 7" display with touchscreen).I have created a new c++ project for doing this and I have selected the LL implementations of the periphericals that i use in my project. The first issue that I have noticed are that all files generated have a .c and .h extentions. Also the code generated from the device configuration tool aren't in OO style, but are the standard c style, i don't see any object in this files.However the code generated by the TouchGfx designer are in the OO style.The problem now is that i need to call a c++ function from the c code (for example the OSWrappers::signalVSync function from my EXTI interrupt routine), and this cause some compile problems. At this point I don't know if I need to implements some wrapper module to call a c++ code or if I have done some error to configure the project.The TouchGFX documentation, don't tell nothing about this, so i'm expect
Hi ST,I have 1 problem when uses scrollList (or use scrollable + Listl ayout). I use a button to set visible scroll List to true. When not scroll, it works ok. But when i scroll, it can disable scroll List. Please tell me why?Thanks
I'm following this guide to creating a custom widget. Instead of any qr code logic, all I'm starting with is just drawing a solid color to the invalidated widget.void MyWidget::draw(const touchgfx::Rect& invalidatedArea) const { touchgfx::Rect absolute = getAbsoluteRect(); uint16_t* framebuffer = touchgfx::HAL::getInstance()->lockFrameBuffer(); for (int y = invalidatedArea.y; y < invalidatedArea.bottom(); y++) { for (int x = invalidatedArea.x; x < invalidatedArea.right(); x++) { framebuffer[absolute.x + x + (absolute.y + y) * touchgfx::HAL::DISPLAY_WIDTH] = 0xFFFF; } } touchgfx::HAL::getInstance()->unlockFrameBuffer(); }When I download and run the program, the area in which the widget is supposed to reside does not update when I enter the screen, instead it holds the image of the last screen. I also see three white boxes of interleaving white in a different part of the screen altogether.As an experiment, I attempted to draw a white 80
Hi. I generate a touchgfx project that toggle an led by pressing a button. the problem is trigger action by clicking button is randomly happen. the problem comes from that the touch function gets some touch sample and they slightly different .How do I fix this Issue?
I programmed stm32h7b3 kit with stm core code integrated with CMSIS rtos code and stm32h7xx_HAL_Driver with jumper on charging pin not on debug pin. After flashing screen is not powering up, Please help me in making the display work on stmn32h7b3-dk kit. I just brought the kit and tried to prgram the kit I am afraid the display has gone bad, I am a student I againa cannot invest money for the display please help me fix the problem. Please do the needful. Thanks and RegardsAbhijith N.M.
Hi Team I faced an issue while using STM32H7B3I-DK I connected it to the STMIDE programmer and flashed the code later i see that the display screen was not working I see that flashing the code has gone wrong I currenlty see only red led light blinkingCan you please guide me the right steps of bring my borad to normal where i get the default Display menu and also the step needed to test my code Can you help on the links where to downlaod the code for reflashing Does this need ST-Link Server or any other Programm IDE to flash this I have attched the board image of current state of the board
i've got a "low cost" dev board with STM32F429BI SOC and 5inch touch LCD, and i'm praticing with the current CubeIde 1.3.1 / TouchGfx 4.13 CubeMX framework.i followed the instruction for a new bring-up and they are pretty enlightning! the TouchGfx boys are pretty strong!I talked about the LCD/LTDC/DMA2D stuff here. Had an issues with the stability of internal Clock.Then I put in place a quick and dirty Touch screen driver for the LCD 5inch Goodix GT911 touch controller. The main issue here is that the Touch ctrl I2C port is connected to "generic pins" on the SOC so i had to copy/past the "bit banged" vendor provided I2C functions to make it work someway. now it's polled at each vert refresh, but supporting the Touch INT line would reduce a lot the burden. That's in my humble opinion the worst short-sight of this board.Finally, cleaned up a bit the src code for a first release.It works for me, and you cancompile/debug with CubeIde (last 1.3.0 updated online to 1.3.1)edit the CubeMX IO c
Hello Martin,My platform is stm32l4r7zi, which uses ltdc to drive 800 × 480 LCD in the way of rgb565 connection. Because the internal RAM (640kb) is not large enough for frame buffer, so I want to select 8bit color depth in the touch designer. Can this method be implemented? Does ltdc need to be configured in L8 format?Thank you.
..
Hi I'm trying to add a left and a right button to a scroll list. so the user can either scroll it, or change it with a button. I checked the ScrollList class and I could not found a function that helps me. Do somebody know how I can do it?Touchgfx 4.12.3
Hi allDoes an option exist, that the user can decide on the screen (by him selfe), which item he wants at first, second, ... position?Thank youRegards
The following upgrades for scrollers (bugs + performance) will be a part of the upcoming 4.14.0 release, but i'm publishing them here as a patch for 4.13.0 until then.http://sw-center-st-com.s3-eu-west-1.amazonaws.com/touchgfx/TouchGFX/Patches/4.13.0/Scrollers-update-for-4_13_0.ziptouchgfx\framework\source\touchgfx\containers\scrollers\ * ScrollBase.cpp * ScrollList.cpp * ScrollWheel.cpp * ScrollWheelBase.cpp * ScrollWheelWithSelectionStyle.cpp/Martin
Even though the error message in the Designer indicates that an image file name can begin with an underscore, the TouchGFX Designer is complaining about it:This might be something you may want to look into.
HelloMy setup contains an STM32H743 with a camera attached via DCMI interface.I am trying to acquire single snapshot, but unfortunately experiencing errors. I declared the following variable on my SRAM#define BUFF_SIZE (160*120) ALIGN_32BYTES(uint8_t frame_buff[BUFF_SIZE]);the variable is allocated in the AXI_SRAM region (0x240....)i also defined the MPU MPU_InitStruct.Enable = MPU_REGION_ENABLE; MPU_InitStruct.Number = MPU_REGION_NUMBER0; MPU_InitStruct.BaseAddress = D1_AXISRAM_BASE; // (0x24000000) MPU_InitStruct.Size = MPU_REGION_SIZE_512KB; MPU_InitStruct.SubRegionDisable = 0x0; MPU_InitStruct.TypeExtField = MPU_TEX_LEVEL0; MPU_InitStruct.AccessPermission = MPU_REGION_FULL_ACCESS; MPU_InitStruct.DisableExec = MPU_INSTRUCTION_ACCESS_ENABLE; MPU_InitStruct.IsShareable = MPU_ACCESS_NOT_SHAREABLE; MPU_InitStruct.IsCacheable = MPU_ACCESS_CACHEABLE; MPU_InitStruct.IsBufferable = MPU_ACCESS_NOT_BUFFERABLE;and the DCMI's DMA intialized with /* DCMI Init */ hdma_dcmi.Instance =
Hi all, After I have updated my STM32CubeMX to version 5.6.1, I noticed that there is no emWin in under Middleware category. Did ST remove the emWin support in STM32CubeMX? If anybody knows how to configure in STM32CubeMX, please help me to answer.
hi every one. I want to display the amount of ADC on the LCD. How can I show a variable value of ADC1ConvertedValue?now I can only display a character on LCD.i want to show: The ADC value is: (amount of the ADC Value)int main(int argc, char* argv[]) { ADC1ConvertedValue = ADC_GetConversionValue(ADC1); char Satz1[] = "ADC1ConvertedValue"; char Satz2[] = "Hello "; char Satz3[] = "This is a Test"; char Satz4[] = "Navid"; config_pin(); config_ADC(); lcd_init(); TIM3_Init(); lcd_set_font(FONT_FIXED_8, NORMAL_SIZE); lcd_moveto_xy(0, 0); lcd_put_string_length(FONT_FIXED_8, NORMAL_SIZE, &Satz1[0], sizeof(Satz1)); lcd_moveto_xy(2, 0); lcd_put_string_length(FONT_FIXED_16, NORMAL_SIZE, &Satz2[0], sizeof(Satz2)); lcd_moveto_xy(4, 4); lcd_put_string_length(FONT_FIXED_16, NORMAL_SIZE, &Satz3[0], sizeof(Satz3)); lcd_moveto_xy(7, 0); lcd_put_string_length(FONT_FIXED_8, NORMAL_SIZE, &Satz4[0], size
Hi guys,I'm taking my first steps in touchgfx library, so it is probably a dumb question.To understand how touchgfx works, I'm using a STM32F746G_DISCO.As first step, I opened the TouchGfx demonstration present in the STM32Cube repository. The project compiles (I use Keil as IDE) and works correctly.So, my next step is to understand how import the code generated by TouchGFX Designer in a custom project.I created a simple project on FreeRTOS (another blink LED project) and I use the TouchGFX Designer to design a simple gui. I had chosen STM32F746G_DISCO as Application Template, and after designing the interface - only a background image and a text box -, I clicked on Generate Code button.In the Keil Project I've imported the following folders: -TouchGFX/App-TouchGFX/generated-TouchGFX/gui-TouchGFX/target.I've also imported the touchgfx middleware present in the TouchGFX Designer project and added the "include folders" in the Keil Project.When I try to compile the code, the linker r
Hello,I am trying to interface ST7789 display with STM32F429 using RGB 565 interface.I have used the st7789 library from STM32F4 package \STM32Cube_FW_F4_V1.24.0\Drivers\BSP\Components\st7789.cBut this library has functions of SPI and I want to use LTDC to send data to LCD.In my board LCD is directly connected with LTDC pins of STM32f429 and also connected to SPI to configure registers.Regards,Manvendra
Hello,I want to add to my project some level indicator like battery level, wifi level, gsm signal rssi level etc.Is there a way to do it with touchgfx without add an image for each level?
Hi guys. I am new to STM32 MCUs and I need an advice on what couple of kits and compilers and IDEs is better for developing applications for STM32 MCUs that uses TouchGFX.I thought that STM32CubeIDE is the most straight way to do this, and I tried to begin with STM32CubeIDE 1.3 + TouchGFX 4.1. But when I create my first project in STM32CubeIDE using videos from youtube, my project doesn't wants to build, throwing a lot of errors like "touchgfx::Font - unknown definition..", etc.I made:1) Created empty STM32 project in STM32CubeIDE, specifying C++ radiobutton.2) Under "Additional software" i specified X-CUBE-TOUCHGFX... -> TouchGFX, checking then a "Graphics" checkbox in .ioc file.3) I made some settings at X-CUBE-TOUCHGFX.. panel in .ioc file (took on LTDC, Double buffering, acceleration using DMA2D, etc.).3) At TouchGFX folder in project tree i modified .part file using TouchGFX, creating primitive screen with a touch button and generating code in touchGFX designer.4) I've delet
Hello,STM32F429 drives a FT813 based LCD. LCD driver code is generated from Eve Designer code software.Sometimes the driver code hangs (suspect of an EMI issue)If I were using RTOS then I would put it in a seperate task and restart it if it hangs.Without using RTOS, what is the best way to recover from a function that hangs?I would prefer to not use a Watchdog timer, as the rest of the system is doing critical stuff.Best Regards
HelloI use STM32CUBEIDE.However, after creating a project using touchGFX, there is a problem accessing ioc files.There is a message that the version is low.Uninstalling and installing the program does not solve the problem.The program version is attached as a image.What is the solution?
Hello everyone,I am developing a project with STM32F767IGT, OV2640 and 7" TFT LCD.I have atteched my project files, and a video that shows the problem.The problem is, my video on the screen is shifting from left to the right on screen.I am using dma and not with fifo mode enabled. I am thinking that the problem is about ltdc.How can i solve the problem?https://www.youtube.com/watch?v=Lg-dBv7nXaohttps://www.youtube.com/watch?v=x0a3sQJRbe4In the video, you can see that when i move the camera, shifting is faster. And at the end of the video, somehow, video is frozen. I looked it up in the debug, and i saw that dma is stopped somehow. when i looked it up deeply, it see that dma error interrupt occured and it disables the dma.What is the problem here and how can solve it?
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.