Sorry don't know which section to put this in or if it is really apprropriate...
I have played around with a bus pirate logic analyser and found it very useful to help debug i2c transactions
However it has a lot of limitations (esp small buffer size and inability to trigger on specific data bytes using OLS)
I' in the market for a better analyser but there are so many options
Can anyone recommend the best analysers say in the £200 ($300) and the £500 ($750) price brackets - or less if there is something really good worth a look
I ideally want something fast with a lot of memory - something that would enable me to capture i2c and SPI traffic (up to 400MHz bus) over long periods of time - somtimes this is because of intermittent communication with 5 mins gap between traffic.... or more) would be ideal
I've tried asking this on boards specific to one product or another but they don't seem to want to talk about other alternative devices so I thought I would ask somewhere more generic - like here
There seem to be a lot of anaysers on the market (sparkfun USB, saleae, logic sniffer) but just looking at sales sites does not give a lot of info what is good and what is not
Well, I would rule out the LogicPort. This is the only one that I currently own and it has horrible sample depth and I am not a fan of the triggering. But it was the best out there back when I bought it.
You might be asking for a bit much in that price range. There are several that meet one or two requirements you listed, but I don't know of one within that price range that meets all of them.
Something fast with good sample depth, a protocol analyzer and the ability to trigger on certain data sequence, or to capture events on serial bu, then 'go to sleep' until the next event then capture that.... would be ideal
So up to 40MHz? Well, the LogicPort would support what you are suggesting for the most part. You can have it trigger continuously and also set it to export on acquisition. I still wouldn't recommend it as it has such a shallow sample depth. Even the Open Worksbench Logic Sniffer has more sample depth and is hundreds of dollars cheaper.
The features that you want are more dependent on software, though. That is also a place where the LogicPort does not shine well. And it is completely closed without even an option to purchase an SDK. Another reason I have been seriously considering getting the Logic Sniffer since it uses the open-source SUMP software. I don't have it yet so I cannot give any sort of review, unfortunately. But at $100 for the mainboard, 16 bit expansion wing, and all the probes, you really can't go wrong to try it and see. The only reason I haven't so far is because I am saving my pennies for a 3D printer right now.
My main gripe with the Saleae stuff is the lack of an external clock input. So you need to get creative with your triggers. I do have the 8 channel version, but I have not used it a whole lot. There may be all kinds of ways around that that I am not aware of.
One advantage is the buffer depth is only limited by the size of RAM in your computer. However the actual sampling rate is limited to the speed of the USB bus since the transfers are in real-time.
Coming from using a standalone logic analyzer, I never really wrapped my head around the Saleae LA. Maybe I should dig it out again. I love how small it is and the majority of the time, I am looking at stuff with fewer than 8 channels anyway. The LogicPort is actually kind of clumsy to hook up for such few signals.
And, Gray, yeah... the look of it (and the 34 channels) is what had sold me on it. As I said, the market was pretty limited for these at the time and it was the best at a reasonable cost. Lots of better ones out there now. I can't believe they are still able to charge as much for it with the better competition now.
I have also been looking at the ZeroPlus models and their clones. A big factor for me, personally, is support in sigrok or SUMP since I find the software is where I usually get disappointed.
I've been recommended the Logic Sniffer (but probably because I asked at the Bus Pirate forum) but I hear that does not have a large sample depth?
The 40Mhz is just a wish list thing
What I would like is an anaylser that can cope with SPI at any speed i am likely to come across, and has a large sample depth so I can cope with intermittent data packets in i2c and SPI. I had another go with my Bus Pirate on SPI, toggling a spare pin on the Arduino to use as a trigger on the spare channel 5 of the Bus Pirate, and had more success than before
BTW is the clock supposed to be varying widths when the Arduino acts as a SPI Master? I expected a steady clock like I see on i2c
I will have a look again at the Saleae Logic 16, I did spot this one before
is the clock supposed to be varying widths when the Arduino acts as a SPI Master?
I would not expect so because it's hardware driven and should be stable, there may be a gap between bytes though.
OTOH there's no reason not to vary the clock with SPI.
What are the sample and target clock speeds? If you aren't sampling fast enough relative to the sampled data you will get an effect that looks like the clock varies. This is were the external clock that Retroplayer mentioned can be handy.
is the clock supposed to be varying widths when the Arduino acts as a SPI Master?
I would not expect so because it's hardware driven and should be stable, there may be a gap between bytes though.
OTOH there's no reason not to vary the clock with SPI.
What are the sample and target clock speeds? If you aren't sampling fast enough relative to the sampled data you will get an effect that looks like the clock varies. This is were the external clock that Retroplayer mentioned can be handy.
Rob
I'm sampling tried a few sampling rates
At 4Mz (the max available)and setting SPI_CLOCK_DIV16, the clock looks all over the place, and yes I am reading garbage data that changes every time I reset the Arduino and re-capture the same even- I suspect my Bus Pirate ain't fast enough for this sort of job
Not had a reply from Nick yet but I seem to have convinced myself already
logic 16
Version 1.1.9
Increased Logic16 USB bandwidth performance by 50%! Old limits were 2 ch @ 100MHz, 4 ch @ 50MHz, 8 ch at 25MHz, and 16 ch at 12.5Mhz. New limits are 3 ch @ 100MHz, 6 ch @ 50MHz, 9 ch @ 32MHz, and 16 ch @ 16MHz.
this seems unbeatable value for money IMHO looks like I wll have a nw toy next week ]