Run neural network inference on the Intel Movidius NCS attached to an ORBIT/COSMOS
testbed node: install the NCSDK, verify device detection, and execute the
hello_ncs and AlexNet image-classification examples.
The Intel Movidius Neural Compute Stick (NCS) is a USB-attached deep-learning
accelerator that offloads neural network inference from the host CPU. This
tutorial walks through detecting the NCS on a testbed node, downloading and
installing the Movidius NCSDK from GitHub, and running two sample applications
supplied with the SDK: a minimal open/close device check (hello_ncs) and the
AlexNet image-classification network.
No prior knowledge of neural networks is required — the goal is to give a
simple, working baseline for using the NCS on ORBIT/COSMOS infrastructure before
deeper experimentation.
After completing this tutorial you will be able to:
dmesg.hello_ncs Python example to confirm Neural Compute API access.| Difficulty | Beginner |
| Estimated time | TODO: verify |
| Domain / sandbox | Any sandbox with nodes that have a Movidius NCS attached — use the Inventory/Status page to find them |
| Topic group | bluetooth-zigbee |
| Last verified | Not re-tested (migrated 2026-06-20) |
Background knowledge
Account & access
Devices / nodes
| Resource | Role | Qty | Notes |
|---|---|---|---|
| node1-1 (Sandbox 1) | NCS host | 1 | Must have Intel Movidius NCS attached via USB; use Inventory/Status to find eligible nodes |
Disk images
| Image | Load onto | Provides |
|---|---|---|
| baseline-ubuntu-16-04-64bit.ndz | node1-1 | Ubuntu 16.04 64-bit with many NCSDK prerequisites preinstalled |
Software components
| Component | Version | Source |
|---|---|---|
| Intel Movidius NCSDK | TODO: verify (cloned from GitHub at install time) | https://github.com/movidius/ncsdk |
| Python 3 | as shipped in image | preinstalled in Ubuntu 16.04 image |
| AlexNet example | bundled with NCSDK | ncsdk/examples/caffe/AlexNet |
Spectrum / RF / special
Not applicable.
A single testbed node (node1-1) with an Intel Movidius NCS plugged into a USB
port. The node is controlled from the sandbox console over the control-plane
network. No over-the-air RF is involved.
ssh <username>@console.<sandbox>.cosmos-lab.org
omf tell -a offh -t system:topo:allres
omf load -i baseline-ubuntu-16-04-64bit.ndz -t node1-1
omf tell -a on -t node1-1
omf stat -t node1-1
ssh root@node1-1
After the node is imaged and booted, confirm the kernel has detected the Movidius
NCS by grepping the driver messages:
root@node1-1:~# dmesg | grep Movidius
Expected output:
[ 1.103633] usb 3-3: Product: Movidius MA2X5X
[ 1.103634] usb 3-3: Manufacturer: Movidius Ltd.
Both lines must appear. If neither appears, the NCS is not detected — check USB
connection and node assignment (see Troubleshooting).
Download the SDK and examples from the official GitHub repository, then run the
installer:
root@node1-1:~# git clone https://github.com/movidius/ncsdk.git
root@node1-1:~# cd ncsdk
root@node1-1:~# make install
At the end of the installation you should see a message stating "Setup is
complete". The installer updates Python environment variables in ~/.bashrc.
Source your shell configuration before continuing in the same terminal, or open
a new terminal:
root@node1-1:~# source ~/.bashrc
The hello_ncs example verifies that the Neural Compute API can open and close
the NCS device. Move to the Python version's directory and build it:
root@node1-1:~# cd ~/ncsdk/examples/apps/hello_ncs_py/
root@node1-1:~# make all
Run it:
root@node1-1:~# make run
Expected output:
python3 hello_ncs.py;
Hello NCS! Device opened normally.
Goodbye NCS! Device closed normally.
NCS device working.
The last line NCS device working. confirms the API can access the hardware.
To run the equivalent C++ version, move to the hello_ncs_cpp directory and
build and run it in one step:
root@node1-1:~# cd ~/ncsdk/examples/apps/hello_ncs_cpp/
root@node1-1:~# make all && make run
The output should be similar to the Python version.
The AlexNet example is provided in ncsdk/examples/caffe/AlexNet. The
Makefile drives downloading, profiling, compiling, checking, and running the
network. Review the available targets first:
root@node1-1:~# cd ~/ncsdk/examples/caffe/AlexNet/
root@node1-1:~# make help
Refer to the AlexNet example README on GitHub
for the full list of make targets and their descriptions before executing
this example, as some targets download large files.
dmesg | grep Movidius returns two lines showing Movidius MA2X5X andMovidius Ltd..hello_ncs Python (or C++) example prints NCS device working. withoutmake run target completes without error and producesomf tell -a offh -t system:topo:allres
No omf save is needed unless you customized the image (e.g., cached the
downloaded NCSDK to avoid re-cloning).
| Symptom | Likely cause | Fix |
|---|---|---|
dmesg | grep Movidius returns nothing |
NCS not attached to this node, or node has no NCS slot | Use the Inventory/Status page to select a node that has a Movidius NCS; re-image and retry |
make install fails with missing dependencies |
Ubuntu image missing a prerequisite package | Run apt-get update then retry; the baseline-ubuntu-16-04-64bit.ndz image ships many prerequisites but the installer may need network access |
hello_ncs errors with "Error - No NCS devices found" |
NCS not powered / USB not enumerated | Verify dmesg lines, replug USB, or power-cycle the node |
AlexNet make run hangs on large download |
Network or testbed bandwidth | Wait or check network connectivity from node1-1; large Caffe model files are downloaded at run time |
Author(s): COSMOS team · Last verified: Not re-tested (migrated 2026-06-20) · Tested image/release: baseline-ubuntu-16-04-64bit.ndz · Tags: movidius, ncs, neural-compute, edge-ai, machine-learning