Concerning the physical alignment, I am sure it is much easier using a proper polar scope rather than the poor "polar tunnel" on the iExos-100. However, I wonder whether there is some possibility to achieve a software correction of the alignment in INDI or some of its clients similar to the 2/3-star alignment function in the ES ExploreStars application?
I also tried the joystick control and I am a bit disappointed by the fact the speed of the movement cannot be controlled by the angle of the joystick axis. It is just fixed to a single speed. Is it a limitation of the joystick driver or the PMC8 driver? Can it be improved?
As for the joystick control: if I understand it correctly, it is not possible to change the speed by the joystick angle, is it? Since I am making my own joystick controller, I could implement fake speed_up/slow_down button presses dependent on the angle inside the controller. (However stupid it feels.) But it would have some limitations. The first one is the fact that the speed cannot be changed for the two axes independently - only both together, right? The second is that I am limited to the four speeds currently defined in the PMC8 driver, right? Unfortunately, even the fastest speed (256x) is too slow compared to the maximal slew speed used by the mount. It seems to be easy to add more speeds to the driver so that I could manage it myself; the only question is what is the maximum speed possible/allowed.
As I can see in the code, the current speed of 256x is also set as the maximal speed limit for the driver. Higher speeds are "currently unsupported". I suppose the reason is the need to increase and decrease the speed in gradual steps in order to protect the motors? That is at least something I have seen the documentation from ES.
Another limitation: when using the joystick, I actually cannot move the other axis while one is moving, only one axis movement at a time is possible. Is this a purpose as well?
Also, the joystick gets never connected to the PMC8 driver automatically - I always have to trigger connect manually after start. Saving the settings does not help. The worst thing is reconnecting the joystick, then I have to go to the joystick driver settings (not PMC8) and manually disconnect and connect again. Well, I know, nothing is perfect and I can make some scripts, I am just not sure whether to report such minor issues to someone.
If you have some background, you can always hack the code yourself to fix whatever minor issues you're facing. It's all open source. For the joystick, it appears that USEJOYSTICK is indeed getting saved to config.. so if it not getting saved or is saved properly but not loaded properly, then someone needs to debug the driver and find out why.
Maybe the joystick is not available at the moment the INDI drivers start and turns off again? I noticed that happens with the mount as well. It is not a plug and play system, it only tries once...?
Yes, I would like to contribute, I just do not trust myself. My first experiments ended with a damaged mount and I had to return it. I only tried to telnet and query the firmware version and still the mount stopped working. A discouraging experience. So, when I see something is not implemented by a more competent person, I am afraid there might be some good reason for that. I will try to get deeper into the INDI system, if I can, but I will surely always try to raise questions before trying to actually "fix" something that should not be played with for some good reason.
I really like the whole INDI system architecture, but I still wonder about some details of the implementation, such as the array-like implementation of switches and the reason for such implementation decisions (what happens if I try to switch on more then one option? etc.). I should probably get some time to study the documentation closer before trying to hack something (and break it).
I've tried using the joystick with the PMC8 every now and then. I think my observations were generally the same as yours. It seemed like it was one axis at a time only, and I would sometimes need to go and re-enable the joystick in the PMC8 driver (though oddly enough I don't think it was something I always needed to do). I can't really comment on the speeds. I was using it for minor corrections after a goto, so I didn't want the mount to move quickly anyway.
It bugged me a bit at the time, but I filed it away as something to look at later, as I had other priorities and I'm usually away from the mount when I'm using Indi anyway. But I might be willing to look into it when I get a break from work projects again in a week or so. Or test anything you come up with .
I'm a bit surprised telnetting into the PMC8 and querying it would have bricked the mount. I've done a lot of dumb things with mine and it keeps on ticking. On the other hand, it does take a little while to understand the Indi architecture. If it's any encouragement, I think the real reason why something is not implemented by a more competent person is not that it can't be done, but rather a shortage of competent people who are interested enough in using Indi to control the PMC8. I mean, I'm a lawyer for crying out loud--I shouldn't be allowed to touch the driver .
The problem might have been that I misunderstood the documentation and turned into the debugging mode where there are completely different commands with low-level effects on basic settings. But that is just another reason not to trust myself. Nobody really told me what happened, they just sent me a new mount.
I only tried the mount twice since I bought it and I have had problems with a proper polar alignment and with keeping it. I still need to learn. But I wished to be able to move the mount freely manually even without the goto, just to be on the safe side if I give up fighting in the fields and forests. I have read the higher speeds need to be turned on gradually (and I do not suppose the mount does it automatically, so I expect it to be the reason it is not implemented in the driver yet).
The ability to move both axes at once should not be a problem, though. Currently the driver denies the second movement, because the mount "is currently slewing". I suppose it is not desirable to start movements when the mount is slewing automatically to some target position. So, if it is possible to differentiate between the goto-slewing movement and the manual one, it could be enabled easily. I will have a look.
However, those are all just minor details one can live well without. I guess the most serious limitation of the driver is currently the lack of support for the INDI alignment subsystem...?
After a long search for the code where the driver integrates the joystick controller, I found (surprise! surprise!) that it's all just inherited from the default INDI::Telescope implementation. Finally, a lot of the undocumented settings make some sense to me, as well as the terms "angle" and "magnitude". On the other hand, most of the limitations seem to be based here. Since it is the work of Mutlaq personally, the reason is definitely NOT any lack of competence in this case... The "magnitude" plays no role - it just starts movement when above 90% (and stops when below 50%?). So, trying to program the joystick to work around the INDI system seems as crazy as just playing with the code of the method Telescope::processNSWE() myself. Or maybe is the whole idea of mine to control the speed by the magnitude of the joystick just for some reason bad?
I used joystick with EQMod driver and select "Slew Speed" by tapping the arrow keys up and down in the joystick itself... that made sense to me. I wasn't following exactly how you wanted to perform the speed control. I didn't check how the PMC8 driver offer in terms of slew speed property.