cancel
Showing results for 
Search instead for 
Did you mean: 

How to migrate from STM32F746G-DISCO to STM32F469I-DISCO ?

Uwe1
Associate II

I have a working prototype based on a STM32F746G-DISCO utilising TouchGFX. Since I need to control a stepper motor I have a nucleo-ihm02a1 shield connected to the discovery board. I'm using the X-NUCLEO-IHM02A1 drivers, which I have ported to fit the STM32F746G-DISCO board.

Now everything works fine. My TouchGFX environment consists of 5 pages with a lot controlling/displaying elements.

Now I want to port the project to a STM32F469I-DISCO board, because of the very nice display and the small board dimensions. Both boards are supported by TouchGFX.

Is there a preferred or suggested way to do such a migration of the TouchGFX environment? Of course the HW based drivers/environment need to be adapted by me. But is there a possibility to "save" my TouchGFX pages with all control and display elements? Of cource I need to reposition or resize the elements. But I could do that one after another and not create everything from scratch.

Would it work to create a new project for STM32F469I-DISCO and copy the TouchGFX related part (e.g. the TouchGFX config file) and generate the source from that and push the non-generated TouchGFX sources into the new project?

Thank you very much in advance!

Regards,

Uwe

1 ACCEPTED SOLUTION

Accepted Solutions
Martin KJELDSEN
Chief III

Hi @Uwe​!

The way to migrate your UI to a different board is to create a new application using the STM32F469i-DISCO board application template and then importing your UI (There's an option to do this from the main menu: "Edit" -> "Import GUI") by pointing to the .touchgfx file for the STM32F746G-DISCO project.

If the designer won't allow you to import it due to the dimensions being different, simply modify the dimensions of your STM32F746G-DISCO .touchgfx file to 800x480 (Near the bottom of the file).

Now you're left with an 800x480 canvas with an application that only takes up 480x272 so now you have to work to make it fit your new dimensions, and that's basically what you have to do.

Hope that helps!

Best regards,

Martin

View solution in original post

9 REPLIES 9
Clark Sann
Senior

I’ve done something similar to what you describe. I typically work in OSX but the TouchGFX designer is windows only. So I create the TouchFGX project in a VM and copy the project to OSX for further editing. I find I can readily copy TouchFGX folders from one OS to the other. Hopefully ST will one day port the TouchGFX designer to OSX but until that happy day arrives, I have a workaround.

I am also using the IHM02A1 board with my TouchGFX project. Would you be interested in sharing code?

Martin KJELDSEN
Chief III

Hi @Uwe​!

The way to migrate your UI to a different board is to create a new application using the STM32F469i-DISCO board application template and then importing your UI (There's an option to do this from the main menu: "Edit" -> "Import GUI") by pointing to the .touchgfx file for the STM32F746G-DISCO project.

If the designer won't allow you to import it due to the dimensions being different, simply modify the dimensions of your STM32F746G-DISCO .touchgfx file to 800x480 (Near the bottom of the file).

Now you're left with an 800x480 canvas with an application that only takes up 480x272 so now you have to work to make it fit your new dimensions, and that's basically what you have to do.

Hope that helps!

Best regards,

Martin

Uwe1
Associate II

@Clark Sann​ Thank you!

Of course we could share our code. Maybe via PN ?

Uwe1
Associate II

Hi @Martin KJELDSEN​ !

thank you very much for your hint. Is was very easy to import the "old" UI into the new new project.

Of course there is now a lot of work with adapting the UI regarding the different screen resolution. But that is ok.

But what I have observed is, that the directory structure between STM32F746G-DISCO and STM32F469I-DISCO is quite different. For comparision purposes I have created the simple ButtonExample for both HW platforms. In STM32F746G-DISCO platform it is more in the CubeMX style and there I have the possibility to do modifications with CubeMX tools. In STM32F469I-DISCO the platform/target related part seems not generated by CubeMX and is inside the TouchGFX source tree.

I my opinion the CubeMX style is more flexible and compatible. Is it planned to change the project structure for STM32F469I-DISCO in the future?

Thank you very much!

Best Regards,

Uwe

Martin KJELDSEN
Chief III

Hi @Uwe​,

Glad the import worked for you. Yes, now you just need to rework the application a bit.

You'll notice that the version of the application template for STM32F746G-DISCO is version v2.0.0 and for the STM32F469I-DISCO is v1.0.0. Version 2.0.0 is indicative of whether or not it's been upgraded to be based on CubeMX - So, you'll have an .ioc file in there.

And funny you should ask, but i'm planning to do the STM32F469I-DISCO CubeMX upgrade for the Applicaton Template in the coming sprints =)

Best regards,

Martin

Uwe1
Associate II

Hi @Martin KJELDSEN​ ,

thank you for your information.

Maybe I will do a migration from my 2.0.0 template based project to a 1.0.0 project. Modifying the CubeMX config is nice to have and currently not really needed for me. I hope I can migrate into the 1.0.0 structure. Since I additionally need only SPI interface and some GPIO pins .... this can be configure "by hand". 😉

Or does it make sense to wait for your template upgrade?

Thanks a lot for your support!

Btw, your good video tutorial (hw integration on STM32F769) as well as a STM workshop in Munich (April 2017) with Jorgen Mygind were very helpful for me and the reason using TouchGFX. Very good tool! 👍

Best Regards,

Uwe

Martin KJELDSEN
Chief III

Hi @Uwe​,

I'm not sure how fast i can get the work done due to other pending tasks, so i'd say use the current application template for now. You could always create a CubeMX project with the required SPI changes and import the changes manually. The structure is a bit different, as you know, but both projects will be based on the Cube driver packs.

It should be easy to migrate at a later point when the new AT is out.

I'm very happy you found the video and workshops helpful! 🙂

Best regards,

Martin

Uwe1
Associate II

Hi @Martin KJELDSEN​ ,

ok, thank you! To have a faster progress in my project I will start the migration today and will upgrade later, when you have released the new template.

Again, thank you very much for you support!

Best Regards,

Uwe

Martin KJELDSEN
Chief III

@Uwe​, you're very welcome!

Don't hesitate to ask if in doubt about anything else. I'll see if i can remember to ping you when the new package is ready.

Best regards,

Martin