9 ms·
Flea-Scope: $18 Source Available USB Oscilloscope, Logic Analyzer and More [pdf]
- deleted 2y ago[deleted]
- burgerone 2y agoEdit: Licensing consists of ARR, Public Domain and MIT. https://github.com/rtestardi/StickOS2/blob/main/license.txt https://github.com/rtestardi/StickOS2/blob/main/license.txt https://github.com/rtestardi/usbte/blob/master/LICENSE https://github.com/rtestardi/usbte/blob/master/LICENSE
- turtleyacht 2y agoAll Rights Reserved (ARR)
- analog31 2y agoAlso, looks like some parts are patented. https://patents.google.com/patent/US8117587B1 https://patents.google.com/patent/US8117587B1
- burgerone 2y agoCorrect. What should I replace "FOSS" with so that the title stays short and concise but correctly reflects the licensing/rights situation? I'm very new to posting on this platform.
- fragmede 2y ago"partially source available" is maybe a bit long, but something along those lines?
- gpm 2y agoMy advice is to stay away from "FOSS" unless you're GPL, and "open source" unless you're an OSI-certified license. It's not that I don't think those terms apply to anything other than that, but using those terms invites debate about licensing and attempts to control language instead of discussion of your project. "Source available" is a term that usually no one gets mad at.
- analog31 2y agoGood question, and I sympathize. 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. ;-)
- rmu09 2y agoStrange patent. At first glance you could do something similar with an intel 8052AH BASIC (a 8051 type microcontroller with integrated basic interpreter) back in the 90ies.
- analog31 2y agoIndeed, I built simple industrial controllers from 8052AH-BASIC chips. And lots of patents are strange. Sometimes the examination process results in a narrowing of the claims to the point where they don't really read on anything.
- bramhaag 2y agoedit: parent was heavily edited, so this comment makes less sense now. 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.
- throawayonthe 2y ago[dead]
- patrick451 2y agoThe only thing more frustrating than a rustacaen redefining "safety" to suit their purpose is a Stallman discipline redefining freedom to mean something totally weird. Something in the public domain is not free? Give me a break.
- tonetegeatinst 2y agoCan I get some context for the rustacian safety thing? I'm honestly interested if that's real.
- gpm 2y ago"Memory safety" is a concept that predates rust, but was certainly popularized by it. It refers to statically eliminating a category of bugs - those related to misusing memory - and all sources of undefined behavior. 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.
- dvh 2y agoFor comparison, this is what $2 USB scope (800ksps, 2 voltage ranges) look like: https://files.catbox.moe/0t0dq3.jpg https://files.catbox.moe/0t0dq3.jpg
- burgerone 2y agoFor yet another comparison, scoppy is a similar project: https://github.com/fhdm-dev/scoppy https://github.com/fhdm-dev/scoppy
- bobmcnamara 2y agoI made something like this in college with a spare ADC, resistor divider, and an 8052.
- assimpleaspossi 2y ago*sigh* Link doesn't work.
- serviceberry 2y agoI think projects like that would have been a godsend 2-3 decades ago, when even a basic oscilloscope costed as much as a used car. 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.
- iceflinger 2y agoI think there's something to be said for the form factor here though: I can see myself owning one of these just to take as part of a kit if I expect to need to do some troubleshooting away from my typical workspace.
- nicolaslem 2y agoI have a cheap handheld oscilloscope (ZOYI ZT703S, ~$80) that I find very convenient to have around. It's the size of a multimeter, runs on a battery and works well enough that I don't feel too limited by it.
- yjftsjthsd-h 2y agoI think there's a difference in options at $200/$20/$2 (see elsewhere in this thread) just in lowering the bar to entry to the point of triviality. I'm not spending $300 without knowing exactly what I want it for, $20 is easy, $2 is an impulse buy.
- serviceberry 2y agoFair enough, but on the flip side - you either want to get into electronics or not. If not, there's no real point in spending the money, even if it's $2. If you do, then you probably don't yet have an understanding of what features you need, and the cheapest option will actually hold you back. 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.
- selfhoster 2y agoThis is crazy. The ones we used in the Navy were heavy and delicate. Now it fits into the palm of our hand. Just incredible how far things have come.
- Aurornis 2y agoWe’ve had cheap, tiny USB oscilloscope and logic analyzers for well over a decade. They’re all over Amazon and Aliexpress. 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.
- mikewarot 2y agoHave you tried using a NanoVNA? Those things are amazing. For << $100, you get a device that can measure SWR, attenuation, impedance, generate Smith charts, from about 10 Khz to 4 Ghz+ to a reasonable extent. Oh, and RTLsdr dongles are fantastic deals too, when coupled with the GNU Radio project.
- fryd_w 2y agoThe flea-scope's hybrid FPGA/MCU architecture for USB streaming is clever - using FPGA pipelining to handle 100MS/s capture paired with an STM32 for protocol translation is sweet cost-wise. BUT, the 8-bit ADC resolution and lack of input protection networks (compared to Rigol's 1MΩ//20pF frontends with overvoltage clamping) make it risky in case of unattenuated signals. The Python analysis toolkit using NumPy/SciPy for FFTs instead of baked-in DSP shows cool resource partitioning - could see Jupyter soon.
- jesperwe 2y agoThe specs say 12 bit though.
- picture 2y agoI'm wondering if we looked at the same document... there is no FPGA and it is PIC32MK0512GPK064 instead of STM32. It's also 12 bits at nowhere near 100 Msps, being only 18 Msps. Did you use the aid from AI to write the comment, or are you referring to another device?
- atoav 2y agoMandatory caveat: beware of ground loops when using a USB oscilloscope! Most budget USB scopes share ground with your PC via the USB port. If you're probing high-voltage circuits (e.g., mains power, switching supplies), this can create a dangerous potential difference, risking damage to your computer or worse. Some scopes offer isolated inputs, but if yours doesn’t, use differential probes or an isolation transformer. Otherwise, you might end up debugging your laptop’s fried USB controller instead of your circuit.
- analog31 2y agoOn a related note, I once fried the built in audio hardware of my laptop. I even saw smoke coming out one of the vents. The rest of the computer survived.
- burgerone 2y agoOn page 9 of the linked document Rich also addresses this and calls for the use of a full-speed usb isolator
- londons_explore 2y agoit can also be good... only 1 wire to connect instead of two to see whats happening on a pin. Seems like magic.
- nayuki 2y agoDoes the software provide a way to export recorded waveforms to allow analysis in other programs? And what is the maximum number of samples it can record?
- burgerone 2y agoRecording, exporting and interpreting waveforms doesn't seem to be amongs the objectives of the scope interface. 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-oscilloscope-18-18-msps-webusb https://hackaday.io/project/192598-flea-scope-usb-oscillosco...
- alexray 2y agoWhat’s the use case you’re trying to solve for here?
- nayuki 2y agoUsing an oscilloscope to find a signal, then writing custom DSP code to decode the signal. I'm thinking of stuff like 1 or n-wire binary protocols, NTSC, and such. Or am I supposed to be looking at software-defined radio (SDR) hardware?
- brcmthrowaway 2y agoAnything I can buy for $50?
- zamalek 2y agoThe Amazon letter soup of the month is FNIRSI - I am questioning whether they are actually a letter soup brand. They have a bunch of impossibly cheap hand-held tools, including oscilloscopes. I picked up their multi-meter and power supply and they actually work.
- extraduder_ire 2y agoI've seen FNIRSI products in videos by Matthias Wandel (woodgears.ca) on his second channel after the company sent some of them for free to test. They compare relatively well, especially for the price but are be no means perfect. I assume they're still a rebadged letter soup product, but they seem to be trying to get some recognition for the name.
- cowboylowrez 2y agoThose look pretty cool! I like how nice the price point is nowadays for 10-20mhz bw scopes. 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.
- dzhiurgis 2y agoI've always been fascinated by oscilloscopes, but I don't dabble in electronics. Is there any use of it for normal homeowner?
- mikewarot 2y agoFor about the same price ($13), I'm happy with this logic analyzer I bought through amazon[1] a month ago. I spent more on probes[2] ($24) than I did the analyzer. ;-) 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 https://www.amazon.com/dp/B077LSG5P2 [2] https://www.amazon.com/dp/B0CLB63GL3 https://www.amazon.com/dp/B0CLB63GL3 [3] https://sigrok.org/wiki/PulseView https://sigrok.org/wiki/PulseView
- djmips 2y agoYeah, those are awesome. I found that a great use was to profile microcontroller code. Setting various GPIO pins high / low around critical sections of code. Then you can see the results in SigRock.
- jamesy0ung 2y agoI have this exact one, and I don't reccomend using it with the Saleae Logic software, it constantly drops out and has issues enumerating. Haven't tried sigrock yet.
- Aurornis 2y ago> I don't reccomend using it with the Saleae Logic software 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.
- londons_explore 2y agoI too have the same one, and had endless problems till I switched to a shorter USB cable and suddenly everything was fine. 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.
- jamesy0ung 2y ago
- jszymborski 2y agoReminds me of the similarly priced EspoTek Labrador https://espotek.com/labrador/ https://espotek.com/labrador/
- nerdralph 2y agoNot as capable as Flea-Scope, but buck50 is another MCU-based oscilloscope and logic analyzer. https://github.com/thanks4opensource/buck50 https://github.com/thanks4opensource/buck50
- teleforce 2y agoFor the price this small thing is really awesome. 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]: https://youtu.be/yr9SGxiBAnI https://youtu.be/yr9SGxiBAnI
- burgerone 2y agoI'm at the character limit, so I'll take suggestions for a new title! 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
- teleforce 2y agoPerhaps Dang can help on that
- badc0ffee 2y agoHow does it compare to the $100 "YouTube-famous" Zoyi ZT-703S?
- teleforce 2y agoThanks for the info never heard it before, it seems to be an improved 2 channel with 50 MHz version of the older ZT702S single channel version [1]. 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-80-2ch-50mhz-oscilloscope-multimeter-review/ https://www.eevblog.com/2024/02/07/eevblog-1597-zoyi-zt-703s...
- idunnoman1222 2y agoA Fnrsy three in one oscilloscope is 50 bucks on AliExpress
- ChuckMcM 2y agoI can recommend this gizmo for people just starting to learn about electronics. I got one in Hackerbox 102[1] and found it to be a good value in terms of bandwidth vs cost. 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/products/hackerbox-0102-flea-scope https://hackerboxes.com/collections/past-hackerboxes/product... and the experiment guide https://www.instructables.com/HackerBox-0102-Flea-Scope/ https://www.instructables.com/HackerBox-0102-Flea-Scope/
- rtestardi 2y agoHi all, new here. 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/ 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
- just_mc 2y agoWhat you've done is awesome. Ignore the haters and build your mosquito scope.
- Reviving1514 2y ago
- deleted 2y ago[deleted]
- LeifCarrotson 2y agoLooks like the schematic and PCB layout are in "Diptrace", which isn't a piece of software I'd heard of before. I'd much prefer Kicad for anything claiming to be hacker-friendly or source-available. It appears this Diptrace software does have a pretty much unlimited 30-day trial, which is preferrable to Altium or Orcad, and I appreciate that they actually sell their software with a perpetual license like buying old shrink-wrapped CDs instead of some subscription hell. But Kicad is so compelling these days. 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 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 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 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 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!