-
Notifications
You must be signed in to change notification settings - Fork 9
Jetson Configuration from Scratch
- Jetson TX2
- Quasar (base) carrier board - Product Page - Manual
- Jetpack 4.3
- ROS Melodic
Based on the guide here.
-
Download, install and run the Nvidia SDK Manager. You will need to make an account. Using a social account such as Google or Facebook will not work.
-
Deselect "Host Machine".
-
Choose your target hardware to be Jetson TX2.
-
Choose your target Operating System to be JetPack 4.3.
-
Continue to the next page.
-
For target components, make sure "Jetson OS" and "Jetson SDK Components" are selected.
-
Accept and continue. You may need to enter your sudo password.
-
After a while it will ask you to flash your Jetson. Skip this.
-
You should now be finished with the Nvidia SDK Manager
-
Download the L4T r32.3.1 – Jetpack 4.3 support package from CTI.
-
Once you download your board support package, copy the downloaded CTI BSP into the ‘Linux_for_Tegra’ directory.
cp Downloads/CTI-L4T-TX2-32.3.1-V001.tgz ~/nvidia/nvidia_sdk/JetPack_4.3_Linux_P3310/Linux_for_Tegra
cd /nvidia/nvidia_sdk/Jetpack_4.2.1_Linux_GA_P3310/Linux_for_Tegra
- Afterwards, extract the .tgz file to unload the CTI product profiles for flashing. Log in as root user using ‘sudo’ where you will be asked the the password for Ubuntu and run the install script to automatically install the board support package files to the correct locations on the host system.
tar -xzf CTI-L4T-TX2-32.3.1-V001.tgz
cd CTI-L4T
sudo ./install.sh
cd ..
-
Hold the recover button on the CTI carrier, then press the power button. Connect a USB OTG cable from the NVIDIA Development kit or CTI carrier to the host computer. Type ‘lsusb’ to confirm the device is in recovery - you should see a device called "Nvidia Corp.".
-
Run the script to flash the board. RSX uses the "Base" type Quasar board with the TX2.
./cti-flash.sh
- If flashed correctly, you should receive an output stating:
*** The target t186ref has been flashed successfully. ***
-
Disconnect the USB cable, connect an HDMI monitor then reboot the Jetson by hitting the reset button.
-
If the Jetson gets stuck booting up with a message such as
A start job is running for End-user configuration after initial OEM installation (5min 25s / no limit)
, hit the reset button and it should boot up fine. -
Set up Ubuntu with:
- Location: Toronto
- Username: rsx
- Device name: rsx-jetson
- Password: (the 6-character RSX password)
sudo hostname jetson
sudo reboot
We have a forked repo for this: https://github.com/rsx-utoronto/buildLibrealsense2TX2
Here are the basic steps for your copy-paste convenience: Make sure you are connected with monitor, mouse and keyboard, not through SSH!
cd ~
git clone https://github.com/rsx-utoronto/buildLibrealsense2TX2.git
cd buildLibrealsense2TX2/
./buildPatchedKernel.sh
sudo cp ./image/Image /boot
./removeAllKernelSources.sh
./patchApplication.sh
./installLibrealsense.sh
Follow these steps to install ros-melodic-desktop-full
.
Follow these steps.
This allows the Jetson to connect to serial devices like the Arduino and IMU
sudo adduser rsx dialout
sudo reboot
From here
cd ~
git clone https://github.com/opencv/opencv.git
git checkout tags/4.2.0
cd ~/opencv
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
make -j4
sudo make install
sudo ln -s /usr/include/opencv4/ /usr/include/opencv
Modified from here.
sudo apt install ros-melodic-realsense2-camera
sudo apt remove ros-melodic-realsense2-camera
git clone https://github.com/IntelRealSense/realsense-ros.git
cd realsense-ros/
git checkout 2.2.13
cd ..
catkin_make clean
catkin_make -DCATKIN_ENABLE_TESTING=False -DCMAKE_BUILD_TYPE=Release realsense2_camera
catkin_make install
source ~/.bashrc
Make sure that you don't have a duplicate version of librealsense2 headers on the system. You can find all versions by running sudo find / -name rs.hpp
. If the output looks something like this:
rsx@jetson:~$ sudo find / -name rs.hpp
find: ‘/run/user/1000/gvfs’: Permission denied
/usr/local/include/librealsense2/rs.hpp
/opt/ros/melodic/include/librealsense2/rs.hpp
Then you would want to rm -rf /opt/ros/melodic/include/librealsense2
, since /usr/local/include/librealsense2
is the one you want to keep. You can now try running catkin_make again.
From here.
cd catkin_ws/src
git clone https://github.com/inertialsense/inertial_sense_ros
cd inertial_sense_ros
git submodule update --init --recursive
cd ../..
catkin_make
source ~/.bashrc
- Install the community-built binary from here using the "APT instructions".
- Make sure you are not logged in as the super-user (root). If you are, run
exit
in the terminal. - Run:
echo "alias code='code-oss'" >> ~/.bashrc && source ~/.bashrc
Wondering how to make nice formatting? Check out this guide!