CAMotics Online

1 Getting started with CAMotics Online

1.1 What CAMotics Online is

CAMotics Online is a CNC simulator for milling. It operates in your web browser. You do not install software.

You write or upload programs in G-code or in TPLang. TPLang (Tool Path Language) is JavaScript with functions that make toolpaths. For the languages, refer to TPLang and G-code.

The server does the work. It runs your TPL programs, reads the G-code and makes the toolpath. It also simulates the cut and makes the result surface. Your browser shows the toolpath and the result surface in a 3D view.

The work is in two steps:

  • Update the toolpath. The server makes the toolpath from your programs. This job has a low cost.
  • Simulate. The server cuts a virtual workpiece with the toolpath. This job uses credits.

The settings of a project are the same as the settings in a .camotics file of the CAMotics desktop app. You can move projects between CAMotics Online and the desktop app.

1.2 Use this manual

To open the manual beside the editor, click Help › Help or push F1. Push F1 again to close it.

The manual is also available as a full page at /docs. This page opens in a new browser tab.

For the keys of the app, refer to Keyboard.

1.3 Your first project

This procedure makes a project, gets a program, makes the toolpath, simulates it and plays it back.

  1. Go to the project list.
  2. Click New project.
  3. Type a name for the project.
  4. Click OK. The project opens.
  5. Get a program. Do one of these:
    • Click File › New File…, type a name such as part.nc, then type G-code in the editor.
    • Click File › Add File… and select a G-code or TPL file on your computer.
    • Click File › Examples and select an example. The example opens as a new project.
  6. Push Ctrl+S to save all files.
  7. Look at the Toolpath section of the run panel. If Run on save is on, the toolpath updates automatically.
  8. If the toolpath did not update, click Run toolpath or Update toolpath.
  9. In the Simulate section, set the resolution to Medium.
  10. Read the estimate of credits and time.
  11. Click Simulate.
  12. When the job is Done, click Play below the 3D view.

1.4 Projects

A project holds:

  • Files. These are your programs (G-code and TPL) and support files, such as DXF or STL files that a TPL program reads.
  • Settings. These are the settings of a desktop .camotics file: the units, the tool table, the workpiece, the resolution, the machine and the list of programs to run.
  • Runs. These are the toolpath jobs and simulate jobs that you started, with their results.

The app saves the settings automatically a short time after each change. The status at the top of the page shows Settings changed, Saving settings…, Settings saved or Settings not saved.

1.4.1 The project list

The project list shows your projects, the last changed project first. Each line shows the name and the size of the project.

To open a project, click its name. To go to the project list from a project, click File › Open Project… or push Ctrl+O.

1.4.2 Make a project

  1. Click New project in the project list, or click File › New Project… in a project.
  2. Type a name.
  3. Click OK.

A new project has metric units, one tool (a cylindrical tool of 3.175 mm diameter), an automatic workpiece with a margin of 5 % and no files.

1.4.3 Delete a project

  1. Go to the project list.
  2. Click ✕ on the line of the project.
  3. Click Delete.

1.4.4 Import a .camotics file

You can use a project from the CAMotics desktop app.

  1. Open a project. You can use a new, empty project.
  2. Click File › Import .camotics….
  3. Select the .camotics file and the program files that it uses. You can select more than one file.

The settings in the .camotics file replace the units, tools, workpiece and file list of the project. The app adds the other files to the project. If the .camotics file lists files that you did not select, the app shows the names of the missing files. Add them before you run the project.

When you use File › Add File… and one of the files is a .camotics file, the app asks if it must use the settings of that file. Click Replace settings to use them, or Keep current to keep the current settings.

1.4.5 Export a .camotics file

To save the settings as a .camotics file on your computer, click File › Save Project As .camotics or push Ctrl+Shift+S. The file contains the settings only. To get the programs, download each file.

You can also click Tools › Export… (Ctrl+E) and then click Project (.camotics).

1.4.6 Read-only and guest accounts

A read-only account can open projects, look at results, download files and delete files and projects. It cannot save, upload, make projects or run jobs. A notice at the top of the page tells you why the account is read-only. One cause is a subscription that ended while your files use more than the storage of the free plan.

A guest account lets you try CAMotics Online without an account. A guest can update the toolpath but cannot simulate. A notice at the top of the page shows the date when the server deletes the guest work. Sign in before that date to keep it.

1.5 Files

The Files tab shows the files of the project. A ● in front of a name shows that the file has changes that you did not save.

1.5.1 File types

TypeExtensionsIn the editor
G-code program.nc, .ngc, .gc, .gcode, .tap, .cncYes
TPL program.tpl, .jsYes
Support fileAll other extensions, such as .dxf and .stlNo

A support file has no checkbox. A TPL program can read it. When you open a support file, the app shows a Download button.

A file name must start with a letter or a digit. The other characters can be letters, digits, -, _ and .. The maximum length is 128 characters.

1.5.2 Programs and the run order

The checkbox in front of a program tells the server to run that program. The server runs the selected programs in the order of the list. This list is the file list of the .camotics settings.

  • To add a program to the list, select its checkbox.
  • To remove a program from the list, clear its checkbox. The file stays in the project.
  • To change the order, click ▲ (Run earlier) or ▼ (Run later). These buttons show when two or more programs are selected.

When you add a program with File › Add File…, the app selects it. When you make a program with File › New File…, the app selects it only if no other program is selected.

The Generated list shows the G-code that your TPL programs made in the last toolpath job. You can open this G-code, but you cannot change it. To keep it, use File › Download File or Tools › Export….

1.5.3 Commands for files

All of these commands are in the File menu.

CommandWhat it does
New File…Makes an empty file with the name that you type.
Add File…Uploads one or more files from your computer.
Save All (Ctrl+S)Saves all changed files and the settings.
Save FileSaves the file in the editor.
Save File As…Saves the file in the editor with a new name. The old file stays.
Revert FileDiscards your changes and loads the saved file again.
Download FileSaves the file in the editor to your computer.
Delete FileRemoves the file from the project and from the run list.

If a file with the same name exists, the app asks before it replaces the file.

If you go to a different page with changes that you did not save, the app asks what to do. Click Save, Discard or Cancel.

1.6 The editor

The editor shows the file that you open from the Files tab. Each open file keeps its own undo history. To show or hide the editor, click View › Text Editor or push Alt+X.

The editor has these functions:

  • Syntax colors for G-code and for TPLang.
  • Line numbers.
  • Undo (Ctrl+Z) and Redo (Ctrl+Shift+Z). These are also in the Edit menu, with Cut, Copy, Paste and Select All.
  • Find (Ctrl+F). This opens a search bar in the editor.
  • Go to line (Alt+G). Type a line number to move to that line.

1.6.1 Help in the editor

Move the mouse pointer over a G-code word or a TPLang function to see help. You can also put the cursor on the word and push Ctrl+Space. Push Esc to close the help.

The help shows a short summary: the name, the words or parameters and one or two sentences. Click More to open this manual at that G-code or function. The full lists are in the G-code reference and the TPLang reference.

1.6.2 Problems

When the server finds an error or a warning in a program, the run panel shows it in the Problems section. Each problem shows the file and the line, such as part.nc:12. Click the file and line to open the program at that line.

The editor also marks the line of a problem in the left margin and in the text. Move the mouse pointer over the mark to read the message.

1.6.3 The editor and the 3D view

The editor and the 3D view work together:

  • When you move the cursor to a line in a program, the 3D view highlights the moves of that line. The tool moves to the end of the last move of that line.
  • When you click a move in the 3D view, the editor opens the program at the line that made the move.

The line below the 3D view shows the move number, the file and line, the feed rate (or rapid) and the end position of the move.

1.7 Settings, tools and the workpiece

To open all of the project settings, click Edit › Settings…. The Tool Table and Workpiece tabs beside the Files tab also show these settings. Settings that are not correct show as a list of errors at the top.

1.7.1 Units

G-code units sets the units of the G-code: Metric (mm) or Imperial (inch).

The information panels and the share page show lengths in the units of the project.

1.7.2 Machine

Machine selects a machine model, or None. The 3D view shows the machine when View › Show › Show Machine is on.

1.7.3 Tools and the tool table

The tool table lists the tools that the programs can use. A program selects a tool with its number, such as T1.

Each tool has these values:

ValueDescription
#The tool number. Type a new number to change it. The number must be free.
ShapeCylindrical, Conical, Ball nose, Spheroid or Snub nose.
UnitsThe units of the tool dimensions: mm or in.
DiameterThe diameter of the tool. It must be more than 0.
LengthThe length of the tool. It must be more than 0.
Snub dia.For a Snub nose tool only. It must be more than 0 and less than the diameter.
DescriptionYour text.

To add a tool, click New tool in the tool table, or click Tools › New Tool. To remove a tool, click ✕ on its line.

To use the tool table of a different project, click Tools › Import Tool Table…. Select a tool table .json file or a .camotics file. To save the tool table as a .json file, click Tools › Export Tool Table.

1.7.4 Workpiece

The workpiece is the material that the simulation cuts. There are two modes:

  • Automatic (the default). The app makes the workpiece from the bounds of the toolpath. Margin adds a percentage of the size on each side, but not on the top.
  • Manual. Clear Automatic to set the Min and Max of X, Y and Z yourself. The values are in mm. Each Min must be less than its Max.

The Workpiece Bounds panel shows the workpiece that the app uses.

1.7.5 Resolution

The resolution is the size of the cells that the simulation uses. A smaller size shows more detail, but the job takes more time and more credits.

The Resolution setting in Edit › Settings… has the modes Low, Medium, High, Very high and Manual. For Manual, you type a size in mm. This setting is part of the .camotics settings.

The Simulate section of the run panel has its own resolution control. The simulation uses the value of that control. Refer to Simulate.

1.8 Update the toolpath

The toolpath is the path of the tool through all of the moves of your programs.

When you update the toolpath, the app first saves all changed files and the settings. Then the server does these steps:

  1. It runs the selected TPL programs. Each TPL program makes G-code.
  2. It reads the G-code of all selected programs, in the run order.
  3. It sends the toolpath to your browser.

To update the toolpath, click Run toolpath (or Update toolpath) in the Toolpath section. You can also click Simulate › Update Toolpath.

When Run on save is on, the app updates the toolpath each time you save. It also updates the toolpath when you open a project that has no toolpath.

When the job ends, the Toolpath section shows the number of moves, the distance and the machine time. If you change files after the job, the section shows "Files changed since this toolpath".

1.8.1 The toolpath view

The 3D view shows the toolpath as lines. View › Show › Show Speed (Intensity) shows the feed rate of each move as a color intensity.

If the job fails, the run panel shows the job state Failed and a message. The Problems section shows the errors with their lines.

1.9 Simulate

The simulation cuts a virtual workpiece with the tool along the toolpath. The result is a 3D surface of the part after the cut.

1.9.1 Set the resolution

Use the slider in the Simulate section to set the resolution:

  • Low, Medium or High. The server calculates the cell size from the size of the workpiece.
  • Custom. Type a cell size in mm. The size must be from 0.001 mm to 100 mm.

1.9.2 Start a simulation

  1. Set the resolution.
  2. Read the estimate. It shows the credits, the time and your balance.
  3. Make sure that Max is equal to or more than the estimate.
  4. Click Simulate, click Simulate › Run or push F5.

If the files changed after the last toolpath, Simulate first updates the toolpath. Then it simulates.

1.9.3 Simulate to a move

If the position slider below the 3D view is not at the end, the simulation stops at that move. The Simulate section shows "To move N of M". To simulate all of the program, click Whole program.

A mark on the position slider shows the move where the last simulation stopped.

1.9.4 Job progress and stop

While a job runs, the run panel shows a progress bar and a Cancel button. The state is one of Queued, Running, Done, Failed, Stopped or Canceled.

The time for a job depends on the toolpath, the workpiece and the resolution. The estimate shows the expected time before you start.

To stop all running jobs, click Simulate › Stop, click Stop in the toolbar or push F6.

1.9.5 The result surface

When the simulation is Done, the 3D view shows the result surface. The line below the view shows the number of triangles in the surface.

To save the surface as an STL file, click Tools › Export… and then click Surface (STL).

1.10 Credits

A simulation uses credits. The number of credits depends on the toolpath and the resolution. The toolpath job has a low cost. A guest toolpath job is free.

The top bar shows your balance. Click it to open the Billing page.

1.10.1 The estimate and the maximum

Before you simulate, the Simulate section shows an estimate, such as "≈ 12 credits · 40 s · balance 500". If the server has no prices, the estimate shows the time and "pricing not set".

Max is the maximum number of credits that the job can use. The app sets it to one and a half times the estimate, rounded up. You can change it.

  • If Max is less than the estimate, the Simulate button is disabled.
  • If Max is more than your balance, the app shows a warning.

When the job starts, the server holds the maximum from your balance. When the job ends, the server charges the credits that the job used and releases the remainder. The run panel shows the credits that the job used.

If you do not have sufficient credits for the maximum, the job does not start. The run panel shows "Not enough credits for the approved maximum".

1.10.2 The Billing page

The Billing page shows:

  • Your balance and your plan.
  • The plans. Each plan shows the credits each month, the storage and the maximum number of CPUs for a job.
  • Credit packs that you can buy.
  • The history of your credits: plan credits, purchases, credits held for a job, released credits, job charges, refunds and adjustments.

The Jobs page of your account shows the credits that each job used.

1.11 Play back

The playback controls are below the 3D view. They move the tool along the toolpath. The Simulate menu and the toolbar have the same controls.

ControlWhat it does
Play / PauseStarts or stops the tool movement. Play from the end starts again from the start.
SlowerHalves the playback speed. The minimum is ×1.
FasterDoubles the playback speed. The maximum is ×65536.
DirectionChanges the direction between forward and backward.
Position sliderMoves the tool to a position on the toolpath.

The controls also show the time at the tool position, the total time and the speed, such as ×8. A speed of ×1 is the real machine time. If the program does not give all times, the app estimates them from the distance and the feed rate.

1.11.1 Information panels

The information panels show data about the toolpath and the tool position. To show or hide a panel, use View › Docks. Each panel also has a button to close it.

PanelWhat it shows
HistoryThe runs of the project.
Tool Path BoundsThe minimum, maximum and size of the toolpath in X, Y and Z.
Workpiece BoundsThe minimum, maximum and size of the workpiece.
Tool PositionThe X, Y and Z position of the tool.
Current MoveThe start, end and distance of the current move.
EstimatesThe current, remaining and total time and distance, and the percentage.
Machine StatusThe program name, the program line, the tool and the feed rate.

1.11.2 Run history

The History panel lists the toolpath jobs and simulate jobs of the project, the newest first. A simulate job shows its resolution, and the move where it stopped if it did not simulate all of the program.

To show an older result, click a job that is Done. A simulate job shows with its toolpath. A line above the 3D view tells you that it shows a past run. To go back to the newest result, click Show the latest.

1.12 The 3D view

Use the mouse to move the view:

  • Drag with the left button to turn the view.
  • Drag with the right or middle button, or with Shift and the left button, to move the view.
  • Turn the mouse wheel to zoom.

On a touch screen, drag with one finger to turn the view. Use two fingers to zoom and to move the view.

1.12.1 The View menu

ItemWhat it does
Fullscreen (F11)Shows the app on all of the screen.
LayoutDefault Layout, Full Layout or Minimal Layout.
ToolbarsShows or hides the toolbars.
Text Editor (Alt+X)Shows or hides the editor.
DocksShows or hides each information panel.
SurfaceSelects how the surface shows.
ShowShows or hides parts of the view.
ViewsTurns the view to a standard direction.
Zoom +, Zoom −Zooms in or out.
Zoom AllZooms to show all of the items in the view.

1.12.2 Surface modes

ItemKeyWhat it shows
Show Cut SurfaceCtrl+1The result surface.
Show Wire SurfaceCtrl+2The result surface as a wire mesh.
Show WorkpieceCtrl+3The workpiece before the cut.
Hide SurfaceCtrl+4No surface.

1.12.3 Show items

ItemKey
Show Tool PathCtrl+5
Show ToolCtrl+6
Show Workpiece BoundsCtrl+7
Show AxesCtrl+8
Show MachineCtrl+9
Show Speed (Intensity)none
Show Gridnone

1.12.4 View directions

ItemKey
IsometricAlt+1
FrontAlt+2
BackAlt+3
LeftAlt+4
RightAlt+5
TopAlt+6
BottomAlt+7

To save the view as a PNG image, click Tools › Screenshot.

1.13 Share a project

A project is private when you make it. Only you can see it. You can make it public to show the result to other people.

1.13.1 Make a project public

  1. Click Share in the top bar of the project.
  2. Select Anyone with the link can view.
  3. Click Copy to copy the share link.
  4. Send the link to other people.

The share link has the form /s/<id>. When the project is public, the button shows Shared.

1.13.2 What other people see

The share page shows:

  • The project name, the name of the owner and the date of the last change.
  • The units, the first tool in the tool table, the toolpath data (moves, distance and time) and the simulation resolution.
  • The newest toolpath and the newest simulation in a 3D view, with playback controls and view controls.

People do not have to sign in to see the share page. They cannot see your G-code or TPL files. They cannot change the project or run jobs. When they click a move, the view shows its line number only. The Make your own button lets them start their own project.

The share page shows the newest runs. When you run the project again, the share page shows the new results.

1.13.3 Stop sharing

  1. Click Shared in the top bar of the project.
  2. Clear Anyone with the link can view.
  3. Click Stop sharing.