Small/single-board computers capable of running LinuxCNC?

More
22 Sep 2018 07:15 #117862 by CBloom
Hello, I'm new to this forum, so I'm sorry if this has already been asked, or if I'm asking it in the wrong place.

I am looking to convert a very small, portable desktop mill to LinuxCNC. I would like to use a small computer that is built into the machine.

I was thinking of the Raspberry Pi, but I hear it's not powerful enough. Are there any very small (preferably single board) computers that are capable of running LinuxCNC smoothly? I'm looking for something similar in size to the Raspberry Pi (or slightly larger), and under $200.
The following user(s) said Thank You: Grotius

Please Log in or Create an account to join the conversation.

More
22 Sep 2018 20:36 #117876 by tommylight
Linuxcnc can run on RPI3, with xenomai kernel although i never tested it, but i have a RPI3 with machinekit in it that is quite usable for hobby machines, granted i am using it with PIDICNC hardware so the step generation is done on other hardware.
RPI has a lot of power saving features built in and that is no good for latency, that is the main reason why it is not used for machine control.
As a side note, for something that is sold in the millions, RPI3 is very poor at clear and concise tutorials, so it will take a bit of effort to get it working.
The following user(s) said Thank You: Grotius

Please Log in or Create an account to join the conversation.

More
22 Sep 2018 22:25 #117882 by PCW
MachineKit running on a BeagleBone is probably the most minimal hardware way of running ( something very close to ) LinuxCNC with step/dir drives, since MachineKit supports the PRU for step generation and LinuxCNC currently does not.

You can run LinuxCNC on a RPI but typically need additional hardware to support step/dir drives. There are some projects that use the RPI3s DMA to generate faster steps but I'm not sure of the status of these currently.

One basic issue with both the RPI and the Beaglebone and LinuxCNC/Machinekit is that they are quite slow and resource constrained relative to most X86 hosts so don't expect complex graphics to be smooth (or not run out of memory). I think MachineKit is further along on running only the realtime part of the machine control on the SBC and user interface on a more capable machine, but that architecture doesn't really save money or complexity on a minimal system.

For a tiny mill and minimal hardware (and no special features like rigid tapping), you might be better off with GRBL or some other microcontroller based CNC software.
The following user(s) said Thank You: Grotius

Please Log in or Create an account to join the conversation.

More
22 Sep 2018 23:39 - 22 Sep 2018 23:48 #117885 by Grotius
Hi Peter,

since MachineKit supports the PRU for step generation and LinuxCNC currently does not.

If i read this. I think. Can i make a linuxcnc version with PRU possible?

I will have a look how to merge this Machinekit code reverse to Linuxcnc.
In other fact's i see that linuxcnc is behind scedule. This is not a good sign.
Last edit: 22 Sep 2018 23:48 by Grotius.

Please Log in or Create an account to join the conversation.

More
23 Sep 2018 09:48 #117895 by CBloom
Thanks for the response. Are there any small computers that are powerful enough? I'm not very concerned about price, mostly just size. If I can spend 2-3x the price of a beaglebone or RPI, is there anything with good enough specs in a similar form factor?

Please Log in or Create an account to join the conversation.

More
23 Sep 2018 14:00 #117896 by PCW
I think one of the main 'gotchas' with using random SBCs and LinuxCNC is lack of hardware OpenGL support (if the backplot is important to you) and lack of real time I/O These are in addition to the difficulty of building a real time kernel on hardware that has SOC specific patches that have not been mainlined into the Linux kernel.

The advantage of using the Beagle Bone or RPI is that MachineKit and LinuxCNC are known to work on these platforms, slow though they are. Getting LinuxCNC and one of its GUIs to run well on one of the many newer more powerful SBCs is likely more of a project than you may want to undertake.

I suspect the easiest/cheapest current path for using a small SBC and LinuxCNC (or linuxCNC like software) is to use MachineKit on a Beaglebone since it does not require external stepgenerator hardware.

What type of drives are you planning on using?

Please Log in or Create an account to join the conversation.

More
23 Sep 2018 14:07 #117897 by PCW

Hi Peter,

since MachineKit supports the PRU for step generation and LinuxCNC currently does not.

If i read this. I think. Can i make a linuxcnc version with PRU possible?

I will have a look how to merge this Machinekit code reverse to Linuxcnc.
In other fact's i see that linuxcnc is behind scedule. This is not a good sign.


Well LinuxCNC is ahead and behind of MachineKit (MachineKit has not incorporated the Joints Axis branch for example so its gantry support is kludgey but its support of SBCs and remote displays is better) That's what happens when you fork a project...

IMHO forking the project was harmful to both LinuxCNC and MachineKit
The following user(s) said Thank You: Mike_Eitel

Please Log in or Create an account to join the conversation.

More
23 Sep 2018 17:22 #117900 by CBloom
I am not sure what hardware I will be using. I'm new to CNC machining, but am fairly familiar with Linux.

My goal is to convert a friends small CNC mill to something that can be controlled with Linux, so other programs/computers can control/monitor (for example, a cell phone).

I don't know which drives he's using, but I can change them out. Perhaps I will try to find a non-single-board mini pc that is small enough, yet still powerful enough.

Please Log in or Create an account to join the conversation.

More
26 Sep 2018 12:21 #118001 by andypugh
PocketNC ( www.pocketnc.com/ ) uses a Beaglebone and Machinekit, but you need to plug a controlling PC (via USB) to have a GUI and control it.

Some people have had decent results with Intel NUC and an Ethernet Mesa board, but even that might be too bulky.

You could look at UDOO with GRBL running on the Arduino and something other than LinuxCNC running on the x86. (It doesn't make any sense to run GRBL _and_ LinuxCNC, they both do pretty much exactly the same job)

Please Log in or Create an account to join the conversation.

Time to create page: 0.091 seconds
Powered by Kunena Forum