cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F429i_DISC1 Tutorials with IAR and SW4STM32 Compilers (with TouchGFX & STM32CubeMX)

Mon2
Senior III

Hello. Here is the latest version of the tutorial with details of the procedure that is working for us after much trial & error:

< permanent link on our server >

https://axxonshare.s3.amazonaws.com/my_combo_tutorial.zip

Step by step procedure on how to integrate the STM32CubeMX tool with TouchGFX using the IAR and SW4STM32 compilers for the STM32F429i_DISC1 target hardware. With a working (resistive) touch panel.

Welcome all feedback.

1 ACCEPTED SOLUTION

Accepted Solutions
Mon2
Senior III

You are quite welcome. Looking forward to hearing that you are working. Honestly, would have gone Chucky doll crazy on the computer if I was working at this pace for months for a resolution.

You will soon find that it was the kooky file structure of the folders that messed this up badly.

View solution in original post

10 REPLIES 10
Clark Sann
Senior

Hello @Mon2​ 

Just a quick note to let you know your download link worked perfectly. I have your zip file consisting of a tutorials for SW4STM32 and IAR.

I am proceeding to create my SW4STM32 / STM32F746G-DISCO project using your tutorial. I may not be able to complete it tonight though and tomorrow is full. Worst case, I will complete testing on Monday.

Thanks in advance for your efforts!!

Mon2
Senior III

You are quite welcome. Looking forward to hearing that you are working. Honestly, would have gone Chucky doll crazy on the computer if I was working at this pace for months for a resolution.

You will soon find that it was the kooky file structure of the folders that messed this up badly.

Clark Sann
Senior

@Mon2​ 

Well, I followed your tutorial as closely as I could while ignoring the differences between our target platforms, and I still get the same errors. Unfortunately, even though you place the BSP files in different places than I did, it still does not build. In my opinion, you place the files in a more logical place (inside the target folder). I placed them inside the Project/Drivers folder.

Here is a screen shot that shows very what is going wrong.

0690X000006CuilQAC.png

The screen shot is pretty big. I will also attach it as a file.

I'm about ready to throw a brick into my computer screen and swear off computers and programming and specifically embedded programming, SW4STM32 and ST. HA! Not really. I consider this a challenge. Eventually I know it will work. I just don't know when.

Unless you can see something idiotic that I am doing, I will post this image into a thread I have already created on the OpenSTM32.com forum. They've all ignored my previous thread, but this image seems so easy to grasp, maybe someone will help now.

No, I was not working at this pace for months. I started experimenting with TouchGFX about the time they were purchased by ST. I used the Designer to create GUI and a basic ST project. But it was very difficult to build using an IDE. It as also difficult to integrate in my C program stepper controller code. TouchGFX was written in C++. This was before TouchGFX was integrated into CubeMX.

After a few weeks, I concluded that a TouchGFX project could not be built in SW4STM32, at least by me. At that time, the TouchGFX people kept saying on their forums that "It's straightforward, people are using various IDEs all the time to build their apps. But we don't know how they are doing it and we can't help." Anyway, after screwing around with it for weeks, I gave up and worked on other things. Lucky for me, I did not have a client that is hounding / suing me. This is all an educational activity for me at this point.

I didn't go back to the project until I saw that CubeMX came out with TouchGFX integration. I foolishly anticipated that would be the end of my troubles. I would just need to check a box saying "add TouchGFX", set a few parameters, and boom, CubeMX would take my previously prepared GUI and I'd have a project ready to integrate with my low level control code. That was certainly not the case. I bet it will be in the future.

I don't want to sound negative about ST or TouchGFX because I'm not. I'm frustrated because I want to get going on my testing and learning, but I'm not angry or negative. And I'm eager to get a return on my efforts after I find a client that can use my services.

I love what ST has done to make life easier for developers. CubeMX is amazing. And TouchGFX is the best GUI development tool around. I'm glad I found them. As far as I know, no other platform has tools like CubeMX or TouchGFX. Cube MX saves hours of developer time and TouchGFX makes it easy to create beautiful GUIs. Also their touch controller implementation is much more responsive than the others I tested. You probably know that the other GUI development tools are very expensive, as TouchGFX was before ST purchased them. Now it's included with CubeMX, which is free. You can't beat that. ST is doing an awesome job.

These problems are just speed bumps. Sooner or later, they will be fixed and those of us working with ST products will be far ahead of folks working with other platforms. I bet ST will dramatically grow their user base in the future.

Enough rambling, if you think of anything, please let me know. If I don't talk to you before, let me wish you a very Merry Christmas. And thanks again for you tireless efforts!

Mon2
Senior III

@Clark Sann​ , please confirm that you have ALSO copied the following 2 files:

stm32746g_discovery_ts.h

stm32746g_discovery.h

into your project's folder named target

This step is required even though you have already dragged & dropped the same files manually as can be seen by your file structure. Only then will the raised error be resolved.

Have not tested with the STM32746g_discovery kit but gathering in theory it should work.

Please confirm and update.

Mon2
Senior III

@Clark Sann​ , here is a complete project that is compiling for my side for the STM32746g_DISCOVERY target using the SW4STM32 compiler (TouchGFX & Touch Panel enabled). Have not tested on actual hardware which we believe to have in the lab at work.

Curious on your results after this review. Note the screen grabs for our working folder structure.

https://axxonshare.s3.amazonaws.com/my_stm32746g_disco.zip

Those two .h files were copied into the TouchGFX/target folder in Eclipse and using Windows Explorer. Here is the view from Windows Explorer. 0690X000006CukXQAS.png

@Mon2​ 

Your project builds! While the screen resolution is probably wrong for my target device and I can't see all the screen, the buttons that I can see do work! YIPPEE! HURRAH! MERRY CHRISTMAS!

I am out of time this morning, but either later today or tomorrow I will endeavor to determine what is different between your project and mine.

I'll keep you posted. And again, THANK YOU!

Mon2
Senior III

Wish to note that in all of the posted project solutions that worked for us, no path change was made inside any of the source code. Instead, the best resolution was to change the destination folders till the source code would compile as-is.

If practical, consider to install Teamviewer (free version is fine) and send the details for a quick remote review.

Be sure to have the latest STM32CubeF7 extracted to a local folder and also that the STCubeMX has the same latest release installed.

kumar[at]softio.com

0690X000006CukwQAC.png

BRAVO!!! That is what I was waiting to hear. My obsessive nature wanted a working solution. Excellent and keep everyone in the loop. Progress at last.

Merry Christmas to you as well!