An open source Linux based BeScope, perhaps?
LoopyByteloose
Posts: 12,537
As I muddle long in my FPGA projects related to P1V and eForth, I have kept wondering about what the BeScope from Arrow Electronics might teach me. I purchased BeScope along with my BeMicroCV and BeMicroCVA9
I finally got around to looking at the provided code, to see what it offers. And the answer is not much.
A. There is a good schematic of the BeScope that can be applied to either BeMicroCV or BeMicroCVA9 FPGA device.
B. The code for the FPGAs is compiled and completely a non-educational black-box.
C. The Window application for display of the data from the FPGA seems to have source code in Python.
~~~~~~~~~~~~~~~~~~
And so, it seems the obvious solution (challenge) is to adapt the BeScope into something that is supported by open-source code that demonstrates exactly how these three things work together.
Has anyone else given any serious thought to an open-source BeScope project? At this juncture I am personally more interested in the FPGA side of the project.
There would have to be the FPGA side (in Verilog or VHDL), and the Linux side (in ??? - I am bit weak on GUI display projects).
And so far, I have located only on BeScope hack site. But it is a start.
https://github.com/WestCoastDSP/ADCinterface
I finally got around to looking at the provided code, to see what it offers. And the answer is not much.
A. There is a good schematic of the BeScope that can be applied to either BeMicroCV or BeMicroCVA9 FPGA device.
B. The code for the FPGAs is compiled and completely a non-educational black-box.
C. The Window application for display of the data from the FPGA seems to have source code in Python.
~~~~~~~~~~~~~~~~~~
And so, it seems the obvious solution (challenge) is to adapt the BeScope into something that is supported by open-source code that demonstrates exactly how these three things work together.
Has anyone else given any serious thought to an open-source BeScope project? At this juncture I am personally more interested in the FPGA side of the project.
There would have to be the FPGA side (in Verilog or VHDL), and the Linux side (in ??? - I am bit weak on GUI display projects).
And so far, I have located only on BeScope hack site. But it is a start.
https://github.com/WestCoastDSP/ADCinterface
Comments
What worries me are the statements around the net I have read that imply it is not in production for the long haul. Only a one off batch or some such idea.
As such I'm loath to invest money into one and even less inclined to think about investing time developing software for it.
Shame really.
But considering that the Python source is available...
Why not consider a way to have a Raspberry Pi provide the video for it? It seems a waste to use a whole desktop or laptop computer to use Windows7.
++++++++++++
The truth is this is more of a whim than a real project at this point.
I am determined to get the eForth running in FPGA and it has been a slow slog for me. For now, my BeScope is packed away with the BeMicroCVA9 for when I really have gotten better acquainted with Quartus II, VHDL, and Verilog.
But it is on hand if I ever desperately need a scope. If more BeMicroCV boards become available (they should, but are on backorder), it is still a good value to buy both together for $100.00 USD.
Yes, yes, a very nice high speed ADC board.
It's interesting that the Python GUI code is available. But there is a catch. That GUI relies on a server process that interfaces to the USB connection to the board on one side and interfaces to the GUI over a network socket on the other.
Something like the Raspi would make an excellent display for a scope board like that.
The stumbling block seems to be the on the wire over USB protocol they use. Is that server protocol open sourced?
As it stands I'm not tempted. I'm about to smash my piggy bank and get a Rigol 100MHz 1GS/s scope. Only about twice the price and no PC required to use it.
The idea is simple - Hack the BeScope to determine feasible alternative uses, or feasible alternative software.
I do see what you mean... W7 might be using a USB driver with a server protocol that isn't available to Linux. But for those that have the right FPGA and the BeScope, there are a world of other ADC uses that might come up.
Admittedly, the BeScope ADC might demand quite a bit of the FPGA resources that another ADC may not. It uses at least 16 gpio to get the ADC at such a fast sample rate (maybe 8 per channel). And any physical access to other GPIO would have to be through the 80pin Edge Connector as the BeScope card blocks J1 and J4 from being available for other uses.
A. The BeMicroCV has dram to buffer the data sampled in significant chunks
B. Tachyon Forth has demonstrated 3Gbaud serial rates with a Propeller 1 when using a conventional USB driver from FTDI.
That leaves my second disincentive to look at that board. The apparently short production run planned. Lack of availability. It would be a bit depressing for a bunch of collaborators to do a lot of work on that and then find there was no platform for others to make use of the result.
Seems others have thought about opensource high speed ADC / FPGA solutions. Like this: http://newae.com/openadc
Besides, the OpenADC solution actually looks like it would cost more to get started. BeScope comes with and Analog Devices Interposter that allows one to plug in all sorts of other ADC solutions and much more (about 200 supposedly) from Analog Devices.
I just look at is as an eventual chance to explore LVDS interface, high speed ADC, buffering data, and so on. The open source aspect is merely a chance for BeScope owners to collaborate on their successes and failures.
On the the other hand you have the seed of a great idea there.
Why not an Open Source PC scope that:
1) Provides an oscilloscope like interface that can be used on many platforms.
2) Works with a variety of high speed ADC chips
3) Has an Open source Verilog/VHDL that ties the ADCs to the PC.
Sounds like a great idea.
I tried Google-ing " FPGA USB oscilloscope " and there are quite a few choices for research out there that share code and information.
By adding in " open-source" to the search one might actually limit their search too narrowly.
The FPGA will actually allow for 'slow' ADCs -- below about 50KHz sampling -- to be built within the FPGA. For projects like a 3D Printer, that might be all that one desires.
Sounds good, a couple of years ago I played with Sound Card scopes, and a couple had source on the net.
That gives the GUI and timebase and trigger, all that flips is the interface the data is fetched from.
Another approach I've seen used, is to capture to a .RAW file, which is what the Spice viewers like LT Spice read.
That gives large dynamic scaling, and you have ready-made Spice engines (not sure on Linux, but bound to be something ..)
That is maybe more batch & analysis suited, but it is simple.
On the Cope HW side, with the release of USB 3,0, capture streaming just got easier..
http://www.ftdichip.com/Products/ICs/FT600.html
How smart are those sound card scopes?
I have used things like baudline to do frequency analysis on audio signals. Always thought that what I need is a mixer to bring down higher frequencies into the sound card range.
I'm only now getting used to the idea that there are such high speed ADC chips available now. As used in the BeScope and OpenADC. An open source PC scope would be great, perhaps it's better to start with an existing design.
LT Spice is one of my favourite programs of all time. It's a Windows only program but has always run perfectly under Wine on Linux for me.
Many can use a HC4060 as a prescaler to pull higher frequencies into Audio range, for Frequency Counter use.
eg
http://daqarta.com/dw_kkpp.htm
If you also add a Low-pass to ramp the edges after that, you can gain some Analog interpolate precision - With a Sound card you can use the good Y-Axis precision, to gain X-precision above the 1/fSample
This was one I liked
http://www.qsl.net/om3cph/sb/dcwithsb.htm
and a commercial example is
http://daqarta.com/
On that one, I got Bob to extend the Frequency Counter digits, and also accept a 1pps signal from a GPS.
I found you can get to a few ppm resolution on a PC, limited mainly by the PC clocks with are not stellar, ~180ppm from memory. (they are stable enough, just not well calibrated)
With the 1pps reading, that can be corrected.
Hmmm, I'm totally shy of Rigol as I perceive them to be a company that doesn't back up its products. Some years ago I bought a VS5000 combo logic analyser and scope but it was one of those modules that plug into the PC as a host via USB as I wanted something portable and DC powered. It worked well, BUT only on one computer and one version of Windows, as the display window on the other PCs was all garbled. No matter how I pleaded with them they kept insisting that it must be because I had a "pirated" version of Windows?, despite the brand new laptops with OEM versions of Windows etc that I told them about. So the unit sits around in the junkbox, effectively useless. Wanna buy it?
BTW, I have a couple of those BeScopes but haven't really used them.
I'm open to suggestions for scopes.
In the modern world I'm no longer expecting manufacturers to back up anything they make. Especially not Chinese makers of cheap scopes.
I would never dream of spending money on anything that required a closed source operating system my PC to use. I have seen to many systems become unusable without some specific OS like XP or win95 or even win3.1 or DOS.
Thing is don't want to spend more that 500 euro on a scope. I'm never going to use it enough to justify more. Having been keeping an eye on scope reviews for a year now it seems the Rigols have many happy owners.
So I want to blow 400 dollars on this 50MHz DS1054Z http://www.batronix.com/shop/oscilloscopes/Rigol-DS1054Z.html which with a little hackery can be upgraded to a 100MHz. Assuming the hack still works. If not, ah well.
Of course the scope I really want is big, old, analog and Tektronix but I'll never get 'er in doors to allow that to hang around the house.
Did we ever have a "My scope" thread here?