Cart New Account Login

HomeAbout usProductsSupportForumsBlogCustomer Service

search inside this forum
Multilink Universal FX debugging with STM32
Phillip W. Jul 20, 2017 at 08:33 PM (20:33 hours)
Staff: Takao Y.

  • Hi,
    From the product information on you Multilink Universal FX debugger you say that you support STM32.

    I have one of these units and am trying to use it with Somnium DRT for Cortex-M.
    I am wanting to debug on STM32F030 and STM32F072 cpu's.

    However, when I try to configure the debugger setup in Somnium I have to specify a target CPU and only NXP is listed.

    How do I setup to use STM32???

    Phil




    Comments

    • Sorry I forgot to include I am using Somniun DRT.

  • Greetings,

    We do support STM32. You just do not have our latest plugins. Here is a blog post on how to update your Eclipse based IDE to have our latest changes:
    http://www.pemicro.com/blog/index.cfm?post_id=134

    The part you need to read first is actually the last part where it mentions how to get the latest plugin.


    Takao Yamada

    • Hi Takao,
      I had already installed the plug-in but I tried to again and it responded with already installed.
      I tried to update and no updates were found.

      Installed versions are:-
      Core = 1.1.43.201704122152
      Expansion = 3.0.9.201707131553

      I checked again in setting up the debugger and went to select the device and it still only shows NXP.

      How do I select STM32??

      regards
      Phil

  • Anyone got further details or explanation?

  • Greetings,

    We are working with Somnium to figure out what may be causing this issue. Some IDE's handle the plugins differently than others. We are in active communication with them and I will get back to you with an answer soon.


    Takao Yamada

    • Thank you. I was about to give up and go for another debugger option.

  • Greetings,

    We found an answer for you. It has to do with your debug configurations. Try creating a new configuration from scratch and you will find all of the devices will be listed. The configuration you are using must have been from a time when the other devices were not included into the plugin and it has stale settings.

    Let me know if that resolved your issue.


    Takao Yamada

  • Hi Takao,
    Thanks for your reply, I'm not sure I know how to go about your suggestion.
    If you mean to go to debug configurations and creating a new configuration under GDB PEMicro then it does not work. It remains as per previous where only NXP is available under device selection.

    Phil

  • Greetings,

    You are correct in creating a new configuration under GDB PEmicro.

    Could you go to the following path and see if "com.pemicro" folders exists:

    Program Files (x86)\SOMNIUM\DRT-NXP\4.0.1703.022\plugins

    If you have the latest plugins (you should try updating again), you should see.....
    core plugin (com.pemicro.core_1.2.0),
    debug plugin (com.pemicro.debug.gdbjtag.pne_3.1.0.201707241417),
    debug expansion (com.pemicro.debug.gdbjtag.pne.expansion_3.1.0.201707241417).

    The debug expansion plugin should have a win32\gdi\P&E\supportFiles_ARM\ST folder where the ST devices exists. If it does, then you should see the ST devices when creating a new debug configuration.


    Takao Yamada

  • Greetings,

    Any update on this? Were you able to get STM32 devices showing?


    Takao Yamada

  • Hi Takao,

    Your suggestion does not work and the versions you show are different to mine.

    I had a response from Somnium as follows:-

    "Hi Phil,

    Updating the PEmicro "Debugging Support" plugin is not possible in DRT and the PEmicro "Device Expansion" plugin doesn't work with the current version of the "Debugging Support" plugin in DRT (i.e. it doesn't expand the supported devices). The PEmicro plugins will be updated in the next DRT release, but in the meantime, PEmicro debugging with STM32 devices in DRT can be achieved by starting a PEmicro GDB server outside of DRT and connecting to it with a "GDB Hardware Debugging" launch configuration in DRT.

    1. Download the PEmicro Eclipse plugins from http://www.pemicro.com/fixedlinks/com.pemicro.debug.gdbjtag.pne.updatesite-3.0.9-SNAPSHOT.zip
    2. Unzip the plugins.
    3. Navigate to "plugins" directory in the extracted zip.
    4. Unzip the "com.pemicro.debug.gdbjtag.pne.expansion_3.0.9.201707131553.jar" file (it's just a zip file).
    5. The unzipped jar contains a win32 directory that contains a "pegdbserver_console.exe" application.
    6. Run "pegdbserver_console.exe -devicelist" from a Windows command prompt and find the required device name.
    7. Run "pegdbserver_console.exe -startserver -device <device from list>". If the debugger and device are connected, the server should start and indicate the ports on which servers are running.
    8. In DRT, create a "GDB Hardware Debugging" launch configuration (from "Run->Debug Configurations").
    9. In the Main tab: Fill in / modify Project and Application if required.
    10. In the Debugger tab: change GDB Command to "arm-somn-eabi-gdb"
    11. In the Debugger tab: tick "Use remote target", select "GNU ARM PEMicro Interface" and enter the port number output in step 7.
    12. Start the debug session. DRT should connect to the already running server."

    I still didn't get it work and have decided to wait for their new release for support. I can probably wait till then or may have to switch to a JLink debugger if not released by when I need it.

    Thanks for your support to date.
    Phil

  • Greetings,

    What part of the 12-steps did you have difficulty? Were you able to find the device within the devicelist? When you start the GDB console using "-startserver" were you able to get connection to work?

    Could you tell me what command-line parameters you used to attempt a connection via GDB console?


    Takao Yamada

    • I had a problem in connecting to the device, step 7.

      I am using a Nucleo-F072RB development board until we have our design PCB's back.
      I am testing the FX debugger with it to check it works ok before then, since this is my first experience with STM32.
      I have removed the debugger STlinks to allow the use of the external debugger via the 6 pin SWD header.
      I have connected 10pin debugger head, PORT G, to the Nucleo board via an adapter cable. Pin1->1, Pin2->4, Pin3,5,7->3, Pin4->2, & Pin10->5.

      Power for board remained via the USB debug port.

      My command line was
      pegdbserver_console.exe -startserver -device ST_STM32F0_STM32F072RB

      Result was "Device selected is DEFAULT. (warning - you must choose a device to enable flash programming)
      It finds the FX debugger, says connecting to target before declaring GDB Launch Failure: No device selected etc"

      The device I selected was from the devicelist which I had to route to a txt file since it scrolled past the ST devices and couldn't be read on the screen.

      I took some screen captures and pics to show you but I can't see a way to transfer them to you via this forum. I'll try by reply email notification.

      regards
      Phil

  • Greetings,

    Could you try adding an equal sign so that it looks like:

    -device=ST_STM32F0_STM32F072RB

    This should allow you to get past the "default" option.


    Takao Yamada

  • Hi Takao,

    That worked better but still did not connect.

    First try it accepted the device and updated the firmware of the FX from V9.40 to 9.72.

    After that it said "cannot enter background mode". "Unable to initialize PEDebug". "Launch fail:............could not connect target processor"

    I tried a 2nd time with same results, the only different was that it didn't need to update the FX firmware.

    I have also tried the same with another FX unit with the same result.

    regards
    Phil

Add comment


   Want to comment? Please login or create a new PEMicro account.







© 2017 P&E Microcomputer Systems Inc.
Website Terms of Use and Sales Agreement