My wife tells me that I have too many boards on my desk. That is only partially correct — there are many, but not too many. But I’m working on too many tasks, but that’s a different aspect. I’m using more and more the Kinetis SDK V2.0, and as a result of this, I have multiple SDKs installed on my machine. Because with the SDK V2.0 I get a download for each device/board installed (see “First NXP Kinetis SDK Release: SDK V2.0 with Online On-Demand Package Builder“). So my list of SDK folders is growing, as shown with the ‘New SDK 2.x’ wizard in Kinetis Design Studio:
The same time, the amount of free disk space is reducing. What if I could combine all these SDK’s?
With the previous SDK V1.x, there were multiple devices supported in one SDK folder. I understand that not everyone is using all devices so there were too many devices. And I think it is good to have just the devices in it which I want. So I was looking for a way to combine multiple SDK’s into one.
Checking the folder structure shows that they are very compatible: all the device specific folders are clearly separate.
So the idea is to merge the folders. So I have copied and merged the folders like this:
However, there is one file which would cause a conflict: the ksdk_manifest.xml in the SDK root folder:
This file is used by the KDS New Project wizard. First I was thinking to merge multiple manifest XML files, but actually, there is a much trick: rename the XML files.
The trick is to rename them to *ksdk_manifest.xml (change the thing in the front of the files):
Multiple Manifest Files
With this, I have a single folder with all the SDK’s in it, and it shows up as one in the wizard:
With this, I have all the devices combined:
It is possible to combine multiple SDK’s (at least it worked for me with the SDK V2.0 using the New SDK V2.x Wizard in Kinetis Design Studio V3.2.0:
- Build the V2.0 Kineits SDK on http://kex.nxp.com (I recommend to build them all on the same day with the same version, tool chain and host OS).
- Unzip them all into a single folder.
OK to overwrite folders/files, as shared files (FreeRTOS and others) should have the same version.
- Rename the ksdk_manifest.xml file. Change only the text at the beginning, not at the end of the file name.
- In the wizard, browse to that folder and use it as SDK root folder.
I have combined that way the SDK for K22F, K64F, K82F and KL43Z. This greatly reduced the number of files and space on disk needed:
- Separate SDK: 15’612 Files, 1786 Folders, 1202 MByte
- Combined SDK: 10’785 Files, 1244 Folders, 441 MByte