/ docs / src / getting-started / running-linuxcnc.txt
running-linuxcnc.txt
  1  [[cha:running-emc]]
  2  
  3  = Running LinuxCNC
  4  
  5  == Invoking LinuxCNC
  6  
  7  After installation, LinuxCNC starts just like any other Linux program: 
  8  run it from the <<faq:terminal,terminal>> by issuing the command 'linuxcnc',
  9  or select it in the Applications - CNC menu.
 10  
 11  [[sec:config-launcher]] (((Configuration Launcher)))
 12  
 13  == Configuration Launcher
 14  
 15  When starting LinuxCNC from the CNC menu or from the command line without
 16  specifiying an ini file the Configuration Selector dialog starts.
 17  
 18  The Configuration Selector dialog allows the user to pick one of their
 19  existing configurations (My Configurations) or select a new one (from the Sample
 20  Configurations) to be copied to their home directory. Copied configurations
 21  will appear under My Configurations on the next invocation of the Configuration
 22  Selector.
 23  
 24  The Configuration Selector offers a selection of configurations
 25  organized:
 26  
 27  * 'My Configurations' - User configurations located in ~/linuxcnc/configs
 28  
 29  * 'Sample Configurations' - Sample configurations, when selected are copied to
 30      ~/linuxcnc/configs. Once you copy a sample configuration if you use the
 31      launcher pick it from 'My Configurations'
 32  
 33  ** 'sim' - Configurations that include simulated hardware. These can be used
 34     for testing or learning how LinuxCNC works.
 35  
 36  ** 'by_interface' - Configurations organized by GUI.
 37  
 38  ** 'by_machine' - Configurations organized by machine.
 39  
 40  ** 'apps' - Applications that do not require starting linuxcnc but may be
 41     useful for testing or trying applications like <<cha:pyvcp,PyVCP>> or
 42     <<cha:glade-vcp,GladeVCP>>.
 43  
 44  ** 'attic' - Obsolete or historical configurations.
 45  
 46  
 47  The sim configurations are often the most useful starting point for
 48  new users and are organized around supported guis:
 49  
 50  * axis - Keyboard and Mouse Gui
 51  * gmoccapy - Touch Screen Gui
 52  * gscreen - Touch Screen Gui
 53  * low_graphics - Keyboard Gui
 54  * tklinuxcnc - Keyboard and Mouse Gui(no longer maintained)
 55  * touchy - Touch Screen Gui
 56  
 57  A gui configuration directory may contain subdirectories with
 58  configurations that illustrate special situations or the embedding
 59  of other applications.
 60  
 61  The by_interface configurations are organized around common, supported
 62  interfaces like:
 63  
 64  * general mechatronics
 65  * mesa
 66  * parport
 67  * pico
 68  * pluto
 69  * servotogo
 70  * vigilant
 71  * vitalsystems
 72  
 73  Related hardware may be required to use these configurations as
 74  starting points for a system.
 75  
 76  
 77  The by_machine configurations are organized around complete, known
 78  systems like:
 79  
 80  * boss
 81  * cooltool
 82  * sherline
 83  * smithy
 84  * tormach
 85  
 86  A complete system may be required to use these configurations.
 87  
 88  The apps items are typically 1) utilities that don't require
 89  starting linuxcnc or 2) demonstrations of applications that can
 90  be used with linuxcnc:
 91  
 92  * info - creates a file with system information that may be useful for
 93    problem diagnosis.
 94  * gladevcp - Example gladevcp applications.
 95  * halrun  - Starts halrun in an <<faq:terminal,terminal>>.
 96  * latency - Applications to investigate latency
 97  ** latency-test - standard test
 98  ** latency-plot - stripchart
 99  ** latency-histogram - histogram
100  * parport - Applications to test parport.
101  * pyvcp - Example pyvcp applications.
102  * xhc-hb04 - Applications to test an xhc-hb04 USB wireless MPG
103  
104  [NOTE]
105  Under the Apps directory, only applications that are usefully modified
106  by the user are offered for copying to the user's directory.
107  
108  .LinuxCNC Configuration Selector[[cap:LinuxCNC-Configuration-Selector]]
109  
110  image::images/configuration-selector.png[alt="LinuxCNC Configuration Selector"]
111  
112  Click any of the listed configurations 
113  to display specific information about it. 
114  Double-click a configuration or click OK 
115  to start the configuration. 
116  Select 'Create Desktop Shortcut' and then click OK 
117  to add an icon on the Ubuntu desktop 
118  to directly launch this configuration 
119  without showing the Configuration Selector screen. 
120  
121  When you select a configuration from the Sample Configurations section, 
122  it will automaticly place a copy of that config in the
123  linuxcnc/configs directory.
124  
125  == Next steps in configuration
126  
127  After finding the sample configuration that uses 
128  the same interface hardware as your machine (or a simulator
129  configuration), and saving a copy to your home directory, 
130  you can customize it according to the details of your machine. 
131  Refer to the Integrator Manual for topics on configuration.
132  
133  == Simulator Configurations
134  
135  All configurations listed under Sample Configurations/sim
136  are intended to run on any computer.  No specific hardware is
137  required and real-time support is not needed.
138  
139  These configurations are useful for studying indivdual
140  capabilities or options.  The sim configurations are organized
141  according to the graphical user interface used in the
142  demonstration.  The directory for axis contains the most
143  choices and subdirectories because it is the most tested GUI.
144  The capabilities demonstrated with any specific GUI may be
145  available in other GUIs as well.
146  
147  == Configuration Resources
148  
149  The Configuration Selector copies all files needed for
150  a configuration to a new subdirectory of ~/linuxcnc/configs
151  (equivalently: /home/username/linuxcnc/configs).  Each
152  created directory will include at least one ini file (iniflename.ini)
153  that is used to describe a specific configuration.
154  
155  File resources within the copied directroy will typically
156  include one or more ini file (filename.ini) for related
157  configurations and a tool table file (toolfilename.tbl).
158  Additionally, resources may include halfiles (filename.hal,
159  filename.tcl), a README file for describing the directory, and
160  configuration specific information in a text file named after
161  a specific configuration (inifilename.txt).  That latter two
162  files are displayed when using the Configuration Selector.
163  
164  The supplied sample configurations may specifiy HALFILEs
165  in the configuration ini file that are not present in the
166  copied directory because they are found in the system
167  Halfile library.  These files can be copied to the user
168  configuration directory and altered as required by the
169  user for modification or test.  Since the user configuration
170  directory is searched first when finding Halfiles, local
171  modifications will then prevail.
172  
173  The Configuration selector makes a symbolic link in the
174  user configuration directory (named hallib) that points to
175  the system Halfile library.  This link simplifies copying
176  a library file.  For example, to copy the library core_sim.hal
177  file in order to make local modifications:
178  
179  ====
180    cd ~/linuxcnc/configs/name_of_configuration
181    cp hallib/core_sim.hal core_sim.hal
182  ====
183  
184  // vim: set syntax=asciidoc:
185  
186