I just re-read myself and I don't think I was very clear. Let me explain below the experiment I'd like you to conduct:
1. Power up a TAG3 with USB cable.
2. Turn dipswitch 2 off.
3. Press and hold BOOT_ROM switch
4. Press RESET
5. Release BOOT_ROM switch
6. Turn dipswitch 2 on
7. On host, 'make ... recover'
On our TAG3 boards, this FAILS. And the same happens with dipswitch 1 and 3.
However, if we leave the dipswitches on recovery works.
This recovery procedure looks like a poorly designed (and documented) hackjob from here...
Yes, but based on the instructions posted on this thread by a Broadcom engineer: Re: Unable to (re) program BCM20736 , also reproduced above, the UART must be disconnected (which is the equivalent to turning OFF dipswitches 1-4).
So I guess the forum instructions are incorrect?
I don't recall the specific context in that thread, but the gentleman who was helping the user in the thread designed the firmware, so it's unlikely that method is incorrect (appears to be another method to achieve the same result for some). I have not had time to study the schematic and SW4 to determine if the advice given maps directly to all SW4 switch settings = OFF.
Since I am limited in my understanding of how the firmware works internally, I typically refer users to the method in the Quick Start guide as we can support that process without having to get the developers involved.
Right now our only theory is that the 1.8V FTDI cable might be producing voltage levels that marginally work. If recovery draws slightly more current than normal firmware download, it might be enough to bring the levels on the UART signals below the minimum threshold. That is the only explanation I can think for why normal download would always work and recovery always fails, with the same board and the same 1.8V cable. As you see this is a very weak theory but we'll see.
We will only be able to test that theory next week when we receive the 3.3V FTDI cables.
1 of 1 people found this helpful
We finally received the 3.3V FTDI cable and we have recovered all our boards.
Lesson learned: do not use a 1.8V FTDI cable (TTL-232RG-VREG1V8-WE FTDI, Future Technology Devices International Ltd | 768-1070-ND | DigiKey). Our 1.8V cable can reliably program devices but cannot recover them.
Thanks for everyone's support!
This is great news! Enjoy the holidays.