I've been providing ASCOM drivers for my products before, and recently some users want me to provide INDI drivers. It 's a challenge for me because I am not familiar with linux.Thanks for the documentation and tutorials provided by INDI, after a few days of learning I would like to share some of my current understanding of INDI to see if I am on the right way. If something goes wrong, I'd be very grateful if you could point out!
In all, indilib contains the INDI drivers of all products supported by INDI. If I need to add an INDI driver, then I need to download indilib to the local and add the new driver content in CmakeLists and the corresponding folder. Then sync the changed indilib to Github (pull a request), and users can use the new driver by updating indilib. I don't know if this is the only way to add a new driver? I feel that this is very different from Ascom. To install the Ascom driver, you only need to provide an EXE installation package from the developer, and you can install the new driver at any time. However, to install the latest INDI driver, you need to wait for the official release of the new version of the software (Kstars for example)? Another difference is that ASCOM users generally cannot see the Ascom driver code, because the code is hidden in the EXE file. But all the driver code of INDI seems to be published on Github?
I m not sure whether what I said is correct, thanks a lot if you can give any idea!
Welcome to the INDI world. Yes, that's right, INDI is open source, so everybody can read the code. There is a dedicated repository for 3rd party drivers (github.com/indilib/indi-3rdparty), so maybe it's a better idea if you add your driver there.
TSA-120 + FSQ-85 + ONTC 10"F4 Newton (+ epsilon-160 on Japan trip) | Avalon Linear + M-zero | ASI 1600mm pro + 6200mm pro | KStars/INDI on Raspberry Pi 4/Intel NUC
Yes, your understanding is correct. Once the driver is incorporated into INDI (or INDI 3rd-party), the user can use it. Most users are on Ubuntu and they have access to daily builds of the driver (nightly) or wait until the next stable release (bi-monthly). INDI drivers are open source.