04/27/2022 at 20:04 •
I'm curious, how are the filters in the FilterBox implemented in hardware? Do you switch LC elements in and out with relays or analog switches?
@RichardCollins there's no doubt that we're at the start of a push for SDI in education, it's not well established. Bleeding edge is a bit strong IMO but when labs have been using the same scopes and power supplies, with different screens and button layouts only, for 20++ years, sure there's a change to the pedagogy required to support this tech. But I think it's worth it, I'm not alone, but I'm also not without opposition :-)
Man -- if someone could write their own firmware for that, my hat would be off to them. I stare at FPGAs like they're ouija boards :)
@Myself We're launching an open access FPGA model for Go in June, it's already available for Moku:Pro. Called Moku Cloud Compile it does require that you send your HDL to our servers to be built so we can optimise it for our driver framework
Man you guys are brave.
@Dan Maloney All DSP my friend! You can load in FIR or IIR coefficients, or simply drag lines around on a bode plot until you like the look of the transfer function and it all updates on the device in real time
"Wizardry" was going to be my other suggestion...
Yep that's closer. Our DSP and FPGA folk mostly come from a high precision metrology background, they're mostly PhDs, and they are absolutely wizards
The hardware is changing so fast now. I was reading about 100 Gsps devices. And the prices drop then rise, drop then rise. If someone buys your box today, it will be obsolete in 6 months. No amount of software will change a 10 Msps ADC into a 100 Gsps one. And DATA is the key to any application but you are just putting tiny snips on the screen and letting student play around. All the real problem now use massive machine learning and that means stored and accessible data, open and shared algorithm development, and global sharing over years or decades. 50 million variations for what you can do with a box is not as useful as a few hundred where the student masters it, and applies to real problems - in a community of peers and potential employers and collaborators.
I was actually surprised, amazed and excited that I could design a bandpass filter with around 10kHz width on a 1MHz carrier in order to view an AM radio station in isolation in the time domain, then drag the band over to the next station etc. Very cool
So, last week I was doing a little work in a power supply that was made in 1967, the company is long gone but the schematics are available, the parts are commodity, and power supplies are universally useful. How much of this instrumentation will be working and maintainable in 50 years; where do I go for a cloud compiler in 2078?
Are you seriously asking him to predict 55 years in the future?
@RichardCollins If you need more than 30MHz bandwidth then fair play to you sir. Again if we take the education space, they haven't done anything outside of this capability for 20 years and may not for the next 10+, excepting RF and IoT. And yep that's important, no denying, but we can still cover all but one or two courses in a full EE degree. But I get your point, DSP and SDI is awesome but you do occasionally need to buy new things! Just with SDI, you don't need to buy them as often (probably)
I'm asking whether the closed nature of the compiler might ever change.
In 55 years time?
Yes it will.
But a power supply is an entirely different beast than a spectrum analyzer, right? And how many SAs or oscilloscopes made in the 1960s are still relevant today?
@Myself Yeah for sure, we're actually working with Xilinx to get some extra features that would allow people to do the builds, including our proprietary steps, on their own machines too. Sure obsolescence is a problem, but a more immediate one is simply data sovereignty and we definitely need to deal with this
common issue to all cloud services, we're certainly not immune
Let me introduce you to my Tektronix 475, along with the other three scopes I own ...
The other side of the coin is again simplicity though, and I don't know when the last time was any of you spooled up a new Xilinx Vivado install, but 20GB of downloads and a day or two later you can do the first build that would have taken you literally 3 minutes on MCC
Yeah, I've got an old Tek too, but my Keysight DSO is far more useful as a daily driver.
I use my Keysight more often than my Tek too.
And there is crying in Beaverton, tonight ...
I admit I use my newer scopes more often, but then I restore vintage radios and computers also.
Something else to consider (re: 100Gsps links) -- you're not even really using scope probes at that point. You've got an impedance matched connection all the way down the signal path (If you're even able to tap the signal path -- I don't know that you are)
I have an HP oscilloscope running on lamps so...
Ah--my Tek has some hours on it, and it starts misbehaving if I have it on for too long.
It's not a matter of the Keysight scope being a better instrument, it's a matter of it being newer and far more reliable.
Yeah right back at the head of this chat we talked about SDI tradeoffs and the single frontend doing everything; a 100GSa/s frontend will be quite specialised and bespoke for a while yet
I missed that.
I'm a slacker
And the sun is probably up by now in Canberra, too. So it's probably time to let Ben get the rest of his day going. Thanks very much for getting up so early to hang with us Ben, I really appreciate it. And thanks to all for the great discussion.
Thanks Ben & Dan!
And a tip o' the hat to Mark for suggesting this chat!
@Ben Nizette , it was really interestingThanks
I enjoyed it a lot, time for another ☕
So, another question to ponder, what instruments can you make by concatenating simpler instruments>
That is, you don't need a TDR if you have a signal source, a spectrum analyzer and a way to collect data.
@Ben Nizette I mostly work with gravitational signals, but they are buried deep in with many terrestrial and human noise sources. To separate them requires working with roughly the range from microHertz to TeraHertz. 30 Msps is not bad, it just needs to be very flexible. The algorithms are heaving on data, so working with 24 hours or 30 days of data at a time is common. I am working on a problem imaging a region of the sun. The correlations require working with thousands of images, the models that underly them, and then doing the time of flight gravitational array. General purpose tools for students probably can't do that yet. but every groups doing research has to try to hack together a way. If you teach "Just throw a bunch of components in a box and add software. if it doesn't work try something else" That kind of teaches a sloppy way to do research. Would I want to hire those guys or someone who knows how to plan and execute toward clear objectives. And, as I see on Hackaday.io, there are a lot of research and experiment things that dovetail now into short run manufacturing and potential startups. Shoot from the hip or fancy handwaving on a box might not be the best thing to teach. Just saying.
@Randy Yes! We didn't get to it just now, but our "Multi-Instrument Mode" feature is coming to Go in June which allows concatenating between 2-4 instruments inside the FPGA. The other day I build a PLL using the lock-in amplifier and wavegen etc. https://www.liquidinstruments.com/multi-instrument-mode/
A few years back there was talk about something called either Inferno or Verilator, as I recall - where you could take System C and convert it to Verilog or vice versa. Is there any kind of support for that sort of thing on your FPGA solution, let's say if I have custom code for dynamic generation of polyphase filter trees - where I am currently n the process of developing my own Pascal/Lazarus compiler for Parallax propeller P2, etc.
Got to order one of these things when I get back home.
04/27/2022 at 20:03 •
Hi Ben, welcome aboard. And good early morning to you as well ;-)
We'll get started in just a minute
Thanks Dan! No worries, it's still dark out but my coffee's darker. We're good here!
OK, folks, let's get started. I'm Dan, I'll be modding today along with Dusan as we welcome Ben Nizette to talk about software-defined instrumentation!
Hello and welcome everyone!
Hi Ben! Can you start us off with a little about yourself and how you got where you are?
Yes no worries! So these days I'm a Product Manager for Liquid Instruments, focusing on the Moku:Go, our education and maker product.
(And a sincere thanks for joining us from Australia, where it's still oh-dark-thirty-ish)
Before that though, I’m an Electronics and Software nerd, I’ve been sticking LEDs in power points for literally as long as I can remember. I kind of forgot to stop studying so ended up with two degrees (BEng and BSc) and four majors (EE, MechE, CompSci and Theoretical Physics). And I still wasn’t done, I started lecturing Embedded Systems and a few other courses at the ANU too, I did that for about 5 years.
Apart from inhaling solder fumes, I also enjoy outdoors stuff like paragliding, hiking etc. Not mountain biking anymore, too many scars from that already!
And yes I'm based in Canberra, Australia
Are the scars from biking or from school?
Haha mostly biking but, yennow, I did say I was a nerd too and we all know how those go in high school!
Back at Uni though, while I was studying, I was also running a business doing electronic product design, mostly for start-up companies. I ended up making nearly 30 products in that time, before deciding to settle down and join one of those companies full time. That was Liquid Instruments!
How would you characterize the difference between the Go:Moku and the Analog Discovery devices?
I'd love to hear more about that freelance design stuff, but I guess my first question is: what are the trade-offs that you have to accept when you're rolling multiple instruments into a virtual platform?
I reckon AD2 is kind of like Windows XP. Everyone gets it cheap or free, it has good market penetration because at the time it launched there wasn't a lot of competition. It does the business, but people don't generally really *like* it. We're more like a Mac device. We provide a great user experience, we work every time, and we offer more power to the professionals who use it
I reckon Red Pitaya is the Linux of that analogy and given the audience, perhaps pitching myself as Mac isn't quite right
but you get the idea!
Say what you will about Macs, but you've got to admit that Apple product design is top-notch...
@Dan Maloney Yes trade-offs! The main one is that you have a single analog front end for everything. Really that is the biggest issue when you're talking about RF and SpecAn type applications and you don't have a mixer, so are limited to 10s or 100s of MHz. Traditional SDI (like AD2) is also limited by the performance of the PC and the link to the PC. Moku does its SDI on an FPGA inside of the device itself which means the performance is as good or better than most "normal" stuff
Thanks, looking for info to convince the powers that be that Go:Moku is a better choice to go with.
I am reading the Moku data logger specs. It won't go under 10 sps? Is that flexibility? And no bit size mentioned.
Product design may be top notch, but its technical qualities are certainly not :)
@Randy It's more expensive than AD2, there's no getting away from that. But with instruments like PID Control, Filter Boxes and a Lock-In Amplifier it's a lot more capable. Would you use those? Donno, but as an example, our modulating WaveGen, Filter Box and LIA together can form a full single sideband ham radio, everything other than the antenna and amp, and no AD2 can do that!
@RichardCollins at this price point the DL is usually used at very high rates to record the results of experiments, rather than e.g. recording environmental stuff. It's also got enough memory to store 100sps for months, but yes, that's on the todo list :-)
That is a major advantage, for sure, and something you should be trumpeting more. I suspect a lot of kick the tire people don't realize that.
@Ben Nizette I am not really sure what the price point is, I looked at this before but it seemed very expensive, aimed at students, and lots of built in limitations and "to do" items. Not quite ready for users. Is that too far off?
@Randy indeed, we're working on that too! LI has been around for a few years not but we're only just starting to move out of the research lab and in to a more mass market place, and there's no doubt our product team (me!) and the marketing folk have a big pile of work ahead of us
I assume your software runs on linux out of interest?
@RichardCollins Starts at $599 but hey, there are always TODO things. That's the great thing about SDI, you can update it on the fly just as the rest of your software packages get regular updates. $599 is a lot for students to throw in their backpacks, but in the education space you can think of this more as replacing the half-dozen boxes typically on a lab bench station, starting over $2k
The config/client software says it's Windows/Mac only; have you had any luck running it under WINE?
@anfractuosity Good question. If it were completely software defined, is it also open.
@anfractuosity @Myself yes we run that under WINE but the proper Linux version isn't far off, the UI is all QT and all our underlying libraries run on Linux. In fact the Moku runs Linux onboard, runs those libraries on board, and that's how we do our our REST APIs
@Ben Nizette -- Didn't the Ligo experiment only use something ridiculously small like 10 bits of precision?
I'm a little late :)
@Ben Nizette Thanks for clarifying. It is hard to read your site. I work mostly with camera data streams and SDR radio type things. And having a BIG hard drive for logging the data is my biggest headache.
@Mark J Hughes That's a good question, I honestly don't know! Quite probably though, the precision on ligo came from an awesome phasemeter, basically a PLL, and that is much less limited by the quantisation noise. The Mokus actually have a phasemeter as well that uses basically the same architecture as the ligo one, it's exactly the same architecture as the one that will be sent to space on the space-based version of ligo, which is kind of cool
Also -- Hi Ben!
The concept of SDI seems like it's ripe for sneaky tricks like adding noise to an ADC measurement to get extra bits of precision by averaging over a long period. Are there other techniques like that which become practical here, which would make the instrument more capable than its plain hardware specs would imply?
@Mark J Hughes There's a cool video here showing that phasemeter in action, my colleague breaths gently on some optic fibre and the heat from his breath expands the fibre enough to cause a huge response on the PM. PM isn't on Go yet, but it will come
Going back in the chat a little I see some comparisons going on. I'd like to offer my two cents. I have the Keysight EDUX1052G, The Tektronix MDO3104, the AD and the MokuGo. And they all have strengths and weaknesses and target different markets.
There's no one in their right mind that would compare the MDO3104 to the EDUX1052G, they're way different price points and way different functionality. But comparing the MokuGo and the AD2 is a bit more reasonable.
Until you get into a classroom.
Mark, it would be great if you could run a "shoot out" between those instruments and publish some comparison results.
@Myself 100% mate! Our Moku:Pro for example uses a frequency domain blending technique to combine input data streams from both a 10-bit 5GSa/s ADC and an 18-bit 10MSa/s ADC to provide something that's super precise at low frequencies and still runs crazy fast; low noise everywhere. Similarly in the last software update we improved the noise floor of our SpecAn by something like 100x by changing the way we did dither
Randy! That's on my calendar actually!
I missed a window of opportunity a couple months back, now I'm waiting for my schedule to relax to get that done!
Anyways -- back to the comparison.
Sounds good! I just did a trade show alongside AD2 and Red Pitaya and yeah, we're all friends, all targeting different folk
One issue I have with the AD2 in the classroom is it's lack of case & lack of included options would make me seriously question how long it'd last in a high school.
Cheetos on a PCB are a problem.
But if you think about the people who are going to use the LI and the AD2 -- it's going to be the entry-level folk.
No one is going to do BER tests on a 12GBps PAM4 SERDES link with those tools.
@Mark J Hughes That was one of my design requirements, yeah. It's been designed so a student can attach any part of a Go to any *other* part of a Go and it won't blow up. You can short anything, connect anything, we're trying to make it tough enough that you can set assignments on it without worrying that folk will blow it up and lose the grade
They're going to be doing educational type labs -- maybe some into circuit design.
Instead of spec comparisons, I am hoping to do some experimental comparisons for EMC training purposes between the AD2 and the Go:Moku (as soon as I get my hands on one), this fall.
@gmail.com and we can continue offline. I can likely carry out most of what you want to know.Randy -- email me at markjarrodhughes
@Randy Cool, do reach out outside this chat if you need, we've got a number of unis running power and EMC labs and I'd be happy to hook you up there too
And Ben -- that is sooooo huge that you did that.
Kids are little destroyers of worlds.
Lol yeah as a lecturer in a past life, I know the pain first hand!
"as soon as I get my hands on one" -- good point, how is the chip shortage impacting LI?
And it's often not intentional -- just for them, at first, it's overwhelming -- all new stuff. There's too much to keep track of.
@Dan Maloney We're not immune, not at all, but we've been fairly lucky so far. We've got stock of all models of Go for immediate delivery right now and good visibility for the next several months.
Still, we were just quoted $2600ea for a $17 WiFi chip for another design the other day, so yea, the world's nuts..
That's just mean.
Mate if I had a time machine, stuff investing in bitcoin or apple, just buy a bunch of power load switches in 2019 and buy an island in 2022
Kids are also little creators of worlds, which is even more important. They will come up with things never dreamed of in "heaven and earth", which is why they need to access items like this.
Ben -- what skills do you consider essential for newbies and EE students new to the profession? Can they be taught with the MokuGo?
Very true Randy!
@Randy Yep that's the other side of the coin. I love teaching with the Moku because it allows students to use the right tool for the job. Sure the SpecAn on Go runs to 30MHz, but it's a proper RTSA so they can examine tiny side bands on their local radio stations, then use the LIA to demodulate and listen to them. And the filter boxes to bandpass that station out and look at the modulated signal in the time domain before demodulation. There's something for everyone
Help me understand that; the FM broadcast band in the US starts at 88 MHz, how is a 30 MHz instrument going to see that?
Or are we talking mediumwave AM around 1 MHz?
@Mark J Hughes They can definitely be taught with Moku:Go. In fact our first product, Moku:Lab, was $5k and found a surprising niche with (rich!) educators because it was so easy to teach *concepts* without spending time teaching the position of knobs. All students know how to zoom in on a screen but it takes time to learn what Volts/Div means (and we all know that most students just mash that autoscale anyway)
@Myself AM radio is a good one, but actually the LIA is sensitive enough that we can pick FM stations out of the higher nyquist zones, if you're not too far from the transmitter
(that is, you can demodulate the aliased signal)
Actually, with tools like this, I think skills that are necessary, but AREN'T being taught in schools can be illustrated. For instance, too many students come out of school thinking that resistors, capacitors and inductors are just that. But use a frequency sweep on those three devices and plot the impedance vs frequency and you soon realize that the schematic you draw is NOT the schematic that is on the circuit board.
Great point Randy.
Love that Randy, couldn't agree more (of course!)
Combining those last few responses, teaching kids that antialiasing filters aren't brick walls and you can actually see aliased FM radio stations in a 30MHz instrument is a good lesson in itself
So you are kind of making up the instruments, and making up lesson plans (sort of) and hoping it all works out?
It's pretty common to get lesson plans with instruments.
Vernier does a pretty good job of that.
@RichardCollins We develop lesson plans ourselves, but more commonly with partner universities around the world. And some of those use the instruments as they are, some of them are used to inform the future development of instruments
Something else I'll point out about bit-depth. A couple years back I put a 24-bit ADC on an inclinometer that could, at best, probably produce 16 bits of precision. I had to stop around bit 11/12, because even on a granite slab on a neoprene blanket, on a concrete slab in the ground floor, I couldn't help but pick up people walking around within about 15 feet, and cars at the road several hundred feet away. Point is that a lot of the precision we pay for in instruments we never get to use.
what's the sample rate out of interest of the ADC. Also sorry if this has already been asked does it support streaming over USB/... so you can use the pcs memory for v. large captures
@RichardCollins Again that's the great thing about SDI, if an educator needs a new feature, we can potentially provide that for the next semester as a software update without anyone spending any more cash
That is an excellent point, because it helps to point out that it is not always required to have a particular measurement device to make a "good enough" measurement, but rather, you need to have the right measurement technique. And using simple instruments to do illustrate sophisticated measurements an educational goal for students and professionals.
@Mark J Hughes Yes, I used a Atmel XMega a few years ago that had a "12bit 1MSa/s" ADC. But by the time you actually got to 1MSa/s the effective number of bits was like 4
@Ben Nizette But the particular students leave and don't learn that. It sounds all rather "bleeding edge". Lots of wasted time trying things out, with no particular goals or framework.
@anfractuosity 125MSa/s. No live streaming on the data logger yet, we're focussing on standalone operation, but again, SDI :-)
So that's an interesting point, is the FPGA HDL open for hacking, or does the instrument only support its baked-in functions until the mothership provides a bitstream update?