0

I have tried to connect to a digilent ZedBoard using my host PC, which I can do using UART, but I am not able to ssh into the board or further use my host PC internet connection to access the internet through the ZedBoard.

  • Zedboard is running: Xillinux distribution for Zynq-7000 EPP
  • Host PC is running: Ubuntu 16.04

How should I set this up?

nico
  • 1,136
  • 1
  • 15
  • 33

1 Answers1

1

We will go through the steps of communicating to a digilent Zedboard using the UART and the Ethernet port.

Using UART port

Connect the host (USB) to the zedboard's UART port (micro USB) and execute on the host:

# Install minicom
apt update && apt install minicom
minicom –D /dev/ttyACM0 –b 115200 -8 -o 

Congratulations, you are connected to the zedboard * For minicom help: CTRL+a z * To exit minicom CTRL+a x

Connect using the board's ethernet port

Connect the zedboard to the host using the ethernet port on the host system, or an ethernet to usb adapter. By default the zedboard's os has eth0 cunfigured to have the static ip of: 192.168.1.10

Configure on the host:

  1. Network Connections > (Select the connection interface to the zedboard) > Edit > IPv4 Settings:
  2. Change Method to Manual
  3. Edit Address to: 192.168.1.1
  4. Edit Netmask to: 255.255.255.0

Use the menu on the host to disconnect and connect to the interface that you have just configured.

  • Connect to the board by: ssh root@192.168.1.10

Share your PC's internet with the zedboard

Network Connections > (Select the connection interface) > Edit > IPv4 Settings: * Change Method to Share to other computers

Use the menu on the host to disconnect and connect to the interface that you have just configured execute ip addr and confirm the ip of the connection interface that is being shared

  • 10.42.0.1 in my machine (this may be different in your machine)

Use minicom to connect to the board (see above).

In the ZedBoard:

  1. Edit the file /etc/network/interfaces
# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
address 10.42.0.10
netmask 255.255.255.0
gateway 10.42.0.1
  1. And fix your DNS resolver by editing the file /etc/resolv.conf to
nameserver 10.42.0.1

Execute the command to change the configurations of your zedboard

ifdown eth0; ifup eth0

And voiala! At this point should would be able to ping your host at:

root@localhost:~# ping 10.42.0.1
PING 10.42.0.1 (10.42.0.1) 56(84) bytes of data.
64 bytes from 10.42.0.1: icmp_req=1 ttl=64 time=0.424 ms
64 bytes from 10.42.0.1: icmp_req=2 ttl=64 time=0.498 ms

Ping a internet hosted website 8.8.8.8 through your host connection:

root@localhost:~# ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_req=1 ttl=53 time=6.93 ms
64 bytes from 8.8.8.8: icmp_req=2 ttl=53 time=6.89 ms
64 bytes from 8.8.8.8: icmp_req=3 ttl=53 time=7.22 ms

And if you have setup /etc/resolv.conf correctly you can also access the internet using full domain names:

root@localhost:~# ping www.google.com 
PING www.google.com (172.217.10.132) 56(84) bytes of data.
64 bytes from lga34s16-in-f4.1e100.net (172.217.10.132): icmp_req=1 ttl=53 time=7.02 ms
64 bytes from lga34s16-in-f4.1e100.net (172.217.10.132): icmp_req=2 ttl=53 time=7.20 ms

Additional notes

Files to keep in mind

/etc/network/interfaces describes the network interfaces
/etc/hostname configures the nameserver credentials
/etc/hosts resolves IP addresses to hostnames
/etc/resolv.conf configure your DNS resolver
nico
  • 1,136
  • 1
  • 15
  • 33