Hey,
I'm fairly new to the electronics scene and was wondering what the minimum specs for an oscilloscope would be if i needed to look at raspberry pi spi transactions?
thanks.
Hey,
I'm fairly new to the electronics scene and was wondering what the minimum specs for an oscilloscope would be if i needed to look at raspberry pi spi transactions?
thanks.
Thanks guys!
I will be looking a logic analyzers now. Seems like a super useful piece of equipment. the raspberry pi spi speeds seem to be somewhat ambiguous and looking at the source code of what I'm trying to analyze, the spi speed is set to the max allowed by the driver which is 125Mhz, but from what I've read, it never actually reaches that speed, so we'll see.
Thanks again. super helpful
There is a difference between Data Rate and Bit Rate, you can crank the bit rate upto the 125Mhz and it probably does exit the PI at that speed but only for that byte of data, the time it takes the code to loop around and grab the next piece of data will slow down the overall rate considerably resulting in considerable degration in overall datarate resulting in the figures arround 10 or 20Mhz, this actual result may depend on the activity the pi is doing during the transfer
Those Saleae clones will sample up to 24MHz. This means that if you set the SPI clock above 12MHz, you'll miss data.
If the bit rate is 125MHz, you need something that can sample at at least 250MHz.
Note: The 125MHz number sounds fishy: IO pins on the 'pi are not usually capable of speeds beyond about 50MHz. You'd have to take "extra care" in routing the signals, differential pairs etc etc. This is not the case for the SPI signals routed to the GPIO connector.
On another note: If you set the bit rate at 125MHz, the raspberry pi will be able to sustain that for a while. The raspberry pi is able to feed the SPI module with DMA, and doing 15Mbyte per second is easily achieved by the DMA module.
If you're having trouble with some SPI things, I'd first reduce the clock rate below 125MHz. See if that helps.
Question is who has the SPI bus wound up that fast?
Most parts will only do a few megs and therefore the cheap Saeleae stuff will be more than good enough.
Also I would say that choosing a clock divider on the SPI that was fast enough but not too fast would make a more reliable solution in terms of ease of design and signal integrity.
The RPF documentation on SPI is quite useful as well
https://www.raspberrypi.org/documentation/hardware/raspberrypi/spi/README.md
Question is who has the SPI bus wound up that fast?
Most parts will only do a few megs and therefore the cheap Saeleae stuff will be more than good enough.
Also I would say that choosing a clock divider on the SPI that was fast enough but not too fast would make a more reliable solution in terms of ease of design and signal integrity.
The RPF documentation on SPI is quite useful as well
https://www.raspberrypi.org/documentation/hardware/raspberrypi/spi/README.md