Using SystemView at the same time as a Debugger

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

  • Using SystemView at the same time as a Debugger

    I've been trying to get started with SystemView using a simple NoOS configuration. After lots of no output at all and finally just reading the code I worked out that the host only reads and processes an incoming packet after it sends, or tries to send, an outgoing one. Since the NoOS config doesn't actually do anything, it never writes anything, so it never reads anything and never starts. OK now I get this and can move on.

    This would have been a little easier if I'd been able to debug and run SystemView at the same time, in fact the next load of development will be a lot easier if I can do that.

    The manual says, in several places, something like "SystemViewer can be used parallel to a debugger. In this case recording can be done while the debugger is running."

    How? Using Crossworks, or SES, I start a debug session but now Crossworks, or SES, is using the USB connection to the JLink and nothing else can connect to it, so SystemView fails to connect. Do it the other way around, the debugger can't connect. How do you use them both at the same time?

    I'm on OSX, I hope that's not the reason.
  • Hi,

    When SystemViewer connects to the target system it sends a start command.
    This is handled and recording is started when the target system generates an event.

    If the system does not generate events frequently, like an instrumented SysTick does,
    start of recording might fail.
    This might be improved in a future version of SystemView to be able to handle infrequent events.

    Unfortunately OS X is the reason for your problem.
    Currently it is not possible to open more than one connection to one J-Link on OS X.
    This will be improved, but there is no fixed schedule for this, yet.

    Best regards
  • yeah I thought it might be OSX, hopefully it gets fixed one day, at least Segger supports OSX better than most, and the tools run in OSX, so that's 90% of the way there.

    Once I figured out how the communications worked it was easy to get the NoOS example to do something. I just did a port to FreeRTOS 0.9.2 release candidate which took about 2 hours, very easy, it almost compiled out of the box and I just had to fix a couple of macros and re-insert the hooks into a copy of the FreeRTOS source.

    I'll have some questions about instrumenting modules as well but I want to go try some things out first see how far I can get. I want to see if I can use this to instrument the calls in the Nordic BTLE stack in realtime, I think it should be possible, that would be insanely useful.

    Great product, takes a bit of work to get started but it's well-worth it.