Skip to content

Jetson Nano Setup without Monitor for JetBot Build. JupyterLab, ROS2 Foxy, Torch, Torch2trt, ONNX, ONNXRuntime-GPU and TensorFlow Installation Included. JupyterLab doesn't require Docker Container.

License

Notifications You must be signed in to change notification settings

Agroecology-Lab/Headless-Jetson-Nano-Setup

 
 

Repository files navigation

Headless Jetson Nano Setup for Jetbot Build

Headless Jetson Nano 4GB setup with with Micro-USB cable Without Using Monitor. USB Dongle is required for Wifi Connection. JupyterLab setup included. JupyterLab doesn't need docker. Torch, Torch2trt, ONNX, ONNXRuntime-GPU Torchvision and TensorFlow Installation Included. ROS2 Foxy Installation Included.

Colaborators

Animesh Bala Ani

Table of Contents

Install Jetson Nano Image

Download balenaEtcher and install it.
Download Jetson Nano Ubuntu 20.04, and write it on a microSD card with balenaEtcher.

Boot Jetson Nano

Insert the microSD card to Jetson Nano.
Connect Jetson Nano with a PC/Laptop using Micro-USB cable.
Power On the Jetson Nano and wait for 1-2 minutes.
Download PuTTY.
Open Putty, select connection type serial.
The serial line value COM# can be found from following in Windows OS.

Device Manager > Ports (COM&LPT) > USB Serial Device (COM#)

Once connected, go through initial setup until Network Configuration.
Select dummy0: Unknown Interface
Once it fails to connect, select Do not configure the network at this time
Go through the rest of the steps with the default settings. Once completed, wait couple of minutes and go to next step.

Wifi Connection Setup

Open Putty and connect using host name 192.168.55.1 or using COM Port
Run following command and reboot Jetson Nano.

sudo systemctl restart network-manager.service

Log into Jetson Nano and run following command to detect availability of your wifi SSID.

nmcli device wifi list

Connect to wifi using following command.

sudo nmcli device wifi connect <SSID> password <Wifi_Password>

Run following command to get the IP address (2nd one).

hostname -I

Open Putty and connect using the IP address.
Once login completes, the Micro-USB cable can be disconnected.

Get rid of OpenCV

sudo apt-get --purge remove opencv

Download Repository

git clone https://github.com/Agroecology-Lab/Headless-Jetson-Nano-Setup/

Not working yet -One Command Install All

Installs Jupyter Lab, ROS2 Dashing, PyTorch, Torchvision, Torch2trt, ONNX, ONNXRuntime-GPU, Inputs and Adafruit_MotorHat.
Enables I2C Permissions.
Sets Jetbot Stats.
Takes aroud 20 minutes to 50 minutes.

cd ~/Headless-Jetson-Nano-Setup
chmod +x ./*.sh && ./install.sh

Enable I2C Permissions

sudo usermod -aG i2c $USER

Install Jupyter Lab

cd ~/Headless-Jetson-Nano-Setup
chmod +x ./jupyter.sh && ./jupyter.sh

Open Jupytar Lab in a browser with <IP Address>:8888 link. Default password is jetbot.
The interface should look like this (without watermark).

JupytarLab Interface
Reference

Setup Jetbot Stats

Setup Jetbot Stats Service to show Jebot status in OLED display.

cd ~/Headless-Jetson-Nano-Setup
chmod +x ./jetbot_stats.sh && ./jetbot_stats.sh

Install ROS2 Foxy

cd ~/Headless-Jetson-Nano-Setup
chmod +x ./foxy.sh && ./foxy.sh

Reference

Install Torch

Installs PyTorch and TorchVision.

cd ~/Headless-Jetson-Nano-Setup
chmod +x ./pytorch.sh && ./pytorch.sh

PyTorch Wheel

Install Torch2trt and ONNX

Installs Torch2trt, ONNX and ONNXRuntime-GPU.

cd ~/Headless-Jetson-Nano-Setup
chmod +x ./torch2trt_onnx.sh && ./torch2trt_onnx.sh

Install TensorFlow

Installs TensorFLow.

cd ~/Headless-Jetson-Nano-Setup
chmod +x ./tensorflow.sh && ./tensorflow.sh

Install Sawppy

See here: https://github.com/mgonzs13/ros2_rover

I2C servo

See here: https://github.com/kerry-t-johnson/i2c_pwm

Install controllers

See here: https://github.com/Ar-Ray-code/ps_ros2_common/

Install web tools

See here: https://github.com/dheera/rosboard Maybe also here: http://robotwebtools.org/

Issues

Installing or modifying OpenCV will break Gstreamer Pipeline.
Therefore Albumation package should not be installed for Deep Learning.
Also Numpy version 1.19.4 is required to work Gstreamer Pipeline.

Updating Setuptools will generate deprication error during ROS2 workspace building.

About

Jetson Nano Setup without Monitor for JetBot Build. JupyterLab, ROS2 Foxy, Torch, Torch2trt, ONNX, ONNXRuntime-GPU and TensorFlow Installation Included. JupyterLab doesn't require Docker Container.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 52.3%
  • Shell 47.7%