cancel
Showing results for 
Search instead for 
Did you mean: 

How to merge 2 projects, linked to two different boards mounted on the same Nucleo ?

richardson ralambo
Associate
Posted on May 15, 2018 at 12:00

Hello,

We are a team of engineering students working on a project using STM32 technology and support.

Firstly, the Main subject of this topic is based on the problematic : How to merge 2 different projects ?

Next of this problematic, there is the question: Why did you get 2 different projects ?

So, the idea was : Use two expansion boards on our nucleo card (NUCLEO-F401RE) to do these actions :

- get info from NFC Tag with the module X-NUCLEO-NFC05A1

- Connect a wifi network and send this info to a server with an HTTP request, help by the module X-NUCLEO-IDW04A1 (to be able to connect a WPA2-enterprise wifi network)

Based on that, we have worked sequentially on the NFC part, then on the WIFI/HTTP request part.

And to use these modules correctly, we have started our work on existent projects recommanded for each of this expansion board. These embedded softwares are:

- X-CUBE-NFC5 (

- X-CUBE-WIFI1

Therefore, we have modified separetely each code of these projects to match our recquierements, and each of them works fine.

However, it's time to finalize this projet and that means to merge our two different projects .But how it is possible to do that correctly ?

We are affraid by a problematic linked to the pin's configuration, quite different between the two projects. How correct this part ? There is also a problem to centralize all Libraries, sources ... recquired by the two projects.

And may be other problematics that we don't have seen yet.

What is the best solution to merge our 2 projects to let our two expansion boards work normally on our Nucleo ?

There is an other way to realize all of that without loose much time on this ?

#x-cube-wifi1 #x-nucleo-idw04a1 #x-cube-nfc5 #x-nucleo-nfc05a1
2 REPLIES 2
Posted on May 15, 2018 at 12:35

Are you familiar with WinMerge or more advanced tools like Araxis Merge?

My general approach to these things is to try order things so the code construction is similar between the two projects, this might mean refactoring some subroutines.

Pick one project as dominant. Typically the largest or most complex one, so you can merge in the less difficult one. Do it in steps.

Do the merge in pieces, starting with the whole files you can take, and the ones with the least dependencies. With the call trees start with the leaves (stand-alone subs with no dependency) and work back to the trunk. This way you can do incremental builds to fix issues before error list becomes overwhelming.

For board stuff focus on clocks, pins and peripherals, do the initialization stuff, checking you don't break functionality. Where you don't have all the pieces merged in you can #ifdef/#endif around things you have not fully transitioned yet.

Tips, buy me a coffee, or three.. PayPal Venmo Up vote any posts that you find helpful, it shows what's working..
Posted on May 15, 2018 at 16:52

We know WinMerge, good soft to compare two files quickly and simply,

We will try to apply your advices, thank you very much for your help

We will keep this topic update with the issues and their solutions if there is any during the process,