Help with JTAG stuff to unbrick my Pluto sought please?

Digital ATV - The latest generation, cutting edge ATV - Please discuss it all here.
Forum rules
This forum is run by the BATC (British Amateur Television Club), it is service made freely available to all interested parties, please do not abuse this privilege.

Thank you
Basil
Posts: 291
Joined: Tue Sep 10, 2013 7:28 pm

Help with JTAG stuff to unbrick my Pluto sought please?

Post by Basil » Sat Jun 11, 2022 12:37 pm

I have managed to brick my Pluto, dfu-util does not see it, and it's now in a state where just one LED is lit, and it's very dim.

Analog Devices tech help forum suggestion (by an AD engineer) was that the only fix was using JTAG and I would need both the interface board from AD and a cable and dongle from Digilent (sp?).

I purchased those and followed the instructions here after going through hoops to find and download a legacy version of Xilnx programming software that still supported the XMD Console.

https://wiki.analog.com/university/tool ... /devs/fpga

This stuff sees my Pluto and will communicate with it but I am now stuck at where I am below, is anyone familiar with Xinq programming here, that might be kind enough to assist please?


I have come back to this after getting a headache and getting nowhere in the week ;)

I seem close, but no cigars... I *THINK* it's trying to programme the wrong device or in the wrong order, but what do I know?

I am finding on Google others have issues with forcing a target, but maybe I am way off course. Below I copy past the results of trying to run the run.tcl file AD supply in a zip with other files. I set the Xilinx workspace to C:/workspace and unzipped the supplied files in there, and before trying to run the run.tcl I ensured I was in the workspace directory. Does this give a clues as to what's gone wrong please? Even when the none running core is running the same happens. To get it running I have to power down the PlutoSDR and power it up again.

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

****** Xilinx System Debugger (XSDB) v2014.1
**** Build date : Apr 4 2014-14:07:09
** Copyright 1986-2014 Xilinx, Inc. All Rights Reserved.


Got $XILINX_SDK: C:/XilinxSDK/SDK/2014.1

xsdb% connect -host localhost -port 3121 tcfchan#0
::tcfchan#0
xsdb% targets
1 xc7z010
2 APU
3 ARM Cortex-A9 MPCore #0 (Stopped: Suspended)
4 ARM Cortex-A9 MPCore #1 (Running)
xsdb% target 1
xsdb% targets
1* xc7z010
2 APU
3 ARM Cortex-A9 MPCore #0 (Stopped: Suspended)
4 ARM Cortex-A9 MPCore #1 (Running)
xsdb% cd C:/workspace
xsdb% dir
Volume in drive C has no label.
Volume Serial Number is D080-C2AD

Directory of C:\workspace

11/06/2022 09:50 <DIR> .
11/06/2022 09:50 <DIR> ..
10/06/2022 10:31 <DIR> .metadata
20/08/2021 13:12 31,486 ps7_init.tcl
10/06/2022 12:28 <DIR> RemoteSystemsTempFiles
03/03/2017 08:56 257 run.tcl
11/06/2022 10:11 567 SDK.log
20/08/2021 13:12 964,144 system_top.bit
20/08/2021 13:13 448,084 u-boot.elf
5 File(s) 1,444,538 bytes
4 Dir(s) 422,109,966,336 bytes free
xsdb% xmd source -tcl run.tcl

****** Xilinx Microprocessor Debugger (XMD) EngineExecuting user script : run.tcl

JTAG chain configuration
--------------------------------------------------
Device ID Code IR Length Part Name
1 4ba00477 4 arm_dap
2 13722093 6 xc7z010

--------------------------------------------------
Enabling extended memory access checks for Zynq.
Writes to reserved memory are not permitted and reads return 0.
To disable this feature, run "debugconfig -memory_access_check disable".

--------------------------------------------------

CortexA9 Processor Configuration
-------------------------------------
Version.............................0x00000003
User ID.............................0x00000000
No of PC Breakpoints................6
No of Addr/Data Watchpoints.........4

Connected to "arm" target. id = 64
Starting GDB server for "arm" target (id = 64) at TCP port no 1234
Processor stopped

Error Executing User Script : run.tcl
Error :: ERROR: No Elf file associated with target

****** XMD v2014.1 (64-bit)
**** SW Build 881834 on Fri Apr 4 14:06:19 MDT 2014
** Copyright 1986-2014 Xilinx, Inc. All Rights Reserved.

xsdb%


@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

g8gtz
Posts: 1732
Joined: Wed Apr 07, 2010 6:26 pm

Re: Help with JTAG stuff to unbrick my Pluto sought please?

Post by g8gtz » Sat Jun 11, 2022 8:50 pm

https://wiki.batc.org.uk/Adalm_Pluto

Works everytime!

73
Noel

Basil
Posts: 291
Joined: Tue Sep 10, 2013 7:28 pm

Re: Help with JTAG stuff to unbrick my Pluto sought please?

Post by Basil » Sat Jun 11, 2022 9:46 pm

Thanks Noel, but as it won't enter dfu mode (a mode I have used several times before) AD says the only fix is accessing it via the JTAG connector. It's beyond being able to be set in "normal" dfu mode. dfu-util doesn't even see it as there. AD are confident if I access it by JTAG it has a good chance of being fixable.

g8lce
Posts: 340
Joined: Sun Dec 06, 2015 10:26 am

Re: Help with JTAG stuff to unbrick my Pluto sought please?

Post by g8lce » Sun Jun 12, 2022 8:11 am

Just a thought, have you changed the usb lead? It may be low volts or something. Have you just got the small aerials connected so no earth loops etc. are present.
Try another usb socket or computer.

I get various problems with plutos and DFU has always worked for me too.

Martin G8LCE

Basil
Posts: 291
Joined: Tue Sep 10, 2013 7:28 pm

Re: Help with JTAG stuff to unbrick my Pluto sought please?

Post by Basil » Sun Jun 12, 2022 9:27 am

Thanks Martin, but sadly it's not the lead nor the PC, I have tried three leads and on two PC's, it definitely needs JTAG access, but the Xilinx software is buggy as hell, has constant changes so a new version breaks things, or doesn't have the right JTAG console, blah blah, and the generic instructions assume you are already a Linux expert familiar with all the perverse acronyms ;)

There are some kind AD people on the AD forums, including AD eployees, I am homing after this weekend one might have a look at this post, (which I have also crossed to their forum). There are millions of these Zynq-7000 chips in use, I presume there must be a lot of expert programmers for them, too. I just need an English speaking one to take pity! At £200+ a pop for a new one currently I'm not at all averse to paying someone...

Ideally I'd like someone confident to remote to my PC and do it whilst I record HOW it's supposed to be done. The AD guy privately said there'll have been hundreds of Plutos scrapped that JTAG could have put back as new. So probably it's not in AD's interest to be TOO helpful with idiot proof instructions <LOL>


I too have always found DFU got me up and running, but with all modesty I am a real expert at putting this sort of thing into a FUBAR state :)

G7JTT
Posts: 338
Joined: Fri Jun 10, 2016 5:05 pm

Re: Help with JTAG stuff to unbrick my Pluto sought please?

Post by G7JTT » Sun Jun 12, 2022 5:33 pm

Some years ago I had to reprogram a device (not a Pluto) via the Jtag port, I just got a cheap programmer of eBay and it worked fine. Found this site as well if its of any help ?

https://wiki.analog.com/university/tool ... /devs/fpga

Good luck 73 John

Basil
Posts: 291
Joined: Tue Sep 10, 2013 7:28 pm

Re: Help with JTAG stuff to unbrick my Pluto sought please?

Post by Basil » Sun Jun 12, 2022 7:10 pm

Thanks John, those are the instructions I have indeed been trying to follow, with some, but not complete, success :)

Basil
Posts: 291
Joined: Tue Sep 10, 2013 7:28 pm

Re: Help with JTAG stuff to unbrick my Pluto sought please?

Post by Basil » Tue Jun 14, 2022 1:04 am

Now sorted thanks, what a nightmare, but learnt a lot in the process... Not for the feint hearted :) Normal dfu mode reset is trivial compared to JTAG access.

http://www.chriswilson.tv/sdk-ok.jpg

I am mad busy with work right now, but once things calm down I will try and document the procedure. If anyone is desperate to JTAG into their Pluto my e-mail is on QRZ, fire one over and I'll give you my phone number and I'll try and talk you through it. you need the two devices in the link in my first post though. I might be persuaded to have a go at yours if you send it me, but I need to get the 10 way pins that should have been with the AD board, but were not. I soldered 1/8 W resistor lead wires in as pins, and it was a delicate job that I'd rather not have to do on someone else's Pluto :)
Last edited by Basil on Sat Jul 23, 2022 6:38 am, edited 1 time in total.

G8KOE
Posts: 178
Joined: Fri Aug 09, 2019 8:14 am

Re: Help with JTAG stuff to unbrick my Pluto sought please?

Post by G8KOE » Thu Jul 21, 2022 4:14 pm

Hi,
I have lost connection to my Pluto it will not go into dfu mode.
Can anyone recommend a JTAG interface that will work to reprogram my Pluto and hopefully bring it back to life.
Not looking forward to connecting to Pluto over JTAG but will give it a try.

Any help appreciated!

73's
Martin
G8KOE

Basil
Posts: 291
Joined: Tue Sep 10, 2013 7:28 pm

Re: Help with JTAG stuff to unbrick my Pluto sought please?

Post by Basil » Thu Jul 21, 2022 6:11 pm

https://www.ebay.co.uk/itm/334329709599

and you also need


https://www.digikey.co.uk/en/products/d ... AG/6816908

Edited, I put the wrong second link originally, which duplicated the device in the first link. Now corrected.



The adalm-uartjtag should come with the Pluto PCB header pins, mine did not, RS Components had them in stock last time I checked, if you need the part number I can check my account for you.



This is the Xilinx programming software version I know works, you may need to create an account (free) on the Xilinx site to download, I recall they put you through many hoops...

Xilinx SDK v2014.1 Design Suite with SDK for Windows OS

https://www.xilinx.com/support/download ... chive.html

A big (5 gig ++) download.

Once downloaded you need to licence it, which is again convoluted but free.

Finally you need to download a repair patch as the legacy version needed, at least the one I KNOW works, has a bug in it....

For convenience I put it here:

http://www.chriswilson.tv/xmdterm.tcl

Find the original in the xilinx ~/scripts folder, delete or rename it and put the fixed version in its place.

One of the gotchas in all this is that Analog Devices has a recently updated help page for using JTAG with a Pluto at:

https://wiki.analog.com/university/tool ... /devs/fpga

This has the first two Xilinx screenshots showing a latish version of the Xilinx software, which does NOT have the xmd command interface required as shown later in the Analog Devices instructions. So you won't get the GUI, or at least I couldn't get it, with the 2014.1 version that has the xmd command interface.

But once you have seen that a connection has been established, you only need the xmd command page. Analog Devices said that there's an equivalent interface to xmd in the later software, that will work but needs quite different commands, but never told me what they are... So best stick with the old version that still has xmd available, and for which AD cite the required commands.

That is unless you are very familiar with Vivado, in which case you probably aren't reading all this!

I keep editing and updating this as I think of things I've missed, I am very busy with work and it's hard to find the time to create a worthwhile instruction set in one go. So my apologies if it's a bit messy.
Last edited by Basil on Sat Jul 23, 2022 9:52 am, edited 2 times in total.

Post Reply

Return to “DATV - Digital ATV”