2019-09-25 12:03 PM
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?
2019-09-27 07:24 AM
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
2019-10-01 05:47 AM
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:
2019-10-01 06:19 AM
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
2019-10-01 07:03 AM
@Martin KJELDSEN Actualy 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.
2019-10-01 09:15 AM
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!?
2019-10-01 11:41 PM
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.
/Martin
2019-10-02 08:33 AM
@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.
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...
2019-10-04 08:31 AM
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.