Encoder Settings
When you mount a DRO scale or an encoder onto your machine and connect it to the TouchDRO adapter, the scale, your machine, and the adapter become a tightly coupled measurement instrument. To achieve the maximum possible accuracy, the setup needs to be configured and calibrated together.
The settings for each scale are part of the adapter profile. They include the resolution, the error correction and backlash compensation maps, and a few other things that are intrinsic to the particular scale or encoder. TouchDRO keeps them in the "Encoder Settings (Input X)" dialog, one per adapter input.
Opening the Dialog
The settings are reached through the adapter, since that is where they are stored. Either way you get there, the route runs through the "DRO Adapter Details" dialog, and you open an input's settings with the gear button on its block.
To reach the adapter you are connected to, press the device-status button next to the connection icon at the top of the screen. To reach any adapter TouchDRO knows about, whether or not it is connected, open "Adapter Profiles" from the application menu and press the one you want.



The fields below are described in the order the dialog lists them. Which fields appear at all depends on the encoder type, so that is the one to settle first even though it is the second row down.
Measurement Mode
Sets whether the input is read as a linear position, as an angle, or not at all. The three options are "Disabled", "Linear", and "Angular".
"Linear" is for a device that measures travel: a scale, or an encoder on a leadscrew or rack. "Angular" is for an encoder that measures rotation directly. "Disabled" turns the input off.
What the choice drives is the Calibration Wizard and a few parts of the user interface. An angular input changes the unit on "Resolution" from "counts per inch" to "counts per rev", and the wizard samples two positions a fixed number of revolutions apart instead of measuring a block. Little else depends on it.
An axis pointed at a disabled input stops receiving position. Its readout will not update, any velocity it reports will be zero, and functions that need a live position on that axis, 3D probing among them, may not work.
Encoder Type
It's important to set the correct encoder type. TouchDRO uses it to decide which of the remaining fields are shown, and in particular whether the input is corrected for hysteresis or for backlash.
Those two are opposite corrections. Hysteresis adds counts when the direction changes, and backlash ignores them, because in one case the readout lags the machine and in the other it leads. The same number entered against the wrong one moves the readout the wrong way and makes the error larger rather than smaller, so the type matters more than the amount.
| Type | What it is |
|---|---|
| "Linear Scale" | Glass, magnetic, or capacitive scale on the axis |
| "Leadscrew Encoder" | Rotary encoder on a leadscrew or worm |
| "Rotary Encoder" | Mounted directly on the axis or spindle |
| "Rack & Pinion" | Rotary encoder driven by a rack |
Counts per Screw Rev
Shown for "Leadscrew Encoder" only. The number of encoder counts in one turn of the screw.
This is not the number most encoder documentation quotes. A datasheet usually gives the count of slits in the disk, which is the number of full quadrature periods in one revolution. TouchDRO reads every transition, and two quadrature channels produce four transitions per period, so the figure this field wants is four times the quoted one. An encoder listed at 600 produces 2400 counts per revolution.
If the encoder is driven through gears or a pulley rather than sitting on the screw itself, the drive ratio has to be accounted for as well. Multiply by the number of turns the encoder makes for one turn of the screw. What the field wants is the count at the screw, not at the encoder.
TouchDRO uses the figure to sanity-check the backlash you enter against it. A backlash of a full turn of the screw or more is more lost motion than the thread has, so TouchDRO will say so rather than accept it quietly.
Error Correction Map
A scale's error is rarely uniform along its length. Inexpensive magnetic scales in particular tend to show a cyclic error that repeats at the pole spacing of the magnetic tape, and some show a slow, uneven error that wanders over longer distances. Calibrating the resolution corrects the average, but it can't follow either of those.
An error correction map corrects the scale interval by interval. The map is a list of positions, each with a signed correction in encoder counts, and TouchDRO interpolates linearly between them. Given a map that sets 100 to -5 and 200 to +5, a reading of 110 is corrected by -4, 150 by 0, and 190 by +4.
You can open the editor from the "Error correction map" row of the encoder dialog. The map is edited as a two-column table, "Position" and "Correction", one row per node, with both columns in encoder counts.

The toolbar above the table has buttons to import a map from a file, export the current one to a file, duplicate it, and delete it. Edits are not stored until the "Save" button is pressed; "Cancel" leaves the input as it was.
When a map is imported, a cyan notice band will appear above the toolbar and report what was read: "Loaded 5 points (0 – 400). Press Save to apply them."

The notice matters when the imported file turns out to hold absolute measured positions rather than corrections. TouchDRO will convert the values and say so in the same band, and the band is the only warning there is: an absolute map imports cleanly, since its values are strictly increasing and every validity check passes, and the first symptom would otherwise be readings roughly double the true travel at the machine.
Once saved, the map is summarized on the encoder dialog's row as the range it covers: "4 intervals (0 – 400)". The count is of the intervals between nodes, not of the nodes themselves, so five points make four intervals.

In practice a map is imported rather than typed in. Building one means measuring the scale's error at every interval along its travel, which is slow work to do by hand, so a map normally arrives as a file.
Hysteresis
Hysteresis is a dead zone on a change of direction: the table is already moving, but the readout hasn't started to change yet. It shows up in optical and sometimes magnetic scales, and most commonly in rack and pinion setups, where lash in the rack delays the encoder.
To correct it, enter the size of the dead zone in encoder counts. TouchDRO adds that value whenever it detects a change in direction.
To measure it, set a plunger-type dial test indicator against the axis and move the axis in one direction. Zero both the DRO and the indicator, then move back the other way and note the difference between the two readings. Zero both again, reverse again, and repeat a few times, since one reading on its own will not be representative. Multiply the average of those differences by the input's resolution to get the figure in encoder counts, which is what the field wants.
Backlash Compensation
Backlash is the opposite problem, and it is common wherever an encoder is fitted to a leadscrew. The encoder starts counting as soon as the screw turns, while the table is still standing still and the nut is taking up the lash. The readout moves before the machine does.
To correct it, enter the lost motion in encoder counts. TouchDRO ignores that many counts after a change of direction.
The setting offers "None", "Constant", and "Map". "Constant" applies one figure across the whole travel and is available on every edition.
Backlash Map
A worn leadscrew doesn't have one backlash figure. It has more where the screw has done most of its work and less at the ends, so a single constant is a compromise everywhere. A backlash map holds a separate figure for each interval, and TouchDRO applies whichever one matches the current position.
One difference from the error correction map: a backlash value can never be negative. Backlash is lost motion, so each figure is a number of counts to ignore after a change of direction, not a signed correction.
The editor works the way the error correction map editor does. The table has the same two columns, with "Backlash" in place of "Correction", the same import, export, duplicate, and delete buttons above it, and the same notice band reporting what an imported file contained. Nothing is stored until "Save" is pressed.

Establishing a Repeatable Home Position
Both kinds of map are indexed by position, so they are only correct while TouchDRO's idea of where the axis is agrees with the machine's. That means the axis has to be hard-zeroed at a position you can return to, and it has to be done again every time TouchDRO is restarted, since a fresh start has no memory of where the axis was left.
How you return to that position depends on the scale. A scale with reference marks gives you an exact one: run the reference-mark routine after each power cycle and the scale finds the same point every time.
Without reference marks, a consistent hard stop is usually good enough. Wind the axis against the same stop each time and zero it there. Less precision is needed here than you might expect. The error being corrected has a period measured in millimeters, so a few tens of microns of variation in where you home will not be consequential.
Resolution
The number of counts the encoder produces per unit of travel, shown as "counts per inch" for a linear input and "counts per rev" for an angular one. It can be typed in directly when the figure is known, or measured with the Calibration Wizard using the ruler button beside the field.
The ruler button is color coded: amber while the input has not been calibrated, and green once it has. It is the quickest way to see which inputs still need doing.
Reverse Counting Direction
Inverts the direction the input counts, for a scale mounted so that it reads backwards. Calibration sets this on its own, so it rarely needs touching by hand.
This is the adapter's direction setting and it affects every machine profile that reads the input. Each axis also has its own invert setting in the axis settings, which applies to one profile only.
Input Filter
Smooths the signal arriving on the input. It is there for home-built adapters, the Arduino and MSP430 designs that read iGaging scales directly, where the raw signal needs conditioning before it can be counted reliably.
Leave it switched off on any current TouchDRO adapter. That hardware conditions the scale signal itself, before the reading reaches the application, so the filter has nothing left to do.