Hey r/electronics, I'm designing a cheap and versatile logic analyser, and I need your input!
I'm designing a logic analyser based on a PIC24F. The objective is to make it as cheap, small and powerful as possible - a bit like the Salae logic analyser, but below the £10 mark to fabricate on a small scale. I'm considering releasing it as a kit for hobbyists when I'm done. I would like your input on features to add.
The idea here is to pack as much punch into as small and cheap a package as possible to give hobbyists a comprehensive set of tools for electronics development. What features would you like to see?
So far, the design has the following features
- Tiny. Fits in a 40x18x28mm project box.
- USB full speed (12MBit) connectivity
- Wide input voltage range. This kind of depends on which chip I ultimately choose to buffer the input down to the 3.3V the PIC uses, but it should definitely handle logic at 0.5-5V at least.
- Choice of 16 bit or 8 bit samples
- 7kb sample buffer. 7168 samples @ 8 bits/sample or 3584 samples @ 16 bits/sample
- Choice of sample rate. For 16 bit, 16MHz or 2MHz-65kHz. For 8 bit, 32MHz or 4MHz - 125kHz.
- Burst capture only (based on optional trigger)
- Choice of trigger sources. Only one level of trigger. So far I have no trigger, rising/falling edge on any channel, counter (wait for n rising/falling edges on any channel), and trigger on value (equal|greater than or equal to|less than or equal to|not equal to) sample&mask.
- Variable trigger position. Position of the trigger sample within the capture buffer can be varied, allowing you to control how many samples/before after the trigger you want.
- Frequency meter mode. Measure the frequency of any logic signal up to 50MHz
- Counter mode. Count rising/falling edges from a source signal up to 50MHz. Counter is 32 bit and can be polled repeatedly (not sure how frequently yet, depends on USB overhead)
I'm also considering adding some kind of signal generator features but I'm not sure what that'll do to the part count (which I'm trying to keep as small as possible).
I'm not writing a device specific driver to power this (I'm using WinUSB to do the USB control) so the device will have to be controlled by a specific software application. I'm not planning on writing my own wave viewing software - I'm using an open source solution for now. The software for the prototype so far simply provides an interface to capture data from the device, save it to a .vcd which can then be loaded into a wave viewer of your choice.
Your suggestions would be really helpful. Thanks :)
Posted Dec 31, 2010, 3:10 PM UTC
Could it handle differential LVDS, RS422/485 inputs as well.
How robust is the front end, ESD, 12Vdc
Just asking
Yeah, front end robustness is important. Particularly as you expect statically charged humans to touch the probes frequently, and to connect and disconnect them in random sequences to powered circuits.
Another thing (just being awkward) the input buffer chip should be socketed, and should be generic, not single sourced
I'd say the input buffer should be either socketed OR fairly robust. Both seems overkill. For example, you very seldom come across a commercial electronics instrument with a blown voltage input. (YMMV).
True, maybe a i/p pcb with a SIL connector, going to the PIC machinery could be an idea, means swappability for unbalanced/differential signals. I think nuticulus is a bit optimistic on the pricing, even 20€$ for a little box like this wouldn't break the bank.
Sounds like a great little project
Hmm haven't put that much thought into the front end. I'm pretty sure I won't be able to make this thing galvanically isolated for under £10.
The simplest ideal uses 16 transistor buffers (using a transistor array chip). Surface mount, not through hole, to save on space. I suppose I could try and find surface mount sockets, but they might end up being too big. ESD/max voltage will be determined by whatever the transistors can handle.