mycnc:mycnc_screen_configuration
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
mycnc:mycnc_screen_configuration [2019/09/12 11:09] – ivan | mycnc:mycnc_screen_configuration [2020/05/08 13:41] – ivan | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ===== MyCNC Screen Configuration ====== | + | ===== Screen |
+ | |||
+ | In this manual, we will be going through all the different elements that can be used to display (and interact with) the necessary information on the myCNC screen. Sample examples for the step-by-step screen configuration of myCNC software are available [[mycnc: | ||
+ | |||
+ | Video tutorial: | ||
+ | |||
+ | {{youtube> | ||
+ | |||
+ | ==== Getting Started with editing the myCNC screen==== | ||
+ | |||
+ | By default, myCNC comes with a number of profiles, each with slight visual differences which are designed to best suit the workflow of a particular system, be it a plasma cutting machine, a mill, or a tangential knife setup. However, sometimes it is necessary to edit the software screen to better suit the particular workflow of the operator. Luckily, the myCNC software is almost endlessly customizable since it comes with the ability to edit the .xml files which are responsible for displaying the on-screen content. | ||
+ | |||
+ | These .xml files are stored in your profile folder. On Ubuntu systems, go to your home folder, and then navigate to '' | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Upon opening the necessary profile folder (we will be using X1366M in this example, for the simple 3-axis mill profile), you are presented with a list of all the .xml files which will populate your screen: | ||
+ | |||
+ | {{: | ||
+ | |||
+ | However, merely being in the profile folder does not mean that the .xml file's contents will be displayed on the myCNC screen. In order for the .xml file to be used, it must be included in the cnc-screen.xml file that is located within that profile' | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Upon opening the cnc-screen.xml file and scrolling down to the bottom, you are presented with a list of all the files from within the same folder which will be included when building the myCNC screen: | ||
+ | |||
+ | {{: | ||
+ | |||
+ | These files are named according to the different elements they put up on the screen ('' | ||
==== MyCNC GUI elements ==== | ==== MyCNC GUI elements ==== | ||
- | === Label === | + | Below is a list of the main elements that can be utilized to create or edit a myCNC profile screen. Some of the functions of these elements overlap (such as BDisplay and KDisplay) - it is left to the user to decide which element best suits their workflow. |
+ | |||
+ | ^ Element ^ Use ^ | ||
+ | | **Label** | Unchanging text element | | ||
+ | | **Display** | Changing value | | ||
+ | | **BDisplay** | Changing value - can be clicked by the user to enter a new value | | ||
+ | | **KDisplay** | Changing value - can be clicked by the user to enter a new value | | ||
+ | | **RadioDisplay** | Changing value - preset from a list of choices | | ||
+ | | **Radio2Display** | Changing value - preset from a list of choices (update of RadioDisplay) | | ||
+ | | **KSpinBox** | Changing value - changed by pressing the arrows to increase/ | ||
+ | | **KSpinBox2** | Changing value - changed by pressing the arrows to increase/ | ||
+ | | **LED** | LED display to show some status (can be on/off) | | ||
+ | | **SVG Display** | Set of images to change depending on input | | ||
+ | | **MyItems** | Container element which can contain other elements | | ||
+ | | **Border** | Frame element which can contain other elements | | ||
+ | | **Button** | Button | | ||
+ | | **XButton** | Button with an LED indicator | | ||
+ | | **GLView** | 3D Visualization | | ||
+ | | **NCView** | 2D Visualization | | ||
+ | | **Logview** | Program log window | | ||
+ | | **Statusbar** | Progress and status bar | | ||
+ | | **NCList** | Program G-code commands list | | ||
+ | | **Myscope** | Time graphs | | ||
+ | | **CentringView** | Centering widget (built-in) | | ||
+ | | **Rotation2View** | Full program rotation widget (built-in) | | ||
+ | |||
+ | The following table outlines the parameters that define the on-screen elements within myCNC: | ||
+ | |||
+ | ^ Parameter ^ Example ^ Use ^ | ||
+ | | **type** | type=" | ||
+ | | **skin** | skin=" | ||
+ | | **where** | where=" | ||
+ | | **position** | position=" | ||
+ | | **width** | width=" | ||
+ | | **height** | height=" | ||
+ | | **labelWidth** | labelWidth=" | ||
+ | | **displayWidth** | displayWidth=" | ||
+ | | **labelFgColor** | labelFgColor="## | ||
+ | | **labelBgColor** | labelBgColor="## | ||
+ | | **labelFontSize** | labelFontSize=" | ||
+ | | **labelFontStyle** | labelFontStyle=" | ||
+ | | **message** | < | ||
+ | | **name** | name=" | ||
+ | | **bgColor** | bgColor="## | ||
+ | | **fgColor** | fgColor="## | ||
+ | | **fontStyle** | fontStyle=" | ||
+ | | **format** | format=" | ||
+ | | **displayAlignment** | displayAlignment=" | ||
+ | | **fontFamily** | fontFamily=" | ||
+ | | **deviation** | deviation=" | ||
+ | | **action** | action=" | ||
+ | | **orientation** | orientation=" | ||
+ | |||
+ | ++++Label| | ||
Labels are static text elements which are displayed as a text box (typically simple text headings/ | Labels are static text elements which are displayed as a text box (typically simple text headings/ | ||
Line 29: | Line 110: | ||
* **message** can be written in the required languages (which must be specified). The program will automatically display the correct message for each selected program language. | * **message** can be written in the required languages (which must be specified). The program will automatically display the correct message for each selected program language. | ||
- | + | ++++ | |
- | === Display | + | ++++ Display| |
**Display** allows to show dynamic info (such as a changing value), and often works in conjunction with a Label (a label will create some title, and the dynamic changing value will be placed on the screen next to the Label as a Display). An example of a Display is the Trip Counter from the User Settings window in the 1336M4 profile: | **Display** allows to show dynamic info (such as a changing value), and often works in conjunction with a Label (a label will create some title, and the dynamic changing value will be placed on the screen next to the Label as a Display). An example of a Display is the Trip Counter from the User Settings window in the 1336M4 profile: | ||
Line 55: | Line 136: | ||
* **format** specifies how the values are presented. The first number specifies the overall digits that the value will display, while the second number specifies the amount of digits after the dot. F stands for float, while d stands for integer. For example, in this case, %6.3f specifies a float number with six total digits maximum and which allows the number to display up to the third decimal place (degree of accuracy). | * **format** specifies how the values are presented. The first number specifies the overall digits that the value will display, while the second number specifies the amount of digits after the dot. F stands for float, while d stands for integer. For example, in this case, %6.3f specifies a float number with six total digits maximum and which allows the number to display up to the third decimal place (degree of accuracy). | ||
* **deviation** can be specified to indicate the minimum absolute value change that would require the program to display a new value. For example, deviation of 0.01 means that the value needs to change by at lease 0.01 (absolute value) for the new numeric value to be displayed. This allows to eliminate visual changes/ | * **deviation** can be specified to indicate the minimum absolute value change that would require the program to display a new value. For example, deviation of 0.01 means that the value needs to change by at lease 0.01 (absolute value) for the new numeric value to be displayed. This allows to eliminate visual changes/ | ||
+ | ++++ | ||
- | === BDisplay | + | ++++ BDisplay| |
The BDisplay element allows to display a dynamic value, like a typical Display, which can also be clicked. When clicked, a popup element will be brought up on the screen that will allow the user to enter a new value. For example, the program coordinates displayed on the main screen of the software are BDisplay elements which bring up a popup when clicked, allowing to change their values: | The BDisplay element allows to display a dynamic value, like a typical Display, which can also be clicked. When clicked, a popup element will be brought up on the screen that will allow the user to enter a new value. For example, the program coordinates displayed on the main screen of the software are BDisplay elements which bring up a popup when clicked, allowing to change their values: | ||
Line 81: | Line 163: | ||
* **action** allows to perform some sort of action or command after the confirmation checkmark in the popup window is pressed (after the new value is entered). This value is stored as %v and will be used to change the program coordinates to the necessary value in the selected axis. This is extremely useful for changing the values which would require an action to do so (e.g. some kind of machine movement). If no actions are required (i.e., if all that is required is a value/ | * **action** allows to perform some sort of action or command after the confirmation checkmark in the popup window is pressed (after the new value is entered). This value is stored as %v and will be used to change the program coordinates to the necessary value in the selected axis. This is extremely useful for changing the values which would require an action to do so (e.g. some kind of machine movement). If no actions are required (i.e., if all that is required is a value/ | ||
* **name** specifies the global variable or the item that the element will be receiving its value from to display. In this case, it is receiving a value from the work-pos-axis-0 item. A comprehensive [[mycnc: | * **name** specifies the global variable or the item that the element will be receiving its value from to display. In this case, it is receiving a value from the work-pos-axis-0 item. A comprehensive [[mycnc: | ||
+ | ++++ | ||
- | === RadioDisplay | + | ++++RadioDisplay| |
RadioDisplay allows to display some value from a list. For example, the display of the coordinate system in the Diagnostics window of the 1366M4 profile is done by using a RadioDisplay element. This allows the user to select some coordinate system (which is not labeled G54/G55/etc within the software, but rather 1, 2, 3, etc), and then display the selected choice as some sort of a user-facing text string (thus, for example, displaying a software " | RadioDisplay allows to display some value from a list. For example, the display of the coordinate system in the Diagnostics window of the 1366M4 profile is done by using a RadioDisplay element. This allows the user to select some coordinate system (which is not labeled G54/G55/etc within the software, but rather 1, 2, 3, etc), and then display the selected choice as some sort of a user-facing text string (thus, for example, displaying a software " | ||
Line 137: | Line 220: | ||
* **action** is set to " | * **action** is set to " | ||
* **format** is set to " | * **format** is set to " | ||
+ | ++++ | ||
- | === Radio2Display | + | ++++ Radio2Display |
Radio2Display allows for a more granular display configuration than the simpler RadioDisplay. Similar to RadioDisplay, | Radio2Display allows for a more granular display configuration than the simpler RadioDisplay. Similar to RadioDisplay, | ||
Line 169: | Line 253: | ||
The example in RadioDisplay code can also be used to assign actions to Radio2Display if type=" | The example in RadioDisplay code can also be used to assign actions to Radio2Display if type=" | ||
- | === KDisplay | + | ++++ |
+ | |||
+ | ++++ KDisplay | ||
KDisplay is similar to BDisplay, as it allows to display some dynamic changing variable/ | KDisplay is similar to BDisplay, as it allows to display some dynamic changing variable/ | ||
Line 193: | Line 279: | ||
* **name** displays the global variable that will be used in this field (in this example, it's global variable #7525 for the gantry alignment procedure) | * **name** displays the global variable that will be used in this field (in this example, it's global variable #7525 for the gantry alignment procedure) | ||
* **deviation** specifies the minimum value by which the parameter (global variable used in this case) should change for the change to be visually represented on the screen. This cutoff allows to disregard some small changes. | * **deviation** specifies the minimum value by which the parameter (global variable used in this case) should change for the change to be visually represented on the screen. This cutoff allows to disregard some small changes. | ||
+ | ++++ | ||
- | === KSpinBox | + | ++++ KSpinBox |
KSpinBox shows a certain value with an arrow on either side, allowing the user to change the value upon pressing (or pressing and holding) the arrow buttons. The PWM outputs section of the Diagnostics window is done using KSpinBoxes: | KSpinBox shows a certain value with an arrow on either side, allowing the user to change the value upon pressing (or pressing and holding) the arrow buttons. The PWM outputs section of the Diagnostics window is done using KSpinBoxes: | ||
Line 222: | Line 309: | ||
* **number** specifies the particular hardware port that the on-screen element will be monitoring. Here, it is the number of the PWM output, as specified in the address. It is counted from 0, not from 1, so PWM output 1's number is 0, PWM Output 2 is number 1, etc. | * **number** specifies the particular hardware port that the on-screen element will be monitoring. Here, it is the number of the PWM output, as specified in the address. It is counted from 0, not from 1, so PWM output 1's number is 0, PWM Output 2 is number 1, etc. | ||
* **type** is set to " | * **type** is set to " | ||
+ | ++++ | ||
- | === KSpinBox2 | + | ++++ KSpinBox2 |
- | KSpinBox2 allows the user to add an element similar to a regular KSpinBox, displaying a value between two arrows, which also allows the user to click on the current value and change it using a popup screen in addition to changing the value by pressing the respective arrows. This element is used, for example, on the main screen of myCNC software' | + | KSpinBox2 allows the user to add an element similar to a regular KSpinBox, displaying a value between two arrows, which also allows the user to click on the current value and change it using a popup screen in addition to changing the value by pressing the respective arrows. This element is used, for example, on the main screen of myCNC software' |
{{: | {{: | ||
Line 255: | Line 343: | ||
* **orientation** can be set to be horizontal or vertical | * **orientation** can be set to be horizontal or vertical | ||
* the message can be listed in different languages, the system will automatically display the correct message depending on the user language settings for myCNC | * the message can be listed in different languages, the system will automatically display the correct message depending on the user language settings for myCNC | ||
+ | ++++ | ||
- | === LED Display | + | ++++ LED Display |
LED Display allows the user to display an LED element on the screen. This light can be on or off, and each LED element can have a different colour set for its ON configuration. This is useful to show the state of system items which have a binary state (on or off), such as input ports which can be viewed from the Diagnostics page: | LED Display allows the user to display an LED element on the screen. This light can be on or off, and each LED element can have a different colour set for its ON configuration. This is useful to show the state of system items which have a binary state (on or off), such as input ports which can be viewed from the Diagnostics page: | ||
Line 279: | Line 368: | ||
* **number** specifies the particular hardware port in the specified hardware section (inputs in this example) that will be monitored. Here, the state of port 0 will be monitored. | * **number** specifies the particular hardware port in the specified hardware section (inputs in this example) that will be monitored. Here, the state of port 0 will be monitored. | ||
* **type** is set to " | * **type** is set to " | ||
+ | ++++ | ||
- | === SVG Display | + | ++++ SVG Display |
SVG Display allows to display a set of images that will be changing depending on the user input (cycling through the available images). This allows for more granular control than an LED Display element which can only show two states of a system. | SVG Display allows to display a set of images that will be changing depending on the user input (cycling through the available images). This allows for more granular control than an LED Display element which can only show two states of a system. | ||
Line 301: | Line 391: | ||
* **K** is the coefficient by which the value will be multiplied by before it is used by the element | * **K** is the coefficient by which the value will be multiplied by before it is used by the element | ||
* **min** and **max** values specify the bounds for the values which are used. Anything lower than the min value is assumed to be equal to min (displays the first image on the list), everything higher than the max value is assumed to be equal to max (displays the last image on the list). | * **min** and **max** values specify the bounds for the values which are used. Anything lower than the min value is assumed to be equal to min (displays the first image on the list), everything higher than the max value is assumed to be equal to max (displays the last image on the list). | ||
+ | ++++ | ||
- | === Myitems Widget | + | ++++ Myitems Widget |
The Myitems widget allows the user to create a section or a window within the main myCNC screen which can later be filled with buttons/ | The Myitems widget allows the user to create a section or a window within the main myCNC screen which can later be filled with buttons/ | ||
Line 321: | Line 412: | ||
* it is necessary to **include** the actual code for the widget that will be inserted (oil-change.xml). That file contains all the necessary information about what's inside the widget, however it is not necessary to edit it if the entire widget needs to be moved or removed from the screen. | * it is necessary to **include** the actual code for the widget that will be inserted (oil-change.xml). That file contains all the necessary information about what's inside the widget, however it is not necessary to edit it if the entire widget needs to be moved or removed from the screen. | ||
- | Note that the widget within which the oil-change | + | |
+ | ++++ | ||
+ | |||
+ | ++++ Border | | ||
+ | |||
+ | Note that while the myitems | ||
+ | |||
+ | As mentioned, an example | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Sample border code is available here: | ||
<code c> < | <code c> < | ||
Line 334: | Line 436: | ||
* **basewidth** and **baseheight** are specified to serve as reference width and height during the window resizing process. The system will look at the basewidth/ | * **basewidth** and **baseheight** are specified to serve as reference width and height during the window resizing process. The system will look at the basewidth/ | ||
- | === Button | + | ++++ |
+ | |||
+ | ++++ Skin | | ||
+ | |||
+ | A skin is a parameter which effectively serves as a background for the element within which it is embedded. | ||
+ | |||
+ | Example of a skin can be seen in the Gantry Alignment widget: | ||
+ | |||
+ | {{: | ||
+ | |||
+ | The background of the widget consists of a diagram of the machine. This diagram is embedded using the '' | ||
+ | |||
+ | Example code: | ||
+ | |||
+ | < | ||
+ | skin=" | ||
+ | position=" | ||
+ | |||
+ | * **where** specifies the element within which the new element is embedded | ||
+ | * **name** should be chosen to be unique | ||
+ | * **bgColor** specifies the background colour of the element | ||
+ | * **type** is set to '' | ||
+ | * **skin** is set to the image path within the art/ | ||
+ | * **position** specifies the position in the element within which the item is located | ||
+ | * **width** and **height** specify the size | ||
+ | |||
+ | ++++ | ||
+ | |||
+ | ++++Button| | ||
A PushButton screen item can be used on myCNC screen to serve as as a button which will trigger some command when pressed. For example, the refresh button can be seen on the main screen of the myCNC software: | A PushButton screen item can be used on myCNC screen to serve as as a button which will trigger some command when pressed. For example, the refresh button can be seen on the main screen of the myCNC software: | ||
Line 362: | Line 492: | ||
* **both** - there are separate actions (";" | * **both** - there are separate actions (";" | ||
* **skinbase** - besides the Image file for each button there is a common **skin** SVG file for all the buttons. For selected buttons skin file can be redefined with **skinbase** attribute which specifies the border/mask which the button will be used with. This SVG file will be used as a bottom layer for the button image. | * **skinbase** - besides the Image file for each button there is a common **skin** SVG file for all the buttons. For selected buttons skin file can be redefined with **skinbase** attribute which specifies the border/mask which the button will be used with. This SVG file will be used as a bottom layer for the button image. | ||
+ | * A skinbase set equal to " | ||
+ | ++++ | ||
- | === XButton | + | ++++ XButton |
XButton is a Push button (similar to a typical button described above) with a built-in light indicator. The light is typically used to show the current state of some CNC controller input, output pin, or CNC global variable register value. Effectively, | XButton is a Push button (similar to a typical button described above) with a built-in light indicator. The light is typically used to show the current state of some CNC controller input, output pin, or CNC global variable register value. Effectively, | ||
Line 374: | Line 506: | ||
<gitem where=" | <gitem where=" | ||
| | ||
- | | + | |
| | ||
| | ||
Line 404: | Line 536: | ||
* " | * " | ||
- | === GLView | + | Another example of an xbutton realized with a **ref** value for reference to switch (toggle) a variable between two states: |
+ | |||
+ | < | ||
+ | image=" | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | * **data** specifies which values the switch is occuring (the cnc-gvariable-switch-5701 action in this case) | ||
+ | * **ref** specifies the reference value to monitor for | ||
+ | ++++ | ||
+ | |||
+ | ++++ GLView (3D Visualization)| | ||
GLView allows to display a 3D visualization window which will show a visualization of the imported program (such as the window on the main screen of myCNC software' | GLView allows to display a 3D visualization window which will show a visualization of the imported program (such as the window on the main screen of myCNC software' | ||
Line 427: | Line 572: | ||
* **ColorT0, T1, etc** describe the visualization colours for different tools in the G-code | * **ColorT0, T1, etc** describe the visualization colours for different tools in the G-code | ||
* **HColorT0, T1, etc** describes the highlight colour for the selected tool | * **HColorT0, T1, etc** describes the highlight colour for the selected tool | ||
+ | ++++ | ||
- | === NCView | + | ++++ NCView |
{{: | {{: | ||
Line 450: | Line 596: | ||
* **ColorT0, T1, etc** signify the tool colours in the visualization (light blue in this case) | * **ColorT0, T1, etc** signify the tool colours in the visualization (light blue in this case) | ||
* **HColor** signifies the highlight colour for each tool (colour of the tool visualization when selected - yellow in this case) | * **HColor** signifies the highlight colour for each tool (colour of the tool visualization when selected - yellow in this case) | ||
+ | ++++ | ||
- | === X-log and Logview | + | ++++ X-log and Logview |
Logview is the log window tab at the bottom of the main screen of myCNC software (within the x-log widget). It contains information on program start and end times, error messages, etc. | Logview is the log window tab at the bottom of the main screen of myCNC software (within the x-log widget). It contains information on program start and end times, error messages, etc. | ||
Line 483: | Line 630: | ||
* **where** points out that the status bar is inserted into the x-log widget, same as the Logview element. | * **where** points out that the status bar is inserted into the x-log widget, same as the Logview element. | ||
* **name** and **type** are set to " | * **name** and **type** are set to " | ||
- | + | ++++ | |
- | === NCList | + | ++++ NCList |
The NCList widget is used to display the G-code commands window to the user, as can be seen in the G-code tab on the main screen of the 1366M4 profile, as well as the nesting, rotation and Run From Here buttons: | The NCList widget is used to display the G-code commands window to the user, as can be seen in the G-code tab on the main screen of the 1366M4 profile, as well as the nesting, rotation and Run From Here buttons: | ||
Line 501: | Line 648: | ||
* **type=" | * **type=" | ||
* **hide-list** serves as an option to hide the x-log and x-mill windows when the NCList window is active (as they are all situated in the same area). The **exclusive** flag signifies that only the NCList widget will be up on the screen if it is selected, thus allowing to not interfere with x-log and x-mill windows (the same setting is present in both other respective windows). | * **hide-list** serves as an option to hide the x-log and x-mill windows when the NCList window is active (as they are all situated in the same area). The **exclusive** flag signifies that only the NCList widget will be up on the screen if it is selected, thus allowing to not interfere with x-log and x-mill windows (the same setting is present in both other respective windows). | ||
+ | ++++ | ||
- | === CentringView | + | ++++ Myscope (graphs and plots) | |
+ | |||
+ | The '' | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Sample code to add a '' | ||
+ | |||
+ | < | ||
+ | width=" | ||
+ | | ||
+ | | ||
+ | |||
+ | |||
+ | <gitem where=" | ||
+ | | ||
+ | | ||
+ | |||
+ | * **where** indicated into which screen element the myscope graph will be inserted (in this example, it will be inserted into a border called '' | ||
+ | * **position** indicates the XY position within the element into which it is inserted | ||
+ | * **width** and **height** indicate the size of the graph | ||
+ | * **name** should be a unique name | ||
+ | * **type** should be set to '' | ||
+ | * **yrange** will specify the Y-axis range of the graph | ||
+ | * **K** will specify the coefficient by which the necessary information will be multiplied by before being displayed | ||
+ | * **source** is the name of the port or the variable which will be monitored. A list of possible sources is provided below. | ||
+ | * **sampling** specifies the rate at which the information will be retrieved (in this example, the graph will be updated every 50 milliseconds) | ||
+ | |||
+ | ^ Source ^ Description ^ | ||
+ | | adc0 | ADC #0. '' | ||
+ | | pwm0 | PWM #0. '' | ||
+ | | multidev-adc0 | ADC #0 of the slave controller (if multiple devices are used). multidev-adc0 through multidev-adc7 are available | | ||
+ | | speed-xyz | Movement speed of the machine | | ||
+ | | speed-abc | Rotation movement speed of the machine | | ||
+ | | thc-control | THC system speed | | ||
+ | | thc-reference | THC Reference voltage | | ||
+ | | thc-sensor | THC Arc Voltage | | ||
+ | | data-counter | Reserved for future implementation | | ||
+ | | time-counter | Reserved for future implementation | | ||
+ | | cnc-gvariable- | Monitor a myCNC [[mycnc: | ||
+ | |||
+ | |||
+ | ++++ | ||
+ | |||
+ | ++++CentringView| | ||
CentringView consists of the probe tools which allow to center the machine tool with regards to some obstacles. The window is brought up by clicking the Probe Sensor Window button: | CentringView consists of the probe tools which allow to center the machine tool with regards to some obstacles. The window is brought up by clicking the Probe Sensor Window button: | ||
Line 522: | Line 714: | ||
* **action** specifies the command which will be perform when the button is pressed (in this case, the button toggles the visibility of the x-centring widget (found in the x-centring.xml file) | * **action** specifies the command which will be perform when the button is pressed (in this case, the button toggles the visibility of the x-centring widget (found in the x-centring.xml file) | ||
* type is set to " | * type is set to " | ||
+ | ++++ | ||
- | === Rotation2View | + | ++++Rotation2View| |
Rotation2View is the window which allows to rotate the program part by some degree. It is brought up by clicking the Rotate button in the G-code tab on the main screen of myCNC software: | Rotation2View is the window which allows to rotate the program part by some degree. It is brought up by clicking the Rotate button in the G-code tab on the main screen of myCNC software: | ||
Line 529: | Line 722: | ||
{{: | {{: | ||
- | The following window is brought up when clicking the button: | + | The following window is brought up when clicking the button |
{{: | {{: | ||
Line 544: | Line 737: | ||
* **action** specifies that pressing this button will toggle the x-rotate window visibility | * **action** specifies that pressing this button will toggle the x-rotate window visibility | ||
* **type** is set to " | * **type** is set to " | ||
+ | |||
+ | Sample code for the rotation2view element: | ||
+ | |||
+ | <gitem where=" | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | * **position** describes the XY location within the **where** element | ||
+ | * **width** and **height** describe the element' | ||
+ | * **table-rotation** sets the orientation of the table. //-90// and //90// are the typical values to rotate the orientation | ||
+ | * **type** is set to // | ||
+ | ++++ | ||
==== MyCNC Actions ==== | ==== MyCNC Actions ==== | ||
Line 549: | Line 756: | ||
All button-like screen components (button, xbutton, bdisplay, kspinbox2) run a **Handler** procedure when pressed or released event is activated by a mouse click or a touch screen tap. The Handler is defined in the " | All button-like screen components (button, xbutton, bdisplay, kspinbox2) run a **Handler** procedure when pressed or released event is activated by a mouse click or a touch screen tap. The Handler is defined in the " | ||
- | List of actions | + | ++++ List of general |
^ Action Name ^ Description ^ | ^ Action Name ^ Description ^ | ||
Line 563: | Line 770: | ||
| toggle-item: | | toggle-item: | ||
| laser-marker- | Special purpose action reserved for laser marker machines. This action perform a test run in anticipation of the actual cutting process. | | | laser-marker- | Special purpose action reserved for laser marker machines. This action perform a test run in anticipation of the actual cutting process. | | ||
+ | ++++ | ||
- | ===Items=== | + | ++++Items| |
Items are a subset of actions, and are written in the following form - item: | Items are a subset of actions, and are written in the following form - item: | ||
Line 573: | Line 781: | ||
A list of commonly used items can be found in the [[mycnc: | A list of commonly used items can be found in the [[mycnc: | ||
+ | ++++ | ||
- | === Player actions | + | ++++ Player actions| |
^ Action Name ^ Description ^ | ^ Action Name ^ Description ^ | ||
Line 601: | Line 810: | ||
| mdi-open | Opens the Manual Data Input window | | | mdi-open | Opens the Manual Data Input window | | ||
+ | ++++ | ||
- | === Jog actions | + | ++++ Jog actions |
^ Action Name ^ Description ^ | ^ Action Name ^ Description ^ | ||
| jog-0-plus, jog-1-plus, \\ jog-2-plus, jog-3-plus, \\ jog-4-plus, jog-5-plus, \\ jog-6-plus, jog-7-plus \\ jog-8-plus | Positive direction jog in the in the X, Y, Z, A, B, C, U, V, W axes | | | jog-0-plus, jog-1-plus, \\ jog-2-plus, jog-3-plus, \\ jog-4-plus, jog-5-plus, \\ jog-6-plus, jog-7-plus \\ jog-8-plus | Positive direction jog in the in the X, Y, Z, A, B, C, U, V, W axes | | ||
| jog-0-minus, | | jog-0-minus, | ||
- | | jog-0-plus-1-plus | Simultaneous two-axes Jog, X+ Y+ | | + | | jog-0-plus-1-plus | Two-axes Jog, X+ Y+ | |
- | | jog-0-plus-1-minus | Simultaneous two-axes Jog, X+ Y- | | + | | jog-0-plus-1-minus | Two-axes Jog, X+ Y- | |
- | | jog-0-minus-1-plus | Simultaneous two-axes Jog, X- Y+ | | + | | jog-0-minus-1-plus | Two-axes Jog, X- Y+ | |
- | | jog-0-minus-1-minus | Simultaneous two-axes Jog, X- Y- | | + | | jog-0-minus-1-minus | Two-axes Jog, X- Y- | |
- | | jog-overspeed-inc \\ jog-overspeed-dec | Increment/ | + | | jog-overspeed-inc \\ jog-overspeed-dec | Increment/ |
- | | jog-overspeed-set: | + | | jog-overspeed-set: |
+ | ++++ | ||
- | + | ++++ Motion Settings Actions | |
- | === Motion Settings Actions=== | + | |
^ Action Name ^ Description ^ | ^ Action Name ^ Description ^ | ||
Line 630: | Line 840: | ||
| spindle-overspeed-inc \\ spindle-overspeed-dec \\ spindle-overspeed | Increase/ | | spindle-overspeed-inc \\ spindle-overspeed-dec \\ spindle-overspeed | Increase/ | ||
- | === Built-in Editor Actions | + | ++++ |
+ | |||
+ | ++++ Built-in Editor Actions | ||
^ Action Name ^ Description ^ | ^ Action Name ^ Description ^ | ||
Line 648: | Line 860: | ||
| editor-save-as | Save File As | | | editor-save-as | Save File As | | ||
| editor-save | Save the editor file | | | editor-save | Save the editor file | | ||
+ | ++++ | ||
- | === File Manipulation Actions | + | ++++ File Manipulation Actions |
^ Action Name ^ Description ^ | ^ Action Name ^ Description ^ | ||
Line 656: | Line 869: | ||
| load-file: | Load a file. This will load a file from the predefined folders which can be set in Config > Preferences > Common | | | load-file: | Load a file. This will load a file from the predefined folders which can be set in Config > Preferences > Common | | ||
| load-macro: | A test debug feature. Allows to load the macros which are referenced in the imported G-code directly into the NCList window. In this way, instead of using a single macro number to refer to a specific macro, the full macros will be written out in the NCList.| | | load-macro: | A test debug feature. Allows to load the macros which are referenced in the imported G-code directly into the NCList window. In this way, instead of using a single macro number to refer to a specific macro, the full macros will be written out in the NCList.| | ||
- | | file-close | Close file | | + | | file-close | Close the program |
| dxf-import | Import a DXF file into myCNC | | | dxf-import | Import a DXF file into myCNC | | ||
| image-import | Import an image into myCNC | | | image-import | Import an image into myCNC | | ||
+ | ++++ | ||
- | === Visualization Actions | + | ++++ Visualization Actions |
^ Action Name ^ Description ^ | ^ Action Name ^ Description ^ | ||
Line 673: | Line 887: | ||
| 3dview-custom: | | 3dview-custom: | ||
+ | ++++ | ||
- | === Widget Manipulations Actions | + | ++++ Widget Manipulations Actions |
These actions allow to display widgets on the screen which are then used to change certain machine values/ | These actions allow to display widgets on the screen which are then used to change certain machine values/ | ||
Line 700: | Line 915: | ||
| mywidget: | Older version of the syntax for mywidget commands (still functional, but no longer developed further). The name of the widget would be set after the colon, and then, after a doubleslash, | | mywidget: | Older version of the syntax for mywidget commands (still functional, but no longer developed further). The name of the widget would be set after the colon, and then, after a doubleslash, | ||
+ | ++++ | ||
- | + | ++++ Application Actions | |
- | === Application Actions | + | |
^ Action Name ^ Description ^ | ^ Action Name ^ Description ^ | ||
Line 708: | Line 923: | ||
| cnc-config-save | Save myCNC configuration files to disk | | | cnc-config-save | Save myCNC configuration files to disk | | ||
+ | ++++ | ||
- | === Hardware Manipulation actions | + | ++++ Hardware Manipulation actions |
^ Action Name ^ Description ^ | ^ Action Name ^ Description ^ | ||
| servo-pid-on | Turns ON the Servo PIDs | | | servo-pid-on | Turns ON the Servo PIDs | | ||
| servo-pid-off | Turns OFF the Servo PIDs | | | servo-pid-off | Turns OFF the Servo PIDs | | ||
- | | hw-pwm-inc | Increases the PWM value in preset increments | | + | | hw-pwm-inc | Increases the PWM value in preset increments |
| hw-pwm-dec | Decreases the PWM value in preset increments | | | hw-pwm-dec | Decreases the PWM value in preset increments | | ||
| hw-dac-inc | Increases the DAC value in preset increments | | | hw-dac-inc | Increases the DAC value in preset increments | | ||
| hw-dac-dec | Decreases the DAC value in preset increments | | | hw-dac-dec | Decreases the DAC value in preset increments | | ||
- | | hw-direct-binary-set- | Directly sets an output value (for example, // | + | | hw-direct-binary-set- | Directly sets an output value (for example, // |
| hw-direct-binary-clear- | Directly clears an output value (for example, // | | hw-direct-binary-clear- | Directly clears an output value (for example, // | ||
| thc-arc-voltage-ref-inc | Increases the reference arc voltage value | | | thc-arc-voltage-ref-inc | Increases the reference arc voltage value | | ||
Line 729: | Line 945: | ||
| dev-thc-jog-neg | Multidevice negative direction Torch Height Control jog | | | dev-thc-jog-neg | Multidevice negative direction Torch Height Control jog | | ||
- | | toggle-widget-centring | Toggles the centring widget visibility on/off | | + | | toggle-widget-centring | Toggles the centring widget visibility on/ |
| toggle-widget-rotation | Toggles the rotation widget visibility on/off | | | toggle-widget-rotation | Toggles the rotation widget visibility on/off | | ||
| toggle-widget-sawcutting | Toggles the sawcutting widget visibility on/off (obsolete on newer software versions) | | | toggle-widget-sawcutting | Toggles the sawcutting widget visibility on/off (obsolete on newer software versions) | | ||
- | | toggle-widget-user | Toggles the user widget visibility on/off | | + | | toggle-widget-user | Toggles the user settings |
| toggle-button-flood | Toggles the flood state on/off (liquid) | | | toggle-button-flood | Toggles the flood state on/off (liquid) | | ||
Line 740: | Line 956: | ||
| toggle-button-mist | Toggles the mist state on/off | | | toggle-button-mist | Toggles the mist state on/off | | ||
| < | | < | ||
+ | ++++ | ||
- | === PLC Actions | + | ++++ PLC Actions |
Line 755: | Line 972: | ||
| cnc-gvariable-toggle | Toggles a global variable (writes 0 or 1 into the global variable, depending on the previous value) | | | cnc-gvariable-toggle | Toggles a global variable (writes 0 or 1 into the global variable, depending on the previous value) | | ||
| cnc-gvariable-clear | Clears the value of a global variable | | | cnc-gvariable-clear | Clears the value of a global variable | | ||
+ | ++++ | ||
- | === Job Actions | + | ++++ Job Actions |
^ Action Name ^ Description ^ | ^ Action Name ^ Description ^ | ||
Line 762: | Line 980: | ||
| direct-run-confirm: | | direct-run-confirm: | ||
| radio-confirm | Used for RadioDisplay elements to bring up a popup to ask the user to confirm whether the value should be changed before taking action | | | radio-confirm | Used for RadioDisplay elements to bring up a popup to ask the user to confirm whether the value should be changed before taking action | | ||
- | | mode-cutting-ignore | | | + | | mode-cutting-ignore | Ignores cutting commands to simply move over the material to check the machine movement path. Replaced by global variable #7530 in the more recent profiles (1366 series) |
- | | mode-cutting-accept | | | + | | mode-cutting-accept | Accepts cutting commands from the control program |
- | | mdi-save-list | | | + | | mdi-save-list | Reserved for a procedure in which a series of commands are entered through the Manual Data Input process, and which are then saved as a command list in a file. Contact myCNC Support for more information on this action. |
- | | mode-show-ruler | | | + | | mode-show-ruler | Shows a ruler in the visualization window which indicates the 2D part's dimensions (width/ |
| mode-show-dimension | Shows the overall dimensions of the part on the program visualization screen (width/ | | mode-show-dimension | Shows the overall dimensions of the part on the program visualization screen (width/ | ||
Line 773: | Line 991: | ||
| mode-show-workarea | Shows a box around the program visualization which will denote the work area (useful to see the minimum material dimensions necessary to fit the entire program file in) | | | mode-show-workarea | Shows a box around the program visualization which will denote the work area (useful to see the minimum material dimensions necessary to fit the entire program file in) | | ||
+ | ++++ | ||
- | === OS/System Actions | + | ++++ OS/System Actions |
^ Action Name ^ Description ^ | ^ Action Name ^ Description ^ | ||
Line 782: | Line 1001: | ||
| application-minimize | Minimize MyCNC Application | | | application-minimize | Minimize MyCNC Application | | ||
+ | ++++ | ||
- | === CNC Variables manupulation Actions | + | ++++ CNC Variables manupulation Actions |
^ Action Name ^ Description ^ | ^ Action Name ^ Description ^ | ||
Line 797: | Line 1017: | ||
| item: | See [[mycnc: | | item: | See [[mycnc: | ||
- | | fake | Empty Handler Action. Nothing happens when you run this action | | + | | fake | Empty Handler Action. Nothing happens when you run this action. | |
| myitem-value-inc, | | myitem-value-inc, | ||
- | === HMI Actions | + | ++++ |
+ | |||
+ | ++++ HMI Actions | ||
^ Action Name ^ Description ^ | ^ Action Name ^ Description ^ | ||
Line 818: | Line 1040: | ||
| run-from-here | **Run From Here** command - start job from the selected line | | | run-from-here | **Run From Here** command - start job from the selected line | | ||
+ | ++++ | ||
==== MyCNC screen configuration examples ==== | ==== MyCNC screen configuration examples ==== | ||
The examples for the screen configuration can be found here: [[mycnc: | The examples for the screen configuration can be found here: [[mycnc: | ||
mycnc/mycnc_screen_configuration.txt · Last modified: 2023/07/25 11:26 by ivan