I built my own board and I am trying to use the JTAG connections. It does not seem to work. It only uploads a small percentage of time and even when it does, I am not to sure it is uploading correctly. I thought it was the reset circuit, because on the small amount of times I wanted to upload, I need to power cycle the board in order for the code to take action. I just tried SWD by random luck. It works really well. So, the question is, why does SWD work and not JTAG? With SWD, when code uploads, I do not have to power cycle the board. When I select JTAG in TrueStudio, are they expecting the 20 pin JTAG? I am kind of dumbfounded as to why one works well and the other does not. Also, under JTAG, in order to upload code, I have to do a core reset. If I try a hardware reset, it does not work at all.