Skip to content

autognc/ELDP_IntelAeroInstructions

Repository files navigation

ELDP_IntelAeroInstructions

NOTE: Give yourself a full day of work to complete the instructions below!

  1. Flash Intel Aero board as described in here (do not install the drivers for the D435 camera!). When installing Ubuntu, make sure to install WITHOUT using the internet, otherwise some drivers will break.

If you don't want the drone to create its own hotspot on boot, run the following command on Ubuntu:

nmcli c down hotspot

NOTE: When booting Ubuntu, DO NOT choose the most updated kernel version, you need to choose the Intel Aero kernel (it is actually the default one).

  1. Install ROS Kinetic with Realsense ROS nodes.

  2. Install realsense 2.0 SDK by following the intructions in here.

  3. Create a catkin workspace.

  4. Install realsense package in catkin_ws:

sudo apt-get install ros-kinetic-ddynamic-reconfigure
cd ~/catkin_ws/src
git clone https://github.com/autognc/realsense-ros
cd ~/catkin_ws/src/realsense
git checkout lockheed
cd ~/catkin_ws
catkin_make -DCATKIN_ENABLE_TESTING=False -DCMAKE_BUILD_TYPE=Release
  1. Install desired ROS packages:
cd ~/catkin_ws/src
git clone https://github.com/radionavlab/mg_msgs.git
git clone https://github.com/radionavlab/px4_control.git
git clone https://github.com/autognc/odom_relay
git clone https://github.com/AkellaSummerResearch/pcl_compression.git
git clone https://github.com/marcelinomalmeidan/image_filters.git
git clone https://github.com/AkellaSummerResearch/capture_waypoints.git
cd ~/catkin_ws/src/px4_control
git checkout lockheed_quads
cd ~/catkin_ws
catkin_make
  • Install ORB-SLAM2 (this is not within catkin_ws)

    • Add the following line to ~/.bashrc:
     export ROS_PACKAGE_PATH=${ROS_PACKAGE_PATH}:~/ORB_SLAM2/Examples/ROS
    

    Source ~/.bashrc:

     source ~/.bashrc
    
    • Install ORB-SLAM2
     sudo apt-get install libglew-dev
     cd ~
     git clone https://github.com/stevenlovegrove/Pangolin.git
     cd Pangolin
     mkdir build
     cd build
     cmake ..
     cmake --build .
     cd ~
     git clone https://github.com/marcelinomalmeidan/ORB_SLAM2
     source ~/.bashrc
     cd ORB_SLAM2
     ./build.sh
    
  1. Update Px4
  • NOTE: You can either compile Px4, or use the compiled version which is already in this repository. The compiled version of intel_aerofc-v1_default.px4 can be found in this repository within Files/intel_aerofc-v1_default.px4. Copy this file into /etc/aerofc/px4, and execute:
cd /etc/aerofc/px4/
sudo aerofc-update.sh intel_aerofc-v1_default.px4

The instructions below guide you on compiling .px4 (in case you want to compile a different version)

cd ~/Downloads
git clone https://github.com/PX4/Firmware.git
cd Firmware
git checkout v1.9.0
make intel_aerofc-v1_default
  • Copy the file /home/aero/Downloads/Firmware/build/intel_aerofc-v1_default/intel_aerofc-v1_default.px4 into /etc/aerofc/px4 (note that the file might already exist in there, so you want to rename the old file if you want to have a backup of the original px4 version for the Intel Aero.
cd /etc/aerofc/px4/
sudo aerofc-update.sh intel_aerofc-v1_default.px4
  1. Load Px4 parameters into the drone using QGroundControl

Open QGroundControl (you can find it in the Files folder within this repository:

./Files/QGroundControl.AppImage
  • On the top left corner, click on the three gears. Then, click on parameters (bottom left two gears).

  • On the top right, click on Tools, then Load from file.... Add the file aero.params

  1. Calibrate the sensors on the drone
  • Open QGroundControl:
./Files/QGroundControl.AppImage
  • On the top left corner, click on the three gears. Then, click on Sensors. Go through the procedure of calibrating the Gyroscope, Accelerometer, and Level Horizon.
  1. Increase the speed for mavlink communication:
  • Edit the file /etc/mavlink-router/main.conf, and change the TCP speed to TcpServerPort=921600.
  1. Disable wireless power saving

The Aero board saves energy on Wifi by throttling it at times. In order to disable it, open /etc/NetworkManager/conf.d/default-wifi-powersave-on.conf and change the wifi.powersave parameter from 3 to 2. Values are 0 (use default), 1 (ignore/don't touch), 2 (disable) or 3 (enable).

Reboot the drone for these changes to go into effect.

  1. Log Px4 flights (this is not an instruction, this is a reference to where to find log data)
  • Px4 Flights are automatically logged in /var/lib/mavlink-router. You can upload the *.ulg files into this link to visualize plots of the drone's data during flight.
  1. Flash the TX2 board as described in here.

  2. Install barrier (optional: barrier allows mouse and keyboard on the Intel Aero to be commanded within the network):

sudo apt install git cmake make xorg-dev g++ libcurl4-openssl-dev \
                 libavahi-compat-libdnssd-dev libssl-dev libx11-dev \
                 libqt4-dev qtbase5-dev xdotool
git clone https://github.com/AkellaSummerResearch/barrier
cd barrier
./clean_build.sh
cd build
sudo make install
  • Run barrier once to save fingerprint

     ./barrier/build/bin/barrier
    
  • Configure barrier to start with terminator

    • Right-click on terminator window, click on Preferences, within Layouts add Custom command to desired window for barrier to run on. You will need two windows: on one, choose the following command (makes mouse visible on startup) gsettings set org.gnome.settings-daemon.plugins.cursor active false; bash, while the following command goes on the second one: ./barrier/build/bin/barrierc -f --enable-crypto 192.168.1.200; bash

    • Make terminator open on startup: open Startup Applications and click on Add. On the desired command, just type terminator, which is the command line to start Terminator.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published