AV-Portal 3.23.2 (82e6d442014116effb30fa56eb6dcabdede8ee7f)

Stupid Pluto Tricks with the ADALM - PLUTO

Video in TIB AV-Portal: Stupid Pluto Tricks with the ADALM - PLUTO

Formal Metadata

Stupid Pluto Tricks with the ADALM - PLUTO
Alternative Title
Real world things you can do with a PlutoSDR
Title of Series
CC Attribution 2.0 Belgium:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Release Date

Content Metadata

Subject Area
Point (geometry) Software Analogy Computer-generated imagery Cellular automaton Bit Software-defined radio
Sampling (statistics) Analogy Valuation (algebra) Range (statistics) Bit Student's t-test Sample (statistics) Software Term (mathematics) Analogy Cuboid Process (computing) Computing platform
Email Wechselseitige Information Serial port Waveform Range (statistics) Mereology Public key certificate Computer programming Pointer (computer programming) Graphical user interface Single-precision floating-point format Core dump No free lunch in search and optimization Relief Observational study Link (knot theory) Arm Digitizing Mass Motion capture Digital signal Oscillation Measurement Virtual machine Fluid Arithmetic mean Linearization Compilation album Software framework Hill differential equation Moving average Elektronische Wahl Asynchronous Transfer Mode Point (geometry) Laptop Polynomial Computer file Flash memory Data recovery MIDI Mass storage Motion capture Similarity (geometry) Coprocessor Power (physics) Revision control Frequency Goodness of fit Causality Term (mathematics) Band matrix Program slicing Motion blur Energy level Software testing Analog-to-digital converter Booting Polygon Physical law Route of administration Group action CAN bus Inclusion map Kernel (computing) Software Integrated development environment Computing platform Waveform Musical ensemble
Asynchronous Transfer Mode Serial port Analogy Password Directory service Data storage device Generic programming Data model Architecture Cache (computing) Root Analogy Logic Directed set MiniDisc Computer-assisted translation Abstraction Supremum Link (knot theory) Information Computer file Data storage device Mass Login Device driver Control flow Coprocessor SCSI Type theory Wiki Befehlsprozessor Password Interface (computing) Revision control Computing platform Video game console Routing Modem Session Initiation Protocol
Computer file Information Online help MIDI Data storage device Limit (category theory) Coprocessor Open set Architecture Revision control Computing platform Thumbnail Firmware
Commutative property Default (computer science) Continuum hypothesis Wechselseitige Information Demon Module (mathematics) Duplex (telecommunications) Online help Analogy Set (mathematics) Bit Streaming media Revision control Root Software Internetworking Revision control Configuration space Energy level Configuration space Firmware Booting Physical system Software protection dongle
Inclusion map Medical imaging Default (computer science) Hooking Personal digital assistant Mass Internet der Dinge Thumbnail Window Power (physics) Thumbnail
Spectrum (functional analysis) Digital filter Root Online help View (database) Line (geometry) Normed vector space GUI widget Analogy Coprocessor Cartesian coordinate system
Asynchronous Transfer Mode Hypermedia Inheritance (object-oriented programming) Analog-to-digital converter Computer hardware Video tracking Maxima and minima Set (mathematics) Whiteboard Gamma function Computer Nominal number
Slide rule Asynchronous Transfer Mode Digital filter Fibonacci number Demo (music) Online help Structural load Block (periodic table) Source code Wave packet Root Profil (magazine) Convex hull Right angle Configuration space Fingerprint Directed graph
Frequency Wave Sine Block (periodic table) Order (biology) Harmonic analysis Infinity Transmissionskoeffizient Front and back ends
Source code Dataflow Graph (mathematics) Closed set Attribute grammar Software-defined radio Software-defined radio Bulletin board system Root Befehlsprozessor Computer hardware Hill differential equation Absolute value Block (periodic table) Local ring
Wechselseitige Information Building Computer file Chemical equation Multiplication sign Computer-generated imagery Analogy Plot (narrative) 2 (number) Wiki Medical imaging Root Telecommunication Befehlsprozessor Software File system Moving average Summierbarkeit Local ring Firmware Booting Default (computer science) Execution unit Information management Key (cryptography) Cross-platform Content (media) Attribute grammar Digital signal Root Personal digital assistant Single sign-on Block (periodic table) Routing Physical system Fingerprint Asynchronous Transfer Mode Booting
Trail Plasma display Touchscreen Analogy Password Knot Web browser Content (media) Coordinate system Cyclic redundancy check Smith chart Analogy Core dump Normal (geometry) Message passing Local ring Context awareness Demon Satellite Key (cryptography) Weight System administrator Code Streaming media Plane (geometry) Radical (chemistry) Fluid Root Password Physics Formal verification Routing Fingerprint Physical system Address space
Spectrum (functional analysis) Touchscreen Digital filter Asynchronous Transfer Mode Scripting language Knot Coordinate system Plot (narrative) Variable (mathematics) Software Musical ensemble Row (database) Endliche Modelltheorie Scripting language Source code Execution unit Vulnerability (computing) NP-hard Projective plane Computer Software-defined radio Mass Group action Open set Fast Fourier transform Plane (geometry) Mathematics Frequency Computer hardware Personal area network Thumbnail Gastropod shell Physical system Window
Demon Scripting language Default (computer science) Demon Scripting language Computer file Computer file Motion capture Archaeological field survey Data storage device Voltmeter Cartesian coordinate system Frequency Frequency Hardy space output output Wireless LAN Thumbnail Default (computer science)
Dialect Wechselseitige Information Cellular automaton Maxima and minima Software-defined radio Function (mathematics) Power (physics) Revision control Broadcasting (networking) Sign (mathematics) Goodness of fit Graphical user interface Telecommunication Musical ensemble Harmonic analysis Physical law Selectivity (electronic) Software testing Data conversion Gotcha <Informatik> Gamma function Summierbarkeit Descriptive statistics Window Execution unit Inheritance (object-oriented programming) Lemma (mathematics) Data storage device Menu (computing) Sign (mathematics) Type theory Process (computing) Computer cluster Website Convex hull Right angle Musical ensemble Block (periodic table) Alpha (investment)
Standard deviation Personal identification number Overhead (computing) Length Cellular automaton Sampling (statistics) Range (statistics) Database transaction Limit (category theory) Pointer (computer programming) Befehlsprozessor Sample (statistics) Semiconductor memory Term (mathematics) Buffer solution Physical law Process (computing)
Computer icon Execution unit Wechselseitige Information MIDI Maxima and minima Range (statistics) Sample (statistics) Software Queue (abstract data type) Process (computing) Gamma function Impulse response Chi-squared distribution
Plane (geometry) Touchscreen Service (economics) Collaborationism Knot Coordinate system
idols get started then my name is Robin gets I'm actually with analog devices today I'll be talking about the little
SDR that we made primarily targeted education what I'll be talking about is you know the just a little bit about the software support and then doing some dumb little things with it because it is kind of a unique device at its price point and the performance is actually very good which means you can actually do some interesting things with it but
it does have its downsides and I'll go over that as well so in terms of why analog devices does this so analog devices is a five billion dollar semiconductor company we actually make the chips that go inside here so we kind of look at this as a valuation platform for some of our devices we put it in a nice plastic box because we really target this for students for learning it's really not meant as a professional software defined radio platform that's why we did call it Pluto because it's
just the Dorf SDR so it is it captures IQ it's 12 bits 65 Kilis samples per second 260 1.44 mega samples a second 200 kilohertz to 20 megahertz of signal bandwidth sends it to a PC over USB - and it's right now it's still at a 99 introductory price as soon as they are in stock for more than two months the prices go up to 149 and for people who have ordered them we have run into some manufacturing issues we had a first couple thousand in stock and they got
they sold out much faster than we thought they would so what's inside it there's basically at 9:36 3 which is kind of the DS a feature down version from the 936 one which is found in a lot of the u.s. RPS and a zinc single core 7010 which is again it's an FPGA plus single core arm and then really it has ddr3 flash the USB Phi so one of the reasons that we did this as well was just to see how small of a design and
how slim down of a design that weak do so we basically got things down to 72 parts on the bomb that's actually we can make it relatively cheap I do have a version not in so this is a non-functioning version so there's no point in stealing it you can have level passes around as long as I get it back in the back so all of the design is open the Gerber's are open the schematics are open the Allegro files are all posted it passes FCC and seee tests and I'll talk about what that really means to us in a second and it does actually achieve datasheet specs and is compliant to the USB spec in terms of the power that consumes so when I say passes FCC and C II what does that mean to the manufacturer this is a capture and playback device it's not a radio the end user makes it a radio by passing a waveform through it and radios needs certification playback capture devices need to accept interference and not cause interference so so in terms of the FCC who people who are familiar with that all we verify is that it when you blast it with EMI it doesn't cause problems and it doesn't emit things that it shouldn't when you turn it into a radio when you plug it into a new radio or into MATLAB or your favorite environment to start pumping waveforms through it it's up to you to make sure that it doesn't violate your local laws whatever they may be because it is very different country to country which is why when we ship this we also include an SMA cable so that if you're doing something in a frequency that you're not sure of you can actually just tie the receiver to the transmitter and see what kind of imperfections those kinds of things you can get because basically what the FCC says is use good engineering practice if they find you aren't using good engineering practice they will find you fifteen thousand dollars a day and and I'm sure at each different country there's a similar kind of thing so this is actually the device that's inside the RF device so you know it has Ln a mixer amplifiers internal analog filters before the ADCs digital half bands in a program 128 tap fir and then there's the FPGA and the the ARM processor in USB and all those things but it has a lot of things in here to actually correct the the imperfections that were docked in the last talk so it actually has like an IQ correction DC correction all those kinds of things built right into the chip and this is what the performance looks like so this is basically connected to five hundred thousand dollars a test instrumentation and getting an EVM of - 46 DB so it's hard to tell here but this is actually 64 quam and EVM is the measurement of how close the actual dot is to exactly where it should be and EVM turns out to be about minus or plus - about 0.5% so it's a very very accurate both on the receive side and or sorry the receive side and the transmit side it is a learning tool for education it's we spec the temp range from Bates basically ten to forty the the parts that we use in here are 0 to 70 but the oscillator inside has like a third or DePalma polynomial from 0 to 70 so we specify it from like 10 to 40 because then it's in the linear range and it's easier to correct the FP it is just USB 2.0 and the FPGA size is tiny so we use about 40% of the Luntz and I think it's about 80% of the the DSP slices in here although we are moving from poly inside here as a DDS so if you want to send a tone or do something like that you can just tell the device to send a tone you don't actually have to create it in in your waveform generator and go from there the software stack is based on iio so when you plug this into your laptop and I'll show this in a second it shows up as multiple different devices it shows up as native iio which has been talked to various Fossum talks in the past it shows up a serial it shows up as Ethernet it shows up as mass storage and you can put this if you brick the device for some reason or put a kernel in here that doesn't boot it'll recover into DFU mode so that you can then load back the kernel or a working kernel so if I can
take this and plug it in and bring a
console up bring it over to this side so
and the root password is where I am super narcissistic so the password is always analog so it comes up as a USB mass storage device is a scuzzy device and a up there at the top was the ACM device the serial so what we can do is we can run Kermit or your favorite the serial console and just tell it to connect to tty ACM 0 and type in the password of analog no type in route analog and here's the this actual device here I can check that by you name - a and I can see it's Linux on Pluto I can cat rock CPU info cat Pronk CPU info and I can see it's a single-core zinc and so I can play with it from there I can get out of Kermit I can bring up my
and it shows up as a mass storage device if I want to update the firmware I just
take my firmware file throw it on here and then do eject and then it'll automatically update the firmware so you don't have to use DFU there's no special tools to install or anything like that if I want to find out what's actually running on the device I can look at the info file Oh which brings this up over
here so I'll move that over again and it
tells me a little bit about the device as well as where to get started it tells me that I'm using the latest firmware release what all the different versions are what version of you boot configuration settings so this how it comes up on the network one of the things that you can do as well is connect Wi-Fi dongles to it so the most popular raspberry-pi Wi-Fi dongles we can just plug in to the USB piece we can plug in the battery and it'll boot up and get on the wireless network and then it can send stream basically anywhere across the internet which is kind of neat as well as wired Ethernet if you're using a wired Ethernet adapter which supports most of those as well from the default firmware let's see let's go back to Oh
okay so some of these kind of use cases it'll hook up to your host and that can be you know Linux Mac Windows or embedded Linux can connect up to your thumb drive which is awesome I actually have one of these I had to buy it you know powered from your battery or your USB saw or your USB solar power LAN and this is just a land power adapter for p OE you know Wi-Fi with a car cigarette lighter and we support all of these kind of use cases in the default image one of the things that we don't do that it could be done is you could actually plug in a USB speaker and power it and then you know use your FM radio or whatever you wanted to decoder to get direct
audio from the Linux side so one of the
applications is the Iowa still a scope that is oh called ask and which is just
a small gtk application how that's up
over here so it has it basically lets
you play with the super basic pieces of things so you know I can go to FM caught the FM coms because it was based on a few FM C boards that we had made and change all the receive settings the
transmit settings the and it gives you
basically access to every different piece of the device including like the fast lock profiles I was talking about in the one of the previous talks there like the layers two quadrature correction those kinds of things and it has too many uh there we go so let me just get out of here because you can kind of kind of see what it's what it's trying to do let's get back to the right slide so it's also supported by canoe radio so let me and now this is a little demo that I showed at the VR con so this is basically it has new radio blocks there's a sink blocking a source block
and I can run this and oh here we go and it shows up phosphor oh but one of the
things that it does is so on the top block I have an atty xlo and it's receiving it the same frequency as it's transmitting yet because it's at put this harmonic because one of the things inside almost all STRs is in order to get that least amount of jitter is we like to take the clock turn it from a sine wave into a square wave so inside the device itself the loz that are running around at 1 gigahertz or 6 gigahertz are square waves and what is something you should probably never do with the square wave is put it into a mixer because you can have all these kind of harmonics the square waves are infinite of harmonics of sine waves so what we can do is we can actually come here and change the harmonic and we can look at the third harmonic that we're transmitting it and this is actually what we're transmitting at 3 gigahertz and this is not on this device this is actually the the same front-end is actually on the b200 mini that it'll do kind of the same thing and the reciprocal is true so basically we're transmitting at one and we are receiving the third harmonic of the transmitter so I can also transmit at one gig and show you that if I put in basically the third harmonic of the receiver the third harmonic of the receiver is going to be one gig where I'm transmitting so I get to receive when I'm supposed to be receiving at 333 megahertz I receive at 333 I receive at one gig I receive at the fifth harmonic the you know every odd harmonic be receiving all of those frequencies all at once and hopefully I'm close enough that or the the signal I'm looking at is actually loud enough but
so let me come back to the flow graph hit the stop and close so that's give me radio it also supports grq X there we go
so grq X also supports our SDR angel which for those people who are unfamiliar is all written in C and C++
cross-platform it actually works pretty well
supports MATLAB for those people who want to do that for us the most important thing is the textbooks and the
content so if you are an educator we actually do have textbook material and labs and those kinds of things it does run embedded Linux like I showed inside it has about a two second boot time build root busybox there is a button on the case so if it does get bricked for some reason doesn't want to boot you push the button plug it in and it'll go into DFU boot mode building up the firmware images are pretty pretty standard long as you have all the prerequisites available for you which are pretty specified on our wiki building up the file system busybox adding files so one of the things we can do right now if I can turn it this way is so what I've done is on the default image I have dumped 1090 and what I'll do is I'll cross-compile that forearm transferred over to the device and running directly on the device so I think I've already crossed compiled it so it's sitting here I just have to SCP it over oh that's not it SCP dumped 1019 to route at 192 one is 68 2.1 and it'll go there we go so now if I s oh yeah sorry yeah okay so every time you boot the device up it gets a random key for its SSI or for SSH
and then you have to either remove the key all the time or tell it not to keep track and that's usually what I do and the password again was analog then I can SSH to analog and this is the Pluto and I could CD into route and I can see the dump 90 and I can run dipping up to 90 - net and it's starting to run here I can go back to my browser I can do 192 168 2.1 colon 8080 and there it is and it's
starting to see airplanes and if I click on it it'll tell me what the airplane is just like dump 1090 so dump 1090 again is running on here the only thing that's going across is actually just Ethernet traffic and if I'm really concerned about things I can flip back whoops flip back over here bring up another terminal and SSH over here again and run top and I can see that you know it's 80% of one core the only court yeah let's see so I can quit that and quit this but let's
see back to here yep so qrx MATLAB oh
yeah I guess it was a little head of
this so one of the other things that can be done is it is very cross-platform well this didn't turn oh very well it does run a Windows as well all these things are run on Windows the docs are available but like all engineering projects documentation always need to work so if you do have questions about stuff feel free to ask support model is online on adi engineers own it one of the things you can do is because this is an OTG device like we talked about you can actually there the automounter that's on here you can run scripts directly from the USB drive so you plug this in plug this into the battery and
what it'll start doing is what it'll start running all the run me scripts that you have on here so it'll come up and start blinking and it'll it'll mount the thumb drive and just keep going so you can then rewrite the button daemon to do whatever you want to do like capture thing is that this frequency stored onto the mass storage device and then put this into your pocket or backpack and kind of run around while you do your wireless survey and it's
only this big which is you know pretty interesting so like this is the default file for the the input daemon and you can basically reroute it so that anything you want you can do no problem so one of the things that we did was basically just to set up a CW so that you would start broadcasting from the CW and then we'd use this as a target for our angle of
arrival type tests and those kinds of things the other thing that we did was cell phone jammers are becoming more popular everybody hates everybody loves to have a cell phone nobody likes to listen to everybody else's conversation but cell phone jammers you there's like I literally counted about 25 different websites selling cell phone jammers online super illegal yeah super surprising actually [Music] no this is this is their description you know the handheld selectable cell phone signal jammer and Wi-Fi jammer and GPS jammer it's yeah the website is called jammers comm but you know so that's that's their version of the world the FCC version of the world says you do this you will go to jail because it's you know jammers interfere with everybody from law enforcement to 911 these kinds of things and what's what's happening is that there have been some retail stores in the United States that have been found using these because they don't want people to price check amazon.com when they're in the toy department so you can use this to see where those things go because we actually did buy one of these we you know figured out how it worked in our in
process of actually just making a jammer detector so that you can when you don't need to see these signs to to go ahead so I think this is where I'll probably wrap things up if anybody does have questions or wants to see it working I think yeah no no I was gonna say it 4:30 there's the bring your own radio piece I want to give a plug for that without that 4:30 or is that's the 5:00 okay so it's at 4:30 so I'll have this and be playing with it and everybody wants to come you can definitely have a look so unfortunately uh yeah I I didn't have very many so the other thing a lot of people ask the output power we limited we didn't put an amplifier on here it only comes out at 0 DBM because we didn't want people doing dumb things by accident so what we do have for people who are can use good engineering principle is we do have basically a half watt little amplifier that'll plug right on here and be powered from usb or any SDR from that matter and but this has a 2.4 gig saw filter on it so it doesn't it won't broadcast anything and that way you don't have to worry what the third harmonics or anything like that so
anyway does anybody have any questions yeah so the latency so large could probably talk better but the latency is probably determined by the length of one buffer or so depending upon how many samples you want in a buffer so all this is based on pretty standard infrastructure in terms of you know the radio device itself is a device it's connected to a DMA and then your DMA that into memory and you would get notified when that DMA transaction was complete I know without USB yeah yeah yeah so with with USB so what ends up happening is the buffers go into memory from being captured that happens with DMA and then from there it's just pointers get passed around so the overhead of actually using the infrastructure and getting things over USB the limit is USB is not CPU memory or anything like that yeah correct the yes so let me see I
think it was like business we're here
yeah okay so if the question was like
I'm gonna go back up sorry the question
was in the device how many ellos are
there and is there any way to tie the ellos together so in the device there are two separate ellos they can be driven externally but on this device there's a transmitted SMA and a receive SMA and these balls and the device are not pinned out I don't think on a device like some of the USB RPS these would be available for people yeah yeah yep yeah absolutely