Best way to get started with Ultra96v2 and Petalinux

Hi All,

Can anyone here recommend the best way to get started with ultra96v2 and petalinux? I have done a lot of work with Vivado/Xsdk 2018.3 using an Ultrazed mostly in a freertos environment integrating a collection of Arduino shields using generic Xilinx IP blocks and some custom Verilog logic.

I would like to migrate this over to an ultra96v2 running Petalinux, maybe integrating ROS. I see there is a BSP available for Vivado 2019.1 has anyone attempted to integrate this with custom PL? Can anyone recommend a path forward?

A 2019.2 BSP is also posted now as well.

If you are new to PetaLinux and you are working on Ultra96-V2, then I would encourage you to look at the training courses available at http://avnet.me/TTC_on_Demand

Bryan

Hi Jeremy,

The best way to get started with PetaLinux and the Ultra96-V2 board is to download and install a PetaLinux BSP that Avnet provides. BSPs for PetaLinux 2018.3 and 2019.1 are posted here (a 2019.2 BSP is coming very soon):

https://www.element14.com/community/community/designcenter/zedboardcommunity/ultra96#e14tab2

Xilinx document #UG1144 is very helpful with getting to know the PetaLinux commands and how to “install” the BSP:

https://www.xilinx.com/support/documentation/sw_manuals/xilinx2019_1/ug1144-petalinux-tools-reference-guide.pdf

If you need to setup an Ubuntu Linux host Avnet publishes a guide that will help:
http://avnet.me/vm_install

Cheers,

Tom

Hi jagoddard,
Did you integrate ROS into petalinux?

Why yes, I did.

There is not much information about this but I was able to install ROS on pynq (bionic) based on information in the link below and section 1.3 of the ROS installation procedure. I did not integrate into yocto.

https://www.antongvozdev.com/portfolio/ros-installation/
http://wiki.ros.org/Installation/UbuntuARM

Thanks!
My current dev platform is “x86_64 + ubuntu 16.04 + ROS kinetic + eigen + PCL”. Future dev platform should be “arm64 + linux + ROS + eigen + PCL”.

To achieve that, proposed plan is :

  1. arm64: ZynqMP A53 cores
  2. linux: petalinx(not sure for ros/eigen/pcl) or ubuntu 18.04 or pynq (bionic) ??
  3. ros: melodic(bind with ubuntu 18.04) is first ROS to support arm64

There are some concerns:

  1. A little worried about PYNQ’s support for C/C++ dev env and tools, because the files to be ported are mainly C++.
  2. The relation & comparision between PYNQ and ubuntu 18.04?
  3. Worry about resource consumption of ubuntu 18.04@arm64.

Any suggestion on this?