LazyFocus User Manual
Installation of the LazyFocus is covered in this section.
To make the best use of your LazyFocus you will likely want to attach a piece of velcro to its back and then also attach a mating piece of velcro onto one of your tripod legs or onto the tripod head. This way you can simply stick the LazyFocus onto the mount, cable it up, and be ready to use the LazyFocus as quickly as possible. In this document however, the components are shown simply laying on a table for clarity.
The LazyFocus requires a DC power source in the range of 9-12V and accepts a standard 5.5mm by 2.1mm power plugs. Any power supply capable of supplying a few hundred milliamps of current should work fine.
The LazyFocus is protected from reverse polarity and requires that the power plug be tip positive and ring negative.
The LazyFocus is interfaced to the PC using the provided serial cable. The female DB9 connector plugs into your PC and the four positions 4-conductor RJ22 plug is inserted into the LazyFocus.
Serial communication is at 9600 baud with one stop bit and no parity. The ASCOM driver for LazyFocus takes care of setting the serial port parameters correctly when you connect to the LazyFocus.

Figure 1: LazyFocus shown with its serial cable attached
You can interface your focus motor to the LazyFocus in one of two ways:

Figure 2: LazyFocus connected to a focus motor using mono patch cord
If your focus motor has encoders and you want to use it as an absolute focus motor as opposed to a relative focus motor, then you will need to make sure that the internal jumper labeled as J5 is in the proper position. Open the LazyFocus by removing the two screws from the bottom, and then remove the top. Move J5 so that it is in the position shown in figure 3. Replace the top and the two screws. Your LazyFocus will now treat the focus motor as an absolute focus motor. The LazyFocus ASCOM driver automatically detects this condition at runtime, and adjusts its settings accordingly. There are no other adjustments that have to be made in order to take advantage of the encoders on an absolute focus motor.
By default when the LazyFocus unit is used for the first time, the position of the absolute encoder is set to 30,000. Whenever the focus motor is moved, either manually using the in or out buttons or via a serial command, the final position is recorded in non-volatile memory. This way when the unit is powered off, it remembers its last known position.

Figure 3: J5 shown in the absolute position; to the left of center
Operation and adjustment of the LazyFocus are described in this section.
OperationThere are two ways to control the focus motor. You can use the LazyFocus hand controller or you can use the LazyFocus serial line focusing commands. In this section, we only cover using the LazyFocus hand controller. For information on the LazyFocus serial line focusing commands, see Appendix A.
As shown in Figure 4, three red buttons are used to control the focus motor using the LazyFocus hand controller. The In and Out buttons move the focus motor in or out respectively. Since the meaning of In and Out is different for different configurations the direction that the focus motor turns when either the In or Out button is pressed can be changed. When the LazyFocus is first powered up, the LED will flash for 3 seconds. If in that 3 seconds your press and hold the speed button, and then release it when the LED lights and stays lit, then the direction that the focus motor turns when either the In or Out button is pressed switches roles. This change is permanently stored in non-volatile memory and you need to make this change only once as it will be remembered across power cycles of the LazyFocus.

Figure 4: Control elements of the LazyFocus hand controller.
When the LazyFocus powers up successfully, the red LED will light and stay lit. The only time you will see it flash is when you press the speed button. The speed button is used to cycle between the slow, medium and fast speeds. Repeatedly pressing the speed button will cyclically cycle the speed of the LazyFocus from slow, to medium, to fast and then back to slow. For each press of the speed button the LED will flash one, two or three times depending on if the new speed is slow, medium or fast respectively. The speed button has one other function, and that is if you hold the speed button down when the LazyFocus is powered up, then all of its internal non-volatile memory is reinitialized to their default values. When the LED lights, just release the speed button and the LazyFocus will boot normally.
The speed of slow focusing, and hence that of fast focusing, is controlled by a small 5Kohm potentiometer on the LazyFocus PCB. This potentiometer is set by default to its middle value, and this setting will often work quite well in most cases.
Please note that you will see little difference in the speed of the motor when it is not under a load. The optimal setting for the pot is when you always get reliable in and out movement of your focuser, when your focus motor is under a load and the LazyFocus is set to the slow speed. If the pot as showing in Figure 4 is turned fully CW, then the least amount of current is delivered to your motor at each of the three different speed settings. In fact almost no current is delivered and it’s likely that your focus motor will not turn at all.
To adjust the pot set the LazyFocus to slow, and make sure your focuser is under its worst case load scenario. For a refractor this is likely when the OTA is pointing at your zenith. Turn the pot fully CW as shown in Figure 4 and actuate the in or the out button appropriately. Slowly turn the pot CCW until the focuser moves in and out reliably.
The LazyFocus unit has several safety features built in that should insure that you never damage your LazyFocus unit or your focus motor. The motor driver circuit that the LazyFocus unit uses has a built-in thermal overload protection that will automatically shut the motor down if it is detected that the driver circuitry is over-heating. Additionally, whenever the motor starts moving due to a serial line command, a 15-second timer is started in the LazyFocus firmware. If the motor is not stopped before the timer expires, then the motor is automatically stopped. It is therefore impossible to move the motor for more than 15 seconds via a serial line command.
You must first install ASCOM before installing the ASCOM driver for LazyFocus. Once you have installed ASCOM, then download and run the installation instructions for LazyFocus. The installation instructions are available here. Download the zip file, extract it to a temporary directory, and follow the directions in the README text file.
The serial port that will be used to communicate with the LazyFocus is chosen using the ASCOM properties dialog box that is shown in figure 5. Using the drop-down combo-box that is labeled, ‘Serial Port,’ you can choose the correct serial port to use when communicating with the LazyFocus.
Please refer to figure five in the rest of this section where all of the different properties that can be set in the ASCOM properties dialog box are discussed in detail.

Figure 5: LazyFocus ASCOM Properties Dialog Box
There are a number of basic properties that can be set for LazyFocus using the ASCOM driver’s properties dialog box. This dialog box is displayed whenever you click on the ‘Properties’ button in the ASCOM driver chooser dialog box. Each of these basic properties is described here.
This is the maximum number of steps allowed in one move operation. If possible, you should set this so that your auto-focusing software can make the longest step it needs to in a single step. For a relative focus motor this is the maximum move time in milliseconds and for an absolute focus motor it is the actual number of steps. Enter the value you want to use using the text box.
Most focusers don’t have a limited range of motion, but some do like the crayford style focusers. If your focuser does not have a limited range of motion, then a good starting value to try for a relative focus motor is 10,000 and 1,000 for an absolute focus motor.
If you know that your focuser has a limited range of movement, then the best thing to do is figure out how many steps your focus motor can move in the case of an absolute focus motor, or how many seconds your focuser can move in the case of a relative focus motor. Your maximum increment value should represent no more than one-half of the maximum range of movement of your focuser.
For an absolute focus motor, your focusing software has some way to see what the current position of your absolute focus motor is and you can use that to drive your focuser to its limits and read the positions at the limits. This will then allow you to determine the range of the focuser movement and to in turn calculate a starting value to use for maximum increment. Using one-half of the range of movement is a good place to start for the maximum increment value. For example, if at your limits the focuser is at position 31,500 and 28,000, then the range is 3,500 so try using a maximum increment value of 1,750 to start with. Keep in mind that when the LazyFocus is used for the first time the initial position of an absolute focus motor is 30,000 and the initial position for a relative focus motor is always zero. It is not possible to remember the position of a relative focus motor across power cycles of the LazyFocus.
For a relative focus motor you can simply start the focus motor moving, and count how many seconds it takes to reach its limit of travel. This number of seconds divided by two and multiplied by 1,000 would be a good starting value to use for the maximum increment.
This is the maximum step position permitted. If any attempt is made to send a command that would move the focus motor greater than this position, it is rejected. Enter the value you want to use using the text box.
This is the minimum step position permitted. If any attempt is made to send a command that would move the focus motor less than this position, it is rejected. Enter the value you want to use using the text box.
Almost any focusing mechanism has some backlash that will cause movement in one direction to be more accurate than in the other direction. You can compensate for this backlash, and take advantage of the best direction of movement in your system by using the properties described here.
Backlash compensation works as follows. You have to choose a final direction that any focus motor movement will make. For most rack-and-pinion focusers the best final movement is in the in direction or in other words when the focuser tube is moving into the telescope tube. For most SCTs the best final movement is when the focuser knob is turned CCW because this move the primary mirror up into the telescope tube. If your final direction is chosen as in (out), then any movement that is made in the in (out) direction simply moves the requested number of steps. However, any movement in the out (in) direction moves the requested number of steps plus the amount of extra steps you specify via the backlash compensation property called "Steps." Once this movement is made there is a short (one second or so) settling delay and then the focus motor is moved in the opposite direction by the amount of steps you specify via the "Steps" property. This insures that the final move direction is always the in (out) direction, and that any backlash in your system is accounted for properly. The number of steps to use is best arrived at empirically.
Please note that backlash compensation does not apply when manually using the in or out buttons on the LazyFocus unit.
This is the number of steps to make in the final direction to compensate for the backlash in your system. Enter the number of steps using the text box.
This is the final direction that the focus motor is always moved after the execution of a serial line move command. Choose the final direction you want simply be selecting the appropriate radio button.
Backlash compensation is used if and only if this check box is checked and a value greater than zero is entered into the ‘Steps’ text box.
For a relative focus motor, and when ever the focus motor is moved manually using the in and out buttons of the LazyFocus, the motor is dynamically braked when it is stopped. This value controls how long this dynamic braking is applied when the motor is stopped. The default value is 5 milliseconds which should be more than adequate for most situations. You may want to adjust this value if you think the motor is being over-braked (moving backwards slightly after stopping) or not braking enough (not completely stopping and continuing forward a little bit after stopping).
Use this group of radio buttons to select the speed to use when moving the focus motor in. Sometimes you may need to use a faster speed if you need a little extra power to get the image train moving. Typically, a heavy imaging train on the back of a refractor will be harder to move in than out. Please note that for a relative focus motor it is important that the move in speed and the move out speed be set to the same value! See section 4.5 for more practical considerations with respect to using a relative focus motor for auto-focusing successfully.
Use this group of radio buttons to select the speed to use when moving the focus motor out. Please note that for a relative focus motor it is important that the move in speed and the move out speed be set to the same value! See section 4.5 for more practical considerations with respect to using a relative focus motor for auto-focusing successfully.
The LazyFocus is capable of decoding the output of a quadrature encoder at a resolution of one times, two times or 4 times its native resolution. You should first try auto focusing at the lowest resolution setting of ‘(X1) Low’ and see if the results are satisfactory or not. If they are, then just use the lowest resolution setting. If they are not, then try the next highest resolution. In general, you will get more accurate and repeatable results by using the lowest resolution setting that gives you adequate results. Choose the resolution you want to use by selecting the appropriate radio button.
Sometimes it is convenient to be able to set the current position of the focus motor to some absolute position. You can do this by entering the position that you desire into the text box labeled ‘Current Position’ and checking the check box labeled ‘Enable.’ When you close the dialog box by clicking ‘OK’ the position of the LazyFocus will be set to the value entered in the text box.
The properties described here apply to an absolute mode focus motor only. After an initial move, it is not uncommon for the actual position of the focus motor to be one or two steps away from the desired position. Using the properties described here you can have the ASCOM driver automatically nudge the focus motor to the desired position that results in extremely accurate positioning.
This is the maximum number of times the ASCOM LazyFocus driver will attempt to nudge the focus motor to the desired position, before giving up.
This is how close the actual position must be to the desired position in order for the nudge to be considered to be successful. If the absolute value of the difference between the actual position and the desired position is less than or equal to this value, then the nudge is considered to be successful. In this case any further nudge attempts as determined by the value of ‘Max Trys’ are not attempted.
Nudging is attempted if and only if this check box is checked and a value greater than zero is entered into the ‘Max Trys’ text box.
Braking occurs after the nudge if and only if this check box is checked. The amount of braking applied is equal to the value in the focuser braking text box. See section 3.5. Usually focus motors with a low gear ratio benefit more from braking after nudging, but you can determine what works best in your case empirically.
The quality of your telescope focuser will be one of the most limiting factors in your ability to achieve accurate and repeatable auto-focusing results. If your focuser exhibits any of the following characteristics, then your chances of successfully auto-focusing your telescope are greatly diminished:
If your focuser suffers from any of the above mentioned anomalies, then you will need to correct them before expecting to get good auto-focusing results. You can usually do this by simply upgrading your focuser. In some cases a focuser can be adjusted and tuned in order to get better performance.
Your mount must be stable, track well and be able to be polar-aligned without the polar alignment slipping over time, or you will have an almost impossible task achieving good auto-focus results. An unstable mount will result in blurry star images during auto-focus runs that will result in false readings. A mount that cannot track well will not be able to keep a star in the field-of-view long enough to achieve auto-focus. A mount that cannot be polar-aligned with a quarter degree of the true pole in each axis, and maintain that alignment indefinitely will not only not work for astrophotography, it will not be able to achieve auto-focus either.
Your camera must be firmly coupled to your focuser and it must not sag, slip or otherwise move in order to achieve good auto-focus results as well as stay focused during the exposure of a photograph.
All telescopes have a range of positions where an image will achieve best focus. The size of this range is called the critical focus range.
Using the formula:
Critical Focus Range = 0.000088 x (Focal Ratio) 2
We can calculate what the critical focus range is for various focal ratio telescopes.
|
Focal Ratio |
Critical Focus Range |
|
10 |
0.22352 mm |
|
8 |
0.143053 mm |
|
6 |
0.080467 mm |
|
4 |
0.035763 mm |
What we should notice about this table is that the faster the telescope, the smaller the critical focus range becomes. In practical terms, your focus motor should be able to position your focuser repeatable and accurately ½ the distance of the critical focus range, or it’s doubtful you will be able to achieve good auto-focus results consistently and repeatably.
You can use a ruler or calipers to measure how far your focuser moves in millimeters for a given number of steps. Simply measure how far your focuser is in or out with respect to some reference point that does not move. Next, move your focuser a given number of steps (say 100 or 1000) and measure how far your focuser is in or out with respect to the same reference point. Subtract these two measurements and then divide it by the number of steps to determine what distance your focuser moves per step.
For a Schmidt-Cassegrain telescope and other similar telescopes, you can focus the telescope with an eyepiece, and then move the focuser out 100 steps. Now pull the eyepiece out of the focuser until the image is sharp. Measure the distance the eyepiece was moved out and divide it by 100. This gives your step size in mm.
In order for a relative focus motor to work correctly, it must be able to move the focuser of your telescope in and out at the same speed. If it moves faster out than in or vice versa, then it’s doubtful that you will be able to get consistent and repeatable auto-focusing results.
The encoder cable for an absolute focus motor should be as short as practically possible in order to get good results. The flat modular 6-conductor cable that is typically used to connect the absolute focus motor to the LazyFocus is especially susceptible to noise being introduced on the encoder channel wires. This noise can and will be detected as a false encoder motion resulting in less than 100% accurate encoder readings. Anything in the 3 to 4 foot long range should work fine. Once over about 6 feet or so the accuracy of readings from the encoders will be diminished.
Appendix A
LazyFocus Serial Commands
|
Command |
Returns |
Remarks |
|
:F+# |
Nothing |
Starts the focus motor moving in the positive direction that can be CW or CCW depending on how the LazyFocus is configured. See 2.1 |
|
:F-# |
Nothing |
Starts the focus motor moving in the negative direction that can be CW or CCW depending on how the LazyFocus is configured. See 2.1 |
|
:FF# |
Nothing |
Set the focus motor speed to fast. |
|
:FG# |
Nothing |
Go to the new position as set by the ":SNYYYY#" command, and dynamically brake the motor when the new position is reached. This command is ignored for a relative focus motor . |
|
:FM# |
Nothing |
Set the focus motor speed to medium. |
|
:FN# |
Nothing |
Go to the new position as set by the ":SNYYYY#" command, and do not dynamically brake the motor when the new position is reached. This command is ignored for a relative focus motor . |
|
:FQ# |
Nothing |
Immediately stop any focus motor movement and brake the motor. |
|
:FS# |
Nothing |
Set the focus motor speed to slow. |
|
:GD# |
XX# |
Return the current focus motor braking delay where XX is a two-digit unsigned hex number. See 3.5 |
|
:GI# |
00# or 01# |
Return "00#" if the focus motor is not moving, otherwise return "01#" |
|
:GM# |
00# or 01# |
Return "00#" if the focus motor is a relative focus motor or "01#" if the focus motor is an absolute focus motor. |
|
:GN# |
YYYY# |
Return the new position previously set by a ":SNYYYY" command where YYYY is a four-digit unsigned hex number. |
|
:GP# |
YYYY# |
Return the current position where YYYY is a four-digit unsigned hex number. |
|
:GR# |
L# or M# or H# |
Return the current resolution of the LazyFocus unit. See 3.7 |
|
:GV# |
DD# |
Get the version of the firmware as a two-digit decimal number where the first digit is the major version number, and the second digit is the minor version number. |
|
:RL# |
Nothing |
Set the current resolution of the LazyFocus unit to low. See 3.7 |
|
:RM# |
Nothing |
Set the current resolution of the LazyFocus unit to medium. See 3.7 |
|
:RH# |
Nothing |
Set the current resolution of the LazyFocus unit to high. See 3.7 |
|
:SDXX# |
Nothing |
Set the current focus motor braking delay where XX is a two-digit unsigned hex number that represents the braking delay in milliseconds. See 3.5 |
|
:SNYYYY# |
Nothing |
Set the new position where YYYY is a four-digit unsigned hex number. |
|
:SPYYYY# |
Nothing |
Set the current position where YYYY is a four-digit unsigned hex number. |