I started to debug my issues with the indi_celestron_aux driver and made a major breakthrough last evening.
Please forgive my coding methods, I have been familiarizing myself both with the INDI framework and development under Linux.
To summarize the issue, it appears the indi_celestron_aux driver never initializes the motor controllers using the MC_SET_POSITION command. Both the ALT and AZM controllers have no known values and thus no home position (i.e. the mystery slew limits in RA).
For example, I added a "zero" button to the indi_celestron_aux driver. This allows me to initialize the controllers with a home position after startup.
AUXCommand raCmd(MC_SET_POSITION, ANY, AZM);
raCmd.setPosition(STEPS_PER_REVOLUTION / 4);
sendAUXCommand(raCmd);
AUXCommand decCmd(MC_SET_POSITION, ANY, ALT);
decCmd.setPosition(STEPS_PER_REVOLUTION / 2);
sendAUXCommand(decCmd);
This immediately fixes my slew limit problems. The mount now knows I am positioned at the index marks. However, this is still a work in progress.
I would like to mention two very helpful resources: Rick Bassham's indi-celestron-cgx driver and the AUX protocol document by Andre Parquette (see below).
github.com/rickbassham/indi-celestron-cgx
www.paquettefamily.ca/nexstar/NexStar_AUX_Commands_10.pdf
In my early investigation, I found it easy to modify Rick Bassham's driver to support the SkyQ WiFi module without the need for a hand controller. Since my mount does not support automatic alignment (MC_LEVEL_START and MC_LEVEL_DONE), I also modified the code to manually zero the mount at startup.
Testing the mount indoors with the modified indi-celestron-cgx driver, all my primary issues are fixed. After the initial startup, I can fully control the mount through WiFi with no hand controller. I can also successfully goto any object using KStars.
I am hoping to test outdoors in the next few days; my local weather has not been cooperating.