Getting Started with the Jetson Nano using alwaysAI

By Safir Alvi • Feb 03, 2020

NVIDIA® Jetson Nano Developer Kit is a small, powerful computer that lets you run multiple neural networks in parallel for applications like image classification, object detection, segmentation, and speech processing. 

Deep Learning Inference Performance

NVIDIA has partnered with alwaysAI to deploy easily on edge devices such as the JETSON NANO. Here are the steps to easily deploy on the edge.

Here are the items you would need:

  • Keyboard and mouse
  • Monitor with an HDMI cable
  • 32 GB microSD card
  • WebCam for use with real-time applications

Wifi dongle
    *If your computer doesn’t have an SD card port, you can use a USB to SD card adapter instead.

Flashing the microSD Card

You can find a link to the Jetpack image that has the drivers alwaysAI is expecting here. This image can then be flashed on the microSD card using balena Etcher. Run Etcher, select the image downloaded from the link above and insert your microSD card. Then hit the flash button to start the process.

Balena Etcher

Once the image is done flashing, pop it into the microSD slot found on the back underside of the removable Nano module.

NVIDIA Jetson Nano

 

Prerequisites for alwaysAI

Network Connectivity

The Jetson Nano Developer Kit doesn’t include a WiFi module, so you have two options. You can either connect your Jetson Nano directly to your laptop using an ethernet cable and share your network, or you can add a USB WiFi adapter and connect the Nano to the same WiFi network that your laptop is using. Here we’ll be using a USB WiFi adapter.

Enabling A Power Supply

The Jetson Nano Developer Kit doesn’t include a WiFi module, so you have two options. You can either connect your Jetson Nano directly to your laptop using an ethernet cable and share your network, or you can add a USB WiFi adapter and connect the Nano to the same WiFi network that your laptop is using. Here we’ll be using a USB WiFi adapter.

Connect Through WiFi

Plug in a keyboard, mouse, monitor, and WiFi adapter into the Jetson Nano and power it on. It will eventually load the Ubuntu setup wizard. During the Ubuntu setup wizard steps, remember to keep track of the computer name you set (I named mine “nano01”), since you will need this in the app install step. The Jetson Nano should automatically recognize the WiFi adapter and show the standard WiFi icon on the top right corner of the menu bar. Clicking on that icon, select the network your laptop is connected to, and providing the network credentials should allow the Jetson Nano to access the internet, and your laptop to access the board. You can test this by pinging the board using your laptop — just open up a terminal and enter the following:

ping nano01
Jetson nano terminal

If you get a response without a timeout error (like above), this indicates that your laptop can connect to the Jetson Nano.

Docker

An important prerequisite for using alwaysAI is having Docker installed on your edge device. Although the image provided by NVIDIA already has Docker installed, it doesn't allow you to run it without sudo. To fix this, let's add your user to the Docker user group:

sudo usermod -aG docker $USER

Now you should have all the software prerequisites to run alwaysAI in a remote development configuration.

Running applications on the Nano

Now you can create your starter applications (if you have not yet started an application, follow these steps). Once you have created a starter app, you can run “aai app configure” and choose your destination as “Remote Device"

? What is the destination? > Use arrow keys. Return to submit.
> Remote device

Then you would click enter/return to select.

? select a target device > - Use arrow-keys. Return to submit.
> Add a new device

For the purposes of this guide, you can choose development. For more information on development and production mode, click here.

? Select the device mode: > - Use arrow-keys. Return to submit.
> Development (unlimited)
Production (unlimited)

Name your device (this is how it will appear on the alwaysAI platform, I named mine nano01)

? Enter a device friendly name: > nano01

Enter your hostname such as (username@devicename.local) or (username@ipaddress)

Please enter the hostname (with optional user name) to connect to your device via ssh (e.g. "pi@1.2.3.4"): >

You should then see the following with the appropriate file path already entered.

✔ Connect by SSH
✔ Update device tokens
✔ Check docker executable
✔ Check docker permissions
? Found python virtual environment

Once you enter/return, you should then run “aai app install” and “aai app start”.

You have now configured your new Jetson Nano with alwaysAI and you are ready to develop computer vision on the edge!

Conclusion

The Jetson Nano may just be the platform of choice when considering its small form factor, price point, and its ability to improve the performance of models. The Jetson Nano accelerates many models and is most suitable for high-performance, mountable systems with a stable power supply. It's one of the best accelerated SBC options on the market.

By Safir Alvi • Feb 03, 2020

Developer stories to your inbox.

Subscribe to the Developer Digest, a monthly dose of all things code.

You may unsubscribe at any time using the unsubscribe link in the digest email. See our privacy policy for more information.

alwaysAI Ad
stylized image of a computer chip

Sign up today and start your project

We can't wait to see what you'll build!