PX4 Toolchain Setup
Configuring the toolchain for PX4.
Basic Toolchain
To download the PX4 Firmware, follow the steps shown below
sudo apt-get install python python3 python-pip python3-pip
sudo apt-get update
sudo apt-get upgrade
pip3 install kconfiglib
pip3 install pyserial
pip3 install --user empy
pip3 install --user toml
pip3 install --user numpy
pip3 install --user pandas
pip3 install --user jinja2
pip3 install --userpyyaml pyros-genmsg packaging
sudo apt-get install libgstreamer-plugins-base1.0-dev gstreamer1.0-plugins-bad gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-ugly -y
sudo apt-get install libprotobuf-dev libprotoc-dev protobuf-compiler libeigen3-dev libxml2-utils python3-rospkg python3-jinja2
sudo apt-get install ros-noetic-mavros ros-noetic-mavros-extras ros-noetic-mavlink python3-catkin-tools python3-rosinstall-generator
wget https://raw.githubusercontent.com/mavlink/mavros/master/mavros/scripts/install_geographiclib_datasets.sh
sudo bash ./install_geographiclib_datasets.sh
After that:
cd ~
mkdir -p ros/firmware_ws/src
cd ros/firmware_ws
catkin init
cd src
git clone https://github.com/PX4/PX4-Autopilot.git --recursive
cd PX4-Autopilot
git checkout v1.11.3
Write the following in .bashrc
(done by typing code .bashrc
in the terminal):
source ~/ros/firmware_ws/src/PX4-Autopilot/Tools/setup_gazebo.bash ~/ros/firmware_ws/src/PX4-Autopilot ~/ros/firmware_ws/src/PX4-Autopilot/build/px4_sitl_default > /dev/null
export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:~/ros/firmware_ws/src/PX4-Autopilot
export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:~/ros/firmware_ws/src/PX4-Autopilot/Tools/sitl_gazebo
Finally, if you have been successful, you should see a drone hovering in the middle of gazebo, upon typing:
roslaunch px4 mavros_posix_sitl.launch
Do NOT use the convenience Bash scripts provided on the website
Follow the instructions at PX4 Development Guide for Linux (Ubuntu/Debian).
We'll be using NuttX based hardware, so AVOID Snapdragon Flight, Raspberry Pi and Parrot.
Steps to follow:
Last updated