.\" Copyright (c) 2022 Robert Bond .\" .\" This is free documentation; you can redistribute it and/or .\" modify it under the terms of the GNU General Public License as .\" published by the Free Software Foundation; either version 2 of .\" the License, or (at your option) any later version. .\" .\" The GNU General Public License's references to "object code" .\" and "executables" are to be interpreted as the output of any .\" document formatting or typesetting system, including .\" intermediate and printed output. .\" .\" This manual is distributed in the hope that it will be useful, .\" but WITHOUT ANY WARRANTY; without even the implied warranty of .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the .\" GNU General Public License for more details. .\" .\" You should have received a copy of the GNU General Public .\" License along with this manual; if not, write to the Free .\" Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, .\" USA. .\" .\" .\" .TH MDRO "1" "2022-04-01" "LinuxCNC Documentation" "HAL User's Manual" .SH NAME mdro \- manual only Digital Read Out (DRO) .SH SYNOPSIS .B mdro [\fB\-v\fR] [\fB\-p\fR \fIpoint_size\fR] [\fB\-m\fR] [\fB\-l\fR \fIfile.var\fR] [\fIaxes\fR] .SH DESCRIPTION \fBmdro\fR is a manual only DRO providing functionality similar to a traditional manual DRO. It is most useful for manual machines converted to CNC. It allows the user to manually control the machine while continuing to use the DRO scales on the axes. The GUI can be sized to match the user's screen. It is mouse-only and touchscreen friendly. .SH OPTIONS These command line options are normally used when \fBmdro\fR is started in a HAL file. See below for the corresponding .ini file options. .TP \fBv\fR Turn on verbose debug prints. \fB-vv\fR is even more verbose. .TP \fBp\fR \fIpoint_size\fR Set the point size for the text in the application. This option controls the overall size of the window on the screen. Default is 20. Typical values range from 20 to 30. .TP \fBm\fR Set this if the DRO scales provide data scaled in millimeters. .TP \fBl\fR \fIfile.var\fR Load G54 through G57 coordinates from \fIfile.var\fR. .TP \fIaxes\fR This option is used to specify the names of the axes handled by the program. The default is "XYZ". A four axis mill would use "XYZA", and a lathe with a two axis DRO might use "XZ". .SH SCREEN CONFIGURATION The top of the screen includes a row for each axis specified in \fIaxes\fR. Data in these rows are derived from signals on the \fImdro.axis.n\fR pins that are instantiated when \fBmdro\fR is started. Each row includes buttons that allow the value to be be zeroed, to be halved or a new value to be entered. There is also a button that enables the index zero process for that axis. The screen includes buttons that allow the selection of one of four different coordinate systems. The machine coordinate system can also be selected though it cannot be changed. The screen includes a keypad that can be used with a mouse or a touch screen to enter coordinate data. Finally, buttons on the screen allow the selection of inch or mm data display. .SH USAGE \fBmdro\fR is normally started from the \fI[DISPLAY]\fR entry in a dedicated \fBmdro.ini\fR file. The INI file and the associated HAL files should include the pins and signals that support the DRO scales. The HAL connections to \fBmdro\fR must be done in the \fIPOSTGUI_HALFILE\fR referenced in the INI file. .TP Other \fI[DISPLAY]\fR section options: .TP \fIGEOMETRY\fR = \fIaxes\fR Names the coordinate axes used in the program. For example, "XYZ" for a 3 axis mill or "XZ" for a lathe, Default is "XYZ". .TP \fIMDRO_VAR_FILE\fR = \fIfile.var\fR Preload a VAR file. This is typically the VAR file used by the operational code. .TP \fIPOINT_SIZE\fR = \fIn\fR This option sets the size of the font used which sets the overall size of the window. The default point size is 20, Typical sizes are 20 to 30. .TP \fIMM\fR = \fI1\fR Set this if the DRO scales provide data scaled in millimeters. .SH EXAMPLES Using an example of "XYZA" for an \fIaxes\fR argument, these pins will be created when \fBmdro\fR starts: mdro.axis.0 mdro.axis.1 mdro.axis.2 mdro.axis.3 mdro.index-enable.0 mdro.index-enable.1 mdro.index-enable.2 mdro.index-enable.3 In this example, the first row will be labeled "X" and will show the data associated with pin mdro.axis.0. In many configurations, mdro.axis.0 can be connected directly to x-pos-fb in the POSTGUI-HAL file. The index pins should be connected to the corresponding index-enable pins from the DRO. \fBmdro\fR can also be started via a "loadusr" command in a HAL file for a trial. Here's an example of a sim setup: loadusr -W mdro -l sim.var XYZ net x-pos-fb => mdro.axis.0 net y-pos-fb => mdro.axis.1 net z-pos-fb => mdro.axis.2 .SH AUTHOR Robert Bond .SH COPYRIGHT Copyright \(co 2022 Robert Bond .br This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.