Yes, a PC is required to run the myCNC software, which will be used to control your myCNC board. You can use a full industrial PC (such as the one provided in some controller kits in our Shop), or you can use a small single board computer, such as a Raspberry Pi, an Odroid or a TinkerBoard. The links to download the myCNC software are available at our Downloads page.
Yes, a myCNC controller is needed to use most of the functions of the myCNC software. The main software itself is free and can be downloaded from our Downloads page. Please note that certain specialized software add-ons (such as G-code correction via DXF import with markers) are available as separate licenses which do have to be purchased in addition to the controller.
The software can be downloaded and tested in Simulation mode, designed to help the user get a feel for the software layout and functions. However, the Simulation mode is highly restrictive, with most features not accessible without a myCNC controller.
Yes, the software can be extensively customized, both visually and under-the-hood (via custom PLC/macro commands). Client logos can be added to the main software screen, and the screens themselves can be customized via the XML configuration files which are open and available to every user. Read more about XML file editing here: Screen Editing and Configuration
The myCNC team also undertakes customization projects. The exact price depends on the size of the customization project and the necessary features. For more information, please contact us at firstname.lastname@example.org.
The myCNC team provides technical support for our controllers and the CNC systems utilizing them. Our technical support can be broadly separated into two categories:
1) Free technical support
Free technical support includes things that are largely development-free, for example answering general setup questions such as:
How do I set up the network settings?
How do I use the probe sensor window?
It also deals with solving general user errors and issues which do not include a large amount of programming, such as:
Help in finding errors within your G-code program
General recommendations for the selection of drives, sensors, etc (provided the team has experience with the particular configuration you are trying to implement)
2) Paid technical support
Paid technical support deals with more complex tasks for which it is difficult to give a standard generalized answer, and may include a large amount of programming on the part of the myCNC team. This will often involve the myCNC team remotely connecting to your computer/machine to work directly with your hardware.
Paid technical support typically covers things such as:
Developing custom PLC procedures that have not been previously implemented in myCNC, or finding and identifying errors in your custom PLC procedures
Step-by-step guidance on setting up the machine from scratch (includes a remote connection to your workstation).
Help with creation of custom profiles and profile screens
The myCNC-ET7 controller comes with one hour of paid technical support bundled with your purchase. The myCNC-ET10 comes bundled with two hours of paid technical support.
For requesting technical support, or for more information on pricing, please use the Contact Us page form on our main website, or email us at email@example.com.
What are the login credentials for a computer running a custom Linux build?
The login credentials for all Linux computers using the myCNC Ubuntu MATE installation are the following:
The files that you are attempting to load must be located in folders that are specified in the Settings > Config > Preferences > Common fields for NC code folders. If a folder that you would like to load your files from is missing, add it on a new line and press the Save Configuration button:
If a folder is not listed in the NC code folders list (or is not within one of the folders listed), you will not be able to open files from it within the myCNC application.
The following standard folders are used on Linux (Ubuntu MATE) installations:
To load file from your USB drive, you can add the following folder to the NC code folders list:
The ~ symbol allows you to not write out the whole /home/USERNAME/DNC line, however the full filepath can also be used.
The following standard folders are used on Windows installations:
After you have listed the folders that you would like to have access to, you can open files using the Open G-code and Open DXF buttons from the main software screen:
There are a couple ways to update a profile which are described in the following manual: Update MyCNC Profile
Profiles are typically updated to obtain new PLC procedures, macros, and visual enhancements. Profile updates and software updates are separate actions.
It is not recommend to select to update the Variables, if updating the profile through the myCNC application, or to overwrite the cnc-variables.xml file inside your profile folder if performing a manual update. The variables file contains user settings which would be reset to a default state should a user overwrite this file - that is only recommended if a reset is necessary during the initial setup process.
If updating manually, many users also prefer to keep their PLC folder intact to make sure any changes unique to their setups do not get overwritten by the default configuration.
The settings in the Config panel are typically edited by the system integrator only when setting up the machine. After completing the setup process, or in cases when the settings within the Config tab are changed, it is recommended to restart the program. All changes to the settings available to the operator (from the main screen / via User Settings) take effect immediately without rebooting.
The rollback process is sometimes necessary to test things on an older software version, or in cases where you would like to go back to the stable myCNC version from our test release. This process is described in the following Troubleshoot manual: Rollback to a previous version of myCNC software
A video on this page goes through the steps to restore a profile in case you want to roll back to it: How to restore profiles
Note that restoring a profile and restoring the myCNC application are two different processes. The profile contains your individual program settings, as well as any visual changes that you might have done to the myCNC application, as opposed to the myCNC program itself which will contain key functionality and features.
The default names for the I/O ports that can later be used in your Hardware and Software PLCs can be set up in the pins.h file (located by heading into Settings → Config → PLC → Hardware PLC → pins.h). A video on the pins.h file is available here:
There are few settings to control GUI screen size, position and window attributes
Full screen - switch myCNC main window to full-screen mode (without Window title and borders)
Maximize screen - switch myCNC window to Desktop Size but keep windows title and border
Fixed screen size - set size in pixels for myCNC main screen window
Fixed screen position - move a left-top point of the myCNC main window to the given position
It's supposed this setting should work the same way for all OS and Window Managers like
Windows 7/8/10, Linux KDE, XFCE or Mate Window manager. Unfortunately, window behaviour
DOES depend on OS/Window Manager. You might need to play with these settings to find a view
suitable for your needs.
NOTE: This is an experimental feature, so not all functions might work as expected. It is not recommended to press the Save button in experimental “Edit XML config item” window under any circumstances.
For example, we might want to check how the parking buttons work.
Find the button you need to check and press the right mouse button on it
Edit XML config item experimental dialog will be shown
Find a line with the “action” attribute - this line indicates what action will be run when the button is pressed. In this case, the button will run the M305 macro.
For on-screen elements other then buttons, the process is similar. For example, if we would like to check how the “Lift Z” element is displayed in the parking widget:
Go to Config > Advanced > UI Settings
Enable Allow to edit cnc-screen.xml checkbox, Press “Save” button
Find the on-screen element you would like to check and press the right mouse button on it
Edit XML config item experimental dialog will be shown.
Find a line with attribute “name” and check what value this on-screen element displays. For example from the screenshot, the on-screen element will display the value of the Global Variable #7020 (which is used as the Lift Z value in the “Go to Parking Position” macro M305).
In an event of an emergency stop or failure of a mill machine running a program file, it is often useful to be able to open the file back up afterwards and be able to continue from the middle of the program without having to go through all the steps again. This is often complicated by the fact that a large program file consists of many lines of code, making it difficult to easily navigate to the place where the cutting process stopped initially. In order to facilitate finding this spot, the Run from Here process is put in place in myCNC software.
The Run from Here method is described in the following section of the myCNC Screen manual: manual link
If there doesn't seem to be any connection between the controller and the computer running the myCNC software after the computer and the controller have been connected by an Ethernet cable, check that the controller IP address has been specified correctly in the Settings > Config > Network > Controller IP address field. If that address is specified correctly, go through the No Connection troubleshooting manuals for your system: No Connection between myCNC controller and a Host computer - these manuals will indicate how to set a static IP address on your computer to be in the same subnetwork as your controller. Note that if your WiFi is in the same subnetwork, it might lead to issues with computer-controller communication - try disabling the WiFi if the issues persist.
Check the _HANDLER_INIT and _HANDLER_EXIT Software PLCs for the starting and closing commands respectively (specifically, the portset and portclr commands:
The portset command activates a certain port (for example, portset(3) will activate output #3), while the portclr command clears the specified port (portclr(3) will turn off output #3). In order to disable these commands, either delete them from the relevant Software PLCs, or comment them out by putting two forward slashes in front of the commands. Don't forget to press the Save All and Build All buttons to make sure that the changes take effect.
If after the motors have been connected, the machine isn't moving despite the on-screen coordinates changing while pressing the jog keys, the pulse width might be set up incorrectly, causing the motors to not register the signals sent from the controller. The exact pulse width is different for every motor, so it is not possible to preset a default configuration which will suit every machine. Check the guide on setting up the pulse width in this manual: MyCNC Pulse Width Setup
Typically, if using a stepper motor, a higher setting number than the default should be chosen in order to allow the machine to register the pulses sent to it.
NOTE: The first value in the Pulse Width field in the myCNC settings refers to the first four movement directions for the controller (for example, X+, X-, Y+ and Y-), while the second value refers to the last two movement directions (for example, Z+ and Z-). Typically, these fields should be set to the same value, however they can be different if different drivers are used on the last two axes (motors 5 and 6) as compared to motors 1 through 4.
On modern servo drivers, the motor encoder connects directly to the servo driver and does not connect to the myCNC controller. Therefore, the encoder system, whether the encoder is absolute or incremental, the encoder resolution, etc, do not matter for the controller itself.
The servo driver has outputs for emulation of the incremental encoder ABZ. It is these signals that should be sent to the controller to obtain information about the rotor's position.
Within myCNC, the resolution (number of pulses per revolution) is usually a parameter of the servo driver that can be adjusted, and therefore is not directly related to the physical resolution of the actual encoder.
If using an ET10 board, check that it was assembled correctly, using the images in this forum thread as reference: Forum Link. A common mistake with the ET10 boards is not aligning the board properly before putting them back together, resulting in a dysfunctional assembly.
If nothing comes up, write to us using our Contact Us page. If the product is under warranty, we will replace it.
When entering the Parts Library, you may be greeted with an empty page, or a page that's missing some parts that are supposed to be there:
To remedy this, head into Settings > Config > Preferences > Shape Library Settings and make sure that the necessary libraries are selected by clicking the checkmark field. This setting is present to allow the operator to disregard all the part libraries which are not necessary for their particular machine:
Save and reload the application, and the Parts Library should be back to normal:
ClearPath drivers will not out of the box unless using the line driver to 5V converters. Here is the official explanation from the ClearPath website as to why the ClearPath drivers are not directly compatible:
Effectively, a converter board is necessary to create a steady 5V signal which the ClearPath driver will be able to register. These line driver to 5V converter boards are available as part of certain kits on the myCNC Online Shop.
Check that the THC has been enabled in Settings > Config > Technology > THC
Check that the ADC channel number has been specified correctly for THC feedback
Check that the reference voltage has been chosen correctly
In Settings > Config > Technology > THC, check that the Alarm Arc Voltage Difference and Alarm Arc Voltage Rise aren't set to a value that's too low - in cases where the difference between reference and measured voltage is too great, a small value of the Alarm Arc Voltage Difference will prevent the THC system from starting. Set the value to 1000 to temporarily disable this feature.
Check that the tangential knife is turned on in the settings. Alternatively, check that the knife is assigned the correct tool number in the DXF file import window - the tangential cutting control turns on for specific tools such as knife, half-knife and creasing wheel, and turns off for tools such as marker and camera. If an incorrect tool is assigned to a certain path during the DXF import, that tool might be one of the ones which do not require tangential cutting control to be enabled.
The M6 macro contains the commands to turn the tangential cutting function on and off. It is possible to check which tools are currently assigned to use tangential cutting in case that's necessary:
The macro to remove whole turns from the rotation axis prior to beginning movement is described in depth here: Rotate A axis to 0 position. The manual described the reset for the A axis, however the C axis reset when using a tangential knife is similar (both are rotating axes which can have their full 360 degree turns removed automatically prior to the program start to save the time which would have been spent rewinding the axis back to the 0 position).
There are 2 version of command “SetScale” in the Server API to change scale of given g-code file.
For both commands g-code program should be loaded to myCNC by runnig command “ProgramFileOpen” -
1) Command “SetScale”.
Format: SetScale <scale>
(myCNC software will open g-code file defined by command “ProgramFileOpen”, scale it to factor 3.5 and load result to myCNC memory).
If “SetScale” command used several times, previous “scale” ratios are ignored. myCNC software uses original g-code file and the last “scale” ratio to generate scaled program.
For some applications “scale” ratio should be used together with g-codes rotation. In this case commands “SetScale++” and “SetRotationAngle++” should be used.
When running “SetScale++” command “scale” ratio is latched to 'Scale&Rotation“ structure. If running “SetRotationAngle++” myCNC software loads g-code file, given with “ProgramFileOpen” commands and perform rotation and scale with given Angle and Scale.