Cnc3Axes machine tool control software

Cnc3Axes is a freeware development software for the control of 3 axis hobbyist machine tools. Cnc3Axes has been designed to interpret a G code (ISO) machining program and to generate the various axis movements at the requested speeds.
Its interface is simple and intuitive.


What does Cnc3Axes

More for pleasure than for the sake of economy, I decided to develop my own control software with the idea to include most of the functions necessary for machining mechanical parts. The main functions are: reading G codes (ISO),the tool correctors, the visualization of the toolpaths, the usual cycles, etc ... 
You can download this software "Cnc3Axes" as well as documentation and some examples of programs.
Operation with control of a machine under Windows 95/98 and XP / 2000 / NT. 
Machine connect to the parallel port. 
Custom port and the inputs / outputs. 
Custom width of the step control pulses (essential with the Visual CNC card). 
Maximum speed with a PC Pentium 133Mz (W98): 3300pas / seconds. 
Maximum speed with a PC Pentium III at 500Mz (W98): 11000pas / seconds. 
Interpretation of programs in standard ISO code (G00, G01, G02, G03, G40, G41, G42, G43, G70, G71, G80, G81, G82, G83, etc.).
WARNING: The users of Cnc3Axes V1.0 must read the "update" section of the documentation or help carefully because the setting of tool length corrections is modified. If you use the tool length correctors, they will only be taken into account after reading a G43 in the ISO program.
Examples of machined parts on my small milling machine with Cnc3Axes.
The software Cnc3Axes is an hobbyist development that can not be released under any circumstances without my written autorization. 
Cnc3Axes can not be sold or used for commercial or industrial usage. 
Cnc3Axes is offered "as is". 
My responsibility can not be engaged in case of material or physical damages. 
The use of machine tools presents risks of injuries and it is essential to put in place all the necessary protections and safety. Cnc3Axes is not designed to perform these functions.


Cnc3Axes is compatible with Windows 95/98 and XP, unfortunately since Windows 7 it can only be used in simulation because direct access to the parallel port is no longer possible even with the PortTalk driver, thank you Microsoft. 
By downloading the installation executable , you will have everything you need for CncAxes of course, but also documentation and drivers for XP. 
Ideally you have to install Cnc3Axes on an old PC with Windows 98 system, in this case you only have to start the installation and then use Cnc3Axes. 
The installer asks for a password that I will provide you on request by the contact form , I do not keep your contact information it's just a way for me to get to know the users, everything is free and unlimited for use and installions. 

Cnc3Axes and Windows XP

If you install Cnc3Axes on a PC with XP system, you also need to install the driver AllowIO contained in the installation directory of Cnc3Axes and set it according to the installation in the launcher file "Go.bat", for this it is necessary help you with Cnc3Axes documentation and the original AllowIO site
If you do not install the driver or if it is not activated or set correctly. 
Or if you run Cnc3Axes directly with Cnc3Axes.exe and not by running the Go.bat launcher, then you will get the following message. 
In this case it is necessary to check your installation of AllowIO.

Cnc3Axes is not

Cnc3Axes is not an open source software, so you do not need to ask me for the source code because I will not send it. 
Cnc3Axes is not CAM software or program generator, it is an interpreter and an axis motion command. 
Cnc3Axes is not design for a professional use.
Cnc3Axes V2.03
Complete install with documentation and drivers.
Cnc3Axes documentation
PDF documentation.
G41 G42 documentation
PDF documentation for tool compensation G code G41 and G42.
See more
PortTalk AllowIO
Driver for Cnc3Axes XP running. Original web site.
Cnc3Axes V2.03
Complete install with documentation
PDF documentation
G41 G42 tool compensation
PDF ocumentation
See more
PortTalk AllowIO
Windows XP driver

The future of Cnc3Axes

Why is Cnc3Axes outdated today

The evolution of computers and Windows operating systems makes that there are now several blocking points for the execution of software like Cnc3Axes. 
First, the operating systems no longer allow direct access to ports without using specific drivers, XP was starting to block and that is why it is necessary to use the AllowIO driver, but from Windows 7 , nothing is more possible with this driver, so Cnc3Axes is no longer able to communicate with the outside from these systems. 
The other major problem is that recent computers no longer have parallel port (LPT) for printers, this port is now aborted in favor of USB. 
The last problem with Windows is that it is not a real-time operating system which greatly disrupts the regularity of the flow of steps, until Windows 98 the system had enough little to manage for that this shared management does not disrupt the flow too much, but from XP it becomes really difficult. 
You've understood, the development of Cnc3Axes is stopped, but that will not prevent me from answering your questions. 

What are the other possibilities

It is very instructive to consult the site CNC Loisirs (in French) which details the different possibilities in its topic Pratique/Pilotage
To my knowledge, there is no freeware software for true real-time management to control windows machines. Mach 3 has this type of management, but it is not free. 
On PC the most successful system is undoubtedly Linux CNC, but in this case it requires a PC dedicated to the machine installed in Linux, this does not pose any installation problem because it is possible to download installation live CDs including Linux, the real-time system and LinuxCNC ready to be installed as for any operating system. In the absence of a parallel port, it will be necessary to buy and install an interface board such as MESA. 
The other hypothesis is to postpone real-time management to a specific board for machine control, in this case the board is connected to the PC by USB and the computer plays only the role of human-machine interface (HMI). ). There are different systems and some are free such as IPL5X or GRBL (Arduino). 
The last hypothesis is not to use a conventional computer, but an embedded computer board like a Raspberry or a Beaglebone. These cards have a lot of input outputs that simplify the communication with the machine, they are real small computers on which it is possible to install embedded Linux.

What choice I made

After spending a lot of time testing in close collaboration with Thierry a friend of Genèvre also passionate, we have eliminated the assumptions IPL5X and GRBL which although very powerful and free did not meet our specifications for mechanical applications. In addition, these boards require the development of an interface software for the PC. I had considered and even started the development of such an application for IPL5X, but a better idea has appeared. 
So we chose a Beaglebone Black single board computer set installed with Linux and MachineKit (LinuxCNC clone for ARM processor). 
This configuration based on LinuxCNC can fully meet our specifications even if the Beaglebone Black card is less powerful than a recent PC it is still eficient to control 2 to 5 axes. 
In 2018, this new project is underway and is the subject of a specific page on this site: LINUXCNC CONSOLE

See more
PortTalk AllowIO
Driver for Cnc3Axes XP running. Original web site.
Carte IPL5X
Interpolator board based on a 18F4550 peak in USB connection with a PC.
Open source interpolator project implemented on an Arduino Uno or Mega board.
Linux CNC
Fully parameterizable, free and open source machine control environment in Linux. 
The top of hobby CNC control.
Derived from LinuxCNC, Machinekit uses the same base but is adapted to ARM board and embedded systems such as the Beaglebone.
LinuxCNC console
Standalone control panel  design with touch screen and Beaglebone Black single board computer, runs with LinuxCNC.
See more
PortTalk AllowIO
Windows XP driver
Carte IPL5X
Interpolator board 18F4550
Interpolator on Arduino
Linux CNC
CNC controller on Linux
CNC controller for embedded LinuxCNC
LinuxCNC console
Standalone control panel
Made with OpenElement
Date mise à jour  
Technical hobbies
Carnets JLS
Top page