Ubuntu 20 + Python3 setup

This comment contains the current versions of my stack and the installation instructions. I will update it as needed if something changes in the future.

Dependencies & versions

  • Ubuntu 20.04 LTS (all updates installed as of 22/03/2021).
  • Python 3.8.5.
  • MAVProxy 1.8.34 (latest version as of 22/03/2021).
  • ArduCopter 4.0.7 (latest version as of 22/03/2021).

Installation instructions

  • Ubuntu 20.04: Download the latest image from the official website, do a minimal installation, and upgrade all packages available.
  • Basic development tools:
sudo apt update
sudo apt install build-essential manpages-dev git
  • Python3:
sudo apt-get install python3-dev python3-pip
# Set python3 alternative in the system, as some tools like ardupilot’s waf try to simply use “python”. 
# Replace the — ligature from install with a double dash '--'.
sudo update-alternatives —install /usr/bin/python python /usr/bin/python3 10
  • MAVProxy:
# Note that for MAVProxy, this package and all of its dependencies can also be installed through pip.
# I find using pip to be cleaner (keep the python dependencies within the python package manager).
# However, I did it as described bellow because those are the instructions provided by the Ardulink documentation.
sudo apt-get install python3-opencv python3-wxgtk4.0 python3-matplotlib python3-lxml python3-pygame
pip3 install PyYAML mavproxy --user
echo "export PATH=$PATH:$HOME/.local/bin" >> ~/.bashrc
  • Ardupilot
cd $courseRoot
mkdir apm
cd apm
git clone -b Copter-4.0.7 https://github.com/ArduPilot/ardupilot

Course progress

I have now finished the “Ardupilot and SITL introduction” section and all exercises work perfectly with these versions of the software. If I run into any issues in future lessons, I’ll update this thread with workarounds/fixes.

Cheers!

Additional resources

2 Likes