I used Serial Wire Viewer (SWV) for the first time around a month ago. I really enjoy troubleshooting and thought that I knew all the fundamentals until I discovered this feature!

SWV enables us to use the “tracing” feature which allows exporting in real-time internal activities performed by the CPU. However, the protocol uses the SWO pin to exchange data with the debugger. The developer must be sure that the pin setting is correct before he/she begins. I did not know this requirement, and it took my time a lot until I recognized…

How to be sure about pin settings? The board/user CPU’s manual is a good reference to start. Open it, and search for “SWO”, “SWV”, and “trace”. Or there may be a section named “Advanced Debugging”. You can either look through the search results or through the section. Here is an example of my search result:

SB8 bridge should be on for SWO-PB3

To be sure about the PB3 function, you also can search for it. I double-checked and soldered SB8… Then, it worked!