Home

>

Components

Additional Board Computer

In this tutorial, we will show you how to connect and use additional board computer, like NVIDIA Jetson or Raspberry PI, on your rover.

Prerequisites

Home

>

Components

Additional Board Computer

In this tutorial, we will show you how to connect and use additional board computer, like NVIDIA Jetson or Raspberry PI, on your rover.

[intro]

What to expect?

Prerequisites

List of components

Mechanical integration

Wiring and electronics connection

Power supply

For supplying power to your BC you need to provide power connection to rovers battery. Our proposed solution is a PowerBox.

It's a module that replaces Leo Rover right quarter and provides additional power sockets.

We will use one of this sockets, and connect our board computer to it, with special cable (you will need to make it on your own), herer is an example for Jetson computer

The cable needs to have correct pluggable terminal block (you get them with power box, but you can also buy them here).

You need to check what voltage your board computer needs, so you plug it in the correct power socket. PowerBox has two types of power sockets:
  • 5V DC power socket (via 12V-5V 9A DC converter) - marked as 5V
  • 12V DC power socket (directly from the battery) - marked as BAT

Software integration

First, make sure you have configured your board computer. You can find instruction for flashing the newest firmware here:

If you have some setup on your board computer, flashing it will remove all your configuration.

To connect the computer we will need to configure additional network interface, but first you need to connect your computer with Raspberry PI in the Main Electronics Box, with ethernet cable (there is special hole in MEB cover, so the cable can fit).

Once you do that, you need to connect via ssh to the Raspberry on the rover. It's the main host on the rover, it places the Access Point, so we need to make the additional configuration on this computer.

When connected, we can start configuring the interface. First go to /etc/netplan. Since Ubuntu 18.04 LTS, Netplan is used for configuring networking. There we will make our configuration file 20-eth-shared.yaml, and include the setup for our network device. In our case, ethernet device was eth0. You can check what is the name on your rover with

and check for some name like ethx where x is a number (it's name automatically given by OS).

Remember the name of the interface that you want to change and type

And paste the following code

/etc/netplan/20-eth-shared.yaml

Here we say that for interface eth0 it will be managed by networkd (by default it would be managed by NetworkManager), its addresses will be from mask 10.1.0.1/24 and it has disabled ipv6 addressess.

You can check if everything is okay with

And then apply changes with enter

Now we also need to add configuration for dnsmasq. To do so go to /etc/dnsmasq.d directory and type

And paste those lines

/etc/dnsmasq.d/etc.conf

Here we say that for interface eth0 addresses given by dhcp will be in range 10.1.0.10-10.1.0.255, the network mask is 24 bits and that assigned ip address will be freed after 12h.

With our configuration, additional BC will have dynamic IP address given by dhcp protocol. If you need you can give it static IP address, but remember that you will have to set manually more things, for this computer to work.

Now we have to restart both network manager and dnsmasq. To do so type:

Now your additional computer should be visible for Raspberry PI.

If you want to check what ip address your board computer has, you can install nmap and use it to check the ip. To do so type on your rover This will scan all ports from 10.1.0.1 to 10.1.0.255 and will print out the used ones.
In output there will be also address of Raspberry Pi, but you can distinguish it from others, as it will have also line Nmap scan report for leo (10.1.0.1)

Examples

What next?

Contents

Need help? Contact us - contact@fictionlab.pl