AXIS: EMC2 Blog
Blog
About AXIS
Get EMC2
Documentation
Translations
ETCH CNC
Developer Homepages:
Chris Radek
Jeff Epler
Related sites:
linuxcnc.org
linuxcnc wiki

« Image-to-gcode improvements: roughing passes, cutting arcs | Newest entries | EMC2 on x86_64 with SMP (UPDATED) »

On a lark, I decided to see if I could run emc2 on a 64-bit machine and the realtime kernel. After less than 5 hours work, it ran---I cut a thread in the air on the NIST lathe. It's not ready for prime time, but if you want to get on the bleeding edge of development, get out your amd64 machines and start hacking. Update: Now the CVS TRUNK of emc2 compiles on x86-64/rtai machines.

Here's a summary of what I did, along with files that should help you recreate the setup on your own system:

  • switched from "nvidia" to "vesa" display X.org display driver out of superstition
  • Downloaded rtai "magma" CVS and linux kernel source 2.6.20.12
  • patched kernel with hal-linux-2.6.20-x86_64-1.0-08.patch
  • installed kernel and remembered to mkinitramfs and update-grub (the second try anyway)
  • configured rtai with ./configure --enable-shm --enable-sched-up --enable-sched-lxrt --enable-fpu --enable-compat --disable-leds

To my surprise, emc "just worked" at this point, right up to running the nist-lathe configuration and moving motors. The rtai "kern/latency" test gave encouraging numbers as well---"ovl max" of under 7000ns after a run of several minutes. However, I did get an "unexpected realtime delay" report:

In recent history there were
2009142, 1908, 2010087, 2008173, and 2009117
elapsed clocks between calls to the motion controller.
This time, there were 2007608 which is so anomalously
large that it probably signifies a problem with your
realtime configuration.  For the rest of this run of
EMC, this message will be suppressed.
Yes, that's correct, the anomalous number was much smaller than the others. Update: the bug that caused this is now fixed in the CVS version of emc. Now my system runs the nist-lathe configuration nicely with a base-period of 15000 ns.

So that brings me to the list of items that need further study before this system is pronounced "ready"--don't hold your breath for official packages.

  • userspace/kernel header mismatches
  • kernel space floating point
  • the latency warning
  • testing on more systems
  • kernel and rtai packages for ubuntu
  • maybe a bogon with scoping a u32 value

Files currently attached to this page:

kernel.config42.5kB
emc2-amd64-rev2.patch8.7kB



Entry first conceived on 31 May 2007, 1:01 UTC, last modified on 18 June 2007, 12:17 UTC



AXIS website Copyright © 2004, 2005, 2006, 2007, 2008 Jeff Epler
AXIS software Copyright © 2004, 2005, 2006, 2007, 2008 Jeff Epler and Chris Radek
[æ]