cancel
Showing results for 
Search instead for 
Did you mean: 

[Question] How to configure cubeMX for touchgfx and supplemental touchscreen MB1315A on a STM32L4R9I-EVAL?

Frebreezy
Associate II

Hi,

I'm absolutely failing to deploy a successful touchGFX UI on the MB1315A . I can get a touchgfx example deployed on the onboard 390x390 LCD. However, in order to deploy to alternative screens, the documentation says to go through CubeMX.

And so I went through cube MX. I setup the touchGFX generator, freeRTOS, and LTDC, and all other HW components, but it still fails.

I was following this documentation to try and deploy the touchGFX application.

However, the touchGFX generator throws an error/warning surrounding the parameter settings of the LTCD.

I have additional questions surrounding the configuration of the LTDC. Based on the documentation for setting up the MB1315A, I can't find a setting about the MFX_GPIO_11/12.

I also have no idea what to set the RCC, SYS, TSC, and I2C2 values to. I have attached my current .ioc file so one may examine, laugh, and help =)

Overall, I need a successful .ioc file which can deploy on STM32L4R9I-EVAL and the supplemental touchscreen MB1315A.

Needs

  • FreeRTOS
  • TouchGFX

If there is an example application that meets all of these needs, I would be extremely grateful.

Much appreciated

3 REPLIES 3
Romain DIELEMAN
ST Employee

Hi,

I can maybe point out that the STM32H7B3dk board uses the same MB1315A display, so you could have a look at the application template for that board available in TouchGFX Designer and use it as source of inspiration for your settings + touch controller configuration.

If you started from the application template for the STM32L4R9-eval from TouchGFX Designer, you should pay attention to remove the GFXMMU settings as they are meant to be used for a round display configuration.

For the error states "Width/Height values must equal LTDC Window width/height", well you can fix it by setting them to the same thing 😅. It should be under the "LTDC" settings, in the "Layer Settings" tab. Make sure the framebuffer and the windows position settings are the same for the height and width.

/Romain

Frebreezy
Associate II

Hey Romain,

Thanks for your feedback.

I was able to resolve all of the dependency issues between the LTDC, DMA, and FreeRTOS. But I still am not able to successfully run LTDC graphical renderings on the touchscreen.

I greatly simplified the program and took it back to basics. I dropped: touchGFX, freeRTOS, DMA2D, everything but the LTDC controller. But the LTDC controller is still NOT working when generated from a .ioc file and working from the datasheet. Currently, the screen initializes to completely white despite having a framebuffer of a picture.

I am able to compile and run a LTDC example from the STMicro examples folder for the L4R9.

When it comes to my .ioc I know that certain hardware settings are correct because I have transplanted the init code from mine to the example, and the example still works. However, others must not be!

  • LTDC init code
    • Passes
  • RCC and clocks
    • Passes
  • I2C2 - Trigger backlight
    • Passes

I am very concerned about the GPIO init process generated for my main.c. The example provides no code information about their GPIO.

  • Mostly concerned with the i2c expander GPIO that might not be triggering correctly (Pg. 45 as stated earlier):
    • MFX_GPIOI11
    • MFX_GPIOI12
  • I don't know how to find out their gpio init process and translate it into .ioc configuration -> my main.c

I have attached my entire project. But I would be eternally thankful if someone could peek at the .ioc and main file and tell me what I am doing wrong.

I have also used the following resources to try and learn more already:

Frebreezy
Associate II

I forgot the attachment and couldn't find an edit button for attachment, so here it is!