Adding CMSIS-SVD Files to EmbSysRegView 0.2.6.r192 and Eclipse

In “EmbSysRegView 0.2.6 for Eclipse Neon and Oxygen” I have described how to add CMSIS-SVD register detail files to Eclipse using the EmbSysRegView plugin.

But what I need to add vendor or any other SVD files to it? Here is how:

EmbSys Registers View

EmbSys Registers View

CMSIS-SVD Files

With the installation method described in , all the data comes in a large .jar file inside the plugins folder:

org.eclipse.cdt.embsysregview.data_0.2.6.r191.jar

org.eclipse.cdt.embsysregview.data_0.2.6.r191.jar

A .jar file is nothing else than a .zip archive file, so I can open the file as any other .zip file:

Content of Jar File

Content of Jar File

So the approach is to add extra SVD files (extension .xml) to that structure and .jar file.

Kinetis Design Studio 3.2.0

KDS 3.x uses the unchanged/stock EmbSysRegView plugin, this makes it very easy. The data files are located in

<KDS installation folder>\eclipse\plugins\org.eclipse.cdt.embsysregview.data_0.2.4.freescale\data

Copy the files into the data folder of the plugin, .e.g.

<eclipse>\plugins\org.eclipse.cdt.embsysregview.data_0.2.6.r191\data

You can use any custom folder, e.g. I have used ‘KDS’ as folder below:

Added KDS Files

Added KDS Files

Now I have the files/devices available under that folder in the EmbSysReg selection:

KDS Folder

KDS Folder

That way I have all the extra NXP KDS register files available:

EmbSys Registers View

EmbSys Registers View

NXP S32 Design Studio

If using S32 Design Studio, this Eclipse distribution uses a custom and modified version of EmbSysRegView plugin. So the SVD files are hidden and part of devices support/service packs. You can find them after installation if searching for *.svd in the installation directory:

S32 SVD File

S32 SVD File

Copy the files into the data .jar file. Change the extension from .svd to .xml.

Other SVD files are inside device specific .jar files, inside the eclipse\plugins folder:

Plugins file

Plugins file

The files are named in the following format:

com.freescale.s32ds.cross.gnu.<device>
com.nxp.s32ds.cross.gnu.arm.<device>

With this I get a set of S32 Design Studio SVD files I can add to my collection:

S32 SVD Files

S32 SVD Files

Inside the EmbSysRegister view, I can now open them under the S32 group:

S32 SVD Files in EmbSysRegister

S32 SVD Files in EmbSysRegister

Summary

Knowing the EmbSysRegView data structure and data file makes it possible to extend it with extra CMSIS-SVD files. A good place is to grab them from existing IDE installations: that way I can build up my set of SVD files for easier debugging.

Happy SVD-Jaring 🙂

Links

 

14 thoughts on “Adding CMSIS-SVD Files to EmbSysRegView 0.2.6.r192 and Eclipse

  1. Pingback: EmbSysRegView 0.2.6 for NXP Kinetis Design Studio V3.2.0 | MCU on Eclipse

  2. The year is 2018. Has NXP finally found a way to make using embsysregview easier in MCUXpresso (other than downloading and installing a complete copy of KDS) ???

    Like

    • The MCUXpresso IDE comes with its own register/peripheral viewer, so the EmbSysRegView is not that much needed as in KDS.
      If you want the EmbSysRegView in MCUXpresso IDE, then the simplest way is indeed to take the XML from KDS, unless you are ok with the ones which are available on the EmbSysRegView page.

      Like

      • Thanks Erich. I had tried the MCUXpresso IDE register view about six months ago and found it very buggy (and many others had found similar issues, based on posts to the NXP forum). I tried it again yesterday, and found it mostly seemed to work. It still lacks a lot of the additional information that embsysregview shows (eg register names in plain english., reset values, ability to set individual bits etc).

        One frustrating oddity – at least on the KL28 bare metal board I’m using, it shows registry value in little-endian format instead of big-endian. Very confusing…

        Like

      • This was using Segger J-Link. I have screenshots comparing EmbSysRegView and Peripheral+ but don’t know how I can attach them to these comments.

        Like

  3. Hi,
    Do I have to create a jar file again, after adding the MCU specific SVD file? Eclipse oxygen works only with the JAR file, not the unzipped version of the data folder.

    Thanks
    Radhika

    Like

  4. I’ve created an SVD file for a specific Maxim MCU, which works well in EmbSysRegView. I have a few boards based on the same underlying Maxim MCU. EmbSysRegView’s ‘Board:’ selector looks interesting. Anyone know how to use it?

    Like

  5. Pingback: OpenOCD with MCU-Link | MCU on Eclipse

  6. Pingback: Visual Studio Code for C/C++ with ARM Cortex-M: Part 4 | MCU on Eclipse

What do you think?

This site uses Akismet to reduce spam. Learn how your comment data is processed.