LinuxCNC (EMC2) on Puppy
Posted: Tue 09 Sep 2014, 14:20
It's been a long time away from the forum for me, though Puppy is in use every day here by me and my family for everything. I once put together a puplet called MediPup, long since surpassed by the efforts of others!
Anyway what brings me back is a recent attempt to run a CNC mill with LinuxCNC (formerly EMC). This program is available as a LiveCD with either Ubuntu or Debian.
Unfortunately the computer I have regularly used for running the mill in the past is an ancient 1998 Thinkpad 600E with a Pentium 3 (hacked in). It was running TurboCNC running in old MSDOS. It happily dual booted into Puppy 412, and later 431, and ran at good speed. Win 98SE is also aborad, though seldom booted.
This computer works fine with older software. In tests it has surprisingly low latency, and it has a parallel port -- both good characteristics for a CNC control computer.
So anyway I download a slightly older version of LinuxCNC on Ubuntu 8.04LTC, and I'm back to my Linux beginnings years ago before switching to Puppy -- struggling with Ubuntu's bloat and slow speed and hiding of essential user controls, tendency to want to rewrite partitions if installed, etc. etc. The OS and CNC app take up the entire LiveCD and the whole thing just takes forever to come up.
I start thinking about Puppy, and how I wish it was the background OS instead of Ubuntu. I install Ubuntu/LinuxCNC to HD hoping the speed issues will be improved. They are somewhat, but not enough. Opening a directory or file takes forever -- everything seems sluggish. The LinuxCNC program runs fine, and I am actually able to run my mill and cut some test parts with it. But the program is surrounded by the brown sludge of this OS. I hate it. And know it doesn't have to be that way -- hell Puppy 431 on this computer runs rings around it. Even Win 98 does!
Later versions of LinuxCNC are packaged on Debian -- but are so bloated that the LiveCD is now 1.1 gigs -- it's got to be a DVD not a CD, or boot from a thumb drive (not an option with the old Thinkpad's BIOS).
Even the Ububtu 8.04 LinuxCNC LiveCD has the entire OpenOffice Suite bundled in it, as well as GIMP, Firefox, and a bunch of other unecessary stuff. Heck this is just supposed to be a CNC controller, not an all purpose desktop.
Just seems to me that Puppy would be an ideal match for LinuxCNC -- especially because it runs on older computers. LinuxCNC NEEDS older computers, because it requires a real parallel port, and multiprocessor technology tends to hurt latency -- which is more important than processing speed.
So I've been looking here and on the LinuxCNC website to try to see if it's been done, and if not how could it be made to work.
There are several threads on this forum with tantalizing bits, but I haven't yet found a working puppy, not a simulator, running EMC or LinuxCNC.
Some piecemeal facts I've found so far:
LinuxCNC needs an RTAI real time kernel.
There is an Ubuntu script for installing LinuxCNC on a working 8.04 or 10.04 system.
I believe there is one for Debian also.
There is, or was an ARCH LinuxCNC distribution.
There was a puplet with RTAI kernel called Studio Puppy -- but it seems to be unavailable.
There was a puppy version of EMC without the real time kernel that worked in simulation mode only.
Okay, can we do this thing?
UPDATE 11-05-14:
In response, forum user saintless created puppy-like stripped down versions of Ubuntu and Debian with LinuxCNC aboard, much smaller than the official LinuxCNC versions, which will fit comfortably on Live CDs (instead of a DVD). Linked here:
http://murga-linux.com/puppy/viewtopic. ... 024#800024
and here:
http://www.murga-linux.com/puppy/viewto ... 383#799383
These both seem to run better for me and faster on older hardware than the official LinuxCNC releases. A great thank you to saintless for putting a lot of hard work into developing these!
We still don't have a true Puppy version of LinuxCNC, and I still hold out hope that some day I'll be cutting parts in my mill with one. But in the meantime, these 2 LiveCD distros should solve a lot of problems for a lot of people looking for a simpler, faster and less resource intensive LinuxCNC -- with many features familiar to Puppy users..
Anyway what brings me back is a recent attempt to run a CNC mill with LinuxCNC (formerly EMC). This program is available as a LiveCD with either Ubuntu or Debian.
Unfortunately the computer I have regularly used for running the mill in the past is an ancient 1998 Thinkpad 600E with a Pentium 3 (hacked in). It was running TurboCNC running in old MSDOS. It happily dual booted into Puppy 412, and later 431, and ran at good speed. Win 98SE is also aborad, though seldom booted.
This computer works fine with older software. In tests it has surprisingly low latency, and it has a parallel port -- both good characteristics for a CNC control computer.
So anyway I download a slightly older version of LinuxCNC on Ubuntu 8.04LTC, and I'm back to my Linux beginnings years ago before switching to Puppy -- struggling with Ubuntu's bloat and slow speed and hiding of essential user controls, tendency to want to rewrite partitions if installed, etc. etc. The OS and CNC app take up the entire LiveCD and the whole thing just takes forever to come up.
I start thinking about Puppy, and how I wish it was the background OS instead of Ubuntu. I install Ubuntu/LinuxCNC to HD hoping the speed issues will be improved. They are somewhat, but not enough. Opening a directory or file takes forever -- everything seems sluggish. The LinuxCNC program runs fine, and I am actually able to run my mill and cut some test parts with it. But the program is surrounded by the brown sludge of this OS. I hate it. And know it doesn't have to be that way -- hell Puppy 431 on this computer runs rings around it. Even Win 98 does!
Later versions of LinuxCNC are packaged on Debian -- but are so bloated that the LiveCD is now 1.1 gigs -- it's got to be a DVD not a CD, or boot from a thumb drive (not an option with the old Thinkpad's BIOS).
Even the Ububtu 8.04 LinuxCNC LiveCD has the entire OpenOffice Suite bundled in it, as well as GIMP, Firefox, and a bunch of other unecessary stuff. Heck this is just supposed to be a CNC controller, not an all purpose desktop.
Just seems to me that Puppy would be an ideal match for LinuxCNC -- especially because it runs on older computers. LinuxCNC NEEDS older computers, because it requires a real parallel port, and multiprocessor technology tends to hurt latency -- which is more important than processing speed.
So I've been looking here and on the LinuxCNC website to try to see if it's been done, and if not how could it be made to work.
There are several threads on this forum with tantalizing bits, but I haven't yet found a working puppy, not a simulator, running EMC or LinuxCNC.
Some piecemeal facts I've found so far:
LinuxCNC needs an RTAI real time kernel.
There is an Ubuntu script for installing LinuxCNC on a working 8.04 or 10.04 system.
I believe there is one for Debian also.
There is, or was an ARCH LinuxCNC distribution.
There was a puplet with RTAI kernel called Studio Puppy -- but it seems to be unavailable.
There was a puppy version of EMC without the real time kernel that worked in simulation mode only.
Okay, can we do this thing?
UPDATE 11-05-14:
In response, forum user saintless created puppy-like stripped down versions of Ubuntu and Debian with LinuxCNC aboard, much smaller than the official LinuxCNC versions, which will fit comfortably on Live CDs (instead of a DVD). Linked here:
http://murga-linux.com/puppy/viewtopic. ... 024#800024
and here:
http://www.murga-linux.com/puppy/viewto ... 383#799383
These both seem to run better for me and faster on older hardware than the official LinuxCNC releases. A great thank you to saintless for putting a lot of hard work into developing these!
We still don't have a true Puppy version of LinuxCNC, and I still hold out hope that some day I'll be cutting parts in my mill with one. But in the meantime, these 2 LiveCD distros should solve a lot of problems for a lot of people looking for a simpler, faster and less resource intensive LinuxCNC -- with many features familiar to Puppy users..