This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Problem using CMSIS in Segger Embedded Studio

Dear all,

   My team want to develop a innovative product. I am following this tutorial (www.youtube.com/watch

   to enable the CMSIS Configuration Wizard in Segger Embedded Studio. I did the following three steps:

   1. File->Open Studio Folder->External Tools Configuration.

   2. I paste the code below in the tools.xml. (Please see the image on attachment)
<item name="Tool.CMSIS_Config_Wizard" wait="no">
<menu>&amp;CMSIS Configuration Wizard</menu>
<text>CMSIS Configuration Wizard</text>
<tip>Open a configuration file in CMSIS Configuration Wizard</tip>
<key>Ctrl+Y</key>
<match>*config*.h</match>
<message>CMSIS Config</message>
<commands>
java -jar &quot;$(CMSIS_CONFIG_TOOL)&quot; &quot;$(InputPath)&quot;
</commands>
</item>

   3. Right click the file "sdk_config.h" and select "CMSIS Configuration Wizard".

   Unfortunately the "CMSIS Configuration Wizard" doesn´t appear!

 

   As alternative can i download the "CMSIS Configuration Wizard", run the program from the

   command line of windows and edit the file "sdk_config.h"?

 

  Regarding to the file "sdk_config.h" i have the following question:

  When i enable a specific module i need to include the directory where the files of the module are located? (User include Directories)

  I need to include the source files of the module in the project?


Any help will be very appreciated.

Best regards,

Rafael Santos Costa

Parents
  • Ok, are you sure that you've got the Java Runtime (jre) installed and available? (mentioned @29 secs into the video you linked to)

    We can re-produce your issue if we hose our jre environment. Based upon the screenshot you provided, it looks like you are running Windows, so to verify simply open a command window and type java to see if the runtime is available. (note: if available, I believe you can also type where java to determine where that specific runtime program is installed in your environment)

    For completeness, if java is installed, the Windows Control Panel also has a Java applet which lets you search for all jre environments on your system.

    Regards,

  • Hi leonwj,

       I have java installed, please see the image on attachment. I have downloaded the CMSIS Configuration Wizard and i can run this program typing in the command line of windows "java -jar CMSIS_Configuration_Wizard", i am changing the "sdk_config" by this way. The output of the command "where java" is "C:\ProgramData\Oracle\Java\javapath\java.exe", please see the image on attachment. Regarding to this i have the following question:

        - Segger Embedded Studio is bundled with the CMSIS_Configuration_Wizard? Or i need to download the software and place the jar file in a specific folder?

    Any help will be very appreciated.

    Best regards,

    Rafael Costa

  • ok, no worries... given that you didn't specify in your first post all the steps that you had taken, it leaves anyone trying to help in a state of having to start with the most obvious and possibly progressing from there.

    Since you have the JRE installed and can initiate the wizard from outside of the SES, the issue is obviously specific to your environment - have you tried this on more than a single system?

    In any case, since SES just launches the CMSIS config wizard as an external java process, I would suggest that you check (via task mgr or similar tool) whether a java process is instantiated when you launch the wizard. e.g. the following image highlights the java process launched on my system (along with the exact command string passed from the tools.xml config file)...

    Also the CMSIS_Configuration_Wizard.jar file is distributed within the Nordic NRF5 SDK (look within the .\external_tools\cmsisconfig folder) so you shouldn't need to download it from the source site. Other suggestions would be as follows:

    1. make sure that default wizard (.jar) file (the one from the NRF5 SDK) isn't corrupted
    2. take a backup copy and then edit the tools.xml config file to directly/explicitly pass along the full command string that you use successfully from outside of SES. If you get any success in doing that then you can whittle that down to include the SES environment variables as required.
    3. If the above fails then attempt to get verbose output from the SES java instantiation to determine where any failure is taking place.

    Regards,

  • I am using the nrf5 SDK for Mesh, unfortunately this SDK not include the CMSIS_Configuration_Wizard.jar, please see the image below.

    Inside the folder "nrf5_SDK_for_Mesh_v1.0.0_src", i have created the path "external_tools/cmsisconfig" with the file "CMSIS_Configuration_Wizard". Unfortunately the problem continues.

    Best regards,

    Rafael Costa

Reply Children
  • ok,

    I'm not sure whether you are aware but the tutorial that you linked to clearly states that the instructions pertain to the NRF5 SDK (see below)...

    The specific text being: "This video is part of the Getting started with SEGGER Embedded Studio and the nRF5 SDK tutorial series..." and therefore its not 'rocket science' to now see why it doesn't work in your specific case when using the Mesh SDK.

    Since you have already downloaded the CMSIS config wizard jar file from its source location and apparently have the command successfully tested and working outside of SES, then I would suggest that you point the tools.xml config file (in SES) to directly use that command and see what mileage that gives you.

    Regards,

  • Hi,

         Sorry, I thought the referred tutorial would also be valid for the nrf5 SDK for Mesh. In the tools.xml i have changed the following line of code, by the line below.


          java -jar &quot;$(CMSIS_CONFIG_TOOL)&quot; &quot;$(InputPath)&quot;

          java -jar C:\Users\rcosta\Documents\centi\wisen\codigo\nrf5_SDK_for_Mesh_v1.0.0_src\external_tools\cmsisconfig\CMSIS_Configuration_Wizard.jar

       Unfortunately nothing has happened. I will change the sdk_config.h typing "java -jar CMSIS_Configuration_Wizard file_location" in the command line of windows.

    Best regards,

    Rafael Santos Costa

  • Ok Rafael,

    Since you're innovating in other areas, we decided to get innovative for you on this CMSIS Wizard thing to get it working under a Mesh SDK build and managed to successfully launch the Config Wizard under SES. The image below shows all the settings that we utilized... we imported an sdk_config.h file into the project since the tool is set to match on *config*.h files only. In the bottom output window you can also see the log generated by the wizard. Additionally as you can see, we pointed directly to the jar file that comes with the NRF5 SDK.

    Hope this helps!

    Regards,

  • Dear leonwj,

       I have followed your suggestion, now i can launch CMSIS Configuration Wizard from the Segger Embedded Studio. Thank you very much for the help.

    Best regards,

    Rafael Costa

  • I was able to get it to work on MacOS by pasting in the following:

    <item name="Tool.CMSIS_Config_Wizard" wait="no">
        <menu>&CMSIS Configuration Wizard</menu>
        <text>CMSIS Configuration Wizard</text>
        <tip>Open a configuration file in CMSIS Configuration Wizard</tip>
        <key>Ctrl+Y</key>
        <match>*config*.h</match>
        <message>CMSIS Config</message>
        <commands>
          "/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java" -jar "$(CMSIS_CONFIG_TOOL)" "$(InputPath)"
        </commands>
    </item>

    After installing JAVA from Sun.
Related