You are on page 1of 8

4/7/2014 UHD - USRP2 and N2x0 Series Device Manual

http://files.ettus.com/uhd_docs/manual/html/usrp2.html#multiple-rx-channels 1/8
UHDUSRP2andN2x0SeriesDeviceManual
TableofContents
Comparativefeatureslist
LoadtheImagesontotheSDcard(USRP2only)
Usethecardburnertool(UNIX)
Usethecardburnertool(Windows)
LoadtheImagesontotheOnboardFlash(USRPNSeriesonly)
Usethenetburnertool
Usethegraphicalnetburnertool(Linux)
Usethegraphicalnetburnertool(Windows)
Devicerecoveryandbricking
SetupNetworking
Setupthehostinterface
Multipledevicesperhost
ChangetheUSRP2'sIPaddress
CommunicationProblems
RuntimeError:nocontrolresponse
Firewallissues
Pingthedevice
Monitortheserialoutput
Monitorthehostnetworktraffic
AddressingtheDevice
Singledeviceconfiguration
Multipledeviceconfiguration
UsingtheMIMOCable
SharedEthernetmode
DualEthernetmode
Configuringtheslave
Alternativestreamdestination
Setthesubnetandgateway
Createareceivestreamer
HardwareSetupNotes
FrontpanelLEDs
RefClock10MHz
PPSPulsePerSecond
InternalGPSDO
Miscellaneous
AvailableSensors
MultipleRXchannels
Comparativefeatureslist
HardwareCapabilities:
1transceivercardslot
ExternalPPSreferenceinput
External10MHzreferenceinput
MIMOcablesharedreference
Fixed100MHzclockrate
InternalGPSDOoption(N2x0only)
FPGACapabilities:
4/7/2014 UHD - USRP2 and N2x0 Series Device Manual
http://files.ettus.com/uhd_docs/manual/html/usrp2.html#multiple-rx-channels 2/8
2RXDDCchainsinFPGA
1TXDUCchaininFPGA
TimedcommandsinFPGA(N2x0only)
TimedsamplinginFPGA
16bitand8bitsamplemodes(sc8andsc16)
Upto25MHzofRFBWwith16bitsamples
Upto50MHzofRFBWwith8bitsamples
LoadtheImagesontotheSDcard(USRP2only)
Warning!Useusrp2_card_burnerwithcaution.Ifyouspecifythewrongdevicenode,youcould
overwriteyourharddrive.Makesurethatdev=specifiestheSDcard.
Warning!Itispossibletouse3rdpartySDcardswiththeUSRP2.However,certaintypesofSD
cardswillnotinterfacewiththeCPLD:
CardscanbeSDHC,whichisnotasupportedinterface.
Cardscanhaveunexpectedtimingcharacteristics.
Forthesereasons,werecommendthatyouusetheSDcardthatwassuppliedwiththeUSRP2.
Usethecardburnertool(UNIX)
sudo <install-path>/lib/uhd/utils/usrp2_card_burner_gui.py
-- OR --
cd <install-path>/lib/uhd/utils
sudo ./usrp2_card_burner.py --dev=/dev/sd<XXX> --fpga=<path_to_fpga_image>
sudo ./usrp2_card_burner.py --dev=/dev/sd<XXX> --fw=<path_to_firmware_image>
Usethelistoptiontogetalistofpossiblerawdevices.Thelistresultwillfilteroutdiskpartitionsand
devicestoolargetobethesdcard.ThelistoptionhasbeenimplementedonLinux,MacOSX,and
Windows.
Usethecardburnertool(Windows)
<path_to_python.exe> <install-path>/lib/uhd/utils/usrp2_card_burner_gui.py
LoadtheImagesontotheOnboardFlash(USRPNSeriesonly)
TheUSRPNSeriescanbereprogrammedoverthenetworktoupdateorchangethefirmwareand
FPGAimages.Whenupdatingimages,alwaysburnboththeFPGAandfirmwareimagesbefore
powercycling.Thisensuresthatwhenthedevicereboots,ithasacompatiblesetofimagestoboot
into.
Usethenetburnertool
Use default images:
usrp_n2xx_simple_net_burner --addr=<IP address>
Use custom-built images:
4/7/2014 UHD - USRP2 and N2x0 Series Device Manual
http://files.ettus.com/uhd_docs/manual/html/usrp2.html#multiple-rx-channels 3/8
usrp_n2xx_simple_net_burner --addr=<IP address> --fw=<firmware path> --fpga=<FPGA path>
Note:DifferenthardwarerevisionsrequiredifferentFPGAimages.Determinetherevisionnumber
fromthestickerontherearofthechassis.UsethisnumbertoselectthecorrectFPGAimageforyour
device.
Foruserswhowouldpreferagraphicalutility,aPythonbasedalternativeexists.
Usethegraphicalnetburnertool(Linux)
<install-path>/lib/uhd/utils/usrp_n2xx_net_burner_gui.py
Usethegraphicalnetburnertool(Windows)
<path_to_python.exe> <install-path>/lib/uhd/utils/usrp_n2xx_net_burner_gui.py
Devicerecoveryandbricking
Itspossibletoputthedeviceintoanunusablestatebyloadingbadimages.Fortunately,theUSRPN
Seriescanbebootedintoasafe(readonly)image.Oncebootedintothesafeimage,theusercan
onceagainloadimagesontothedevice.
Thesafemodebuttonisapushbuttonswitch(S2)locatedinsidetheenclosure.Tobootintothesafe
image,holddownthesafemodebuttonwhilepowercyclingthedevice.Continuetoholddownthe
buttonuntilthefrontpanelLEDsblinkandremainsolid.
Wheninsafemode,theUSRPNdevicewillalwayshavetheIPaddress192.168.10.2.
SetupNetworking
TheUSRP2onlysupportsGigabitEthernetandwillnotworkwitha10/100Mbpsinterface.However,a
10/100MbpsinterfacecanbeconnectedindirectlytoaUSRP2throughaGigabitEthernetswitch.
Setupthehostinterface
TheUSRP2communicatesattheIP/UDPlayeroverthegigabitethernet.ThedefaultIPaddressofthe
USRP2is192.168.10.2.Youwillneedtoconfigurethehost'sEthernetinterfacewithastaticIP
addresstoenablecommunication.Anaddressof192.168.10.1andasubnetmaskof255.255.255.0is
recommended.
OnaLinuxsystem,youcansetastaticIPaddressveryeasilybyusingthe'ifconfig'command:
sudo ifconfig <interface> 192.168.10.1
Notethat<interface>isusuallysomethinglikeeth0.Youcandiscoverthenamesofthenetwork
interfacesinyourcomputerbyrunningifconfigwithoutanyparameters:
ifconfig -a
Note:WhenusingUHDsoftware,ifanIPaddressfortheUSRP2isnotspecified,thesoftwarewilluse
UDPbroadcastpacketstolocatetheUSRP2.Onsomesystems,thefirewallwillblockUDP
broadcastpackets.Itisrecommendedthatyouchangeordisableyourfirewallsettings.
4/7/2014 UHD - USRP2 and N2x0 Series Device Manual
http://files.ettus.com/uhd_docs/manual/html/usrp2.html#multiple-rx-channels 4/8
Multipledevicesperhost
Formaximumthroughput,oneEthernetinterfaceperUSRP2isrecommended,althoughmultiple
devicesmaybeconnectedviaaGigabitEthernetswitch.Inanycase,eachEthernetinterfaceshould
haveitsownsubnet,andthecorrespondingUSRP2deviceshouldbeassignedanaddressinthat
subnet.Example:
ConfigurationforUSRP2device0:
EthernetinterfaceIPv4address:192.168.10.1
Ethernetinterfacesubnetmask:255.255.255.0
USRP2deviceIPv4address:192.168.10.2
ConfigurationforUSRP2device1:
EthernetinterfaceIPv4address:192.168.20.1
Ethernetinterfacesubnetmask:255.255.255.0
USRP2deviceIPv4address:192.168.20.2
ChangetheUSRP2'sIPaddress
YoumayneedtochangetheUSRP2'sIPaddressforseveralreasons:
tosatisfyyourparticularnetworkconfiguration
tousemultipleUSRP2sonthesamehostcomputer
tosetaknownIPaddressintoUSRP2(incaseyouforgot)
Method1:TochangetheUSRP2'sIPaddress,youmustknowthecurrentaddressoftheUSRP2,
andthenetworkmustbesetupproperlyasdescribedabove.Runthefollowingcommands:
cd <install-path>/lib/uhd/utils
./usrp_burn_mb_eeprom --args=<optional device args> --key=ip-addr --val=192.168.10.3
Method2(LinuxOnly):ThismethodassumesthatyoudonotknowtheIPaddressofyourUSRP2.
ItusesrawEthernetpacketstobypasstheIP/UDPlayertocommunicatewiththeUSRP2.Runthe
followingcommands:
cd <install-path>/lib/uhd/utils
sudo ./usrp2_recovery.py --ifc=eth0 --new-ip=192.168.10.3
CommunicationProblems
Whensettingupadevelopmentmachineforthefirsttime,youmayhavevariousdifficulties
communicatingwiththeUSRPdevice.Thefollowingtipsaredesignedtohelpnarrowdownand
diagnosetheproblem.
RuntimeError:nocontrolresponse
Thisisacommonerrorthatoccurswhenyouhavesetthesubnetofyournetworkinterfacetoa
differentsubnetthanthenetworkinterfaceoftheUSRPdevice.Forexample,ifyournetworkinterface
issetto192.168.20.1,andtheUSRPdeviceis192.168.10.2(notethedifferenceinthethirdnumbers
oftheIPaddresses),youwilllikelyseea'nocontrolresponse'errormessage.
FixingthisissimplejustsettheyourhostPC'sIPaddresstothesamesubnetasthatofyourUSRP
device.InstructionsforsettingyourIPaddressareintheprevioussectionofthisdocumentation.
4/7/2014 UHD - USRP2 and N2x0 Series Device Manual
http://files.ettus.com/uhd_docs/manual/html/usrp2.html#multiple-rx-channels 5/8
Firewallissues
WhentheIPaddressisnotspecified,thedevicediscoverybroadcastsUDPpacketsfromeach
ethernetinterface.Manyfirewallswillblocktherepliestothesebroadcastpackets.Ifdisablingyour
system'sfirewallorspecifyingtheIPaddressyieldsadiscovereddevice,thenyourfirewallmaybe
blockingrepliestoUDPbroadcastpackets.Ifthisisthecase,werecommendthatyoudisablethe
firewallorcreatearuletoallowallincomingpacketswithUDPsourceport49152.
Pingthedevice
TheUSRPdevicewillreplytoICMPechorequests.Asuccessfulpingresponsemeansthatthe
devicehasbootedproperlyandthatitisusingtheexpectedIPaddress.
ping 192.168.10.2
Monitortheserialoutput
Readtheserialporttogetdebugverboseoutputfromtheembeddedmicrocontroller.The
microcontrollerprintsusefulinformationaboutIPaddresses,MACaddresses,controlpackets,fast
pathsettings,andbootloading.UseastandardUSBto3.3vlevelserialconverterat230400baud.
ConnectGNDtotheconverterground,andconnectTXDtotheconverterreceive.TheRXDpincan
beleftunconnectedasthisisonlyaonewaycommunication.
USRP2:Serialportlocatedontherearedge
N210:Serialportlocatedontheleftside
Monitorthehostnetworktraffic
UseWiresharktomonitorpacketssenttoandreceivedfromthedevice.
AddressingtheDevice
Singledeviceconfiguration
Inasingledeviceconfiguration,theUSRPdevicemusthaveauniqueIPv4addressonthehost
computer.TheUSRPcanbeidentifiedthroughitsIPv4address,resolvablehostname,orbyother
means.Seetheapplicationnotesondeviceidentification.Pleasenotethatthisaddressingscheme
shouldalsobeusedwiththemulti_usrpinterface.
ExampledeviceaddressstringrepresentationforaUSRP2withIPv4address192.168.10.2:
addr=192.168.10.2
Multipledeviceconfiguration
Inamultideviceconfiguration,eachUSRPdevicemusthaveauniqueIPv4addressonthehost
computer.Thedeviceaddressparameterkeysmustbesuffixedwiththedeviceindex.Each
parameterkeyshouldbeoftheformat<key><index>.Usethisaddressingschemewiththe
multi_usrpinterface.
Theorderinwhichdevicesareindexedcorrespondstotheindexingofthetransmitandreceive
channels.
4/7/2014 UHD - USRP2 and N2x0 Series Device Manual
http://files.ettus.com/uhd_docs/manual/html/usrp2.html#multiple-rx-channels 6/8
Thekeyindexingprovidesthesamegranularityofdeviceidentificationasinthesingledevice
case.
Exampledeviceaddressstringrepresentationfor2USRP2swithIPv4addresses192.168.10.2and
192.168.20.2:
addr0=192.168.10.2, addr1=192.168.20.2
UsingtheMIMOCable
TheMIMOcableallowstwoUSRPdevicestosharereferenceclocks,timesynchronization,andthe
Ethernetinterface.OneofthedeviceswillsyncitsclockandtimereferencestotheMIMOcable.This
devicewillbereferredtoastheslave,andtheotherdevice,themaster.
Theslavedeviceacquirestheclockandtimereferencesfromthemasterdevice.
Themasterandslavemaybeusedindividuallyorinamultideviceconfiguration.
Externalclockingisoptionalandshouldonlybesuppliedtothemasterdevice.
SharedEthernetmode
InsharedEthernetmode,onlyonedeviceintheconfigurationcanbeattachedtotheEthernet.
Clockreference,timereference,anddataarecommunicatedovertheMIMOcable.
MasterandslavemusthavedifferentIPv4addressesinthesamesubnet.
DualEthernetmode
IndualEthernetmode,bothdevicesintheconfigurationmustbeattachedtotheEthernet.
OnlyclockreferenceandtimereferencearecommunicatedovertheMIMOcable.
ThemasterandslavemusthavedifferentIPv4addressesindifferentsubnets.
Configuringtheslave
InorderfortheslavetosynchronizetothemasteroverMIMOcable,thefollowingclockconfiguration
mustbesetontheslavedevice:
usrp->set_time_source("mimo", slave_index);
usrp->set_clock_source("mimo", slave_index);
Alternativestreamdestination
ItispossibletoprogramtheUSRPdevicetosendRXpacketstoanalternativeIP/UDPdestination.
Setthesubnetandgateway
Touseanalternativestreamingdestination,thedeviceneedstobeabletodetermineifthedestination
addressiswithinitssubnet,andARPappropriately.Therefore,theusershouldensurethatsubnetand
gatewayaddresseshavebeenprogrammedintothedevice'sEEPROM.
4/7/2014 UHD - USRP2 and N2x0 Series Device Manual
http://files.ettus.com/uhd_docs/manual/html/usrp2.html#multiple-rx-channels 7/8
Runthefollowingcommands:
cd <install-path>/lib/uhd/utils
./usrp_burn_mb_eeprom --args=<optional device args> --key=subnet --val=255.255.255.0
./usrp_burn_mb_eeprom --args=<optional device args> --key=gateway --val=192.168.10.1
Createareceivestreamer
Setthestreamargs"addr"and"port"valuestothealternativedestination.Packetswillbesenttothis
destinationwhentheuserissuesastreamcommand.
//create a receive streamer, host type does not matter
uhd::stream_args_t stream_args("fc32");
//resolvable address and port for a remote udp socket
stream_args.args["addr"] = "192.168.10.42";
stream_args.args["port"] = "12345";
//create the streamer
uhd::rx_streamer::sptr rx_stream = usrp->get_rx_stream(stream_args);
//issue stream command
uhd::stream_cmd_t stream_cmd(uhd::stream_cmd_t::STREAM_MODE_NUM_SAMPS_AND_DONE);
stream_cmd.num_samps = total_num_samps;
stream_cmd.stream_now = true;
usrp->issue_stream_cmd(stream_cmd);
Note:Callingrecv()onthisstreamerobjectshouldyieldatimeout.
HardwareSetupNotes
FrontpanelLEDs
TheLEDsonthefrontpanelcanbeusefulindebugginghardwareandsoftwareissues.TheLEDs
revealthefollowingaboutthestateofthedevice:
LEDA:transmitting
LEDB:MIMOcablelink
LEDC:receiving
LEDD:firmwareloaded
LEDE:referencelock
LEDF:CPLDloaded
RefClock10MHz
Usinganexternal10MHzreferenceclock,asquarewavewillofferthebestphasenoiseperformance,
butasinusoidisacceptable.Thereferenceclockrequiresthefollowingpowerlevel:
USRP25to15dBm
N2XX0to15dBm
PPSPulsePerSecond
UsingaPPSsignalfortimestampsynchronizationrequiresasquarewavesignalwiththefollowing
amplitude:
4/7/2014 UHD - USRP2 and N2x0 Series Device Manual
http://files.ettus.com/uhd_docs/manual/html/usrp2.html#multiple-rx-channels 8/8
USRP25Vpp
N2XX3.3to5Vpp
TestthePPSinputwiththefollowingapp:
<args>aredeviceaddressarguments(optionalifonlyoneUSRPdeviceisonyourmachine)
cd <install-path>/lib/uhd/examples
./test_pps_input --args=<args>
InternalGPSDO
PleaseseetheInternalGPSDOApplicationNotesforinformationonconfiguringandusingtheinternal
GPSDO.
Miscellaneous
AvailableSensors
ThefollowingsensorsareavailablefortheUSRP2/NSeriesmotherboardstheycanbequeried
throughtheAPI.
mimo_lockedclockreferencelockedovertheMIMOcable
ref_lockedclockreferencelocked(internal/external)
othersensorsareaddedwhentheGPSDOisenabled
MultipleRXchannels
TherearetwocompleteDDCchainsintheFPGA.Inthesinglechannelcase,onlyonechainisever
used.Toreceivefrombothchannels,theusermustsettheRXsubdevicespecification.Thishardware
hasonlyonedaughterboardslot,whichhasbeenaptlynamedslotA.
Inthefollowingexample,aTVRX2isinstalled.Channel0issourcedfromsubdeviceRX1,and
channel1issourcedfromsubdeviceRX2(RX1andRX2aretheantennaportsontheTVRX2
daughterboard):
usrp->set_rx_subdev_spec("A:RX1 A:RX2");
Generatedon:2014021417:28UTC.

You might also like