Jump to content
  • 0

Zybo getting started scenario (Invalid DAP ACK value: 0)


Aeneas

Question

Followed the Zybo Getting Started scenario with Vivado and then SDK,
Program FPGA results in "Done" light going on.
However,the  Run As→Launch on Hardware(GDB)   results in error message
"  Unexpected error while launching program: Error while running ps7_init method.
   Cannot write to target
      Cannot access JTAG-DP: invalid ACK value (0x00, expected=0x02)
      Error Address = 0xf800074c   "
Jumpered for USB power, with both the USB and the micro-USB plugs connected to laptop,
which together cause  PGOOD  to be lit on.
JP5 jumpered for JTAG.
What is causing this .elf  "Cannot write" error, when the prior Program FPGA does result in Done success ?

More experiences:

=============================================================================
XSDB
-----------------------------------------
Program FPGA
(success, with Done light on)
-----------------------------------------
100%    1MB   1.9MB/s  00:01 
----------------------------------------- 
mrd 0xF800025C
xsdb% Context does not support memory read. Unsupported command
-----------------------------------------
System Debugger on Local   app.elf
-----------------------------------------
Info: ARM Cortex-A9 MPCore #0 (target 2) Stopped at 0xffffff28 (Suspended)
Info: ARM Cortex-A9 MPCore #1 (target 3) Stopped at 0xffffff34 (Suspended)
-----------------------------------------
Error while launching program:
Invalid DAP ACK value: 0
-----------------------------------------
mrd 0xF800025C
F800025C:   00000000
-----------------------------------------

================================================================================

Is this normal for this PCB or do I have a bad board ?

Link to comment
Share on other sites

19 answers to this question

Recommended Posts

31 minutes ago, bino said:

I use Zybo too ...

Just my 2 cents ... Are you use the logic push buttons (which generates terminal messages with this demo) or only try the switch buttons on the left down ?

Diligent should pay you those 2 cents -- that clarified their vague instructions in Getting Started.
Pressing the buttons, not the aforementioned switches,
does indeed generate the text messages through COM16 into TeraTerm.

Onto another one of their introductory scenarios.
Hopefully no more minefields.

Link to comment
Share on other sites

1 hour ago, sbobrowicz said:

Just so I am certain we are on the same page, please answer these two questions:

1) After you program the ZYBO, when you toggle SW0 up and down, does LED0 (labeled LD0) turn on and off?

2) When you connect to the ZYBO in a terminal program and then program the ZYBO, does LD8 (labeled RX) blink when you press BTN0? When you send characters from the terminal to the ZYBO using the terminal program, does LD9 (labeled TX) blink?

I'm not running off of any training, just calling on my experience working with the ZYBO in SDK. 

Probably the easiest way for us to figure this out is for you to provide me with your .hdf file. It is the "hardware handoff" file from vivado, and contains everything the tools need for me to recreate your SDK workspace. You can find the .hdf file in the hardware platform project in SDK.

1) I already stated that the LEDx toggles relative to the movement of switch SWx.
2) I connect to the terminal program TeraTerm after having sent the SDK program
into the device with  Run History/System Debugger on Local app.elf
I see no LED activity on LD8 (RX) or LD9 (TX) on Program FPGA or on the System Debugger on Local .
When Program FPGA completes LD10 (Done) is lit.

After these programmings I open TeraTerm and pull down Setup/Serial Port... ,
and then select COM16 and change 9600 to 115200 and then OK.
The title line changes to COM16 - Tera Term VT .
I then toggle the SWx and the LDx lights go on/off.
No text comes out of TeraTerm.

So far I have not heard you state that you have done this yourself today and
seen messages from TeraTerm, so I assume there are some Bugs in Vivado or in the Zybo.

 

 

Link to comment
Share on other sites

Just so I am certain we are on the same page, please answer these two questions:

1) After you program the ZYBO, when you toggle SW0 up and down, does LED0 (labeled LD0) turn on and off?

2) When you connect to the ZYBO in a terminal program and then program the ZYBO, does LD8 (labeled RX) blink when you press BTN0? When you send characters from the terminal to the ZYBO using the terminal program, does LD9 (labeled TX) blink?

I'm not running off of any training, just calling on my experience working with the ZYBO in SDK. 

Probably the easiest way for us to figure this out is for you to provide me with your .hdf file. It is the "hardware handoff" file from vivado, and contains everything the tools need for me to recreate your SDK workspace. You can find the .hdf file in the hardware platform project in SDK.

Link to comment
Share on other sites

21 minutes ago, sbobrowicz said:

Does the TX led flash when characters are sent from the terminal as I described above? This will determine if the problem is with the terminal->UART connection or the code running on the ZYBO

Yes I am seeing the LEDs light when turned on and off when the switch is turned off.
In what window/tab (the exact window/tab name) are you seeing the messages displayed ?
Do you have access to a Zybo and Vivado right now or are you responding based on
memory or training materials ?

 

Link to comment
Share on other sites

I have established that of the 3 com ports on this laptop, com16 is the one
which pops up in //Device Manager//Ports// when the Zybo is plugged in.
From there, I have seen No messages while toggling the Zybo switches, either in the
SDK Terminal window (or Console window) after receiving the "Connected COM16 at 115200" from SDK Terminal,
or through TeraTerm after disconnecting SDK Terminal connection
and connecting at 115200 8/1 through the Serial Port command.
 

Link to comment
Share on other sites

xil_printf will be relayed directly to the UART port of the FTDI chip on the ZYBO. When you connect the ZYBO to your computer, a new COM port should appear. That is the one you will need to connect to in a terminal program. Unfortunately which com port corresponds to the ZYBO is different on different computers. On my computer, COM1 and COM2 are always there but reserved for something else, and the ZYBO will appear as some COM number higher than the two of those.

A good way to find this out is to just connect the ZYBO to your computer and open a terminal program. Connect to a COM port that you think might be the ZYBO and press a key at the terminal (some terminal programs also require you to press enter). When you do this, you should see a yellow LED flash on the ZYBO next to J11 if you have chosen the correct COM port.

Link to comment
Share on other sites

In the console pane you should be able to open a terminal panel. From there you connect to the new COM port that showed up since you plugged in ZYBO with 115200 baud, no parity. 

Alternatively open up an external terminal program and connect to the ZYBO in that. I use teraterm, i don't like using the SDK terminal.

No clue about the forum formatting, I'll run it up the chain

Link to comment
Share on other sites

33 minutes ago, sbobrowicz said:

That sounds promising... keep us posted

The Getting Started demo is now working and LEDs are now lighting
when switches are adjusted on/off.
Where does the FTDI Serial Port data from the micro-USB appear within the SDK context ?

Also, how does the writer on this forum avoid the double-space default in typing messages (IE11) ?

Link to comment
Share on other sites

1 hour ago, sbobrowicz said:

What I meant is that no cable should be connected between J10 and your laptop. That USB port is used when the ZYBO is running Linux and wants to behave like a USB host. The USB micro port beneath J10 (J9), should also not be connected to anything in your situation.

The proper configuration to power from USB is to set JP7 to USB and connect a USB host to J11. Here is a diagram of how I think your setup should look:


----------
|        |     USB     -----------   USB Micro cable     ------------
| Laptop | ----------->| USB Hub | --------------------->| J11      |
|        |             -----------                       |   ZYBO   |
----------                                               ------------

The USB hub should be powered, as you mentioned.

I tried that configuration  as one iteration but found that PGOOD would flash but would not be solid.
The J10 standard USB connector also must be connected to the 2 Amp USB Hub for the PGOOD to be solid.

--------------------------------------------------------
However, I just tried the micro-USB cable that comes from Digilent (which had to be bought separately and just arrived) and now the PGOOD Is now solid without the J10 USB connected.
(I was using a cell phone micro-USB cable).
I will try the SDK again.

 

 


 

Link to comment
Share on other sites

What I meant is that no cable should be connected between J10 and your laptop. That USB port is used when the ZYBO is running Linux and wants to behave like a USB host. The USB micro port beneath J10 (J9), should also not be connected to anything in your situation.

The proper configuration to power from USB is to set JP7 to USB and connect a USB host to J11. Here is a diagram of how I think your setup should look:

----------
|        |     USB     -----------   USB Micro cable     ------------
| Laptop | ----------->| USB Hub | --------------------->| J11      |
|        |             -----------                       |   ZYBO   |
----------                                               ------------

The USB hub should be powered, as you mentioned.

Link to comment
Share on other sites

35 minutes ago, sbobrowicz said:

Can you elaborate on what you mean here? You should have a single USB cable connected to your computer and to the micro-USB connector on the ZYBO (J11).

The zybo can draw more than 500 mA after the FPGA is programmed, which means that after the FPGA is getting programmed it is possible that your laptop is "drooping" the 5V rail below 5V due to excessive power consumption, and this is causing your problem. Does the problem still occur when you are connected through your externally powered USB hub? Do you have another computer you could try?

This might also be an issue with SDK. What version of Vivado are you using?

There are 2 USB cables connected from the laptop to the Zybo pcb, at J10 and J11.
This is a vague sentence:
" You should have a single USB cable connected to your computer and to the micro-USB connector on the ZYBO (J11)."
-- do clarify.
What should be the USB configuration, when Zybo JP7 is jumpered for USB power and JP5 is jumpered for JTAG ?
All of what I am doing now is through the USB Hub, with the 5V/2.0A power supply plugged into the USB Hub.

 

 

Link to comment
Share on other sites

 

On 12/6/2016 at 4:13 AM, Aeneas said:

Jumpered for USB power, with both the USB and the micro-USB plugs connected to laptop,

Can you elaborate on what you mean here? You should have a single USB cable connected to your computer and to the micro-USB connector on the ZYBO (J11).

The zybo can draw more than 500 mA after the FPGA is programmed, which means that after the FPGA is getting programmed it is possible that your laptop is "drooping" the 5V rail below 5V due to excessive power consumption, and this is causing your problem. Does the problem still occur when you are connected through your externally powered USB hub? Do you have another computer you could try?

This might also be an issue with SDK. What version of Vivado are you using?

Link to comment
Share on other sites

10 hours ago, jpeyron said:

Hi Aeneas,

What OS are you using? Have you tried using an external usb hub? Are you able to see the board in the device manager? Are the drivers up to date? I found a thread with a similar error here.

thank you,

Jon 

//Windows 7 64//i7-2620M//Vivado v2016.2 (64-bit)//SW Build 1577090--June 2//IP Build 1577682--June 3//
In Device Manager the board appears as:
USB Composite Device
USB Serial Converter A
USB Serial Converter B

To which drivers do you refer ?  Where is the installer ?

I have configured with USBs directly connected to the laptop, and alternately
with a USB Hub, with a 5V/2.0A power supply plugged into the USB Hub,
the power supply being required to obtain the PGOOD light on.

 

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...