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/12/03 15:17] – ivan | mycnc:mycnc_screen_configuration [2020/12/29 11:03] – ivan | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ===== MyCNC Screen Configuration ====== | + | ===== Screen |
- | Examples | + | //The default preset GUI for myCNC profiles is described in the following manual: [[mycnc: |
+ | |||
+ | 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 | ||
+ | |||
+ | Video tutorial for screen editing: | ||
+ | |||
+ | {{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 ('' | ||
+ | |||
+ | In general, the order the files are loaded into myCNC (including .xml configuration files and your settings) is explained here: | ||
+ | |||
+ | {{youtube> | ||
==== 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 31: | Line 116: | ||
* **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 57: | Line 142: | ||
* **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 83: | Line 169: | ||
* **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 139: | Line 226: | ||
* **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 171: | Line 259: | ||
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 195: | Line 285: | ||
* **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 224: | Line 315: | ||
* **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 257: | Line 349: | ||
* **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 281: | Line 374: | ||
* **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 303: | Line 397: | ||
* **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 323: | Line 418: | ||
* 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 336: | Line 442: | ||
* **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 349: | Line 483: | ||
| | ||
</ | </ | ||
+ | |||
+ | A text element can serve as a button as well as an icon, with the following code being an example of such a layout: | ||
+ | |||
+ | <code XML>< | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | The button in the case of the example above will look the following way: | ||
+ | |||
+ | {{: | ||
+ | |||
+ | In here, the overlay element is the '' | ||
Line 357: | Line 504: | ||
* **height** - button height in pixels | * **height** - button height in pixels | ||
* **type** - type definition of the item (should be type=" | * **type** - type definition of the item (should be type=" | ||
+ | * **title** - text element overlay on the button | ||
* **image** - a image (icon) file for the button in the SVG format | * **image** - a image (icon) file for the button in the SVG format | ||
* **action** - action for the button (which procedure will be executed if the button is pressed) | * **action** - action for the button (which procedure will be executed if the button is pressed) | ||
Line 364: | Line 512: | ||
* **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 376: | Line 526: | ||
<gitem where=" | <gitem where=" | ||
| | ||
- | | + | |
| | ||
| | ||
Line 406: | Line 556: | ||
* " | * " | ||
- | === 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 429: | Line 592: | ||
* **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 452: | Line 616: | ||
* **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 485: | Line 650: | ||
* **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 503: | Line 668: | ||
* **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). | ||
+ | ++++ | ||
+ | |||
+ | ++++ Myscope (graphs and plots) | | ||
+ | |||
+ | The '' | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Sample code to add a '' | ||
+ | |||
+ | < | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | |||
+ | <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| |
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 524: | Line 734: | ||
* **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 546: | Line 757: | ||
* **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 551: | Line 776: | ||
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 565: | Line 790: | ||
| 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 575: | Line 801: | ||
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 603: | Line 830: | ||
| 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 ^ | ||
Line 613: | Line 841: | ||
| jog-0-minus-1-plus | Two-axes Jog, X- Y+ | | | jog-0-minus-1-plus | Two-axes Jog, X- Y+ | | ||
| jog-0-minus-1-minus | 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 632: | Line 860: | ||
| 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 650: | Line 880: | ||
| 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 662: | Line 893: | ||
| 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 675: | Line 907: | ||
| 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 702: | Line 935: | ||
| 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 710: | Line 943: | ||
| 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 ^ | ||
Line 742: | Line 976: | ||
| toggle-button-mist | Toggles the mist state on/off | | | toggle-button-mist | Toggles the mist state on/off | | ||
| < | | < | ||
+ | ++++ | ||
- | === PLC Actions | + | ++++ PLC Actions |
Line 757: | Line 992: | ||
| 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 775: | Line 1011: | ||
| 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 784: | Line 1021: | ||
| 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 799: | Line 1037: | ||
| 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 820: | Line 1060: | ||
| 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 | | ||
+ | ++++ | ||
+ | |||
+ | ====Fonts==== | ||
+ | |||
+ | For the default profiles to align the text properly, Google' | ||
==== 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