- Posts: 972
- Thank you received: 0
Raspberry Pi 4
PCW wrote: The hm2_rpspi driver is RPI specific, but the hm2_spi driver is generic
(it uses the kernel SPI driver) The issue with hm2_spi is that the kernel
driver may or may not be written with real time considerations.
For example on a RPI, the hm2_rpspi driver has considerably better
performance than the hm2_spi driver
It might be worth trying hm2_spi on some random SBCs
What would be the metric to look at to judge the spi performance? Typical latency figures or something else?
Please Log in to join the conversation.
Please Log in to join the conversation.
gtt38 wrote:
blazini36 wrote: How is that going? I might be interested in doing something like this as well but eventually sticking the fpga directly on the PCB. It's just kind of difficult to figure out how to get started with the whole firmware thing. All I've done so far is write some bitfiles for MKSOCFPGA and spun them through the docker build that they have setup to get some firmware spit out.
Sticking on which pcb ? create a RPI hat you mean ? not really good, i already tried with an XC6SLX9 and the pb is the heat. I prefer have a good fan under the RPI4 than an FPGA hat. SLX16 and Artix are BGA package so its difficult to solder by hand.
The Hostmot2 firmware SPI can be ported to every xillinx FPGA younger than XC6, like all XC7 familly including Zync. The port of Hostmot2 on Vivado by Joseph Calderon was only tested in SPI but could work in ETH and PCI (untested).
The pb is that FPGA are expensive. an XC6 is enough for all linuxcnc applications.
The limitation is at 96 I/O maximum it could be very low for some specific applications, maybe we could find a way to reach 128 or 256 user I/O using some new FPGA like ARTIX 35K or 100K, or creating 2x HM2 firmware in a single FPGA if there is enough cells. it could be very easy and with a double SPI communication (SPI0 and SPI1) 2x96 = 192 I/O
More or less a hat for the pi, at least for the time being. Main reason is that I have a few embedded things I want to do that only require specific IO plus some headroom. For example I might need a couple of encoders or a couple of stepgens in a small package. 96 IO wouldn't be an issue if it were a limit though PCW just confirmed it's really not. I'd be sticking to a TQG144 package or similar, I can likely solder a BGA but I'm not thrilled about not being able to physically verify solder joints.
Sticking with Xilinx Spartan6's for this, no need to complicate it with something else. I did previously work with a DE10 nano on MK which was a port to Intel/Alterra MaxV socfpga. HM2 and such was already sorted with that so other than altering bitfiles I didn't have to mess with alot.
I might have to pick your brain on how to get started with just getting hm2 setup and running on the fpga. I ordered a couple of these to get started:
numato.com/product/mimas-spartan-6-fpga-development-board
Would probably be a similar target fpga
Please Log in to join the conversation.
I’m still testing on a XC7A35T it works great, and Vivado is much better than ISE.
I’m thinking to test a PCIe implementation with Logicore IP
www.xilinx.com/support/documentation/ip_...054-7series-pcie.pdf
And maybe an Ethernet too, still with logicore. Everything could be integrated in the FPGA.
If you’re looking for an advice to buy a good board I have more than 20 FPGA different boards and the best one for the price is this one :
a.aliexpress.com/_BThu9V
you can have 96i/o in 3.3v for only 15€
I can share with you a bitfile for this one, the slx25 cost 5 bucks more and works too...
Please Log in to join the conversation.
any help appreciated?
Please Log in to join the conversation.
- tommylight
-
- Away
- Administrator
-
- Posts: 22012
- Thank you received: 3
Please Log in to join the conversation.
Or am I missing something? I'm just getting back into trying to get my mill running after a couple of years in storage, and the PC and controller board died so everything is new and I'm starting from scratch with a rPI (which works ok if I cheat and ground the enable pin separately!)
Please Log in to join the conversation.
I am currently in the middle of a CNC Mill build and I have nearly decided to go with a Raspberry Pi 4 and a Mesa FPGA board to drive the machine. However, even after reading many pages in this thread, I am not sure what the best choice would be in terms of Mesa cards. I was looking at the 7C80 and checking out other ethernet-based cards but I am not sure what the best choices are for the RPi4 in terms of reliability. After watching some videos of people using the RPi4 on their machine (particular this channel www.youtube.com/user/samcoinc/videos ), it seems there are occasional packet drops/issues with his ethernet Mesa card. Is the 7C80 working well for the RPi4? Overall the RPi4 seems to do really well but any advice on avoiding pitfalls with the board and LinuxCNC would be great!
Please Log in to join the conversation.
- helioz2000
- Offline
- New Member
-
- Posts: 16
- Thank you received: 0
My conversion is now in operation and I'm working on PID loops to use linear encoders on all axis.
You can see some photos and more info in this thread:
forum.linuxcnc.org/27-driver-boards/3889...-pi-4-with-mesa-7c81
The performance of this combination is outstanding as all time critical machine tasks are performed by the FPGA module which is using the super fast SPI interface on the Pi.
My machine is just a basic 3 axis mill, so nothing too demanding, but the the combination of hardware is perfect for the task and has not misbehaved at all, that is not a single failure or miss of anything.
If I was doing another conversion I'd use Pi+7C81+7i85S but I would most likely add another Mesa card to provide a few digital In/Out.
Here is a thread showing how I've added digital In/Out in my current conversion:
forum.linuxcnc.org/27-driver-boards/3882...-as-mesa-anything-io
Please Log in to join the conversation.
Right now I'm just trying to figure out how to power the board and my RPi4. PCW told me that it is possible to power the Mesa card with the Pi instead of the other way around. I'm also a noob so I'm just trying to figure out how to optimize my Pi and to get the Mesa cards working. I got a 7i76 along with my 7c81.
Please Log in to join the conversation.
