AirStack Operating System Installation¶
This documentation is written for the latest version of AirStack. For flashing older versions of AirStack (v0.4.x and earlier), please see these instructions.
This procedure is used to flash the AirStack software suite (Jetson Image) on the AIR-T. This image contains both the underlying operating system for the Jetson module as well as drivers and board support for the hardware interfaces present on the AIR-T. Flashing an AirStack image will restore your AIR-T's software to factory settings and delete all user data.
If you do not want to erase the contents of your AIR-T and just want to update an existing installation of AirStack, see the process for an AirStack Upgrade. Note that his may not be possible for all AirStack releases.
To flash the AIR-T you will need:
- An x86 host machine running Linux - We test our procedures using Ubuntu 20.04 LTS, although Ubuntu 18.04 and later will work, as will many other Linux distributions.
- An AIR-T
- Keyboard, mouse, and monitor plugged into the AIR-T
- Micro USB cable
- AirStack software downloaded from the Developer Portal at www.deepwavedigital.com
Important Compatibility Note¶
Using the AirStack flashing utilities requires that Python 3 is available on your system. Supported versions of Python are 3.6 to 3.8 (Python 3.9+ is incompatible and the tool will print an error message if you attempt to use an unsupported version).
If python is not available on your host computer, you'll see errors similar to the following when executing Step #7 of the AirStack Installation Procedure:
[ 0.043 ] /usr/bin/env: 'python': No such file or directory
AirStack Installation Procedure¶
NOTE: FLASHING THE AIR-T WILL ERASE EVERYTHING ON THE OPERATING SYSTEM. MAKE SURE THAT YOU HAVE A GOOD BACKUP OF ANYTHING YOU NEED PRIOR TO PERFORMING THIS PROCEDURE
The AirStack image is flashed using the NVIDIA tools with a custom OS image and AIR-T drivers. Follow these steps to flash the AIR-T software:
1. Install the Prerequisites (see above) on the host computer.
2. Make sure that you have a proper backup of any personal code or files from the AIR-T.
3. As shown in Figure 1, connect the micro USB port (J20) from the AIR-T to the Linux host. If the AIR-T is in its enclosure, connect the micro USB cable to the port labeled USB on the back.
4. Boot the AIR-T into recovery mode. See the section below for instructions.
5. On the Linux host, open a terminal by entering
ctrl + shift + T on the keyboard.
6. Go to the directory in which AirStack was downloaded. For example, if the software was downloaded to your Downloads folder, enter the following commands in a command shell:
cd ~/Downloads tar -xzvf deepwave_airstack_software_vX.X.X.tgz cd deepwave_airstack_software
7. Flash the AIR-T with AirStack by entering one of the following commands, depending on your AIR-T product:
- Embedded Series (AIR7101 and AIR7201)
airt_flash/scripts/flash-systemimg.py -b ./Linux_for_Tegra --brd jetson-tx2
- Edge Series (AIR8201)
airt_flash/scripts/flash-systemimg.py -b ./Linux_for_Tegra --brd jetson-tx2i
The procedure can take up to 15 minutes depending on the speed of your host. The AIR-T will automatically boot once the procedure is complete.
8. When the AIR-T boots, you will be prompted to create a user on the AIR-T. Follow the on-screen instructions and the AIR-T will reboot once this step has completed. Some AirStack versions may prompt to "Select Nvpmodel Mode". If you see this screen choose MAXN_CORE_ARM - (Default). The system will reboot once it has taken a few minutes to configure.
9. Flash the firmware. If not already done, the AIR-T must have the corresponding version of the AirStack firmware installed on the FPGA. Note that flashing the AirStack OS does not install the new FPGA firmware; however, we do include the new firmware image under
lib/firmware in AirStack on the freshly imaged AIR-T. The installation instructions may be found in the Firmware Flash Procedure section of the Deepwave documentation.
Figure 1: Image of the AIR-T and the relevant interfaces highlighted.
Placing the AIR-T Into Recovery Mode¶
To place the AIR-T into recovery mode, follow this procedure. Note that you must be in a fresh recovery mode to flash the AIR-T (before each time the flash command is executed, the system must be power cycled into recovery mode).
Using Software Utility (AirStack v0.3+ only)¶
AirStack 0.3 and later contain a small software executable,
reboot_to_recovery, that functions like the normal
reboot command from a terminal but directs the AIR-T to enter recovery mode on next system boot.
Enter the following command in a terminal window on the AIR-T:
the AIR-T will may be logged in to via ssh from the Linux host.
Administrative permissions are required to execute the
reboot_to_recovery command, so a normal user will need to run
sudo reboot_to_recovery. The board will immediately reboot and come up in recovery mode.
Next, verify that the device is in recovery mode and communicating with your computer. On the host, open a terminal and type
lsusb, which should show a device with a description of "NVidia Corp." Here is an example:
$ lsusb Bus 003 Device 013: ID 0955:7c18 NVidia Corp.
Using Hardware Buttons (all versions)¶
An AIR-T can always be placed into recovery mode by using a set of buttons on the board itself. This allows you to recover the unit even if the operating system has been completely wiped.
1. If the AIR-T is in its enclosure, remove the the cover to get access to the top of the board. Look for the three large red buttons on the board labeled (from left to right)
2. Press the PWR button to start the system.
3. Press and hold the REC button.
4. While continuing to hold the REC button, press and release the RST button.
5. Release the REC button after 2 seconds.
6. On the host, verify that the device is in recovery mode and communicating with your computer. Open a terminal and type
lsusb, which should show a device with a description of "NVidia Corp." Here is an example for the AIR7101:
$ lsusb Bus 003 Device 013: ID 0955:7c18 NVidia Corp.