Segger J-Link Firmware for OpenSDAv2

Segger just has released their OpenSDAv2 firmware. The OpenSDAv2 firmware is different from the OpenSDAv1 as it is using a different memory map and bootloader. The OpenSDAv2 e.g. is present on the new FRDM-K64F board. The availability of the Segger firmware is definitely good news for any owner of the FRDM-K64F board: so far only the CMSIS-DAP firmware was available (on top of the mbed bootloader). With this, it was not possible to use the board with CodeWarrior, except with using an external P&E Multilink or Segger J-Link. With that new Segger J-Link OpenSDAv2 firmware, I can now use the FRDM-K64F with any IDE which supports the Segger J-Link :-).

FRDM-K64F with Segger OpenSDAv2 Firmware

FRDM-K64F with Segger OpenSDAv2 Firmware

OpenSDA (v1 & v2)

OpenSDAv2 is the ‘second’ generation of debug firmware on Freescale Freedom (and Tower) boards.

OpenSDA and Target Processor

OpenSDA and Target Processor

OpenSDA is the ‘on board’ debugger provided so no external debug cable is needed The OpenSDA concept has two parts:

  1. The bootloader on the debug chip (Kinetis K20).
  2. The firmware/application on top of the bootloader.

The first version (OpenSDAv1) bootloader has been developed by P&E, and is not open source. On top of this bootloader I can load different *.SDA firmware (e.g. P&E OpenSDA, Segger OpenSDA or the ARM CMSIS-DAP). While it is possible to have any kind of applications running on top of the bootloader (e.g. a data logger or something else), the main purpose is running a debug firmware so a debugger can debug the target processor.

The second version (OpenSDAv2) is present on the FRDM-K64F board, and is based on the mbed bootloader and is open source. As the bootloader is different, and the memory mapping too, the OpenSDAv1 applications do not run on top of the mbed bootloader. Even more, as the OpenSDAv1 accepts S19 files, but the OpenSDAv2 bootloader only accepts binary files (see “Binary Files for the mbed Bootloader with Eclipse and GNU ARM Eclipse Plugins“). Up to now the only available OpenSDAv2 firmware is the mbed CMSIS-DAP one (see “mbed CMSIS-DAP“).

Now there is an alternative: The Segger J-Link OpenSDAv2 firmware 🙂

❗ Update: the latest USBDM (http://usbdm.sourceforge.net/USBDM_V4.10/Freedom/html/index.html) has suppport for OpenSDAv2 included too.

Installation

  1. Go to http://www.segger.com/opensda.html and scroll to the end of the page with the OpenSDAv2 section and download the firmware. NOTE that you need the V2.0 (V2) for K64F, *not* the V2.1.!
  2. Unpack the content of the zip file (JLink_OpenSDA_V2.bin).
  3. Power the board withtheOpenSDAv2 USB connector while having the reset button pressed.

    Reset Button on FRDM-K64F Board

    Reset Button on FRDM-K64F Board

  4. Release the reset button,the greenOpenSDAv2 LED shall blink (about 1 Hz).
  5. OpenSDAv2 LEDOpenSDAv2 LED
  6. TheboardenumeratesasBOOTLOADER device.

    Bootloader Files

    Bootloader Files

  7. Copy (drag&drop) the JLink_OpenSDA_V2.bin to the BOOTLOADER device.
  8. After the file is copied, the green OpenSDAv2 LED will blink fast (about 5 Hz).
  9. Unplug the board and power it again.
  10. Newdriverswill be installed automatically, and device will show up as J-Link.

    J-Link Device

    J-Link Device

  11. The firmware includes a USB CDC virtual COM port, which gets automatically installed too:

    J-Link Serial Port

    J-Link Serial Port

That’s it. With this, the board looks like a normal Segger J-Link for the debugger.

Comparison OpenSDAv2: Segger J-Link vs. mbed CMSIS-DAP

With the availability of the Segger J-Link firmware for OpenSDAv2, there is a true alternative to the mbed CMSIS-DAP firmware.

❗ The mbed CMSIS-DAP firmware so far was not very robust (even caused my FRDM-K64F board to be blocked several times, see “Recovering FRDM-K64F mbed Board“). There is now a new mbed CMSIS-DAP firmware 0202 available which seems to solve these issues: http://mbed.org/handbook/Firmware-FRDM-K64F

Below is a comparison of the two debug options for the FRDM-K64F board with OpenSDAv2. I have used Eclipse with Segger GDB and OpenOCD with CMSIS-DAP.

💡 P&E has provided a OpenSDAv2 firmware at FTF for hands-on-classes using the FRDM-K64F board. As this firmware is (not yet) officially available, I have not compared it in the table below.

mbed CMSIS-DAP Segger J-Link OpenSDAV2
1. Debug Speed 1.8 kByte/sec 40 KByte/sec
2. MSD Bootloader yes no
3. USB CDC Bridge yes yes
4. Number of Breakpoints limited by hardware (unlimited)
5. Open Source yes no
6. Debug other boards yes (no)
7. Semihosting yes (29 bytes/sec) yes (500 bytes/sec)
8. Debug Stepping fair fast
9. IDE’s mbed, Keil, IAR, KDS, … (CMSIS-DAP) CodeWarrior, Eclipse, Keil, IAR, KDS, … (Segger J-Link)

Comments to the entries above:

  1. Measured the time from the start of ‘debug’ until reaching main(). The mbed CMSIS-DAP failed for my test application (120 KByte code) and locked constantly my board. Loading smaller applications worked, but would not be comparable (mbed CMSIS-DAP needed 1.7 seconds for launching a 1.5 KByte application). With the MSD bootloader it took 6 secondes (20 KByte/second). In general mbed is expected to be slow as it is using USB HID class for download/debugging which is not fast.
  2. Segger J-Link firmware has no MSD Bootloader implemented.
  3. Both have USB-CDC bridge/virtual implemented. I prefer the Segger one because the mbed one needs a special driver, and can only be installed with the board plugged into the host computer.
  4. mbed is limited to the number of hardware breakpoints (6 for K64F), while Segger offers ‘unlimited’ FLASH breakpoints. The ‘unlimited’ number of breakpoints is sold separately, but available for ‘evaluation’ in the OpenSDA firmware. This feature is essential e.g. for Kinetis-L where there are only two hardware breakpoints.
  5. mbed is open source, while Segger is closed source.
  6. The Segger licensing terms forbid to use the firmware to debug an external board (while it would be technically possible). Mbed does not have this limitation.
  7. Tested with writing 2000 characters using semihosting. Special care needs to be taken as for the mbed case with no debug connection this effectively locked the board.
  8. Tested with stepping through the code. While with Segger stepping is instantly, with mbed CMSIS-DAP there is a small delay between steps. This is a general reflection how fast the connection is.
  9. CMSIS-DAP is not supported by CodeWarrior, so for anyone who wants to use CodeWarrior, then the choice is the Segger Firmware. If using the mbed compiler/IDE, as this does not have debugging capabilites, then the mbed CMSIS-DAP firmware is needed as it offers the MSD bootloader. To use CMSIS-DAP with Eclipse on Windows, it needs OpenOCD. However, such an OpenOCD binary is not available (yet).

Summary

For anyone interested in serious development with Eclipse and OpenSDAv2, with the availability of the Segger OpenSDAv2 firmware there is finally something which can be used in ‘real’ development: it is fast, easy to use and matches the professional tools Segger provides. mbed and CMSIS-DAP on the other side is just at the beginning of a journey, and very likely will mature and get better over time. mbed has the bonos of open source and that it is pushed by ARM. The Segger firmware lacks the MSD bootloader, but for me this is not a critical item anyway. So as for myself, using mainly Eclipse and CodeWarrior, the Segger J-Link OpenSDAv2 firmware is my choice. Of course until something better shows up 🙂

Happy Seggering 🙂

73 thoughts on “Segger J-Link Firmware for OpenSDAv2

  1. Great write up, thanks!

    My biggest issue on embedded debugging has always been ‘speed’ (flashing, stepping, etc…), but at the same time never have had the budget to spend the money for a DStream ($3500USD, OUCH!!!) or a cheaper (HAHAHA) solution like the Segger J-Link CortexM Trace ($1350USD) to see if money would solve ‘my issues’.

    Do you normally use the on-board debug units on the dev boards, or do you also have/use the dedicated high-end JTAG units? Have any benchmarks/comparisons that you can share?

    Like

    • Yes, I use other units (P&E Multilink and Segger J-Link, even one P&E TraceLink). The Multilinks (in the $120 range) and the Segger J-Link (in the $200-300 range) are in my view very reasonable priced. Yes, such an amount is too high for ‘evaluation only’ or ‘hobby’, that’s why vendors like Freescale offer ‘on board zero cost’ debugging solutions. I mean you get for that zero $ (not counting the board) someting reasonable to try out. But I still prefer to have at least one or two units in the hand (J-Link or Multilink) which have better protection and as well speed. I don’t have benchmarks at hand, except what I did earlier here:

      Men In Black are back! Flashing and FX’ing…

      To me, it is worth to spend a few dollars more if it saves me a ton of time or troubles. The good thing with the ARM ecosystem is that there are choices, and both P&E and Segger serve that market very well to me. Some might like more the P&E ones, some more the Segger ones, and I like both (maybe just because I’m more of a neutral person 😉

      Liked by 1 person

    • You might as well consider the J-Link EDU, if you use it for your hobby. This device is for non-commercial use and sells at 60 USD.

      Like

      • I’m not sure if this is still true but both times I bought an J-Link EDU, flashing wasn’t supported. Sad and frustrating compared to AVR’s for instance where the tools are cheap and just up and work.

        Like

        • Hi Gibbon1,
          I have a handful J-Link EDU in use here at the university, and I can say they support FLASH programming out of the box. I’m using them with IAR, Keil, CodeWarrior and Kinetis Design Studio, and I have to say they work very, very well. And the EDU pricing from Segger is low cost too. I have not used AVR’s for a long while, so I cannot comment on that part.

          Like

      • Hi,

        >I’m not sure if this is still true but both times I bought an
        >J-Link EDU, flashing wasn’t supported.
        Not sure on what this information is based on, but it is simply not correct. All J-Link models support flash programming. Be it the high-end version (PRO), the EDU or a firmware for an open system like OpenSDA.
        Flash programming covers:
        Programming the internal flash of all supported MCUs (https://www.segger.com/jlink_supported_devices.html)
        as well as programming of external CFI compliant NOR flash.

        If you run into problems or think that you have found a bug, please get in touch with the SEGGER Forum (J-Link section),
        we would be happy to assist there.

        Like

  2. @Erich: Great write up thanks.
    @Susihangover:
    You write:
    My biggest issue on embedded debugging has always been ‘speed’ (flashing, stepping, etc…),

    My experience: J-Link is fastest, when it comes to flashing and stepping. And you do NOT need to spend a fortune. $60 for a J-Link EDU for personal use seems OK, and the J-Link Base and J-Link Ultra units seem to be priced OK if you work with them professionally. From my experience
    the fastest probes.
    There is a comparison here:
    http://segger.com/jlink-flash-download.html

    Like

  3. Hi Erich,
    I tried GDB Segger J-Link Debugging configuration in KDS (V1.0.1 Beta) for K64F PE based project. I get the following message:

    “Error in services launch sequence
    Missing device name”

    What am I missing?

    Thanks,
    -Irwin

    Like

      • Thank you Erich, that worked!

        I also verified that P&E Multilink worked. I am assuming that these will be fixed (configuration MCU automatically set up correctly) in next release.

        Thanks again.
        -Irwin

        Like

  4. OpenSDA v1 uses secure bootloader from P&E, also support open source CMSIS-DAP interface firmware in S19 format, and JLINK lite comes in SDA format.

    In OpenSDA v2, it uses an open source mbed bootloader with VTOR at 0x5000 (as I know), and only bin is supported. As a result, not only CMSIS-DAP, but also Seggle JLINK and PEmicro firmware also comes in open bin code. Unless they do some runtime encryption, they are open to hackers as well.

    Like

  5. Pingback: Tutorial: Data Logger with the FRDM-K64F Board | MCU on Eclipse

  6. Hello, thanks for the tutorial, it was really helpful! When I try to install OpenSDAv2 by SEGGER J-Link on Windows 8.1 following the steps I dont get the J-Link device either the virtual COM. After installing the J-Link sofware (http://www.segger.com/jlink-software.html) I can see the virtual COM but again I cant see the J-Link Device. Will I have some problems with that? Do you know any workaround?

    Like

    • Hi Juan,
      I don’t have a Win8.1 machine available right now, so I cannot try it out. But what you mean with you cannot ‘see’ it? Does it show up in the device manager, but you cannot use it with the debugger?

      Like

      • Hello Erich, after I installed the software as I mentioned, the J-Link device doesnt show at the Computer “devices with removable storage” menu, but in the device manager I can see the JLink CDC UART port. Fortunelly, after creating a simple project with CodeWarrior v10.6 and selecting “FLASH_Segger J-Link_Trace” as the debug configuration I could program and debug the project, so everything is alright by now. Thank you again for the tutorial.

        Like

  7. Hi Eric,

    thanks for the tutorial, it was really helpful! I have one question about CMSIS-DAP debug. Is it possible to use Eclipse and MBED CMSIS-DAP to debug FRDM-K64F board? What is necessary to use if I want to do this? Same question is for IAR.

    Thanks a lot
    Best regards Mila Stevanovic

    Like

      • Just for my understanding, what would be the advantage of using mbed’s CMSIS-DAP over J-Link? It seems J-Link is a good choice, fast, works with anything, gets the job done. Is there any advantage to switch?

        Like

        • There is no advantage of CMSIS-DAP except that it is open source. And you are absolutely right: both P&E and Segger are fast, they work and get the job done.
          CMSIS-DAP is pushed by ARM Inc. in my view as they try to get a ‘no cost’ option into the market to make the ARM cores more attractive.
          That works well for customers which really do not want to spend any money on tools. In my experience, CMSIS-DAP/mbed is a nice thing to look at and play with it, but I would not use it for anything which is production or where you need the job done. There are good reasons why there are professional tools, and spending $100 can save many hours. Of course, if you cannot spend that $100, then you need to go with the no-cost solution. The good thing with OpenSDA and both the P&E and Segger apps for it is that I can evaluate their probes ‘look and feel’ from the software side, and then decide which one I would like to have as hardware on my desk.

          Like

  8. Pingback: Attaching to a Running Target with Segger J-Link, GDB and Eclipse | MCU on Eclipse

  9. Pingback: Command Line Programming and Debugging with GDB | MCU on Eclipse

  10. Hi Eric,

    I hope everything is fine. Thanks for this article , it is very interesting.
    I was trying to debug on Kinetis Studio my FRDM K64F with segger j-link, and I followed your instructions. However, I am facing the following problem: I start debugging, everything seems alright, and receive the following messages:

    “JLinkARM.dll V4.92 (DLL compiled Sep 30 2014 09:34:53)
    —–GDB Server start settings—–
    GDBInit file: none
    GDB Server Listening port: 2331
    SWO raw output listening port: 2332
    Terminal I/O port: 2333
    Accept remote connection: localhost only
    Generate logfile: off
    Verify download: on
    Init regs on start: on
    Silent mode: off
    Single run mode: on
    Target connection timeout: 5 sec.
    ——J-Link related settings——
    J-Link Host interface: USB
    J-Link script: none
    J-Link settings file: none
    ——Target related settings——
    Target device: MK64FN1M0xxx12
    Target interface: SWD
    Target interface speed: 1000kHz
    Target endian: little
    Connecting to J-Link…
    J-Link is connected.
    Firmware: J-Link OpenSDA 2 compiled Apr 23 2015 18:23:59
    Hardware: V1.00
    S/N: 621000000
    Checking target voltage…
    Target voltage: 3.30 V
    Listening on TCP/IP port 2331
    Connecting to target…Connected to target
    Waiting for GDB connection…Connected to 127.0.0.1
    Reading all registers
    Read 4 bytes @ address 0x00000000 (Data = 0x20030000)
    Target interface speed set to 1000 kHz
    Resetting target
    Halting target CPU…
    …Target halted (PC = 0x00001244)
    R0 = 00000000, R1 = 00000000, R2 = 00000000, R3 = 00000000″…

    *** But after a while, the connection seems to fail and I get:

    ” Read 2 bytes @ address 0x00000ED4 (Data = 0xFCCB)
    Starting target CPU…
    ERROR: Communication timed out: Requested 4 bytes, received 0 bytes !
    ERROR: Can not read register 15 (R15) while CPU is running
    …Target halted (PC = 0x00000000)
    Reading all registers
    WARNING: Failed to read memory @ address 0x00000000 “, etc.

    The program on the board seems to work, but I cannot debug it.

    Can you give a piece of advice for this problem? I’d appreciate that.

    Thanks

    Like

  11. Pingback: Merging NXP LPCXpresso IDE with the Freescale Kinetis Design Studio, Processor Expert and Kinetis SDK | MCU on Eclipse

  12. Pingback: Using Segger Real Time Terminal (RTT) with Eclipse | MCU on Eclipse

  13. I’m struggling to get on line to my FRDM-K64F board. I installed the JLink_OpenSDA_V2.bin file in the bootloader. The LED then starts to flash at a 5Hz rate as described. After that, power cycling the board results in the LED flashing at an even higher rate (say 10Hz or so), not sure if that’s OK. Windows sees the board (JLink shows up in the device manager) but fails to install a driver for it.
    I also installed the Software and documentation pack for Windows V5.00j from the Segger web site, which should also install drivers, but still the board is not recognized.
    I think I’m stuck now… 😦

    Like

      • Hi Erich,
        Looks like the board itself is OK. I noticed that Windows just doesn’t recognize it. Tried it on 2 systems, both running Win7 64bit. Both did not reognize the board. But then I tried it on a Win7 32bit system (in a virtual machine) and there the board was recognized correctly. The fast blinking of the LED stopped as soon as the board was detected, so I guess the blinking indicates that the board isn’t communicating with the host system…

        Like

        • Hi Marc,
          interesting, I have never seen something like this. I have Win7 64bit too, and no issues. Are these Win7 special machines (kind of corporate setup)? Mayber there is something on them preventing to use special mass storage devices (as a counter to some kind of virus)?

          Like

      • Nothing special to my Win7 64bit machine… it’s an ‘ordinary’ Win7 Ultimate. I always keep my computer as clean as possible. Anyway, I’m happy I can get it to work with the virtual machine. The next big issue is figuring out how this eclipse based environment works… 😦 I’m not a fan of it, being used to codewarrior!

        Like

        • Hi Marc,
          I had initially the same feeling about CodeWarrior vs. Eclipse. But soon after I was on Eclipse, I did not want to go back, Eclipse was such a much better and open environment for me.

          Like

  14. Pingback: Tutorial: Adafruit WS2812B NeoPixels with the Freescale FRDM-K64F Board – Part 2: Software Tools | MCU on Eclipse

  15. It has been some time since this article has been written, and the pemicro firmware has been updated many times since then. Do you still recommend to use the Segger firmware? What about on boards like the FRDM-KL46Z that do not support OpenSDAv2?

    Like

  16. I’m using FRDM-K64F with the Segger OpenSDA firmware and a Win7 x64 PC.
    Following the instructions from the tutorial (http://www.element14.com/community/community/designcenter/kinetis_kl2_freedom_board/blog/2015/06/15/frdm-k64f-kds-30-ksdk-120-mqx-tutorial-create-mqx-rtos-for-ksdk-and-processor-expert-using-tasks), I can’t get any output from the board.
    But with the P&E firmware and same configurations on PC, I can get the output.
    Is there something wrong with the driver or anything else?

    Like

      • Thanks for your reply, Erich.
        But when I update the OpenSDA firmware to the P&E’s, running the same programe, I get the outputs. I think it’s not related to the UART.

        Like

        • Ah, ok, I understand now better. So then it could be because of the Segger OpenSDA firmware, or the Segger serial driver on the host PC. Are you using the latest J-Link and Segger OpenSDA files already?

          Like

        • The other thought I have: I have seen comments (somewhere, cannot find it anymore) in the FSL community that the UART baud calculation by the Kinetis SDK code might not be accurate. So it would be good to check the UART exact baud rate with a scope/logic analyzer. It could be that the P&E OpenSDA UART implementation is able to deal better with an inaccurate baud rate than the Segger one.

          Like

    • Hi,

      i tried to reproduce the error by following the instructions you posted step by step.
      “Unfortunately” it worked fine for me using the current version of the SEGGER OpenSDA Firmware (https://www.segger.com/opensda.html) , but i had no success with neither V0210 nor V0221 of the CMSIS-DAP firmware (https://developer.mbed.org/handbook/Firmware-FRDM-K64F).

      If you have additional information regarding this issue, please post it here or get in touch with the SEGGER Forum (http://forum.segger.com), we would be happy to assist there.

      Best regards,
      Niklas

      Like

  17. Erich,

    I have a project, in KDS 3.1 with KE06Z board, currently using CANBUS. I tryed to use OpenSDA CDC Serial Port, using Segger, but it does not work, perhaps the port appear on Device Manager.
    The CDC Serial Port works perfectly, only changing debug to PEMicro.
    Why the CDC Serial Port don’t work with Segger?

    Like

  18. Hy Erich,

    i tried to use the Segger J-Link Firmware on an FRDM-KL25Z (OpenSDA) with Kinetis Design Studio 3.2. After following your steps regarding your Tutorials (by the way great Website and Tutorials) in the following steps:

    -Installing Kinetis Design Studio 3.2
    -Updating the Bootloader via P&E (using Windows 7)
    -Updating the Firmware via P&E (using Windows 7)
    -Updating the Firmware from the Segger Website (using Windows 10) https://www.segger.com/opensda.html

    After updating Segger-Firmware and plugging in the USB Cable, the Board pops up as JLINK Device including a Segger HTML Link and a Text file called NoFlashConfig.txt. Opening the NoFlashConfig.txt gives the following message: “No valid VMSD configuration for target flashing found. “.

    On the Segger Website there is already a dicussion regarding to this issue:
    http://forum.segger.com/index.php?page=Thread&threadID=2688

    After nearly 6 months nothing has changed and no fix is available. Do you have any Idea how i could fix this problem or any suggestions which free Debugger and Flash Software to use instead. As a student these are my first steps on the FRDM-Boards and KDS. In the past i have already programmed a lot on other Evalboards (Atmel (Using C), Microchip (Using assembly),..), but the startup using the FRDM-Boards in an Offline IDE is really confusing for me. I don`t want to use Mbed, i prefer an offline IDE like Atmel Studio (in this case KDS) to program and practice. I read a lot using Google and the Reference Manuals, but still couldn`t solve the problem. My Decision to use J-Link was it`s speed und and the unlimited breakpoints option.

    Please excuse my language, i don`t speak native english 😀 .

    Thanks

    Like

    • Hi Jan,
      you can ignore that NoFlashConfig.txt file: This is for some MSD (Mass Storage Programming), so you can drag&drop a file (S19?) to the device and it will program it. For debugging it does not matter. Simply use the board with the debugger.
      I hope this helps,
      Erich

      Like

      • Hy Erich,

        thanks for your fast reply. This information helps me a lot. Yes i can drag and drop a file and after a long night i think i am finally on the right way with KDS 3.2. The NoFlashConfig.txt file was confusing for me, but the information that i can ignore it helps me a lot.

        Actually i am using the freescale tutorials and your tutorials to make one step after another. It´s good to know, that this message (NoFlashConfig.txt) doesn`t matter for debugging.

        Thanks a lot =)

        Like

      • Hi Jan,

        Not sure why the MSD device confused you…
        All explanations how to get started with J-Link + KDS are pretty straightforward and no one ever mentions the MSD part as being part of the debugging.
        Be it here
        or at https://www.segger.com
        or somewhere else. So if no tutorial mentions a specific feature/functionality as being necessary, it is more or less natural to just ignore it for the moment.

        However, we are just about to release a new version of the firmware which will not show up as an MSD device if there is no flash config and will show up as one if there is, so drag & drop can be used.
        The firmware will be available here within this week:
        https://www.segger.com/opensda.html

        Best regards
        Alex

        Like

  19. [posted comment through moderation queue, parts […] moderated]:

    Mr. Alex,

    [….]

    When I received my FRDM-K82 board and it was like rebooting every few seconds after plugging it into my Win10-64x bit PC… and the “MBED” thing came up and NOT the promised pre-installed accelerometer application, what do you think I felt?
    I felt like I received one of those faulty devices and immediately I went to find an OpenSDA binary. That was when I located the JLink-OpenSDA binary though and was positively surprised to find a binary to reincarnate my beloved JLink on the OpenSDA K20. (I have a real Jlink, and a JLink on an NXP LPC-Link 2… and especially in dire times where no other debugger would work… the JLINK saved my day many times … god bless the SEGGER JLINK team).
    But… when I drag-and-dropped the “JLink_OpenSDA_V2_1_2015-10-13.bin” (in BOOTLOADER mode) into the FRDM board… it was immediately bricked and only through the help of an NXP forum, the file “k20dx128_frdm-k82f.s19” and a JLINK I was able to restore the FRDM to the perpetually rebooting state as it was shipped to me. I switched to a Win7 VirtualMachine and drag-and-dropped “JLink_OpenSDA_V2_1_2015-10-13.bin” to the BOOTLOADER again and this time the a “JLink” mass storage device came up with… “No valid VMSD configuration for target flashing found.” … What do you think I did???? I searched the internet for this “error” (indulge me calling it an error) and came right to this place, only to read that someone had a similar experience an had to take some blame for being human. (Also, I was hinted by any reference from NXP/Freescale about your KDS integration website. And the html file inside the “JLink” MSD would not connect because there was no internet connection in the VM (I am not even sure if that link would do any good anyways…)

    [One good thing though, after putting the “JLink_OpenSDA_V2_1_2015-10-13.bin” file into the BOOTLOADER (mind you, I used Win7 in a VM) the flashing went through correctly and the crazy rebooting went away right after the FRDM board came out of reset. Also, I am now able to access the board via the Win10 host with no problems everything works just like you told Mr. Jan.]

    So please, keep up the good work… [….]
    Cheers.
    Takeyoshi
    Ibaraki, JAPAN

    Like

  20. Hello Erich,

    I’m trying to debug using Kinetis Design Studio V3.2.0 with the Segger J-Link Firmware on an FRDM-K22F, I’ve followed all the steps but I get the following error:
    J-Link GDB Server failed:
    Could not listen on tcp port. Please check if another version of the server is running.
    For more details, see the JLinkGDBServerCL console.

    In the console I got:
    Connecting to J-Link…
    J-Link is connected.
    Firmware: J-Link OpenSDA 2 compiled May 6 2016 11:04:17
    Hardware: V1.00
    S/N: 621000000
    Checking target voltage…
    Target voltage: 3.30 V
    ERROR: Failed to bind address (Err = 98)
    ERROR: Failed to open listener port 2331
    Restoring target state and closing J-Link connection…
    Shutting down…

    have you an idea about what is wrong there ?

    Like

  21. Hi Erich, I’m reading through the OpenSDAv2 bootloader as I’m looking to add mbed support (among other things) for Blaze. I’m being lead down a path for something called DAPLink which, as far as I understand, is the bootloader which is really what I should be investigating as it replaces the CMSIS-DAP. Have you had any DAPLink experience? More importantly, am I getting confused?

    Like

  22. Hi, I have problem with dev board frdm-kv31f and unofficial opensda J-link – UART does not work – unable to open COM port. Have you any idea, where is problem? or how downloaded oficial opensda J-link?
    Thank you for your reply

    Martin

    Like

  23. Hi Niklas,
    the specific firmware for FRDM-KV31F works properly. Now created COM port, USB driver and disk unit, which name is FRDM-KV31F.
    Thank you for add firmware.
    Yours sincerely
    Martin

    Like

  24. Pingback: Adding a Delay to the ARM DAPLink Bootloader | MCU on Eclipse

  25. Pingback: FatFS, MinIni, Shell and FreeRTOS for the NXP K22FN512 | MCU on Eclipse

What do you think?

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