I think the posted title need to be improved and updated to include function or waveform generator instead of just More.
Perhaps because of that most of the comments here just focusing in the oscilloscope part.
As any who has dabbled with electronics know your typical workbench is normally consist of oscilloscope, logic analyzer, waveform generator, digital multi-meter and power supply normally 12V DC.
It seems to me this little $18 hybrid signals scope/generator can do almost all of these functions, and since they are integrated on the same device you don't need to synchronize them which is a big plus.
For old school HP/Agilent/Keysight electronics workbench discrete solutions can easily cost tens of thousands dollars, no kidding.
The modern version of this is the Digilent Discovery Pro 3000/4000/5000 series with price tags of several thousands dollars. They are described as the All-In-One High-Speed Mixed Signal Oscilloscope, Function Generator, Power Supply, and DMM. The cheaper version of this Digilent Discovery 1/2/3 series that cost around $400. But the latter is quite bandwidth and resources limited thus more comparable with the Flea-Scope [1].
[1] Digilent Analog Discovery 3 vs. Digilent Pro ADP2230 [video]:
There's a lot of unique, interesting and useful features this offers, all of which are deserving of a spot in the title...
Edit: Seems like I have lost the ability to change the post title. Unfortunate
The Flea-Scope is only 4 MHz single channel so this more similar to the older ZT702S 10 MHz version.
[1] EEVblog 1597 – Zoyi ZT-703S $80 2CH 50MHz Oscilloscope/Multimeter Review:
https://www.eevblog.com/2024/02/07/eevblog-1597-zoyi-zt-703s...
One post below might be a bit misleading -- it's just 18 Msps, not 100 -- so think of it as good for signals up to 1 MHz or so with decent fidelity... And it uses a PIC32, not STM32. It is 12 bit ADC, but the noise floor makes it more like 10 or 11. A cool thing is it also does digital capture and waveform generation at the same time, but clearly it's all pretty simple...
My goal was to be able to get these in a classroom at every seat, where there's already a computer or tablet or chromebook, and have it "just work"... The thing I like the best by far, though, is javascript access -- you only need a webpage for the GUI -- no software install or app store or anything!
To go deeper for the classroom experiments, you can use a different "deep dive" webpage with a command-line UI and log in interactively and take control of all the pins programmatically in BASIC, and even configure the board to autorun a BASIC program on power-up... You can make a "simon" game with 4 switches, 4 LEDs, a buzzer, and about 100 lines of code... Or with a thermocouple and an op-amp and a solid-state relay, you can make a cool toaster oven temperature controller for reflow soldering -- which is how I built all the prototypes... The nice thing is the javascript access on the host comes for free still, and so BASIC can talk directly to the host computer (e.g., running python or powershell)! Examples are here: https://rtestardi.github.io/pages/
I have also had fun with automotive applications for Flea-Scope -- it is so easy to just bring out a phone or tablet and measure a crankshaft sensor -- and without it you're just guessing and replacing components from some diagnostics flowchart...
As for licensing, it is all open source, and anyone can rebuild it (and even sell it). There is a patent on the internal BASIC, but there is also a perpetual license to the software builds I have made and tested and released -- conceivably you could build the scope without BASIC at all -- it is unneeded except when you use the board in "deep dive" mode for BASIC programming.
If there is interest, I have toyed with the idea of making a Mosquito-Scope, with 2 channels and selectable input amplification (for sub-millivolt signals) based on the still-brand-new dsPIC33A, which is actually cheaper and faster than the PIC32MK.
-- Rich
Great tool. Thank you.
This would retain the small form factor and would keep the design free from compromises.
This is really amazing and you are to be commended. And you've clearly thought hard about what can make that successful. There's just no replacement for every student having their own setup to experiment with. My first exposure to o-scopes, the whole class was basically sharing one giant Tek 7k series scope, one of the best of the time (with commiserate cost), and while I did learn the basics, it wasn't till I had my own much, much less feature filled scope did I learn it well enough to be useful.
N.B.: Since you're new here, I'll just warn you that it's SoP around here that any time anyone posts an "I built this", the comments will be filled with nitpicks about trivial issues presented as massive errors, people telling you how much better they would have done it if they ever got around to doing it and how they got something cheaper on alibaba so why bother. And, of course, you should have written it in Rust. Just ignore that stuff.
To power it, I'm using SigRock/Pulseview[3], which sees it as a compatible clone. It's wild to be able to see signals a few tens of nanoseconds wide so cheaply.
[1] https://www.amazon.com/dp/B077LSG5P2
The Saleae software is designed for use only with Saleae products. Anything else is a clone.
I wouldn’t be surprised if they intentionally made the software frustrating and buggy to use with clones. The software (which is great) is funded by hardware purchases.
I think the firmware might have some timing issue with the USB bus, and just a few extra nanoseconds of a 2 foot long cable seems to break it.
Seems like magic.
Link doesn't work.
Nowadays, very good oscilloscopes with 200 MHz bandwidth, good user interfaces, and responsive displays are selling for $300 - I'm talking Siglent, Rigol, UNI-T. So the merits of DIYing something much worse just aren't quite there. It's that one piece of equipment you use to troubleshoot all your other designs, so you want it to be dependable, easy to use, and accurate.
This is not to say it's not a fun, geeky project to work on and publish... but you know, only once you have a real oscilloscope. If you're just setting up, do yourself a favor and spend a bit more money on this. The remaining equipment is not nearly as critical.
This is a very strong first world POV. Those U$D 300 rank pretty high across world's minimum salaries [1], not to mention that prices can very likely double in countries like my own.
Moreover, a large % of people that can really get a very good use of this (Kids in high school) usually have a lot less money at their disposal, and we are not getting into collaterals like building your own and learning how it works.
[1] https://en.wikipedia.org/wiki/List_of_countries_by_minimum_w...
Want to keep a distractable 14 year old busy for an hour? Give him or her some wire, a cheap meter, a battery, some switches and LEDs. Want to possibly change that kid’s life? Give him the above, plus a scope, and hook it up to a music player playing his favorite song.
We're all looking to do the best we can from different baselines.
For the purposes you are talking about you can get what you need with one of the $20-40 scopes.
Those ones also tend to be portable and more rugged which is what you need if you don’t have a full blown lab to keep a nice oscilloscope in.
I did a quick search in my country's Mercado Libre (the local Amazon, we could say) and the cheapest available one, Fnirsi-138 Pro [1] goes for a price of aprox. 50 USD [2]
[1] https://www.amazon.com/Digital-Oscilloscope-Portable-Samplin...
https://www.mercadolibre.com.ar/osciloscopio-digital-fnirsi-...
It seems like the price of anything would scale similarly. If you imported this $18 device to At, it would probably double in price.
Regarding raw specs, it seems to be much better in most regards compared to the mentioned Fnirsi-138 Pro.
The problem is, with a toy scope, you aren't really gonna know if what you're measuring is real. This might be useful as a kit to build to learn how to program microcontrollers, or measure audio signals (the $11 one, or the mic on your phone can do this), but a bad scope will generally cause more problems for the hobbyist. When you get near the limit of a scope's bandwidth, the signals get really messy and full of artifacts. Arduinos run at 8-16Mhz, so you're gonna hit a wall really quickly and once you can't rely on the output, the investment will be lost.
Every scope out there has an upper limit in terms of speed. If you have no use for it, don't buy it. This oscilloscope is first and foremost a learning resource.
My point, since I was replying to a poster who said the above, was if you are making $300 a year, you don't have a laptop. So, if you read my assumption, that you don't have a laptop, android phone or laptop, and you are making < $1000 USD a year, the Flea-Scope will cost more than a decent one with a built in display and much more than a ~2mhz toy intro oscilloscope ($11 on Aliexpress) [1]
I could also very well reply with just the quote above.
https://www.aliexpress.us/w/wholesale-oscilloscope-.html?spm...
Some specific issues: first, the number of inputs. A lot of circuit debugging is about "let's see how signal A looks like when signal B happens" (B might be a bus clock or something like that). So, a lot of the time, you need two inputs, not one.
Second issue: even hobby MCUs generally run faster than 4 MHz, so you might need more bandwidth to monitor I/O, even for old-school Arduino stuff - let alone RP2040.
Third issue: for anything analog, from audio equipment to household appliances, the 0-6 V input range just doesn't cut it.
I'm not trying to dunk on this project: I think it's about as good as you can do for the price, and it's clearly a passion thing for the author. But if you can afford it, and if you want to learn electronics, a "real" oscilloscope is almost certainly a better deal.
It's fuzzier than that; there are hobbies that look fun but I can't decide if I want to fully invest into them, but having a cheap, but not-great equipment is a good stepping stone. Besides, beginners won't have the skill to fully use fully-featured pro-level-gear. A cheap soldering iron is great for those looking to get their feet wet; sure the lack of precise temperature control can be a hinderance, but investing in an expensive soldering station is wasteful if one decides that it's not really for them.
This made me laugh. In college in the late 80's I repaired a roommate's not-quite vintage C64 fastloader cartridge with a bad wire bodge using a lighter and the tine of a dining hall fork...
I don't agree for something like this. The problem is that beginners often don't understand how to deal with the limitations of equipment--all they understand is that something is wonky and they don't know how to fix it.
In addition, bad equipment can make your initial impressions so painful that they prevent you from going further. Oscilloscopes, cheap soldering tools, etc. all have this effect. It's not unique to electrical engineering though--super cheap guitars are painful to play while something just $150 more is dramatically easier to deal with.
Where cheap equipment shines is when a beginner has been at it long enough and becomes "dangerous". They know just enough to do things but not enough to avoid things that will destroy their equipment. That's when the $20 "whatever" is a blessing because you'll get annoyed but you won't be distraught if you blow it up. Even as someone experienced, I semi-regularly destroy a $10 logic analyzer because the circuit I was analyzing wasn't doing what I thought it was (of course, this is mostly laziness--since the analyzer is merely $10 I don't take the time to double check things that I would if I were to put my Agilent analyzer on it)
> Besides, beginners won't have the skill to fully use fully-featured pro-level-gear.
Quite often, pro gear is better for beginners. For a beginner, an "Auto Scale" button on their scope that does the right thing is a godsend. Even I use it all the time. Sure, I can dial the signals in quickly, but "Auto Scale" does the right thing 99% of the time with a single button press.
Even with soldering, a Metcal system maintains the temperature exactly where you need it. You don't have to worry about having too much/not enough heat on the component you are working with. You don't have to worry about the calibration on your soldering station. A Metcal will pump a lot more energy into a big hunk of transformer and a lot less energy into a QFP integrated circuit. Sure, someone experienced can adjust for this on a Hakko, but a beginner is having a tough enough time getting solder down and the soldering iron in the right place without knocking the IC all over the place and doing it all through a microscope.
> investing in an expensive soldering station is wasteful if one decides that it's not really for them.
Used Metcal soldering systems are "expensive" ($250-$500), but they also resell for almost the exact same amount you bought them. Cheap soldering stations won't resell for anything. So, all the money you spend on a cheap station is lost if you decide not to go further while the expensive station cost all gets recovered.
[1]: https://pine64.com/product/pinecil-smart-mini-portable-solde...
Would be helpful to understand the what limitations might be encountered such at the frequency.
1. https://pine64.com/product/pinecil-smart-mini-portable-solde...
As as others have pointed out before, there's just no alternatives in this form factor. The scope is tiny, and for what it is it packs quite a punch. 3.3V and 5V are standard logic levels which will suffice for quite a lot of basic probing. Being made for students, it does likely everything that would be required of it in an educational environment. How well this pans out in real-life we'll see soon.
Granted that with enough money and space at hand there are much better options out there.
- 12 bit ADC frontends
- Actually usable touchscreen inputs
- Super simple to drive remotely over a network connection (though getting the IP address with just the touchscreen is a little tricky)
- USB-C power input - you can run it from a battery pack if you like!
- All the essential decoders built in for free (I2C, SPI, UART)
- VESA Mountable - I got a monitor arm to gain back some desk space (awesome feature)
- Very, very easy to hack one of the budget models and upgrade it to a 250MHz model :D
I'm an old timer so I'm familiar with the traditional scope front panel, but have come to like the touch screen for changing settings.
Perhaps my only gripe is how long it takes to boot.
I used to thing touch screens on scopes were a gimmick. Then I used one to name a signal quickly and easily for a trace capture. After that I was hooked.
Also - be sure to upgrade the firmware if you haven’t yet. They fixed that annoying bug where it doesn’t remember your probe settings between power cycles!
Edit: Updated the firmware. Works. First time I noticed the problem, it was at my desk, and I assumed it was because the scope was plugged into a switched power outlet, and I was habitually turning off the lights when I left the room. Only after a couple of tries did I discover that it was an actual bug.
HN: Come for the arcane programming topics that are over my head, stay for fixing my scope!
That bug was my only complaint with the DHO924 as purchased. I was already extremely satisfied with it before that bugfix.
Hate to say it as a proud American and fanboy of HP’s legacy, but these folks are coming for Keysight on the low end.
Way more useable, especially having proper probes.
I get it - I’m in the first world, unlimited money and privilege, yada yada - but if you think you realistically can save $400 USD for a scope like this, you should.
Maybe a bit pricy for the hobbyist.
I see this sort of thing in amateur radio all the time. “Why on earth would anyone just starting out consider getting a Baofeng radio for $20 when you can get a better quality name brand equivalent for $200?” Well because $180 is a whole lot of money for a whole lot of people.
I think it does have its place even today.
Note that calling this FOSS is completely inaccurate. Some parts are all rights reserved, some are public domain and some are only available for non-commercial use.
Public domain is not open source, and especially not free (as in freedom). Restricting commercial use is also not free. At best, this project is partially source-available.
The Free Software Foundation (FSF) and Open Source Initiative (OSI) recognize public domain software as "free software," but not as open source, but as I understand it, it's not that different from MIT licensed software. Someone can take MIT licensed code, make changes, sell the resulting binary as proprietary code and no one else is allowed to take that binary and sell it as theirs. There are some subtle other differences, but MIT licensing doesn't require other people's changes get contributed back out as open, same as public domain.
[1] https://opensource.org/blog/public-domain-is-not-open-source
Copyright law is tricky. Under US law, "public domain" means "not copyrighted", the author waives all rights and the law allows them to release their works to the public domain. This you can consider free.
In other jurisdictions, say The Netherlands, the "Auteurswet" does not have a way for you to release your source code into the public domain, making any such statement void. Other countries such as Germany do not allow the author to waive all rights ("Urheberrecht"), etc etc.
Without knowing where the software was written, by whom the software was written and with whom it is shared, you cannot guarantee anything from "public domain" software.
Rust code without unsafe blocks guarantees memory safety, and when you're writing unsafe blocks you're culturally expected to expose a safe-api that upholds rust's memory safety guarantees for users who don't themselves use unsafe blocks.
Rust programmers (rustaceans, a pun on crustacean because the language mascot is a crustacean) tend to extol the virtues of memory safety [1], and are sometimes lax with using the word "safety" to refer to "memory safety". There are obviously non-memory-safety safety considerations as well (e.g. the other 1/3rds of security vulnerabilities. Or all the non-software uses of the word like making buildings that don't fall down).
Personally I think it's usually pretty clear how the word is being used, and don't find it annoying. But then I'm a rust programmer.
[1] E.g. pointing out that roughly 2/3rds of security vulnerabilities are caused by the lack of it.
How so? There are no restrictions on use or distribution.
> Restricting commercial use is also not free.
I agree, and I would include neutering any commercial uses, in which case GPL is non-free.
It's not open source because it does not use an open source license (public domain is not a license). It's not free because this depends on your and the author's jurisdiction (if you both live in the US, then yes there are no restrictions on use or distribution)
> I would include neutering any commercial uses, in which case GPL is non-free.
In what way does GPL neuter commercial uses? GPLv3 simply states that you have to make your code available to your users (note: users, not everyone), not that you cannot sell your product.
The GPL forces you to license all your relevant software under restrictive terms (ie under the terms of the GPL). How people can declare that as 'free' I'll never understand, it's just ideological nonsense.
The GPL makes it hard or impossible to make money from your software since anyone else can duplicate and sell it. That's obviously neutering commercial use.
I'm very new to posting on this platform.
"Source available" is a term that usually no one gets mad at.
The thread title as of this moment (subject to moderator edit) says "source available" which seems reasonable. So I don't think you made a mistake. "With published design" might also work.
I've got my own little GitHub page with projects that I share. They usually involve both hardware and code. I'm also not an engineer, but a scientist and electronics hobbyist, both of which have cultures of open design that predate the software industry. What I do with my projects is attach a MIT license, attribute the sources of any code or ideas that I borrow from elsewhere, and wish you good luck. ;-)
In talking about it to my engineering friends I got the somewhat expected dismissive "well its just a toy" kinds of comments, and to be clear it has a lot of limitations, but within those limitations it also has a lot of opportunity to teach people about things like analog electronics which are best learned by looking at the signals. And given that so many people starting out don't even know why they might need an oscilloscope, its a pretty good way to introduce the tool without the huge learning curve of features you may not use for the first year of your learning process :-).
And then when it comes time to pick one of the many really excellent choices of bench tools, you won't be completely clueless about what the functions of the oscilloscope do. So for $20 I consider it a good value and have recommended it to people who were just starting to learn about these things.
[1] https://hackerboxes.com/collections/past-hackerboxes/product... and the experiment guide https://www.instructables.com/HackerBox-0102-Flea-Scope/
The Python analysis toolkit using NumPy/SciPy for FFTs instead of baked-in DSP shows cool resource partitioning - could see Jupyter soon.
Did you use the aid from AI to write the comment, or are you referring to another device?
The cool thing about this one is that it’s open source and well documented.
There are a lot of downsides: The front end has poor input protection and the entire unit is much less resilient, calibrated, and trustworthy than what you’d use in the Navy.
Oh, and RTLsdr dongles are fantastic deals too, when coupled with the GNU Radio project.
lol @ highend
"Keysigh Bandwidth 6 GHz 8 channels maximum storage depth 1.6G EXR608A Infiniium EXR series oscilloscope"
137,999.86, I like that 86 cents on the end, maybe the cents are a covert communications channel.
Over on hackaday [0] Rich explains that you can however easily grab the data directly from the serial port using python and thus record it:
> (07/28/2024) Sorry, there is no protocol analysis -- just digital display. You can invoke a "scope" command by python or something, and get the data yourself in binary -- I have an example of that in StickOS2 repo python/scope.py, but it is very rough. (Analog has additional challenges of having to do calibration, but digital is easy.)
[0]: https://hackaday.io/project/192598-flea-scope-usb-oscillosco...
The Diptrace trial does support exporting various Altium/Orcad/Kicad/Eagle/PADS/Protel/Mentor netlists and file formats, but it would almost be easier to re-draw and re-route the design in your PCB software of choice.
I downloaded the trial and opened it up, the schematic is remarkably simple:
https://i.imgur.com/8EudXIZ.png
The un-named nets and complete lack of concern for crossing other nets is certainly one way to draw a design. On the one hand, it all fits in a single image and is pretty beginner-friendly, on the other hand, a hierarchical schematic with named nets makes it much easier to take in and reason about a single section of the design.
The PCB is simple as well, it's just a 2-layer design with all traces routed at 8 mils and generous vias at 10 mil drill/25 mil pad. Unfortunately, being a compact 2-layer design, it doesn't have good power planes, and worse yet it doesn't even try to have a ground pour at all. Here's the ground/VSS routing:
https://i.imgur.com/BcKm8vL.png
VDD/power makes a literal loop around much of the waveform output and near the scope input pins:
https://i.imgur.com/E2UK9Ot.png
I know performance isn't the primary goal of this device, but these decisions are probably leaving a lot on the table. (And here's the bottom routing for completeness: https://i.imgur.com/qxwJvpU.png)
Your eyes do not deceive you, the pin headers aren't in a straight line, they wobble up and down with every other pin 9 mils higher or lower than the previous pin. This probably makes assembly a little simpler because the pin headers will comfortably fit in the 0.0354" holes, but the insulators will flex and hold them in place even when the board is inverted to solder the bottom half, but might put some tension on the solder joints if you wanted to stack a daughterboard on it.
The main U5/U6 connectors are spaced out by 0.9" in Y and aligned in X, the -5V power connector is conveniently aligned in Y with U6 and skips two 0.1" pins in X if you wanted to include that in the design (or try to stick the whole thing in a breadboard). The J3/J4 jumpers/headers by the USB connector are on the same 0.1" grid, but inconveniently not aligned with U6 for deep integration in a breadboard or daughterboard and power isolation through a lab power supply. I do appreciate the inclusion of J10 as an extra ground pin J10 off in the corner - you weren't doing anything with that space anyways, and that's sure to come in useful for someone poking at a circuit with a meter or wiring something up!
A notable feature at this price point is the inclusion of a charge pump to generate -5V, I expected a 0-5V range with nominal rail-to-rail opamp rather than positive and negative voltages. I suppose this is persuasive when working with audio signals, which is probably a significant use case for this device. But again, the circuitous (ha) route to the opamp by the noisy VS- output signal and the decoupling and power supply to the charge pump chip U4 are not helping the performance. I doubt it would pass FCC certification, but it doesn't really have to.
All in all, a pretty neat little device at an impressive price point! Don't take my criticisms as complaining, I meant it to be constructive - well done making cool stuff and putting it on the internet!