I have incorporated some custom HDL code into the PlutoSDR, built the FPGA, and built the firmware successfully with my FPGA. I have tested my design by loading the new firmware onto the PlutoSDR and it works, but I wanted some additional FPGA debug visibility for adding some new features. I found this page on the Wiki that describes how to access the FPGA via JTAG:
I purchased these parts (JTAG-HS3+JTAGUART) from Digikey and connected them as shown in the images. After doing so, I was dissapointed that the provided cable with the AD JTAGUART very loosely fits into the holes in the PlutoSDR PCB, so the connection seems flimsy at best. However, if I wiggle the cable into a good position, the red LED on the JTAGUART board lights up and stays illuminated. However, in Vivado 2019.1, I see the Diligent 210299AD0306 cable is detected but no Xilinx devices are detected on the board. I've tried reinstalling the Xilinx cable drivers and rebooting my computer several times to no avail. I know the FPGA is booted and functioning because I can get data off of the PlutoSDR via the Python API. Any suggestions as to what might be wrong? Is my Analog Devices JTAGUART board not functioning correctly? I copied the Vivado error below:
[Labtools 27-2269] No devices detected on target localhost:3121/xilinx_tcf/Digilent/210299AD0306.Check cable connectivity and that the target board is powered up thenuse the disconnect_hw_server and connect_hw_server to re-register this hardware target.
I've also tried every JTAG clock speed option, none of the settings made a difference. I've used the JTAG port on many other reference boards (ZCU102, ZC706) and had no issues connecting to Xilinx FPGAs with the Vivado hardware manager.
All the pins are likely not connected. The LED just indicates power. If I move the connector around it will not show up in Vivado but LED remains illuminated.
Thanks for responding. You are correct, the pins weren't in good contact. I *really* had to push the connector into a certain position and hold it there so all of the pins had enough contact to…
Moved to virtual classroom.
Thanks for responding. You are correct, the pins weren't in good contact. I *really* had to push the connector into a certain position and hold it there so all of the pins had enough contact to establish the communication link. Not very ideal, but I understand that this is just a low cost learning platform so not everything is going to be perfectly designed.