No part of this document may be reproduced or transmitted in any form or by any means without prior
written consent of Huawei Technologies Co., Ltd.
Trademarks and Permissions
and other Huawei trademarks are trademarks of Huawei Technologies Co., Ltd.
All other trademarks and trade names mentioned in this document are the property of their respective
holders.
Notice
The purchased products, services and features are stipulated by the contract made between Huawei and
the customer. All or part of the products, services and features described in this document may not be
within the purchase scope or the usage scope. Unless otherwise specied in the contract, all statements,
information, and recommendations in this document are provided "AS IS" without warranties, guarantees
or representations of any kind, either express or implied.
The information in this document is subject to change without notice. Every eort has been made in the
preparation of this document to ensure accuracy of the contents, but all statements, information, and
recommendations in this document do not constitute a warranty of any kind, express or implied.
3.1 Removing the Top Cover....................................................................................................................................................... 5
3.2 Installing a Camera (PCB IT21DMDA)............................................................................................................................. 7
3.3 Installing a Camera (PCB IT21VDMB)........................................................................................................................... 12
4 Setting up the Environments..............................................................................................17
5 Setting Up the Hardware Environment........................................................................... 18
5.1 Creating an SD Card............................................................................................................................................................ 18
5.1.2 Creating an SD Card with a Card Reader..................................................................................................................18
5.1.3 Creating an SD Card Without a Card Reader.......................................................................................................... 23
5.2 Connecting Atlas 200 DK to Ubuntu Server................................................................................................................ 28
5.3 Changing the Atlas 200 DK User Password................................................................................................................. 33
6.2.3 Installing the Development Kit..................................................................................................................................... 42
6.4 Deploying the Media Module........................................................................................................................................... 45
7 Hands-on Your First Application........................................................................................46
8 Common Operations............................................................................................................ 47
8.1 Powering on Atlas 200 DK................................................................................................................................................. 47
8.2 Powering o the Atlas 200 DK Developer Board...................................................................................................... 52
8.3 Connecting the Atlas 200 DK over a Serial Port........................................................................................................ 52
8.4 Checking the Software Versions of Atlas 200 DK......................................................................................................54
8.5 Checking the Version of the Motherboard of the Developer Board................................................................... 55
8.6 Checking the Version of the Atlas 200 AI Accelerator Module............................................................................. 58
8.7 Viewing the Channel to Which a Camera Belongs................................................................................................... 62
8.8 Installing the Windows USB Network Adapter Driver............................................................................................. 63
8.9 Changing the Atlas 200 DK IP Address......................................................................................................................... 66
8.10 Setting User Account Expiry Date.................................................................................................................................67
8.11 Conguring a System Network Proxy......................................................................................................................... 68
9.2 What Do I Do If the Trust Relationship Between the Ubuntu Server and the Developer Board Fails to
Be Established?............................................................................................................................................................................. 72
9.3 What Do I Do If Atlas 200 DK Cannot Connect to Ubuntu Server?....................................................................72
9.4 What Do I Do If "Could not nd a version that satises the requirement xxx" Is Displayed When
pip3.7.5 Install Is Run?............................................................................................................................................................... 76
Huawei Atlas 200 Developer Kit (Atlas 200 DK for short) is a developer board
product based on the Huawei Ascend 310 AI Processor. It enables one-stop
development of AI applications.
This document describes the preparations for using the Atlas 200 DK to develop
and run AI applications, including creating an SD card, connecting the Atlas 200
DK to the Ubuntu server, and installing the development tool.
The following shows the system block diagram of the Atlas 200 DK:
Figure 1-1 Connection between the Atlas 200 DK and MindStudio
In the preceding gure, 192.168.1.2/192.168.0.2 is the IP address of the Atlas 200 DK, which
can be selected during card making.
The Atlas 200 DK contains the Hi3559 camera module and Atlas 200 AI
accelerator module. The PC where MindStudio is located is connected to the Atlas
200 DK through the USB port or network cable.
MindStudio contains the development kit and tool modules (such as the model
management tool, compilation tool, and log tool). The development kit provides
the library
compilation.
For details about how to prepare
an SD card using a jumper cap/
wire, see 5.1.3 Creating an SD
Card Without a Card Reader.
Jumper cap, with 2.54 mm
spacing
Jumper wire, female to
female, with 2.54 mm
spacing
Atlas 200 DK
Environment Deployment Guide2 Preparing Accessories and a Development Server
NameDescriptionSuggestions
Type-C cableConnects to the Ubuntu server.
For details, see 5.2 Connecting
Atlas 200 DK to Ubuntu Server.
Network cableConnects to the Ubuntu server.
For details, see 5.2 Connecting
Atlas 200 DK to Ubuntu Server.
CameraProvides video streams for the
Atlas 200 DK. For details, see 3.2
Installing a Camera (PCB
IT21DMDA) and 3.3 Installing a
Camera (PCB IT21VDMB).
(Optional)
Camera
support
Fixes the camera. For details, see
3.2 Installing a Camera (PCB
IT21DMDA) and 3.3 Installing a
Camera (PCB IT21VDMB).
USB 3.0 Type-C cable
Common network cable
with RJ45 connectors
Raspberry Pi cameras are
recommended.
Model: Raspberry Pi v2.1
For a Raspberry Pi
camera, if the Atlas 200
DK uses the IT21DMDA
mainboard, you also need
to prepare a 15-pin yellow
Raspberry Pi camera
cable.
Raspberry Pi transparent
camera support
(Optional)
Serial cable
Preparing a Server
Prepare a server or PC running Ubuntu (x86).
●When creating a bootable SD card for the Atlas 200 DK, the card reader or
Atlas 200 DK can be connected to the Ubuntu server over the USB port. For
details, see 5.1 Creating an SD Card.
●The Ubuntu server can be used to set up the development environment. For
details, see 6.1 Overview.
●Click here to download an Ubuntu 18.04.4 or 18.04.5 release and install it.
You can download the Ubuntu Desktop edition of ubuntu-18.04.xx-desktop-
amd64.iso or the Ubuntu Server edition of ubuntu-18.04.xx-serveramd64.iso.
Used for viewing the boot logs
when the Atlas 200 DK boot
indicator is abnormal, or the SD
card is successfully prepared but
the UI Host cannot be accessed.
For details, see 9.3 What Do I Do
If Atlas 200 DK Cannot Connect
to Ubuntu Server?
USB-to-TTL serial cable
with 3.3 V interface level
3.Place the metal wire at the wider end of the yellow at ribbon cable upwards
and horizontally insert it into the cable slot of the camera until it is fastened.
See Figure 3-5.
Step 3 Connect the at ribbon cable of the camera to the Atlas 200 DK developer board.
1.Remove the camera connector fastener from the Atlas 200 DK developer
board. See Figure 3-7.
Figure 3-7 Removing the black fastener
2.Place the metal wire at the narrower end of the yellow at ribbon cable
upwards and horizontally insert it into the camera connector CAMERA0 or
CAMERA1 on the Atlas 200 DK developer board until the cable is fastened.
Insert the fastener. See Figure 3-8.
2.Take out the white camera at cable. See Figure 3-11.
Figure 3-11 White camera
at cable
3.Place the metal wire on the black camera at cable (silkscreen with TOCAMERA) upwards and horizontally insert it into the cable slot of the camera
until it is fastened. See Figure 3-12.
2.Place the black wire on the black camera at cable (silkscreen with TO MAINBD) upwards and horizontally insert it into the camera connector CAMERA0
or CAMERA1 on the Atlas 200 DK developer board until the cable is fastened.
Secure the fastener. See Figure 3-14.
Figure 3-14 Securing the fastener
Step 4 Install the top cover of the Atlas 200 DK developer board to the original position.
Atlas 200 DK
Environment Deployment Guide4 Setting up the Environments
4 Setting up the Environments
Set up the hardware operating environment and development environment for the
Atlas 200 DK as follows.
Figure 4-1 Atlas 200 DK environment setup
●Operating environment
Create a bootable SD card for the Atlas 200 DK.
If Python is used to develop AI applications, the pyACL package needs to be
deployed on the Atlas 200 DK after the Atlas 200 DK is connected to the
Ubuntu development server.
●Development environment
Set up the development environment by referring to 6 Setting up the
Atlas 200 DK
Environment Deployment Guide5 Setting Up the Hardware Environment
5 Setting Up the Hardware Environment
5.1 Creating an SD Card
5.2 Connecting Atlas 200 DK to Ubuntu Server
5.3 Changing the Atlas 200 DK User Password
5.4 Deploying pyACL
5.1 Creating an SD Card
5.1.1 Introduction
You can create a system boot disk for the Atlas 200 DK by preparing an SD card.
You can use either of the following methods to prepare an SD card:
●If a card reader is available, insert the SD card into the card reader, connect
the card reader to the USB port of the Ubuntu server, and run the SD card
preparation script.
●If no card reader is available, insert the SD card into the card slot of the Atlas
200 DK, use a jumper cap/wire to connect the pins of the Atlas 200 DK,
connect the Atlas 200 DK to the USB port of the Ubuntu server, and run the
SD card preparation script.
During SD card preparation, the default user HwHiAiUser is automatically
created for running the applications.
The default login password of the HwHiAiUser user is Mind@123.
5.1.2 Creating an SD Card with a Card Reader
This section describes how to connect a card reader to the Ubuntu server over the
USB port and run SD card preparation scripts with a card reader.
If card preparation fails, check the log les in the sd_card_making_log folder in the
current directory.
Step 7 After the card is successfully prepared, remove the SD card from the card reader
and insert it into the card slot of the Atlas 200 DK.
Step 8 Power on the Atlas 200 DK.
● During the rst power-on and boot process, Firmware upgrade is implemented.
After the upgrade is complete, the system reboots automatically. You can install
other components after the reboot.
● Do not power o the Atlas 200 DK during the rst boot. Otherwise, the Atlas
200 DK may be damaged. After it is powered
Atlas 200 DK
Environment Deployment Guide5 Setting Up the Hardware Environment
For details about how to power on the Atlas 200 DK and the description of the
LED indicator status after power-on, see 8.1 Powering on Atlas 200 DK.
----End
Exception Handling
After powering-on, if the Atlas 200 DK cannot be started properly (the indicator
status is abnormal), perform the following steps to view the related logs:
Step 1 Power o the Atlas 200 DK.
Step 2 Remove the SD card from the Atlas 200 DK, insert the SD card into the card
reader, and connect it to the Ubuntu server over the USB port.
Step 3 Run the following command as the root user to view the partition information of
Device Boot Start End Sectors Size Id Type
/dev/sda1 2048 10487807 10485760 5G 83 Linux
/dev/sda2 10487808 12584959 2097152 1G 83 Linux
/dev/sda3 12584960 62333951 49748992 23.7G 83 Linux
Step 4 Mount the
rst partition of the SD card to the Ubuntu server.
1.Create an empty directory as the root user.
For example:
mkdir -p
2.Mount /dev/sda1 to the
mount /dev/sda1
/home/sdinfo
/home/sdinfo
/home/sdinfo
directory.
Step 5 Go to /home/sdinfo, that is, the Atlas 200 DK le system, to view the related logs
in the var/log/ascend_seclog path.
/home/sdinfo
cd
cd var/log/ascend_seclog/
The log
le description is as follows:
●operation.log: operation log, recording the results of events, such as
installation and upgrade.
The format is as follows: event type+event level+user ID+date+initiator
address+access
le name+command+result
●ascend_install.log: detailed O&M script log of installation and upgrade, from
which operations and statuses can be viewed.
The format is as follows: component+date+log level+content
Atlas 200 DK
Environment Deployment Guide5 Setting Up the Hardware Environment
●ascend_run_servers.log: log recording the boot information of the Atlas 200
DK.
● If you cannot solve the problem, ask for help on the Ascend Developer Zone
with the log
you.
● If the Atlas 200 DK fails to be started for three or more times, after this
problem is solved, delete the boot_fail_countascend_seclog/ directory. Otherwise, the Atlas 200 DK cannot be started
properly.
----End
le attached. Huawei engineers will provide technical support for
le in the var/log/
5.1.3 Creating an SD Card Without a Card Reader
This section describes how to prepare an SD card by short-circuiting the pins on
Atlas 200 DK with a jumper cap or jumper wire without a card reader.
Hardware Preparation
1.Remove the top cover by referring to 3.1 Removing the Top Cover.
2.Place the jumper cap or jumper wire over pin 16 and pin 18 on the Atlas 200
DK, as shown in Figure 5-2.
● Before performing this operation, power o the Atlas 200 DK. For details
about
Developer Board.
● Check the pins carefully. If incorrect pins are used, the Atlas 200 DK will be
severely damaged.
● The positions of pins 1, 2, and 40 are marked in white on the panel.
power-o requirements, see 8.2 Powering o the Atlas 200 DK
Atlas 200 DK
Environment Deployment Guide5 Setting Up the Hardware Environment
Step 7 Remove the jumper cap or jumper wire.
Step 8 Power on the Atlas 200 DK.
● During the rst power-on and boot process, Firmware upgrade is implemented.
After the upgrade is complete, the system reboots automatically. You can install
other components after the reboot.
● Do not power
200 DK may be damaged. After it is powered
o the Atlas 200 DK during the rst boot. Otherwise, the Atlas
o, wait at least 2s before
powering it on again.
For details about how to power on the Atlas 200 DK and the description of the
LED indicator status after power-on, see 8.1 Powering on Atlas 200 DK.
----End
Exception Handling
After powering-on, if the Atlas 200 DK cannot be started properly (the indicator
status is abnormal), perform the following steps to view the related logs:
Step 1 Power
o the Atlas 200 DK.
Step 2 Place the jumper cap or jumper wire over pin 16 and pin 18 on the Atlas 200 DK
to use it as a USB device, as shown in Hardware Preparation.
Step 3 Connect the Atlas 200 DK to the Ubuntu server over the USB port, and power on
the Atlas 200 DK.
Step 4 Run the following command as the root user to view the partition information of
Device Boot Start End Sectors Size Id Type
/dev/sda1 2048 10487807 10485760 5G 83 Linux
/dev/sda2 10487808 12584959 2097152 1G 83 Linux
/dev/sda3 12584960 62333951 49748992 23.7G 83 Linux
Step 5 Mount the
rst partition of the SD card to the Ubuntu server.
Atlas 200 DK
Environment Deployment Guide5 Setting Up the Hardware Environment
The Atlas 200 DK can be connected to the Ubuntu server in any of the following
modes:
●Direct Connection over the USB Port
In this mode, the Atlas 200 DK is only suitable for communication with the
Ubuntu server due to inconvenience in Internet access.
●Direct Connection Through a Network Cable
In this mode, the Atlas 200 DK is only suitable for communication with the
Ubuntu server due to inconvenience in Internet access.
●(Recommended) Connection Using a Router Through a Network Cable
This mode is recommended, because the Atlas 200 DK can directly access the
Internet.
Direct Connection over the USB Port
In this mode, the default IP address of the USB virtual NIC of the Atlas 200 DK is
192.168.1.2. Therefore, the IP address of the USB virtual NIC on the Ubuntu server
needs to be changed to 192.168.1.x (the value of x can be 0, 1, or 3–254) to
enable the communication between the Atlas 200 DK and the Ubuntu server.
● If you have changed the IP address of the USB virtual NIC of the Atlas 200 DK
to be on the same network segment as the IP address of the USB virtual NIC
on the Ubuntu server during SD card creation, skip the following operations.
● If the Ubuntu server is installed in a VM running Windows on the host, you
need to install the USB virtual NIC driver on the Windows host by referring to
8.8 Installing the Windows USB Network Adapter Driver. Otherwise, the
USB virtual NIC of the Atlas 200 DK cannot be
The following describes how to congure the IP address of the USB virtual NIC on
the Ubuntu server manually and by using a script.
If the Atlas 200 DK has been connected to the Ubuntu server over a USB port,
perform the following steps for IP address
●Conguring the IP address by using a script
a.Download congure_usb_ethernet.sh from GitHub to any directory on
the Ubuntu server, for example,
You can use the script only when conguring the IP address of the USB
virtual NIC for the rst time. After the IP address of the USB virtual NIC is
congured, you can manually change the IP address by referring to
Conguring the IP address manually.
conguration.
/home/ascend/cong_usb_ip/
identied by the Ubuntu server.
.
b.Go to the directory where the script for conguring the IP address of the
USB virtual NIC is located as the root user, for example,
Atlas 200 DK
Environment Deployment Guide5 Setting Up the Hardware Environment
c.Congure the IP address of the USB virtual NIC:
bash congure_usb_ethernet.sh -s
ip_address
Specify the static IP address of the USB NIC. If bash
congure_usb_ethernet.sh is run directly, the default IP address
192.168.1.166 is used.
▪If there are multiple USB NICs, run the
ifcong command to query
the names of the USB NICs, and remove and insert the Atlas 200 DK
to determine the USB NIC name of the Atlas 200 DK. The Atlas 200
identied as a USB virtual NIC by the Ubuntu server. Run the
DK is
following command to
bash congure_usb_ethernet.sh -s
usb_nic_name
ip_address
: name of the USB virtual NIC
: IP address to be congured
congure the IP address:
usb_nic_name ip_address
For example, to set the IP address of the USB virtual NIC on the
Ubuntu server to 192.168.1.223, run the following command:
Atlas 200 DK
Environment Deployment Guide5 Setting Up the Hardware Environment
Direct Connection Through a Network Cable
In this mode, the default IP address of the USB virtual NIC of the Atlas 200 DK is
192.168.0.2 with a 24-bit subnet mask. Therefore, the IP address of the USB
virtual NIC on the Ubuntu server needs to be changed to 192.168.0.x (the value of
x
can be 0, 1, or 3–254) to enable the communication between the Atlas 200 DK
and the Ubuntu server.
● If you have changed the IP address of the USB virtual NIC of the Atlas 200 DK
to be on the same network segment as the IP address of the USB virtual NIC
on the Ubuntu server during SD card creation, skip the following operations.
● After the network port on the Atlas 200 DK is connected to a network cable, if
the yellow ACT indicator blinks, data is being transferred. When the network
port of the Atlas 200 DK accesses the GE network, the green LINK indicator is
on. When the network port of the Atlas 200 DK accesses the 100 MB/10 MB
Ethernet network, the LINK indicator is
o, which is normal.
Perform the following steps:
1.Log in to the Ubuntu server as a common user and run the following
command to switch to the root user:
su - root
Congure an IP address for the virtual NIC to communicate with the Atlas 200
2.
DK.
For example, to congure the virtual static IP address of eth0:1, run the
following command:
ifcong eth0:1 192.168.0.223 netmask 255.255.0.0 up
(Recommended) Connection Using a Router Through a Network Cable
In this mode, the DHCP function needs to be enabled on the router, which will
automatically assign an IP address to the Atlas 200 DK. The IP address obtaining
mode of the NIC on the Atlas 200 DK should be changed to DHCP accordingly. You
need to connect the Atlas 200 DK to the Ubuntu server using a USB cable, and
then log in to the Atlas 200 DK in SSH mode on the Ubuntu server to change the
mode of obtaining the virtual NIC IP address.
Assume that you have connected the Atlas 200 DK to the router using a network
cable and enabled the DHCP function of the router. To connect to the Ubuntu
server, perform the following steps:
1.Connect the Atlas 200 DK to the Ubuntu server using a USB port, and
congure the IP address of the USB NIC of the Ubuntu server. For details, see
Direct Connection over the USB Port.
2.Change the IP address obtaining mode of the NIC on the Atlas 200 DK to
DHCP.
a.Log in to the Atlas 200 DK as the HwHiAiUser user in SSH mode on the
Ubuntu server. The IP address of the USB NIC of the Atlas 200 DK is the
USB IP address set during card creation. For example, if the default IP
address is 192.168.1.2, run the following command:
Atlas 200 DK
Environment Deployment Guide5 Setting Up the Hardware Environment
ssh HwHiAiUser@192.168.1.2
The default login password of the HwHiAiUser user is Mind@123.
b.Change the login password. For the rst login, a message indicating that
the password has expired is displayed.
WARNING:Your password has expired.
In this case, change the password and log in again. Change the password
by referring to Changing the Password for the HwHiAiUser User. After
the password is changed, the system forcibly exits and the following
information is displayed:
passwd: password updated successfully
Connection to 192.168.1.2 closed.
Log in again with the new password.
ssh HwHiAiUser@192.168.1.2
c.Switch to the root user.
su root
In this case, the system forces the user to change the password. Change
the password by referring to Changing the Password for the root User.
d.Run the following command to open the network
vi /etc/netplan/01-netcfg.yaml
e.Change the IP address obtaining mode of eth0 to DHCP.
Modify the
eth0:
dhcp4: true
addresses: []
optional: true
f.Save the
:wq
3.Restart the network service.
netplan apply
The Atlas 200 DK can access the Internet now.
4.Run the
and that of the USB NIC can be used to communicate with the Ubuntu server.
Follow-up Operations
After the Atlas 200 DK is connected to the Ubuntu server, you can determine
whether to reboot the OS on the Atlas 200 DK or power o the Atlas 200 DK
based on the Atlas 200 DK LED indicators. For details, see Table 8-1.
conguration le:
conguration of eth0 as follows:
modications and exit.
ifcong command to obtain the IP address of eth0. This IP address
Restart or power o the server or Atlas 200 DK with caution, especially when the
Atlas 200 DK is being upgraded.
Atlas 200 DK
Environment Deployment Guide5 Setting Up the Hardware Environment
5.3 Changing the Atlas 200 DK User Password
Password Change Policy
After the environment is set up, change the password of the Atlas 200 DK OS
account to improve system security.
The password must meet the following complexity requirements:
●Contains at least two character categories among the following:
–Lowercase letters
–Uppercase letters
–Digits
–Spaces or the following special characters:`~!@#$%^&*()-_=+\|
[{}];:'",<.>/?
●Contains at least eight characters.
●Cannot be the current username or the username spelled backwards.
Changing the Password for the HwHiAiUser User
HwHiAiUser is the default user created during SD card creation. The default
password is Mind@123. After the Atlas 200 DK is successfully connected to the
Ubuntu server, change the initial password of the HwHiAiUser user as follows.
1.Log in to the Atlas 200 DK as the HwHiAiUser user in SSH mode on the
Ubuntu server.
If the trust relationship fails to be established when you log in to the Atlas 200 DK in
SSH mode, see 9.2 What Do I Do If the Trust Relationship Between the Ubuntu
Server and the Developer Board Fails to Be Established?
2.Run the passwd command to change the password of the HwHiAiUser user.
For details, see Figure 5-5.
Figure 5-5 Changing the password for the HwHiAiUser user
Changing the Password for the root User
1.Log in to the Atlas 200 DK as the HwHiAiUser user in SSH mode on the
Atlas 200 DK
Environment Deployment Guide5 Setting Up the Hardware Environment
The default login password of the HwHiAiUser user is Mind@123.
2.Run the following command to switch to the root user:
su - root
The default login password of the root user is Mind@123.
3.Run the passwd command to change the password for the root user, as
shown in Figure 5-6.
Figure 5-6 Changing the password for the root user
5.4 Deploying pyACL
If Python is used to develop AscendCL applications, pyACL needs to be installed in
the operating environment.
The procedure is as follows:
Step 1 Download the pyACL
Click here to download the pyACL runle.
The following assumes that the pyACL runleAscend-pyACL-
{
software_version
(development environment) to the Atlas 200 DK.
1.Go to the directory where the pyACL
and log in to the Atlas 200 DK as the HwHiAiUser user in SSH mode.
ssh HwHiAiUser@
If the trust relationship fails to be established when you log in to the Atlas 200 DK in
SSH mode, see 9.2 What Do I Do If the Trust Relationship Between the Ubuntu
Server and the Developer Board Fails to Be Established?
2.Go to the directory for storing runles on the Atlas 200 DK and copy the
pyACL
cd /home/HwHiAiUser/software
scp
{
runle.
username
software_version
runle and upload it to any directory on the Atlas 200 DK.
}.rc1-linux.aarch64.run is copied from the Ubuntu server
Atlas 200 DK
Environment Deployment Guide6 Setting up the Development Environment
6 Setting up the Development
Environment
6.1 Overview
6.2 Installing CANN Toolkit Separately
6.3 (Optional) Installing MindStudio
6.4 Deploying the Media Module
6.1 Overview
Before developing AI applications with the Atlas 200 DK, you need to deploy the
development environment on the Ubuntu server that is prepared during SD card
preparation. You can deploy in either of the following ways.
●Install MindStudio and develop AI applications. CANN Toolkit is installed as
part of the MindStudio installation. The Toolkit is provided for developers to
eciently develop AI algorithms based on Ascend AI Processor.
Based on the Toolkit, MindStudio integrates a range of tools and oers
simple, user-friendly functions including project management, code writing,
build, model conversion, logging, and proling.
The following gure shows the MindStudio and CANN Toolkit architecture.
Atlas 200 DK
Environment Deployment Guide6 Setting up the Development Environment
Figure 6-1 Architecture of MindStudio and CANN Toolkit
CANN Toolkit provides the following components:
–ACLlib: builds and runs applications. Contains the AscendCL building
dependencies and provides GE model loading and execution capabilities.
–ATC: Ascend Tensor Compiler that enables oine model conversion,
custom operator development, and IR graph construction.
–OPP: operator package, including the operator prototype library, operator
implementation library, operator plug-ins, and fusion patterns. The
operator implementation includes TBE operators, AI CPU operators, and
the operator parsers.
–Toolkit: provides tools used to debug applications and operators. To
name only a few:
Proling: tool for performance proling.
▪
▪ADC: Ascend Debug Client for delivering commands and les to the
host.
●Install CANN Toolkit separately and develop AI applications on the server in
the command line.
If the Ubuntu server on which the Toolkit is installed is not the Ubuntu server
prepared for SD card preparation, recongure the communication between this
Ubuntu server and the Atlas 200 DK by referring to 5.2 Connecting Atlas 200 DK
Atlas 200 DK
Environment Deployment Guide6 Setting up the Development Environment
6.2 Installing CANN Toolkit Separately
6.2.1 Obtaining Software Packages
Before installing the software, obtain the following software packages.
indicates the software package version, which must be the same as the actual
version.
Table 6-1 Software packages
NameSoftware
Package
Devel
opme
nt kit
Ascend-canntoolkit_
nux-x86_64.run
Ascend-canntoolkit_
nux-aarch64.run
{version}
{version}
How to ObtainDescription
Link
_li
Download the
software package
of the required
version under
CANN Software
Package.
Link
_li
Download the
software package
of the required
version under
CANN Software
Package.
● It is used for application
●
development, operator
customization, and model
conversion. The
development kit contains
the library
developing applications
and development auxiliary
tools such as the ATC
model conversion tool.
Unied installation of
packages for two
architectures: The
development environment
uses the x86 architecture,
but the operating
environment uses the ARM
architecture. Therefore, an
ARM64 development kit
needs to be installed for
cross compilation of
applications.
les required for
{version}
6.2.2
Conguring Ubuntu (x86)
Checking the umask of the root User
1.Log in to the installation environment as the root user.
2.Check the umask value of the root user.
umask
3.If the umask value is not 0022, append umask 0022 to the
Atlas 200 DK
Environment Deployment Guide6 Setting up the Development Environment
Creating an Installation User
Toolkit must be installed by a non-root user. Therefore, you need to create a nonroot user. Perform the following operations as the root user:
1.Create a non-root user.
useradd -d /home/
username
username
-m
is user-dened.
username
2.Set the password of the non-root user.
passwd
username
You can run the chage command to set the account expiry date. For details, see 8.10
Setting User Account Expiry Date.
Conguring Permissions for the Installation User
Before installing Toolkit, you need to download related dependencies. To
download the dependencies as a non-root user, the sudo apt-get permission is
needed. Perform the following operations to grant permission to the non-root
user:
1.Open the /etc/sudoers
chmod u+w /etc/sudoers
vi /etc/sudoers
2.Add the following content under # User privilege
Ensure that the last line in the /etc/sudoersle is #includedir /etc/sudoers.d.
Otherwise, add it manually.
3.Run the :wq! command to save the le.
4.Remove the write permission on the /etc/sudoersle.
chmod u-w /etc/sudoers
Checking Source Validity
During Toolkit installation, related dependencies will be downloaded. Ensure that
the installation environment has Internet access.
le as the root user.
username
specication in the le:
with the Toolkit installation
Run the following command as the root user to check source validity:
apt-get update
If an error is reported during command execution or dependency installation,
check whether the network connection is normal, or replace the sources in
the /etc/apt/sources.list
le with valid ones or use mirrored ones. For details
about how to congure a network proxy, see 8.11 Conguring a System
Step 2 Check whether the Python development environment is installed.
Toolkit depends on the Python environment. Run the python3.7.5 --version andpip3.7.5 --version commands to check whether Python has been installed. If the
following information is displayed, Python has been installed. Go to the next step.
les
les)
Python 3.7.5
19.2.3
pip
from /usr/local/python3.7.5/lib/python3.7/site-packages/pip (python 3.7)
2.Go to the download directory and run the following command to extract the
source code package:
tar -zxvf Python-3.7.5.tgz
3.Go to the new folder and run the following
conguration, build, and
installation commands:
cd Python-3.7.5
./congure--prex=/usr/local/python3.7.5 --enable-loadable-sqlite-extensions --enable-shared
make
sudo make install
--prexspecies the Python installation path. You can modify it as required.
--enable-shared is used to build the libpython3.7m.so.1.0 dynamic library. --
enable-loadable-sqlite-extensions is used to load the libsqlite3-dev
dependency.
This document uses
--prex=/usr/local/python3.7.5 as an example. After theconguration, compilation, and installation commands are executed, the
package is output to the /usr/local/python3.7.5 directory, and the
libpython3.7m.so.1.0 dynamic library is output to the /usr/local/
python3.7.5/lib/libpython3.7m.so.1.0 directory.
4.Run the following commands to set the soft links:
a.Run the vi ~/.bashrc command in any directory as the installation user to
open the .bashrc
# Set the Python 3.7.5 library path.
export LD_LIBRARY_PATH=/usr/local/python3.7.5/lib:$LD_LIBRARY_PATH
# If multiple Python 3 versions exist in the user environment, specify Python 3.7.5.
export PATH=/usr/local/python3.7.5/bin:$PATH
b.Run the :wq! command to save the
le and append the following line to the le:
le and exit.
c.Run the source ~/.bashrc command for the modication to take eect
immediately.
6.After the installation is complete, run the following commands to check the
installation version. If the required version information is displayed, the
installation is successful.
Step 3 Install the Python 3 development environment.
Before the installation, run the pip3.7.5 list command to check whether the
dependencies have been installed. If yes, skip this step. If no, run the following
commands to install the dependencies. (If only some of the dependencies are not
installed, modify the following commands to install them.) The Model Accuracy
Analyzer in Toolkit depends on Protobuf and SciPy.
Proling depends on Protobuf,
grpcio, grpcio-tools, and requests.
If you install Python and its dependencies as a non-root user, add --user to each
command in this step to ensure that the installation is successful. Example
command: pip3.7.5 install attrs --user
For details about the default installation path, see Table 6-2. After the
installation is complete, if information similar to the following is displayed,
the software is successfully installed.
Atlas 200 DK
Environment Deployment Guide6 Setting up the Development Environment
{path}
path.
For more installation parameters, see 8.12 Parameters.
----End
indicates the specied installation path. Replace it with the actual
Installation Path Description
●If you do not specify an installation path, the software is installed in the
default path. For details about the default path, see Table 6-2.
Table 6-2 Software installation path
ItemPath
Default
installation
path
Detailed log
path
Path for
recording
information
such as the
software
package
version, CPU
architecture,
GCC version,
and installation
path
${HOME}/Ascend/ascend-toolkit/latest
"
${HOME}/Ascend
ascend_install.log"
"
${HOME}/Ascend
ascend_toolkit_install.info"
/ascend-toolkit/latest/
/ascend-toolkit/latest/
{arch}-
{arch}-
linux/
linux/
Table 6-3 Variable description
Variable
${HOME}Directory of the current user. Example: /home/xxxx
{arch}-
linuxArchitecture directory, which is named after the
Description
combination of the CPU architecture and Linux branch of
a software package. Example: x86_64-linux
6.2.4 Post-installation Actions
Conguring the Cross Compilation Environment
For the architecture of the development environment is dierent from that of the
operating environment, you need to install the cross compiler in the development
environment. For details, see Table 6-4.
Atlas 200 DK
Environment Deployment Guide6 Setting up the Development Environment
Table 6-4 Cross compiler installation
Developm
ent
Environme
nt
Architectur
Operating
Environmen
t
Architectur
e
e
x86_64aarch64Run the aarch64-linux-gnu-g++ --version
Conguring Environment Variables
After the installation is complete, set the following environment variables for
subsequent development (the following environment variable
the default installation path of the software package as an example).
Compilation Environment Conguration
command in the development environment as the
installation user of the software package to check
whether g++ has been installed. If g++ is installed,
the following message is displayed:
Atlas 200 DK
Environment Deployment Guide6 Setting up the Development Environment
Step 2 For details about how to install MindStudio by decompressing the package and
running the installation script, see "Procedure" in Installing MindStudio.
----End
6.4 Deploying the Media Module
If an external camera is used to collect source data for AI application
development, related header le and library le need to be deployed in the
development environment.
Atlas 200 DK
Environment Deployment Guide7 Hands-on Your First Application
7 Hands-on Your First Application
After the operating environment and development environment are deployed, you
can run the
●If the application is developed based on MindStudio, you can build and run
the sample by referring to "Developing an Application from a Sample Project
(acl_resnet50)" in
●If development is performed in the command line, you can build and run the
sample by referring to "AscendCL Sample User Guide > Image
with Cae ResNet-50 (Synchronous Inference)" in
Guide
rst AI application to verify the environment deployment.
MindStudio User Guide
.
.
Application Development
Classication
For more application cases of Atlas 200 DK, see the README.mdle in GitHub.
Atlas 200 DK
Environment Deployment Guide8 Common Operations
8 Common Operations
8.1 Powering on Atlas 200 DK
8.2 Powering
8.3 Connecting the Atlas 200 DK over a Serial Port
8.4 Checking the Software Versions of Atlas 200 DK
8.5 Checking the Version of the Motherboard of the Developer Board
8.6 Checking the Version of the Atlas 200 AI Accelerator Module
8.7 Viewing the Channel to Which a Camera Belongs
8.8 Installing the Windows USB Network Adapter Driver
8.9 Changing the Atlas 200 DK IP Address
8.10 Setting User Account Expiry Date
Conguring a System Network Proxy
8.11
8.12 Parameters
Conguring the PIP Source
8.13
o the Atlas 200 DK Developer Board
8.1 Powering on Atlas 200 DK
Do not power o the Atlas 200 DK during the rst boot or an upgrade. Otherwise,
the Atlas 200 DK may be damaged. Wait at least 2s after it is powered
powering it on again.
Step 1 Connect the power module to the external power supply. Figure 8-1 shows the
power port on the Atlas 200 DK. After connected to the power supply, the Atlas
200 DK automatically boots.
Atlas 200 DK
Environment Deployment Guide8 Common Operations
Figure 8-3 LED positions when the mainboard is IT21VDMB
The silkscreen of the indicators is MINI_LED2, MINI_LED1, 3559_ACT, and 3559_VEDIO
from left to right, corresponding to the indicators from left to right.
You can power o or restart
the developer board of the
Atlas 200 DK developer kit
(model 3000).
Atlas 200 DK
Environment Deployment Guide8 Common Operations
MINI_LED2MINI_LED1Developer Board
Important Notes
Status of the Atlas
200 DK developer kit
(model 3000)
OOnAscend 310 is started.You can power o or restart
the developer board of the
Atlas 200 DK developer kit
(model 3000) except during
version upgrade.
BlinkBlinkThe rmware is being
upgraded.
● Do not power o or restart
the developer board of the
Atlas 200 DK developer kit
(model 3000). Otherwise,
the rmware upgrade may
be incomplete and the
board may be damaged.
● The
rmware upgrade
process is a part of the
version upgrade. The
upgrade takes about 15
minutes.
OnOnThe developer board
of the Atlas 200 DK
developer kit (model
3000) is started.
Table 8-2 Indicator status 2
3559_A
CT
3559_V
EDIO
Developer Board
Status of the
Important Notes
Atlas 200 DK
developer kit
(model 3000)
OOThe Hi3559C
None
system is not
started.
OOnThe Hi3559C
None
system is being
started.
OnOnThe startup
None
process of the
Hi3559C system is
complete.
You can power o or restart
the developer board of the
Atlas 200 DK developer kit
(model 3000).
Atlas 200 DK
Environment Deployment Guide8 Common Operations
8.2 Powering o the Atlas 200 DK Developer Board
Precautions
Determine whether the Atlas 200 DK developer board can be powered
on the description in Step 2.
o based
Procedure
Step 1 Disconnect the power cable from the power port to power
developer board.
The Atlas 200 DK cannot be shut down by using the OS-level shutdown command.
----End
o the Atlas 200 DK
8.3 Connecting the Atlas 200 DK over a Serial Port
Connecting to the Atlas 200 AI Accelerator Module over a Serial Port
You can view the boot information about the AI accelerator module on the Atlas
200 DK over a serial port.
This serial port is used only for viewing boot information. After the Atlas 200 AI accelerator
module is started, its serial port is disabled, and the Atlas 200 AI accelerator module cannot
be logged in to.
Figure 8-4 shows how to connect the Atlas 200 AI accelerator module by using a
Atlas 200 DK
Environment Deployment Guide8 Common Operations
Figure 8-4 Serial port connection of the Atlas 200 AI accelerator module
Serial port on the Atlas 200 AI accelerator module: Connect a cable to the serial
port according to the colors specied in Figure 8-4.
Requirements for the serial cable: USB-to-serial cable (3.3 V)
Connecting to the Hi3559 Module over a Serial Port
The Atlas 200 DK provides a serial port for connecting to the Hi3559 module.
Figure 8-5 shows the serial port connection diagram.
This serial port is used only for viewing boot information. After the Hi3559 module is
started, its serial port is disabled, and the Hi3559 module cannot be logged in to.
// show PCB ID;
switch (pcb_id)
{
case PCB_ID_VER_A:
printf("PCB version is: Ver.A !\n");
break;
case PCB_ID_VER_B:
printf("PCB version is: Ver.B !\n");
break;
case PCB_ID_VER_C:
printf("PCB version is: Ver.C !\n");
break;
case PCB_ID_VER_D:
printf("PCB version is: Ver.D !\n");
break;
default:
break;
}
return 0;
}
(bu[1]>>4)&DEVELOP_A_BOM_PCB_MASK;
Step 2 Compile the
le to obtain an executable le for obtaining the PCB version number.
Run the following command to compile the i2c_tool_atlas200dk.cle into a le
that can be executed on the developer board:
aarch64-linux-gnu-gcc
atlas200dk_version_tool
i2c_tool_atlas200dk.c
-o
atlas200dk_version_tool
indicates the name of the executable le.
Step 3 Upload the executable le generated in Step 2 to the developer board.
For example, upload the le to the home directory of the HwHiAiUser user of the
developer board.
atlas200dk_version_tool
scp
HwHiAiUser@
192.168.1.2
:/home/HwHiAiUser
Step 4 Log in to the developer board as the HwHiAiUser user in SSH mode and query
Atlas 200 DK
Environment Deployment Guide8 Common Operations
Switch to the root user and execute the query script.
su root
./atlas200dk_version_tool
The following information is displayed, indicating that the developer board is a VB
version.
root@davinci-mini:/home/HwHiAiUser# ./atlas200dk_version_tool
PCB version is: Ver.B !
----End
8.6 Checking the Version of the Atlas 200 AI
Accelerator Module
You can determine the version of the Atlas 200 AI acceleration module based on
the value of boardid or the PCB version of the Atlas 200 AI acceleration module.
The following describes two query methods.
Method 1 (CLI Mode)
Step 1 Log in to the Atlas 200 DK developer board as the HwHiAiUser user in SSH mode.
Step 2 Run the following command to check the version of the Atlas 200 AI accelerator
// Read PCB ID
slave = I2C_SLAVE;
reg = 0x07;
data = 0x5A;
ret = i2c_read(slave, reg, &data);
if (ret != 0)
{
printf("read %s %#x %#x to %#x fail!\n", dev_name, slave, data, reg);
}
slave = I2C_SLAVE;
reg = 0x07;
data = data|0xF0;
ret = i2c_write(slave, reg, data);
if (ret != 0)
{
printf("write %s %#x %#x to %#x fail!\n", dev_name, slave, data, reg);
}
slave = I2C_SLAVE;
reg = 0x01;
data = 0x5A;
ret = i2c_read(slave, reg, &data);
if (ret != 0)
{
printf("read %s %#x %#x to %#x fail!\n", dev_name, slave, data, reg);
}
close(fd);
// show PCB ID;
switch (data & 0xF0)
{
case PCB_ID_VER_A:
printf("PCB version is: Ver.A !\n");
break;
case PCB_ID_VER_B:
printf("PCB version is: Ver.B !\n");
break;
case PCB_ID_VER_C:
printf("PCB version is: Ver.C !\n");
break;
case PCB_ID_VER_D:
printf("PCB version is: Ver.D !\n");
break;
default:
break;
}
return 0;
}
Step 2 Compile the
le to obtain an executable le for obtaining the PCB version number.
Atlas 200 DK
Environment Deployment Guide8 Common Operations
●The channel corresponding to CAMERA0 is Channel-1.
●The channel corresponding to CAMERA1 is Channel-2.
8.8 Installing the Windows USB Network Adapter
Driver
If the Ubuntu server is installed through a VM running Windows, you need to
install the USB NIC driver, that is, the Remote Network Driver Interface
Specication (RNDIS) driver, on the Windows OS. Otherwise, when the Atlas 200
DK connects to the Windows host where Ubuntu is located through a USB cable,
the USB virtual NIC of the Atlas 200 DK cannot be
Assume that you have connected the Atlas 200 DK to the Windows host running
Ubuntu using a USB cable, perform the following steps to install the RNDIS driver
on Windows 10.
Step 1 In the Computer Management window, choose Device Manager > Other
devices, as shown in the following
gure. RNDIS is in the unidentied state.
identied in the Ubuntu OS.
Figure 8-7 Device Manager
Step 2 Right-click RNDIS and choose Update driver from the shortcut menu.
-mMinimum interval (in days) for changing a password. The value
0 indicates that the password can be changed at any time.
-MMaximum validity period (in days) of a password, that is, the
number of days from the last password change or account
creation date.
The value –1 indicates that the validity check of the password
can be disabled. The value –99999 indicates that the validity
period is unlimited.
-dLast password change date.
-IMaximum idle period (in days) after which the user account
will be disabled. After the specied time period has expired, the
password will be invalid.
-EUser account expiry date. The user account is unavailable after
this date.
-WNumber of days for warning the expiration in advance.
-lLists the current settings. It helps non-privileged users to
determine password or account validity period.
● Table 8-3 lists only common options. You can run the chage --help command to display
detailed option description.
● The date is in
that the user account
● User must be specied. Replace it with the actual user name. The default user name is
root.
YYYY-MM-DD
format. For example, chage -E 2020-12-01
test
expires on December 1, 2020.
test
indicates
Example:
●Set the expiry date of the HwHiAiUser user to December 1, 2020. That is, the
password of the HwHiAiUser user expires on December 1, 2020.
chage -E 2020-12-01 HwHiAiUser
●Set the validity period of the HwHiAiUser user to 90 (days).
Atlas 200 DK
Environment Deployment Guide8 Common Operations
8.11 Conguring a System Network Proxy
The following procedure is a general method for
may not be applicable to all network environments. The method of
the network proxy depends on the actual network environment.
Prerequisites
●Ensure that the network cable of the server is connected and the proxy server
can connect to the external network.
●The conguration proxy is based on the condition that the server is located on
an intranet and cannot be directly connected to the external network.
Conguring a System Network Proxy
Step 1 Log in to the user environment as the root user.
Step 2 Run the following command to edit the /etc/prolele:
vi /etc/prole
Add the following content to the le, save the le, and exit:
export http_proxy="http://
export https_proxy="
In the preceding commands, user indicates the username on the intranet,
password indicates the user password, proxyserverip indicates the IP address of
the proxy server, and port indicates the port number.
user:password@proxyserverip:port
http://user:password@proxyserverip:port
conguring a network proxy. It
conguring
"
"
Step 3 Run the following command to make the
source /etc/prole
Step 4 Run the following command to check whether the external network is connected:
wget www.baidu.com
If the HTML le can be downloaded, the server is connected to the external
network successfully.
If a certicate error occurs when you use a proxy to connect to the network, you need to
install the certicate of the proxy server before downloading third-party components.
----End
8.12 Parameters
Instant installation is supported in the command line. You can select the
command-line options as required. All arguments are optional.
The installation command format is: ./*.run [options]
Atlas 200 DK
Environment Deployment Guide8 Common Operations
If the options queried by running the ./*.run --help command are not described in
the following table, option is reserved or applies to other chip versions. You do not
need to pay attention to this option.
Table 8-4 Parameters supported by the installation package
ParameterDescription
--help | -hQueries help information.
--versionQueries version information.
--infoQueries software package construction information.
--listQueries the software package list.
--checkChecks the consistency and integrity of software packages.
--noexecDecompresses a software package to the current directory without
running the installation script. This parameter is used together with
--extract=<path>. The format is as follows:
--noexec --extract=<path>
--
Decompresses a software package to a specied directory.
extract=<
path>
--tar arg1
[arg2 ...]
Runs the tar command on the software package. Use the
arguments following tar as the command arguments. For example,
the --tar xvf command indicates that the RUN package will be
decompressed to the current directory.
--installInstalls a software package. You can specify the installation path -install-path=<path> or use the default installation path.
--install-
path=<pa
th>
Species the installation path. If you do not specify the installation
path, the default installation path is used.
● For installation as user root, the default installation path is /usr/
local/Ascend.
● For installation as a non-root user, the default installation path
is ${HOME}/Ascend.
If this parameter is used to specify the installation directory, the
running user must have the read and write permissions on the
specied installation directory.
--uninstallUninstalls the software that has been installed.
Atlas 200 DK
Environment Deployment Guide8 Common Operations
ParameterDescription
--upgradeUpgrades the software that has been installed. The system
automatically checks the version number. If the version number is
not in ascending order, the upgrade cannot be performed.
--develInstalls a software package in development mode, that is, install
only the les required by the development environment.
8.13
Conguring the PIP Source
Congure the pip source as follows:
Step 1 Run the following command as the installation user of the software package:
cd ~/.pip
If a message indicating that the directory does not exist is displayed, run the
following command to create the directory:
mkdir ~/.pip
cd ~/.pip
Create a pip.conf le in the .pip directory:
touch pip.conf
Step 2 Edit the pip.conf
Run the vi pip.conf command to open the pip.confle and edit the le as
follows:
[global]
# Huawei source is used as an example. Replace it based on the actual situation.
index-url = https://mirrors.huaweicloud.com/repository/pypi/simple
trusted-host = mirrors.huaweicloud.com
timeout = 120
9.1 What Do I Do If a Redundant Mounted Disk Appears Due to Manual Removal
of the SD Card During SD Card Creation?
9.2 What Do I Do If the Trust Relationship Between the Ubuntu Server and the
Developer Board Fails to Be Established?
9.3 What Do I Do If Atlas 200 DK Cannot Connect to Ubuntu Server?
9.4 What Do I Do If "Could not
Displayed When pip3.7.5 Install Is Run?
nd a version that satises the requirement xxx" Is
9.1 What Do I Do If a Redundant Mounted Disk
Appears Due to Manual Removal of the SD Card
During SD Card Creation?
If the SD card is manually removed during SD card creation a redundant
temporarily mounted disk is generated. You can perform the following steps to
remove it.
Step 1 Log in to the Ubuntu server as a common user and run the su - root command to
switch to the root user.
Step 2 Run the df -h command to view the temporarily mounted /dev/loop0 disk.
9.2 What Do I Do If the Trust Relationship Between the
Ubuntu Server and the Developer Board Fails to Be
Established?
Symptom
On the Ubuntu server, the following command is run to connect to the Atlas 200
DK developer board in SSH mode. A message is displayed, indicating that no trust
relationship exists.
The following command is run on the Ubuntu server to re-establish the trust
relationship:
Solution
ssh-keygen -f "$HOME/.ssh/known_hosts" -R
192.168.1.2 is the IP address of the Atlas 200 DK developer board.
The following error is reported:
ECDSA host key for 192.168.1.2 has changed and you have requested strict checking.
This error is caused by the invalid SSH information stored on the local host.
Therefore, you need to clear the local SSH information and establish the
connection again.
Step 1 On the Ubuntu server, clear the public key information about the connection to
the 192.168.1.2 host of the current user.
ssh-keygen -R
Step 2 Re-connect to the Atlas 200 DK developer board in SSH mode.
ssh HwHiAiUser@192.168.1.2
When the following information is displayed, enter yes to re-establish the SSH
connection.
192.168.1.2
192.168.1.2
The authenticity of host '192.168.1.2' can't be established.
ECDSA key ngerprint is 53:b9:f9:30:67:ec:34:88:e8:bc:2a:a4:6f:3e:97:95.
Are you sure you want to continue connecting (yes/no)?
----End
9.3 What Do I Do If Atlas 200 DK Cannot Connect to
Ubuntu Server?
●After the Atlas 200 DK is powered on with the prepared SD card inserted, the
states of LED1 and LED2 indicators are abnormal.
●After the Atlas 200 DK is powered on and started with the prepared SD card
inserted and the Ubuntu server connected in USB mode, no virtual NIC is
identied on the Ubuntu server.
●After the Atlas 200 DK is powered on and started with the prepared SD card
inserted, the Ubuntu server connected in NIC mode, and Ubuntu server NIC
congured, the Ubuntu server fails to communicate with the Atlas 200 DK.
Fault Locating
Perform troubleshooting by referring to Figure 9-1.
Figure 9-1 Troubleshooting on Atlas 200 DK connection failure
Solution
Step 1 Ensure that the SD card is made correctly and successfully.
In the sd_card_making_logle in the directory where the card preparation script
is located, check whether the card is made successfully. If not, try again by
referring to 5.1 Creating an SD Card.
Step 2 Insert the SD card into the Atlas 200 DK and power on the board.
●If LED1 and LED2 on the Atlas 200 DK are normal, that is, LDE1 and LDE2 are
both on after the Atlas 200 DK is started, go to Step 3.
●If LED1 and LED2 on the Atlas 200 DK are abnormal, that is, both LED1 and
LED2 are not on 15 minutes after the Atlas 200 DK is started, view the system
software installation logs and Atlas 200 DK startup logs by referring to
Exception Handling.
If the fault persists, go to Step 4.
Step 3 Connect the Atlas 200 DK to the Ubuntu server.
●If the Ubuntu server is connected to the Atlas 200 DK in USB mode, but the
virtual USB NIC is not displayed.
Check the USB network cable and ensure that both ends of the USB network
cable are properly connected.
If the USB virtual NIC is still not
identied on the Ubuntu server, connect the
Ubuntu server to the Atlas 200 DK in NIC mode.
●If the Ubuntu server is connected to the Atlas 200 DK in NIC mode, but the
Ubuntu server fails to communicate with the Atlas 200 DK after the IP
address is
congured.
Check the network cable and ensure that both ends of the network cable are
properly connected. Then, recongure the IP address of the NIC on the
Ubuntu server.
If the Ubuntu server still fails to communicate with the Atlas 200 DK, connect
the Ubuntu server to the Atlas 200 DK in USB mode.
If the Ubuntu server fails to connect to the Atlas 200 DK in either USB or NIC
mode, go to Step 4.
Step 4 Connect the AI accelerator module of the Atlas 200 DK to the Ubuntu server over
a serial cable by referring to 8.3 Connecting the Atlas 200 DK over a Serial Port.
Step 5 Install the network debugging tool and USB-to-serial driver on the Ubuntu server.
●Recommended network debugging tool: IPOP
●USB-to-serial driver: PL2303 driver
Step 6 Start the network project debugging tool, for example, IPOP. The serial port
window is displayed.
1.Click the Terminal tab page.
2.On the menu bar, click
. The Connect List dialog box is displayed.
3.Congure the connection.
–ConnName: user-dened connection name.
–Type: port type. Choose COMX. You can view the available COM ports in
the device manager of the computer. Remove and insert the serial cable
on the Ubuntu server to determine the COM port used by the Atlas 200
DK, as shown in Figure 9-2.
Step 7 Power on the Atlas 200 DK, and view the Atlas 200 DK boot information in the
COM connection window of the IPOP tool.
There are many startup logs. Click on the menu bar to save the startup logs to
the installation directory of the IPOP tool. When this icon changes to , a
message is displayed at the bottom of the IPOP tool, indicating that the log le is
saved. You can obtain the log
installation directory of the IPOP tool according to the message.
Step 8 Start a help post on the Ascend Developer Zone and upload the startup log le
as an attachment. Huawei engineers will provide technical support for you.
----End
le named after the current time from the
9.4 What Do I Do If "Could not nd a version that
satises the requirement xxx" Is Displayed When
pip3.7.5 Install Is Run?
Symptom
During dependency installation, when the pip3.7.5 install xxx command is used
to install related software, a message is displayed indicating that the network
cannot be connected and the message "Could not nd a version that satises the
requirement xxx" is displayed.
Figure 9-3 Message displayed upon pip3 install
Possible Cause
The pip source is not congured.
Solution
Congure the pip source as follows:
Step 1 Run the following command as the installation user of the runle:
cd ~/.pip
If a message indicating that the directory does not exist is displayed, run the
following command to create a directory:
mkdir ~/.pip
cd ~/.pip
Run the following command to create pip.conf le in the .pip directory:
touch pip.conf
Step 2 Edit the pip.conf
le.
Run the vi pip.conf command to open the pip.confle and add the following
content to the
[install]
#Congure the trusted host as required.
trusted-host=cmc-cd-mirror.rnd.huawei.com
[global]
#Congure the sources as required.
index-url=http://cmc-cd-mirror.rnd.huawei.com/pypi/simple/
le:
Step 3 Run the :wq! command to save the le.
Step 4 (Optional) If the network still cannot be connected after the pip source is
updated, the possible cause is that the domain name server has been changed. In
this case, perform the following operations to change the IP address of the
domain name server:
1.Obtain the IP address of the domain name server of the updated pip source.
Run the following command on the Linux server to obtain the IP address of
the new domain name server:
ping
<new domain name address>
Example:
ping
cmc-cd-mirror.rnd.huawei.com
2.Write the obtained IP address of the domain name server to the /etc/resolv.conf