Over a million developers have joined DZone.

Combining Multiple NXP Kinetis SDKs Into One

This article takes a look at one way to combine multiple NXP Kinetis SDKs into one so you can free up some space.

· IoT Zone

Access the survey results 'State of Industrial Internet Application Development' to learn about latest challenges, trends and opportunities with Industrial IoT, brought to you in partnership with GE Digital.

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:

Multiple Kinetis SDKs
Multiple Kinetis SDKs


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.

SDK Folder Structure

SDK Folder Structure


So the idea is to merge the folders. So I have copied and merged the folders like this:

Merged SDK V2.0

Merged SDK V2.0


However, there is one file which would cause a conflict: the ksdk_manifest.xml in the SDK root folder:

ksdk_manifest.xml fileksdk_manifest.xml file


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 FilesMultiple 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:

Single SDK Root Folder
Single SDK Root Folder

With this, I have all the devices combined:

Combined SDKs
Combined SDKs


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:

  1. 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).
  2. Unzip them all into a single folder.

OK to overwrite folders/files, as shared files (FreeRTOS and others) should have the same version.

  1. Rename the ksdk_manifest.xml file. Change only the text at the beginning, not at the end of the file name.
  2. 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

Happy Combining!

The IoT Zone is brought to you in partnership with GE Digital.  Discover how IoT developers are using Predix to disrupt traditional industrial development models.

Topics:
folder ,folders ,kinetis ,sdk ,wizard

Published at DZone with permission of Erich Styger, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

The best of DZone straight to your inbox.

SEE AN EXAMPLE
Please provide a valid email address.

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.
Subscribe

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}