Difference between revisions of "N300/N310 Getting Started Guides"
(→Updating the Filesystem) |
(→Setting up a Serial Connection) |
||
Line 57: | Line 57: | ||
==Setting up a Serial Connection== | ==Setting up a Serial Connection== | ||
− | + | It is possible to gain root access to the device using a serial terminal emulator. Most Linux, OSX, or other Unix flavours have a tool called <code>screen</code> which can be used for this purpose, by running the following command: | |
− | sudo screen /dev/ | + | $ sudo screen /dev/ttyUSB2 115200 |
− | + | In this command, we prepend <code>sudo</code> to elevate user privileges (by default, accessing serial ports is not available to regular users), we specify the device node, in this case, <code>/dev/ttyUSB2</code>, and the baud rate <code>115200</code>. | |
− | + | The exact device node depends on your operating system's driver and other USB devices that might be already connected. Modern Linux systems offer alternatives to simply trying device nodes; instead, the OS might have a directory of symlinks under <code>/dev/serial/by-id</code>: | |
− | + | $ ls /dev/serial/by-id | |
+ | usb-Digilent_Digilent_USB_Device_25163511FE00-if00-port0 | ||
+ | usb-Digilent_Digilent_USB_Device_25163511FE00-if01-port0 | ||
+ | usb-Silicon_Labs_CP2105_Dual_USB_to_UART_Bridge_Controller_007F6CB5-if00-port0 | ||
+ | usb-Silicon_Labs_CP2105_Dual_USB_to_UART_Bridge_Controller_007F6CB5-if01-port0 | ||
− | + | Note: Exact names depend on the host operating system version and may differ. | |
+ | |||
+ | Every N3XX series device connected to USB will by default show up as four different devices. The devices labeled <code>"USB_to_UART_Bridge_Controller"</ode> are the devices that offer a serial prompt. The first (with the <code>if00</code> suffix) connects to Linux, whereas the second connects to the STM32 microcontroller. If you have multiple N3XX devices connect, you may have to try out multiple devices. In this case, to use this symlink instead of the raw device node address, modify the command above to: | ||
+ | |||
+ | $ sudo screen /dev/usb-Silicon_Labs_CP2105_Dual_USB_to_UART_Bridge_Controller_007F6CB5-if00-port0 115200 | ||
Boot messages will appear and update rapidly after you power on the device. Once the boot process successfully completes, a login prompt like the following should appear: | Boot messages will appear and update rapidly after you power on the device. Once the boot process successfully completes, a login prompt like the following should appear: | ||
Line 75: | Line 83: | ||
Enter the username <code>root</code> and leave the password field blank. | Enter the username <code>root</code> and leave the password field blank. | ||
− | You should be presented with a shell | + | You should be presented with a shell prompt similar to the following: |
root@ni-n3xx-<motherboard serial #>:~# | root@ni-n3xx-<motherboard serial #>:~# | ||
+ | |||
+ | You should be presented with a shell prompt similar to the following: | ||
+ | |||
+ | On this prompt, you can enter any Linux command available. Using the default configuration, the serial console will also show all kernel log messages (unlike when using SSH, for example), and give access to the boot loader (U-boot prompt). This can be used to debug kernel or bootloader issues more efficiently than when logged in via SSH. | ||
+ | |||
+ | |||
+ | ===Connecting to the microcontroller=== | ||
+ | |||
+ | The STM32 microcontroller (which controls the power sequencing, among other things) also has a serial console available. To connect to the microcontroller, use the other UART device. In the example above: | ||
+ | |||
+ | $ sudo screen /dev/usb-Silicon_Labs_CP2105_Dual_USB_to_UART_Bridge_Controller_007F6CB5-if01-port0 115200 | ||
+ | |||
+ | It provides a very simple prompt. The command <code>'help'</code> will list all available commands. A direct connection to the microcontroller can be used to hard-reset the device without physically accessing it (i.e., emulating a power button press) and other low-level diagnostics. | ||
==Configuring an SSH Connection== | ==Configuring an SSH Connection== |
Revision as of 11:24, 12 April 2018
Contents
- 1 Kit Contents
- 2 Verify the Contents of Your Kit
- 3 You Will Need
- 4 Proper Care and Handling
- 5 Install and Setup the Software Tools on Your Host Computer
- 6 Connecting the Device
- 7 Setting up a Serial Connection
- 8 Configuring an SSH Connection
- 9 Setting Up a Streaming Connection
- 10 Verifying Device Operation
- 11 Upgrading to 10 Gigabit Ethernet
- 12 Updating the Filesystem
- 13 Turning the Device Off/On
- 14 Network Connectivity
- 15 Logging In
- 16 Example Programs
- 17 Test and Verify the Operation of the USRP
- 18 Technical Support and Community Knowledge Base
- 19 Legal Considerations
- 20 Sales and Ordering Support
- 21 Terms and Conditions of Sale
Kit Contents
N310
|
Verify the Contents of Your Kit
Ensure that your kit contains all the items listed above. If any items are missing, please contact sales@ettus.com immediately.
You Will Need
- For Network Mode: A host computer with an available 1 or 10 Gigabit Ethernet interface for sample streaming.
- For Stand-Alone Embedded Mode: A host computer with an available 1 Gigabit Ethernet port or a USB 2.0 port to remotely access the embedded Linux operating system running on ARM CPU.
Proper Care and Handling
All Ettus Research products are individually tested before shipment. The USRP is guaranteed to be functional at the time it is received by the customer. Improper use or handling of the USRP can cause the device to become non-functional. Take the following precautions to prevent damage to the unit.
- Never allow metal objects to touch the circuit board while powered.
- Always properly terminate the transmit port with an antenna or 50Ω load.
- Always handle the board with proper anti-static methods.
- Never allow the board to directly or indirectly come into contact with any voltage spikes.
- Never allow any water or condensing moisture to come into contact with the device.
- Always use caution with FPGA, firmware, or software modifications.
Never apply more than -15 dBm of power into any RF input. | |
Always use at least 30dB attenuation if operating in loopback configuration |
Install and Setup the Software Tools on Your Host Computer
In order to use your Universal Software Radio Peripheral (USRP™), you must have the software tools correctly installed and configured on your host computer. A step-by-step guide for doing this is available at the Building and Installing the USRP Open-Source Toolchain (UHD and GNU Radio) on Linux, OS X and Windows Application Notes. See the Hardware Specifications section of the USRP N300 Series Hardware Resources page for additional details on which version of the USRP Hardware Driver, UHD, is required. It is recommended to use the latest stable version of UHD that is available.
If you have a USB stick with the Live SDR Environment installed on it, then you may boot your host computer from that. The LiveUSB SDR Environment does not require anything to be installed on your host computer, and contains a Linux-based environment with the UHD software and the GNU Radio framework already installed. More information about the Live SDR Environment is available at the Live SDR Environment Getting Started Guides page.
The USRP N300/N310 requires UHD version 3.11.0.0 or later. Ettus recommends using the latest stable version of UHD. Please consult the UHD Manual at [1] for more details on device-specific software features.
Connecting the Device
Powering on for the First Time
You can connect the device to your host computer in the following ways:
- Using the on-board serial-to-USB connector.
- Using the RJ-45 Ethernet port and an SSH client on your host computer.
To power on the device for the first time, connect the host computer to the device using the USB cable. This setup allows you to review and modify the network configuration of the device and interact with the bootloader in case of problems during the boot process.
Setting up a Serial Connection
It is possible to gain root access to the device using a serial terminal emulator. Most Linux, OSX, or other Unix flavours have a tool called screen
which can be used for this purpose, by running the following command:
$ sudo screen /dev/ttyUSB2 115200
In this command, we prepend sudo
to elevate user privileges (by default, accessing serial ports is not available to regular users), we specify the device node, in this case, /dev/ttyUSB2
, and the baud rate 115200
.
The exact device node depends on your operating system's driver and other USB devices that might be already connected. Modern Linux systems offer alternatives to simply trying device nodes; instead, the OS might have a directory of symlinks under /dev/serial/by-id
:
$ ls /dev/serial/by-id usb-Digilent_Digilent_USB_Device_25163511FE00-if00-port0 usb-Digilent_Digilent_USB_Device_25163511FE00-if01-port0 usb-Silicon_Labs_CP2105_Dual_USB_to_UART_Bridge_Controller_007F6CB5-if00-port0 usb-Silicon_Labs_CP2105_Dual_USB_to_UART_Bridge_Controller_007F6CB5-if01-port0
Note: Exact names depend on the host operating system version and may differ.
Every N3XX series device connected to USB will by default show up as four different devices. The devices labeled "USB_to_UART_Bridge_Controller"</ode> are the devices that offer a serial prompt. The first (with the <code>if00
suffix) connects to Linux, whereas the second connects to the STM32 microcontroller. If you have multiple N3XX devices connect, you may have to try out multiple devices. In this case, to use this symlink instead of the raw device node address, modify the command above to:
$ sudo screen /dev/usb-Silicon_Labs_CP2105_Dual_USB_to_UART_Bridge_Controller_007F6CB5-if00-port0 115200
Boot messages will appear and update rapidly after you power on the device. Once the boot process successfully completes, a login prompt like the following should appear:
ni-3xx-<motherboard serial #>:
Enter the username root
and leave the password field blank.
You should be presented with a shell prompt similar to the following:
root@ni-n3xx-<motherboard serial #>:~#
You should be presented with a shell prompt similar to the following:
On this prompt, you can enter any Linux command available. Using the default configuration, the serial console will also show all kernel log messages (unlike when using SSH, for example), and give access to the boot loader (U-boot prompt). This can be used to debug kernel or bootloader issues more efficiently than when logged in via SSH.
Connecting to the microcontroller
The STM32 microcontroller (which controls the power sequencing, among other things) also has a serial console available. To connect to the microcontroller, use the other UART device. In the example above:
$ sudo screen /dev/usb-Silicon_Labs_CP2105_Dual_USB_to_UART_Bridge_Controller_007F6CB5-if01-port0 115200
It provides a very simple prompt. The command 'help'
will list all available commands. A direct connection to the microcontroller can be used to hard-reset the device without physically accessing it (i.e., emulating a power button press) and other low-level diagnostics.
Configuring an SSH Connection
The device relies on the DHCP protocol to automatically obtain an IP address when connected over the RJ45 1 Gigabit Ethernet port. If your network setup does not include a DHCP server, refer to the Serial Connection
section above or configure a DHCP server on the network to provide an IP address to the device.
After the device has obtained an IP address, you can remotely log into it from a Linux or macOS system with SSH, as shown below:
$ ssh root@192.168.10.2
NOTE: The IP address may vary depending on your network setup.
On Microsoft Windows, the connection can be established using Putty. Enter the IP address of the device and the username root
. The password field should be left blank.
You should be presented with a shell like the following:
root@nni-n3xx-<motherboard serial #>:~#
Find more details on network configuration here: https://files.ettus.com/manual/page_usrp_n3xx.html#n3xx_network_configuration
Setting Up a Streaming Connection
The device supports multiple, high-speed, low-latency interfaces on the SFP+ ports for streaming samples to the host computer. Complete the steps below to set up a streaming connection over the 1 Gigabit Ethernet interface on the SFP+ port.
1. Configure your Host's Ethernet adapter as shown below:
IP Address: 192.168.10.1 Subnet Mask: 255.255.255.0 Gateway: 0.0.0.0
2. Insert the RJ45 – SFP+ adapter into SFP Port 0
.
3. Connect the adapter to a host computer using the Ethernet cable.
The Green LED above SFP Port 0
should illuminate.
4. To test the connection, ping
the device at address 192.168.10.2
from the host, as shown
below:
$ ping 192.168.10.2
For more details on Network Setup and Configuration, please see the “Interfaces and Connectivity” section on the N300/N310 hardware resources page located within the Ettus Research Knowledge Base at https://kb.ettus.com/N300/N310 .
Verifying Device Operation
Once the UHD driver is installed on the host computer, verify the correct operation of the device by running the various utility programs included in the driver. Refer to the Application Note Verifying the Operation of the USRP Using UHD and GNU Radio.
Upgrading to 10 Gigabit Ethernet
The device also supports dual 10 Gigabit Ethernet connections. To use these interfaces, we recommend our 10 Gigabit Ethernet Connectivity kit. For more information on this accessory, visit https://www.ettus.com/product/details/10GIGE-KIT. For more information on using the 10 Gigabit Ethernet interface, refer to N300/N310 Hardware Resources Page.
Updating the Filesystem
Before doing any major work with a newly acquired USRP N300/N310, it is recommended to update the file system. Updating the filesystem can be accomplished directly on the N300/N310 by using Mender or externally by manually writing an image onto a micro SD card and inserting it. While manual updating is faster, Mender requires no direct physical access to the device. For details on using Mender, see Section Mender: Remote update capability.
Manual updating is simply loading an image on the micro SD card. The first step in that process is to obtain an image.
To obtain the default micro SD card image for a specific version of UHD, install that version of UHD (3.11.0.1 or later) on a host system with Internet access and run:
$ uhd_images_downloader -t n3xx_common_sdimg_default
The image will be downloaded to <UHD_INSTALL_DIR>/share/uhd/images/usrp_n3xx_fs.sdimg
, where UHD_INSTALL_DIR
is the UHD installation directory.
To load an image onto the micro SD card, connect the card to the host and run:
$ sudo dd if=<YOUR_IMAGE> of=/dev/<YOUR_SD_CARD> bs=1M
The <YOUR_IMAGE>
is the path to the micro SD card image (i.e.<UHD_INSTALL_DIR>/share/uhd/images/usrp_n3xx_fs.sdimg)
.
The <YOUR_SD_CARD>
device node depends on your operating system and which other devices are plugged in. Typical values are sdb or mmcblk0.
CAUTION: Operating on the wrong device can cause damage to that device.
The micro SD card used can be the original SD card shipped with the device or another one that is at least 16 GB in size.
Insert the updated micro SD card and power on the device.
Turning the Device Off/On
To avoid damaging the file system and causing any corruption, do not turn the device off with the power button without first shutting down the system. Use this command to cleanly and properly shut the system down:
shutdown -h now
Network Connectivity
By default, the N310 USRP will be configured as a DHCP client on the 1 Gigabit Ethernet port. Assuming your network resolves hostnames (depends on your routers / switches), if you connect the device to your network, you should see it appear with the hostname ni-n3xx-<motherboard serial #>
. You can then access the device over SSH.
If the hostname does not resolve, you can discover the IP address by logging into the device over the serial connection, or checking your network’s DHCP tables.
Once you have logged in to the device, you can reconfigure the network settings (e.g., you could configure it for a static IP address, if you wish).
Logging In
When you first log in to the device, the user is ‘root’ and the password is empty (no password).
Example Programs
The UHD driver includes several example programs, which may serve as test programs or the basis for your application program. These example programs are already installed on the N300/N310 USRP, and the source code can be obtained from the UHD repository on GitHub at: https://github.com/EttusResearch/uhd/tree/master/host/examples
Test and Verify the Operation of the USRP
You can quickly verify the operation of your USRP N300/N310 by running the rx_ascii_art_dft
UHD example program.
The rx_ascii_art_dft
utility is a simple console based, realtime FFT display tool. It is not graphical in nature, so it can be easily run over an SSH connection within a terminal window, and does not need any graphical capability, such as X Windows, to be installed. It can also be run over a serial console connection, although this is not recommended, as the formatting may not render correctly.
You can run a simple test of the N300/N310 USRP by connecting an antenna and observing the spectrum of a commercial FM radio station in realtime. Please follow the steps listed below.
1. Attach an antenna to the RX2 antenna port of the N310.
2. Log into the N310 from an external host computer over Ethernet using an SSH client.
3. At a terminal prompt running on the N310, run:
/usr/lib/uhd/examples/rx_ascii_art_dft --freq 88.1e6 --rate 400e3 --gain 30 --ref-lvl -30
4. Modify the commandline argument freq
above to specify a tuning frequency for a strong local FM radio station.
5. You should see a realtime FFT display of 400 KHz of spectrum, centered at the specified tuning frequency.
6. Type "Q
" or Ctrl-C
to stop the program and to return to the Linux command line.
7. You can adjust the size of your terminal window and then rerun the command to enlarge or shrink the FFT display.
8. You can run with the "help"option to see a description of all available commandline options.
Additional information is available at the Verifying the Operation of the USRP Using UHD and GNU Radio Application Note.
Technical Support and Community Knowledge Base
Technical support for USRP hardware is available through email only. If the product arrived in a nonfunctional state or you require technical assistance, please contact support@ettus.com. Please allow 24 to 48 hours for response by email, depending on holidays and weekends, although we are often able to reply more quickly than that.
We also recommend that you subscribe to the community mailing lists. The mailing lists have a responsive and knowledgeable community of hundreds of developers and technical users who are located around the world. When you join the community, you will be connected to this group of people who can help you learn about SDR and respond to your technical and specific questions. Often your question can be answered quickly on the mailing lists. Each mailing list also provides an archive of all past conversations and discussions going back many years. Your question or problem may have already been addressed before, and a relevant or helpful solution may already exist in the archive.
Discussions involving the USRP hardware and the UHD software itself are best addressed through the usrp-users mailing list at http://usrp-users.ettus.com.
Discussions involving the use of GNU Radio with USRP hardware and UHD software are best addressed through the discuss-gnuradio mailing list at https://lists.gnu.org/mailman/listinfo/discussgnuradio.
Discussions involving the use of OpenBTS® with USRP hardware and UHD software are best addressed through the openbts-discuss mailing list at https://lists.sourceforge.net/lists/listinfo/openbtsdiscuss.
The support page on our website is located at https://www.ettus.com/support. The Knowledge Base is located at https://kb.ettus.com.
Legal Considerations
Every country has laws governing the transmission and reception of radio signals. Users are solely responsible for insuring they use their USRP system in compliance with all applicable laws and regulations. Before attempting to transmit and/or receive on any frequency, we recommend that you determine what licenses may be required and what restrictions may apply.
- NOTE: This USRP product is a piece of test equipment.
Sales and Ordering Support
If you have any non-technical questions related to your order, then please contact us by email at orders@ettus.com, or by phone at +14086106399 (Monday-Friday, 8 AM - 5 PM, Pacific Time). Please be sure to include your order number and the serial number of your USRP.
Terms and Conditions of Sale
Terms and conditions of sale can be accessed online at the following link: http://www.ettus.com/legal/terms-and-conditions-of-sale