• 0
GogMagog

Silence from the ZYBO_getting_started step-by-step

Question

I am fighting to get any one of 5 different simple ZYBO demos to work. At all. I can download bitfiles with my own Verilog code and blink, or scan, or pulsate the LEDs, and get behaviour changes based on buttons and switches ... so I know the board works, but nothing I do with the with the processor core (PS block) works.

I am here looking for information on how to get some kind of information out of the board so I can figure out what's going on. The demo I am working on now is this one:

https://reference.digilentinc.com/learn/programmable-logic/tutorials/zybo-getting-started-with-zynq/start

It does not ask for a Debug Configuration, or a Run Configuration, ... just the Run as -> Launch on hardware.

There is a terminal setup at the end of that tutorial. Frankly I don't know why a separate console is needed since SDK has a "Console" and an "SDK Terminal". Nonetheless, I tried 'screen' and putty as others recommended, then minicom as well ... all I ever see is a blank screen. I don't know what I should expect to see really. I followed the tutorial to the letter. The only indication I get that things are connected at all is that with screen and putty, when I hit any key, I see ZYBO's TX LED flash once.

I am running Ubuntu 16.04 and Vivado 2016.4. I have lots of Xilinx experience, but all command line and not with SDK (so telling me "It's just like ISE but ..." will make me cry. I just want something out of the console. Smoke would be nice.

If it helps, I do see this in XSCT Console:

Downloading Program -- /-----/projects/zybo/ZYBO_getting_started/ZYBO_getting_started.sdk/getting_started_with_ZYBO2/Debug/getting_started_with_ZYBO2.elf
    section, .text: 0x00100000 - 0x00102467
    section, .init: 0x00102468 - 0x0010247f
    section, .fini: 0x00102480 - 0x00102497
    section, .rodata: 0x00102498 - 0x0010263b
    section, .data: 0x00102640 - 0x00102adb
    section, .eh_frame: 0x00102adc - 0x00102adf
    section, .mmu_tbl: 0x00104000 - 0x00107fff
    section, .init_array: 0x00108000 - 0x00108003
    section, .fini_array: 0x00108004 - 0x00108007
    section, .bss: 0x00108008 - 0x00108037
    section, .heap: 0x00108038 - 0x0010a03f
    section, .stack: 0x0010a040 - 0x0010d83f
100%    0MB   0.5MB/s  00:00    
Setting PC to Program Start Address 0x00100000
Successfully downloaded /-----/projects/zybo/ZYBO_getting_started/ZYBO_getting_started.sdk/getting_started_with_ZYBO2/Debug/getting_started_with_ZYBO2.elf
Info: ARM Cortex-A9 MPCore #0 (target 2) Running

So it's "running", there is no debug config, and the Hello World demo says I should see:

> The demo will be running on the ZYBO.  Try playing around with the 4 switches (labeled SW0-SW3). Doing so should light its respective LED. Also over the serial port, pressing each button (labeled BTN0-BTN3) will produce the message “button x pressed”.

Any suggestions appreciated. What do I do? Create a debug config for this and try again?

GogMagog

 

Share this post


Link to post
Share on other sites

8 answers to this question

Recommended Posts

  • 0

Hi @GogMagog,

First off, make sure that you are using the board files to ensure that the Zynq processor is configured correctly.  I just went through the getting started with zynq witth Vivado 2016.4 in Ubuntu 16.04(VM) and I have attached my project below. Here is a link to a forum thread that deals with setting up terminal for Ubuntu 2016.4. You should be able to use the terminal console on SDK unfortunately I was not able to get SDK's terminal to work. I have had problems using SDK's terminal window in both window and linux environments.  I would believe you would still need to add your self to the dialout group using the terminal command below.

sudo adduser $USER dialout

cheers,

Jon

 

Zybo_GSWZ.tar.gz

Zybo_gswz_linux_1.jpg

 

Zybo_gswz_linux_3.jpg

Edited by jpeyron

Share this post


Link to post
Share on other sites
  • 0

Thanks.

I should have mentioned that I did all that. I can program the PL with my own Verilog code and that works. It's the PS that doesn't work. Independent of the console, if that demo is meant to change the LEDs, it's not doing it for me. Here are some screenshots. I'm in the dialout group. It shows the selected board. I start with the vcse_server, then I launch Vivado. There is a screenshot of the only thing I can get minicom to do ... respond to Ctrl-A Z.

Not sure what to try next.59b87348184dc_Screenshotfrom2017-09-1216-35-44.thumb.png.52e536771114427fe557d976ca61042b.png59b873546abe4_Screenshotfrom2017-09-1216-43-02.png.fb0bbea81f65137316497b255da9990b.png

Share this post


Link to post
Share on other sites
  • 0

Hi @GogMagog,

Are you using the board files? Are you changing anything in the Zynq processor?  Could you post an screenshot of your Vivado block design? Have you tried using my project that I posted above?

thank you,

Jon

Share this post


Link to post
Share on other sites
  • 0

Hi Jon,

I'm not sure what you mean by "Are you changing anything in the Zynq processor?" I really tried to follow to the letter the tutorial. If that means changing anything in the Zynq, then I am. I don't know what you mean by "using the board files" since in order to create the HW wrapper and export HW to SDK, then that's required, yes?

On this:

> Have you tried using my project that I posted above?

not yet .... I'm running an intelligent recursive diff of it first.

Here's the block design:

59b87c6924c9b_Screenshotfrom2017-09-1217-28-01.thumb.png.31fbe3a8ad4d343367dda2233672e132.png

Share this post


Link to post
Share on other sites
  • 0
13 hours ago, jpeyron said:

Hi @GogMagog,

Are you using the board files? Are you changing anything in the Zynq processor?  Could you post an screenshot of your Vivado block design? Have you tried using my project that I posted above?

thank you,

Jon

Hi Jon,

I used your project and the LEDs respond to the switches. There is clearly something I'm not doing according to the Getting Started, or something you just know to add. I'll be doing a side-by-side compare to see what I've left out. I didn't even export hardware. Just loaded it, programmed the device, started SDK, run->launch on hardware. The serial port still does not work, but that's a different issue now (different because before, without the LEDs changing, I shouldn't be expecting the program to be running).

Thank you for your help on this. I'll post a solution when I uncover my error. 

GogMagog

Share this post


Link to post
Share on other sites
  • 0
On 9/13/2017 at 7:20 AM, GogMagog said:

Hi Jon,

I used your project and the LEDs respond to the switches. There is clearly something I'm not doing according to the Getting Started, or something you just know to add. I'll be doing a side-by-side compare to see what I've left out. I didn't even export hardware. Just loaded it, programmed the device, started SDK, run->launch on hardware. The serial port still does not work, but that's a different issue now (different because before, without the LEDs changing, I shouldn't be expecting the program to be running).

Thank you for your help on this. I'll post a solution when I uncover my error. 

GogMagog

I'm "resolving" this since it all works now. I noticed while running the project from Jon that the log files contained paths to other projects. I did have 6 other projects attempted. I took a guess at purging.

Today I "rm -rf'd" all projects but two, and started anew. Now it works. Clearly the error was my own and unknown.

59bd72611a233_Screenshotfrom2017-09-1611-48-11.png.05c4de4ad9ae424e387ffc0c422988fa.png

Thanks again for your help. Just for fun I've added the "hello.c" program I modified. I needed to make sure I could make simple changes and that it truly was my code running: helloworld.c

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now