cancel
Showing results for 
Search instead for 
Did you mean: 

STM32CubeIDE with TouchGFX and STM32F469i-Discovery. Problem with GUI upload.

Fab_0815
Associate III

I try to setup a GUI with the new CubeIDE and the TouchGFX confugurator.

After 3 days of trying and solving errors (thanks to this tutorial: https://www.youtube.com/watch?v=VOs2LYO7wSA&t=119s) I am now able to build my program.

The problem i have now is, that I am not able to upload the GUI to my discovery-board.

I build my program and debug it as an STM32 Application but my screen remains black.

Is there anybody who can support me?

8 REPLIES 8
Martin KJELDSEN
Chief III

Hi @Fab_0815​,

Most likely the DSI configuration is not completely right. If you check the configuration from the 469i-DISCO Application template from the TouchGFX Designer you can maybe compare the configurations. CubeIDE/CubeMX do not know the preferred setup for TouchGFX, so this is a manual thing for the user to do/validate.

Let me know how you do.

/Martin

Fab_0815
Associate III

Thanks @Martin KJELDSEN​  for your response!

Today I had again some time to work with the board.

I found a mistake in the BoardConfiguration.cpp. The size of the display wasn't correct. But this did not solve my problem.

You said I have to look for the DSI configuration?

Sorry for the question, but where can I find it?

I work for the first time with such an MCU. It is for a student-project I have to do this week.... :grinning_face_with_sweat:

Martin KJELDSEN
Chief III

If you create an application using the TouchGFX designer and select the stm32469i-disco board you'll find it in BoardConfiguration.cpp, i think. Try comparing that what what you've generated from CubeIDE/MX.

/Martin

Fab_0815
Associate III

@Martin KJELDSEN​ 0690X000009jtzeQAA.pngActualy I created my project with STM32CubeIDE. I selected the 469i-disco board.

Out of the IDE I started the touchGFX to create my GUI.

Now i tried to start touchGFX again to configure my GUI. Unfortunately I am now not able to generate code.

I have a feeling I'm basically doing something wrong in my dealings.

Fab_0815
Associate III

Okay, I'm starting to get really clueless.

I tried to set up a project with touchGFX.

I was able to upload the GUI to the board without any problems.

Parallel i started a new STM32F469i-Discovery project in my STM32CubeIDE.

I copied the touchGFX project in my STM32CubeIDE project and configered the graphical interface in my IDE.

Again i was able to compile my project.

But the screen still remains black.

Where could now be the configuration problem?!

Now should everything be configured for my discovery board, or am I wrong!?

Martin KJELDSEN
Chief III

Hi @Fab_0815​,

The current versions of CubeIDE + TouchGFX are not stable. What you're missing is actually a patch to the project updater (since TouchGFX Project updater does not understand CubeIDE projects - Notice how it is the post generation that fails. It actually patches the CubeIDE project file - .cproject. Currently, it thinks the project is Atollic/AC6).

Download this gem, open your TouchGFX environment and type "gem install touchgfx-cli-4.10.1.gem". This will give you a new version of the gem that understands CubeIDE project files.

http://sw-center-st-com.s3-eu-west-1.amazonaws.com/touchgfx/TouchGFX/Evaluation/4.10.0/touchgfx-cli-4.10.1.gem

/Martin

Fab_0815
Associate III

@Martin KJELDSEN​ 

Alright, TouchGFX is now working again.

Thaks for that advice!

Okay, they are actualy not stable. Do you have a suggestion when a stable version will be published?

We planned to use this software-combination in our university.

Now again to the basic problem.

I found a window with some suspicious parameter.

The physical display size is wrong, but i am not able to change the value?!

Futhermore, what about the Display Interface?

Is the Setting 'Display Serial Interface ....' correct?

Maybe take a look at the attached config.

 0690X000009jxLYQAY.png

EDIT:

By the way:

I updated the BoardConfiguration and the SystemClock_Config in my IDE Project.

Updated code: 

RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE;
    RCC_OscInitStruct.HSEState = RCC_HSE_ON;
    RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
    RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
    RCC_OscInitStruct.PLL.PLLM = 25;
    RCC_OscInitStruct.PLL.PLLN = 360;
    RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2;
    RCC_OscInitStruct.PLL.PLLQ = 7;
    RCC_OscInitStruct.PLL.PLLR = 6;

  hltdc.Instance = LTDC;
  hltdc.Init.HSPolarity = LTDC_HSPOLARITY_AL;
  hltdc.Init.VSPolarity = LTDC_VSPOLARITY_AL;
  hltdc.Init.DEPolarity = LTDC_DEPOLARITY_AL;
  hltdc.Init.PCPolarity = LTDC_PCPOLARITY_IPC;
  hltdc.Init.HorizontalSync = 1;
  hltdc.Init.VerticalSync = 1;
  hltdc.Init.AccumulatedHBP = 2;
  hltdc.Init.AccumulatedVBP = 2;
  hltdc.Init.AccumulatedActiveW = 802;
  hltdc.Init.AccumulatedActiveH = 482;
  hltdc.Init.TotalWidth = 803;
  hltdc.Init.TotalHeigh = 483;
  hltdc.Init.Backcolor.Blue = 0;
  hltdc.Init.Backcolor.Green = 0;
  hltdc.Init.Backcolor.Red = 0;

But the problem remains the same...

Fab_0815
Associate III

I got it finally!

I found this post: https://community.st.com/s/question/0D50X0000Avh5Nq/stm32cubeide-touchgfx-configuration-on-32f469idiscovery

Thanks to the community member SbubaBoy who published this git repository: https://github.com/Scubaboy/SMT32F7LCDDisco/tree/master/STMF4DISCOCubeIDE

I checked every configuration of my project and adjusted the necessary ones.