[Home]EmcVersion2

LinuxCNCKnowledgeBase | RecentChanges | PageIndex | Preferences | LinuxCNC.org

What is EMC2?

EMC2 is software that runs on Linux, on most standard PCs, that can interpret G-code and run a CNC machine. It was originally developed on a milling machine, but support was added for lathes and many other types of machine. It can be used with mills, lathes, plasma cutters, routers, robots, and so on.

EMC2 vs EMC1

EMC2 is an effort currently underway to simplify, organize, and extend the original EMC software in order to make it more developer friendly. It got under way after the 2003 EMC meetings where the difficulty in understanding and modifying the original version of EMC was a major topic of discussion.

EMC2 is actively developed, so if you want to try the latest features you should run Head?. If you just want to make parts, you should run the latest Released version.

What is different about EMC2?

The RCSlib (Real-time Control System) was replaced with libNML (Neutral Messaging Language) which is a pruned version with just the functionality needed to support the NML communications needed by EMC. The new libNML is part of the EMC2 code tree so it is no longer necessary to compile or include the original RCSlib. Some recent discussion on the IRC channel has lead to ideas as to how, in an ideal world we would implement the messaging layer within EMC2 ... as ideas form they are documented on the Emc2MessagingLayer page.

Other parts of the code have been pruned somewhat to remove abandoned, non-Linux, platforms (Windows-NT and Sun-OS) and code with licensing restrictions incompatible with the open source nature of the project.

The interface to the control hardware has been greatly reorganized and simplified by the introduction of a Hardware Abstraction Layer (HAL).

Documentation of concepts and code are being given much greater attention so that new developers can "come on-line" with much less effort. Many of the goals set at ProgrammerDecisions Fest 2005 have been met.

GPL license terms have been applied to the newly derived code.

There are Documents available online in PDF and HTML format. Go to the www.LinuxCNC.org homepage and click Documents, or just click here: [[www.LinuxCNC.org Documents]]


LinuxCNCKnowledgeBase | RecentChanges | PageIndex | Preferences | LinuxCNC.org
This page is read-only. Follow the BasicSteps to edit pages. | View other revisions
Last edited June 21, 2011 8:59 am by KimK (diff)
Search:
Published under a Creative Commons License