Not able to port TouchGFX generated code to STM32F429I Disc1 board.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2020-11-04 11:15 PM
We are able to run the TouchGFX code on target using TouchGFX 4.15.0 version.
When trying to port the generated to custom project created using STM32CubeIDE 1.4.2 version the display does not work.
I request correct configuration setting for display on STM32F429I Disc1.
Regards,
Rajesh K.
- Labels:
-
STM32F4 Series
-
TouchGFX
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2020-11-18 4:23 AM
I'm confused.
You can make it work using 4.15.0. What is it exactly? How did you come by that project? Application Template?
What is this "custom" project? Also created using touchgfx? By custom do you then mean custom hardware based on f429? Or what? Is the application running? Did your configuration code get executed?
Please add more details (also generally when you ask for help - it's impossible to help otherwise).
/Martin
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2020-11-18 11:03 PM
Hi Martin,
Thanks for your response.
We have tried two methods to use LCD available on evaluation board [STM32F429I Discovery].
Method.1: [Using Application Template]
- Open TouchGFX Designer [version 4.15.0] which is already installed in laptop.
- Choose application template for STM32F429I Discovery board
- Design UI screens to display on LCD and generate code
- Build the generated code using STM32CubeIDE [version 1.2.0] and run on the STM32F429I Discovery board
- We are able to view the UI screens on the LCD
Method.2: [Using Custom Template]
- Open STM32CubeIDE [version 1.2.0] which is already installed in laptop.
- Create project by selecting STM32F429I discovery board
- Initialize all peripherals to default state [FMC, DMA2D, LTDC, SPI5, I2C3]
- Add X-CUBE-TouchGFX.4.15.0 from additional softwares
- Configure parameters of TouchGFX Generator
- Open TouchGFX from STM32CubeIDE workspace and design UI screens
- Generate and build code. Run the code on STM32F429I discovery board
- We are not able to view the UI screens on the LCD
To summarize, Method.1 is working and Method.2 is not working.
We request the missing configuration setting in Method.2
Regards,
Rajesh K
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2020-11-19 1:46 AM
​Hi Rajesh!
The problem here is that when you select a board from cubemx/cubeIDE, you do not get any BSP - So, external flash / ram is not configured, for instance, just MCU defaults settings for controllers.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2020-11-19 1:47 AM
​That's why it works in TouchgFX - because we did that work.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2020-11-19 1:51 AM
Hi,
The application templates provided when you start a project from Designer has all the optimized configuration needed to start graphic projects on the boards. When you start from CubeIDE or CubeMX a project with the default peripheral state, it misses the extra hand written configuration code we provided, along other necessary configuration for external RAM/flash for example. If you compare for example TouchGFXHAL.cpp in the target folder of your project created from CubeIDE (method 2) and the same TouchGFXHAL.cpp in the target folder of the project created with an application template (method 1), you can see the extra user code added.
Why do you wish to start a project directly from CubeIDE ? I would suggest to start a project from the application template provided by TouchGFX Designer (method 1) and then add the extra settings (USB Host for example if needed) to this project. If you truly need or wish to do method 2, then you need to add manually all the additional hand written configuration code. All of this is available in the code of the method 1 project. Be also careful with the pin settings and clock configuration.
/Romain
/Romain
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2020-11-19 3:03 AM
Hi Romain,
Thanks for your feedback.
Using method 1, we are not able to configure other peripherals using STM32CubeIDE, because .ioc file is not generated. [Ex: If we want to generate UART code for serial communication along with TouchGFX code .ioc file is not available].
Using method 2, If we replace TouchGFXHAL.cpp generated using method 1, will it fix the issue ?
Regards,
Rajesh K.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2022-11-13 10:20 AM
Hello @Rajesh​ , were you able to fix this issue ? I am in the same boat as you were. Using Method-1, I am able to run the GUI and interact with my LCD, however this method doesn't generate an .ioc file. And with Method-2, I am unable to run/see the GUI.
This is issue is also related to following queries : https://community.st.com/s/question/0D53W00001TEO5eSAH/i-cant-import-project-from-touchgfx-to-cube-ide-stm429i-disco
I request assistance, @Martin KJELDSEN​ , @Romain DIELEMAN​ .
TouchGFX Version: 4.20.0
STM32CubeIDE Version : 1.7.0
Board : STM32F429I-DISC1
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2022-11-13 5:51 PM
Hi,
The TouchGFX Board Setup (new name for application template) for the STM32F429I-DISC1 available in TouchGFX Designer 4.20.0 does contain an ioc file if you navigate in your project's folder.
Concerning method 2, as we wrote above this is expected as you are missing all the custom code to configure the RAM, flash, touch controller etc.. (some are automatically done by TouchGFX Generator but some do require hand written code depending on your configuration). You can see this by comparing TouchGFXHAL.cpp for both method 1 and method 2 projects.
/Romain
