Astrofriend's homepage
Share: Twitter Reddit Facebook Gmail Gmail Email
Search Astrofriend's homepage:

Valid CSS!

All pages shall now have been validated

Info Cookies (Kakor) / GDPR


Advertisement /

Twitter @AstrofriendLars

Follow Astrofriend

Tutorial News

Advertisement / Annons:

INDI drivers


  1. Introduction and setup
  2. EQMOD Custom Track Rate
  3. EQMOD Custom Gear Ratio
  4. To be continued

I take no responsibility or liability for what are written here, you use the information on your own risk!

3: EQMOD Custom Gear Ratio

A couple of years ago I rebuilt my EQ6 mount from spur gear to belt drive. There were no timing gear with correct ratio to buy and I did my own design and got a different gear ratio. It didn't matter in that time because I could change the gear ratio in the ASCOM driver EQMOD. Here is how I modified my EQ6 mount: EQ6 mount dismantling and rebuilding.

Later I moved over to Linux and KStars / INDI. There is a variant of EQMOD with INDI driver so it shouldn't be any problem, I thought. Later when everything was ready for setup I found the INDI EQMOD was more like a light version, there was no setup for Custom Gears Raito as in the ASCOM EQMOD version. After some discussion on INDI forum I got tips how to change the source code to apply a Custom Gear Ratio. But I need to understand C++ and how to compile it for Raspberry. With lot of help I have now setup the environment to do this.

EQ6 mount:

Project: INDI EQMOD driver Custom Gear Ratio

It was long time since I had the EQ6 mount up and running. Here I have installed my new variant of EQMOD INDI driver and doing some test, and yes it looks to work.

Changes in the INDI EQMOD source code:

Just to inform you who read this. I have never done something like this. But I have got a lot of help from kind people at forums and friends. I do maybe strange things here but I think I have solved the problem. The file I do these changes in is the skywatcher.cpp, part of the INDI driver EQMOD.


Project: INDI EQMOD driver Custom Gear Ratio

The first change I have done is just to send some information to the Log Warning list. It tell which mount it is and what software version is installed at the mount's driver board. These lines are only to help me when I develop the special version for Custom Gear Ratio I need. The variable Revu24str2long must be the number of micro steps per revolution of the RA axis, it's related to the gear ratio. It have found it from the mount's internal information or from a table.

Project: INDI EQMOD driver Custom Gear Ratio

The next change is that I added an IF block. If it find the mount to be a EQ6 ver 106 it overwrite the original steps per 360 degree with my own steps per 360 degree with Custom Gear Ratio. With this I can still use my other mount which is a HEQ5. This part is tested and looks to work perfect. But only indoor test yet because of clouds.

The parameters I put in here are the same as I used in ASCOM EQMOD: RASteps360 = 8640000 and RAStepWorm = 48000. The difference between them are the spur gear between the stepper motor and the worm.


Project: INDI EQMOD driver Custom Gear Ratio

Even at the Dec gear setup I added a log warning about what's going on to help me during the development of the code.

Project: INDI EQMOD driver Custom Gear Ratio

The same gear ratio as I used for the RA.

Very strange here (row 723 to 730), they have in the original code a RA drift correction for the HEQ5 mount in the Dec axis. Maybe I understand later why this code lines is here.

Log Warning list:

Project: INDI EQMOD driver Custom Gear Ratio

When starting up the Ekos system INDI deliver these warnings from the code lines I wrote. I get info about the MountCode, in this case = 0 = 00, that's the code for the EQ6 mount, HEQ5 has the code 01. After that comes the original gear ratio in the form of number of steps per revolution and after that the custom gear ratio's steps per revolution. Both for the RA and Dec axis. It writes the gear ratio in hex code, I fix this later so it present the data in decimal format.

RA drift compensation:

Before doing this, try to update the SkyWatcher's mount driver board's version 106 to a newer version: Sky-Watcher support. I didn't succeed, I think the E-prom couldn't be flashed on these old mounts. But if it could be done it much better to do that, then there shouldn't be any need of this RA drift compensation.

Project: INDI EQMOD driver Custom Gear Ratio

My EQ6 driver board has the bug which get the RA to go with wrong speed. I find in the original code (line 652 to 659) there is a sub routine to correct this for HEQ5. It correct both the RA and DEC micro steps for worm gear. Sounds a bit strange because this problem has always told to be RA drift problem. After going deep into this I convinced that this is how to do it.

Here is a table of different original gear ratios: EQMOD Pre-requisites.

What's strange here is that they use the 64935 as the number of micro steps for the worm gear. But according to the table it should be 66844. I checked the spur gear ratio, they have 47 and 9 teeth
135*47/9 = 705 = RA total Gear Ratio
47/9*200*64 = 66844 = number of micro steps for worm gear and one revolution, 200 is steps per revolution for the stepper motor.
Both are correct. So way did they use 64935 ?

For the corresponding data of my EQ6 are, original:
180*47/12 = 705 = RA total Gear Ratio
47/12*200*64 = 50133

And with Custom Gear:
180*60/16 = 675 = RA total Gear Ratio
60/16*200*64 = 48000

For sure it would cause some problem later, but I'm used to that.

Outdoor test:

Project: INDI EQMOD driver Custom Gear Ratio

One clear night and I could do some outdoor tests. Especially I want to investigate the RA drift problem before attempt to built in the RA drift compensation. I found the RA axis rotate too fast. With Custom Track rates I could adjust the RA Sidereal time, I have to decrease it from 15.04 arcsec/sec to 11.25 arcsec/sec until I get the RA rotate with correct speed. I use the auto guider to find this, no auto guiding, just observe how the star moves relative the grid. When the speed is correct the star shall stay in the same place. Note: It's very important to have done a good polar alignment and close to Dec = 0. Now I have some information and maybe I can figure how to correct my Custom Gear EQ6 mount.

Sidereal time:

RA drift compensation:

Project: INDI EQMOD driver Custom Gear Ratio

I setup a spreadsheet to find out how this correction works. I don't know exactly what's wrong in the driver board for the EQ6 mount, it's not well documented. With the data I got from the outdoor test I have calculated the RA drift by testing with Custom Track. I set it to the RA Sidereal time were it get the speed to follow the stars. Normally Sidereal time is 15.04 arcsec/sec. Here I have to set it to 11.17 arcsec/sec which gave the RA drift to be -3.86 arcsec/sec. The RA axis rotate too fast. Very big error because of my Custom Gear ratio. Compare with the original gear ratio, RA drift 4.1 arcsec/min.

This is what the 902.464 arcsec/min shall be corrected with in the spreadsheet above. This have to be done because the driver board report the WormGear steps per revolution with bad figures. I have to compensate that with a false gear ratio for the WormGear. Instead of 48000 steps per revolution I shall use 64582. With this false higher value it fouls the RA and DEC to go slower. Without correct information about what's wrong with the driver board it's very difficult to do a correct calculation. But now I put in these corrected figures in the EQMOD C++ code and see what happens, both for the RA and the DEC. If it works I will be very surprised.

New source code, RA drift compensation:

Project: INDI EQMOD driver Custom Gear Ratio

This is for the RA axis, line 847. This was done with an earlier correction, now it's much better calculated in the spreadsheet above.

Project: INDI EQMOD driver Custom Gear Ratio

And this for the DEC axis, I use the same corrected value as I used for the RA, line 718.

Outdoor test:

Project: INDI EQMOD driver Custom Gear Ratio

This evening there wasn't a clear sky, but I still wanted to do a test. I figured out another way to do the test. The position is always correct even when the correction is wrong. I unpark the mount and start the Sidereal speed. If the correction is correct the RA position shouldn't change. And it was almost stable, it changed RA position by -7 arcsec in 13 minutes, slightly too fast. That is 0.00897 arcsec/sec, almost there. With this method the polar align and periodic error doesn't matter, you can even do this indoors.

If the RA position increase it means that the RA axis rotate too slow. If it decrease the RA axis rotate too fast as in this case. I need to increase the micro steps per revolution of worm gear. Before I do that I want to test against a star, I do it next night with a clear sky.

The last drift error I did by try and error method. It ended up with the micro steps for one rev of worm gear was set to 64582. The drift is less than 1 arcsec/hour, that will handled by the auto guiding.

It must be like this it works:
Number of micro steps per rev of RA/DEC axis is used to find the position (RASteps360, DESteps360)
Number of micro steps per rev of Worm axis is used to set rotation speed, Goto, Slew, Sidereal time etc (RAStepsWorm, DEStepsWorm)

Later I will try to upgrade the software of the mount's driver board once again, much better if it doesn't need this correction. But good to learn how to compensate it for other future problems.

Auto guiding test:

Project: INDI EQMOD driver Custom Gear Ratio

One more clear sky and I could do an auto guiding test. The green line in the middle window is the RA tracking. Here it is on the positive side (upper), but this is an effect of the periodic error. Sometimes over and sometimes below the zero line. The total rms error is high because this test is done from the balcony. The object is our dwarf planet Ceres, it has magnitude 7.3 this night and shouldn't be difficult to find on the photo later.

I'm very happy that I solved this. Now I can move my equipment between the two mounts I have and EQMOD will change the gear ratio by automatic. All mounts that is not an EQ6 ver 106 will work as normal. Even better had been if my EQ6 mount have had some unique info, i.e. serial number that I can read out. Then it will only select my mount and set the Custom Gear ratio for it.

When I started the mount the first time I had to setup a new park position. Maybe this make it more difficult when I moving the equipment between the two mounts I have.

Go Back to content

Go Back
To page IV, to be continued

Advertisement / Annons: