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

J-Link Debugger with SEGGER Embedded Studio on Mac

Continuing my mission to have SES set up to be the complete development environment on a Mac I am struggling to get the Jlink Debugger to behave with SES.

It appears I cannot use the J-Link RTT Viewer since I have a Mac and this looks like it is Windows only. So I have fallen back to using the SEGGER J-Link Debugger V2.14 which is for Windows, Mac and Linux.

In terms of the Target Device, I see the nRF52832_xxAA and can set the Target Interface (JTAG: 1 MHz) with a USB host. So far so good.

SES imports the RTT Files folder so I added the relevant headers at the top of Main.

The problem is that every time I try to Download & Reset, Attach to Running Program or Attach and Halt Program I get a Connection Failed message in the J-Link Debugger Console. Also I notice the SES becomes unstable and often freezes and I have to restart it (I have reported the logs to SEGGER).

Is there something I am missing or is this a known bug?

Thanks

Parents
  • In Crossworks, RTT channel 0 output goes direct to the console, since SES is Crosworks, and RTT is a Segger technology, it would be hard to believe it doesn't work the same way. It's only channel 0, but that's the one you use most of the time anyway. You just run your code and the output shows right up, I've never needed to run RTT viewer or anything else in order for this to work.

    You do have to set the 'Startup Completion Point' to main, or SystemInit (I use SystemInit) to tell it when the app has reached the point to enable things like RTT, but that's the only thing I've ever had to do.

    I see Startup Completion Point exists in SES too and in the project I looked at is set to main, don't know whether it came like that or I set it like that. Either way - the Debug Terminal should show the RTT output.

  • Hi RK, ok so I have seen SEGGER_RTT_writeString in the Debug Terminal in SES. But then what is the advantage of SEGGER_RTT_writeString than just ordinary printf() if they are both being posted to the Debug Terminal within the IDE can I ask? Anyway I'll accept that as the answer since the messages are certainly being displayed in the Debug Terminal within SES but it would be good to know whether the advantages of SEGGER_RTT_WriteString and print(f) remain even though on the face of it it looks like they are being handled the same by the IDE.

    Also Michael, I found the JLinkExe. It looks like on installation only the LicenseManager icon goes to the desktop whereas the other applications go to the applications folder. But navigating to the applications folder got around that.

Reply
  • Hi RK, ok so I have seen SEGGER_RTT_writeString in the Debug Terminal in SES. But then what is the advantage of SEGGER_RTT_writeString than just ordinary printf() if they are both being posted to the Debug Terminal within the IDE can I ask? Anyway I'll accept that as the answer since the messages are certainly being displayed in the Debug Terminal within SES but it would be good to know whether the advantages of SEGGER_RTT_WriteString and print(f) remain even though on the face of it it looks like they are being handled the same by the IDE.

    Also Michael, I found the JLinkExe. It looks like on installation only the LicenseManager icon goes to the desktop whereas the other applications go to the applications folder. But navigating to the applications folder got around that.

Children
No Data
Related