[SOLVED] live tracing - timeline

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

  • [SOLVED] live tracing - timeline

    Hello,

    I'm curently testing J-Trace with Ozone. As I already found out, there is only a limited amount of traced data visible in the timeline. And while the MCU is running, no data is visible at all.

    Can (a limited amount of) data be shown while the MCU is running?

    This is my use case: I want to record and analyse / display in the timeline, what my code is doing for a longer period of time, e.g. a few minutes. I cannot halt the MCU during this time. Is this possible at all?
  • Hi Fraengers,
    currently this is not possible. Increasing the the size of the trace buffer in PC memory and thus increasing the amount of trace information available in Ozone is already on our to-do list. The code pane in timeline window will still only be updated once the target is halted, even with this change being available.
    I cannot comment on when this feature will be released.
    Does that answer your question?
    Best regards
    -- AlexD
    Please read the forum rules before posting.

    Keep in mind, this is *not* a support forum.
    Our engineers will try to answer your questions between their projects if possible but this can be delayed by longer periods of time.
    Should you be entitled to support you can contact us via our support system: segger.com/ticket/

    Or you can contact us via e-mail.
  • I there any way I can use Ozone or a J-Link/Trace to visualize interrupt entrys and exits (I don't have a RTOS)? Live or afterwards (if I can record for a few minutes).

    Or is there anything at all, that a J-Trace can do, to get me more live informations. (Besides profiling)
  • Hi Fraengers,
    in the code pane of the timeline window ISRs are displayed in special way, so they can be identified quite easily (different color, rounded corner). In a long trace, however, the view is likely to be too compressed for directly seeing all ISRs at the same time.
    Of course, searching the trace window might also help in navigating the instruction trace.
    What additional live information would you expect to see?
    Best regards
    -- AlexD
    Please read the forum rules before posting.

    Keep in mind, this is *not* a support forum.
    Our engineers will try to answer your questions between their projects if possible but this can be delayed by longer periods of time.
    Should you be entitled to support you can contact us via our support system: segger.com/ticket/

    Or you can contact us via e-mail.
  • I was not asking about the visuals in Ozone. But since you mentioned it, I don't think the round corners are a good idea and make it more difficult to read.


    I was wondering if only interrupt entries and exits can be viewed. To reduce data so a longer period of time can be displayed. I don't care what functions a called inside the interrupts or in the main loop. I'm more interested in the timing of the ISRs (when, how long, priority handling). With other debuggers I saw options like exception trace. Right now, I do it with IOs and a logic analyser. I was hoping to do something similar with the debugger, so I can also correlate it with sampled data.



    There is this ITM thing, where I can write to, e.g. to mark the start and end of an ISR, could this be displayed somehow?



    I am just wondering what a J-Trace can do for me, that I maybe don't know of, since tracing is new to me. More than a J-Link can do and besides tracing every single instruction, which is not so important for me.
  • Hello,

    here you can find an overview of the different trace types and what they can do:
    wiki.segger.com/General_information_about_tracing

    The exception tracing you are referencing is most likely ITM trace. Currently ITM tracing is only partially available within Ozone and is joined with the ETM trace data received via the trace parallel port from target.
    That way we have a gapless instruction trace recording with periodic timestamps.

    However user generated ITM data and events will currently not be displayed in Ozone, but it is on our wishlist.

    One of the reasons why this is not yet available with Ozone is because most of the use cases that the ITM solves is already solved by our tool SystemView, but better:
    segger.com/products/development-tools/systemview/


    From your descriptions I think SystemView would be the better tool choice for your use case where you only want a high level view of your application.

    Best regards,
    Nino
    Please read the forum rules before posting.

    Keep in mind, this is *not* a support forum.
    Our engineers will try to answer your questions between their projects if possible but this can be delayed by longer periods of time.
    Should you be entitled to support you can contact us via our support system: segger.com/ticket/

    Or you can contact us via e-mail.
  • Too bad.
    SystemView may be too much overhead.

    Playing around with tracebuffer and a J-Link Edu V11 I noticed two things. Both happen when power sampling is enabled.

    If you choose to not support power sampling for J-Link Edu/Base/Plus, please at least make in a way it is not disturbing normal operation (or just allow it with a limited sampling rate)

    And yes, I know (now) if I set sampling to “off”, it “solves” this problem. But since I didn't turn it on, or even use the power pane, this was not the first thing that came to mind.


    1. I cannot zoom into the code timeline, y-axis x-axis keeps getting reset


    2. if the connection is lost, waring messages pop up as long as the session is not stopped.

    The post was edited 1 time, last by fraengers: typo ().

  • Hi,

    Not sure why SystemView should be too much overhead. In general it is recommended the tools that fit a given task best. In the case you describe, SystemView appears to be a very good solution.

    I just tried: Zooming on the Y-axis of the code pane works as a charm using shift-mouse wheel. I cannot reproduce the issue you observe, but I also cannot see that you are doing zooming in the Y-axis in your screen recording.

    Power sampling is disabled in the power sampling window. Disabling the power pane in the timeline window just hides the data but does not disable it. The same is true for instruction tracing and data sampling.

    I was also not able to reproduce the issue you describe in bullet 2. Could you please explain in detail how that can be done?

    Regards
    -- AlexD
    Please read the forum rules before posting.

    Keep in mind, this is *not* a support forum.
    Our engineers will try to answer your questions between their projects if possible but this can be delayed by longer periods of time.
    Should you be entitled to support you can contact us via our support system: segger.com/ticket/

    Or you can contact us via e-mail.
  • It says 1us@200MHz per event. For an ISR with 100 kHz, that means 20% of CPU load is only for SystemView events, that may be too much.


    Reproduce 1:
    • Start debug session with J-Link Edu
    • Enable power sampling (if not already enabled)
    • (there is no info that power sampling is not usable. there only may be a warning if the sampling frequency is set to anything >1kHz)
    • halt target
    • the X-axis (not Y, sorry, typo) cannot be moved to the right (manually by dragging or mouse wheel up, or automatically when zooming in on something on the left side of the plot)
      also the time cursor cannot be reset to somewhere else, it will always be at the right end of the plot
      it has nothing to do with trace, it happens also with tracing off
    • set power sampling to off, now it works normally


    Reproduce 2:
    • (I cannot reproduce on my work-PC right now)
    • Start debug session with J-Link Edu
    • Enable power sampling (if not already enabled)
    • Disconnect J-Link USB cable (or some other reason USB connection ist lost, e.g. a disturbance)

    The post was edited 1 time, last by fraengers ().

  • Hi fraengers,
    we were able to reproduce the issues from bullet point #1 and #2. We will provide fixes in a future release of Ozone.
    Best regards
    -- AlexD
    Please read the forum rules before posting.

    Keep in mind, this is *not* a support forum.
    Our engineers will try to answer your questions between their projects if possible but this can be delayed by longer periods of time.
    Should you be entitled to support you can contact us via our support system: segger.com/ticket/

    Or you can contact us via e-mail.