Has anyone tried to use LOGi Pi (fpga) board with brickpi and raspberry pi B+ or p 2 B?
My racing robots project hit some road blocks related to performance with python and OpenCV. I’m planning to play with FPGA boards to see if I can offload the image processing and have the raspberry pi handle just the route planning logic. Even with C++, the processing speed for 640x480 image isn’t fast enough to get 30frames/second. With raspberry pi 2 B, it’s fast enough but doing it with software won’t be faster than using a FPGA.
Haven’t used it myself. I went digging around a bit and found the user manual here: http://valentfx.com/wiki/index.php?title=LOGI_Pi_User_Manual but couldn’t find the pinout information. I think that as long as it doesn’t interfere with the serial lines, it should stack.
I’m going to send them an email and try to get more information. One of the founders is a CS professor and they are using machine vision, so I’m hopefully I can use LOGi Pi with a simple detection algorithm to build racing robots.
The Raspberry Pi to FPGA main communication interface is the PI SPI port. The Max stable SPI clock rate that has been tested is 32-48Mhz. Based on our development experience there are some instability issues that can occur when using higher clock rates. By default the current LOGI SPI drivers runs at 48 Mhz With the current 48Mhz clock and direct communication to the FPGA the user can expect to get 4 MB/S throughput between the Raspberry Pi and the FPGA.
Those pins should be free then, so it should indeed work, again as long as the amperage isn’t too high. The 5V rail will be powered by the BrickPi, and that has a 2.5A limit to it. I can’t imagine this taking up that much though, since it’s designed to be powered off the Raspberry Pi, which doesn’t have a lot of power to begin with. This is a super-interesting project, would love to hear more about how it’s coming along as it comes along!
The older Pi B/B+ is under powered for 640 x 480 images, but the newer Pi 2 B has enough power. My naive thinking is the faster the sampling rate, the faster the robot can go around the track. I’m planning to blog the process and what I discover.
I finally had time this weekend to do a quick test with Raspberry Pi + LOGi Pi + Brickpi. I ran the motor test with brickpi on the top and LOGi pi in the middle. Nothing is loaded on the LOGi Pi yet.
next test I’m going to do is loading something on the LOGi and have it running at the same time as Brickpi to see if everything works as expected.
last nite I played with LOGi Pi and discovered some driver collision issues. when i install brickpi drivers, it causes the logi_loader to fail. I asked them how they use I2C and SPI and this was the response.
i2c to drive an IO expander and SPI to send data to the FPGA
Could this be caused by the i2c settings brickpi drivers use versus what logi pi needs?
That is one of the example apps that is in their logi-apps github. It simulates a virtual breadboard and you can click on the buttons. I played around with it by clicking switch #8. If you switch 8 to on, the numbers change and the onboard LED blink. The link to their github is here https://github.com/fpga-logi/logi-apps
I plan to make an image of the SD card and post it on my github and write a tutorial on how to do this. It took a few nights and lots of head scratching, but I’m happy I got both to work.
Hi
can anyone please tell me what is the maximum throughput for SPI communication i can expect from Raspberry pi 2/3 to any FPGA Daughter card which they have connected as stackup (no-wire).
Hi
I am designing one FPGA based daughter card for raspberry pi 2, in raspberry documentation it is written 125MHz is maximum frequency we can operate for SPI, in your testing…how 48MHz is limit ?
cant we expect more throughput as i am using only stacked connector, no cable will be involved.