Make Thread viewer graphical with timelines

Hi,

I am trying to train a few beginner FW engineers on RTOS concepts and have been using the Nordic training videos. However, sometimes, its tough to explain thread execution in firmware. Whiteboarding is great, but would it be to do this: a horizontal time line that you could pan and zoom and above it would be bars indicating which threads were active, blocked, running, and their dependencies shown with little connecting arrows. It can be like the explanations of RTOS threads you see in textbooks, but it was actually live in the debugger.

Again, this is totally a wish list item, but would be great to have. 

Thanks,

Devang 

Parents
  • Hello,

    Thank your for the suggestion! I will forward this to our VS Code team as a feature request. 

    Best regards,

    Edvin

  • The team replied that it would be an interesting feature. However, we have one limitation. When the application is running, the debugger can't communicate with the target. This means it can't know what happened before it pauses, and in this case, it can only know the current state of the threads. They said:

    "It would be nice to know how the user imagined this feature given this fact. Should we build a timeline while 'stepping'? How would it work while 'run'+'pause'+'run'+'pause' cycle when we can't know anything during running?"

    I do understand if this is something you haven't considered, but seeing as you are involved in this training situation, we would appreciate it if you have any input/suggestions.

    Best regards,

    Edvin

  • Thanks for getting back, I would imagine this the same way any debugger works. So yes, when you step through the code, you should see which thread took the execution time using a bar, as well as acquired a certain mutex. Or if the code were free-running and someone were to pause it, just show the last thread that was being run & mutex that was acquired. Same for semaphores, but just showing count change works for that.  

  • Thank you,

    I will forward this to our VS Code extension team.

    Best regards,

    Edvin

Reply Children
Related