Hi everyone! I'd like to start with a disclaimer, if this is not appropriate here, please feel free to delete/lock this thread, this is not in bad intentions.
The second thing I'd want to say is that I couldn't find any EULA regarding the ASIAIR, and since it's basically a raspberry pi which I believe is some sort of 'free to use' or something similar, maybe they're not allowed to prevent me from trying what I want to try, and therefore should be completely legal, if I'm wrong, please let me know.
With that being said, I own an ASIAIR, and I received a different brand focuser from a friend(Pegasus Focus Cube v2 which should be pretty good...)
Obviously, since I'm using the ASIAIR I'm limited to using ZWO devices, and I wonder if it might be possible to enable or add more optional drivers besides that.
I've found the compiled drivers(I think), which are:
I don't know if I can simply install other INDI drivers, as I think it still depends on the android/ios app itself for that(again, might be wrong).
One thing I thought of would be using the EAF SDK to compile drivers that matches the pegasus, but I don't know if that would work and that feels like a bit too much work.
I would love to hear some of your thoughts on this, do you think it's even possible? If so, any ideas what would be a good approach for that?
Since at its heart it is a raspberry pi, it would be easier to install a the Linux operating system on a new memory card and install KStars/INDI.
I believe someone even wrote a driver to control the 12V power sockets in it.
There are various flavours of Indi Ekos on Raspberry Pi. The easiest thing to do is get a new SD card and keep the Asair one. The just install the free Astroberry image. www.indilib.org/raspberry-pi/astroberry-server.html
Very straightforward and you get a great range of device drivers. I haven't used ASair, but not sure of added benefit of using Asair branded version.
Thanks for the comments, but I'm not really interested in another solution for now, I really like the ease of the ASIAIR and the android/tablet control over it.
I'd first like to see if I might be able to make it work with the ASIAIR instead of trying to install something else.
If someone could try and give me some suggestions related to that it would be much appreciated.
In theory it should be possible to SSH or use the Terminal and make changes to the ASIAir. But exactly what is required to compile compatible drivers and get them to show up and run is the big question.
And in principle ZWO should be beholden to the licensing requirements to use the open source platform. But to my knowledge they have not made available, and won't be unless they are forced to through litigation, and even then, they are in China, so likely unenforceable.
IMHO, the ASIAir is a walled garden that may suit many, but is needlessly restricted. They offer little in terms of added value over established embedded solutions which offer more functionality at a lower cost. Then there is the issue they are profiting off of open source works including INDI and PHD2 without due credit or contributing back to the original projects.
Completely agree with all you've said, I did get the ASIAIR for basically free from a friend and has been using it for a pretty long time now, I also tried astroberry for a bit, the ASIAIR is surely more limited, but I kinda like what they did in terms of RPI->app communication which is pretty comfortable, so I would like to at least give it a try, big part of it is for fun as well, the time I'll need to invest in it is probably not worth it, but I like to try and learn new things.
So I already managed to do a few things, I used init=/bin/sh and managed to first get user access and gain full root control, I managed to enable ssh/ftp, so now I can pretty much do whatever I want in the system.
It looks like the ASIAIR uses different methods for different equipment, e.g for mounts there is simply an xml file that includes all the details of all the mounts, along with all the indi drivers etc, I do see other indi drivers as well, I assume it's basically the complete indi library installed on the ASIAIR but I think they only use the mounts as 'straightforward', as I said before, the cameras, focuser and filter wheel uses the following libraries(I think .so is dynamic library?):
So as far as I can see, there are 2 possible ways of doing that:
1. Make the ASIAIR read the drivers from the actual indi library folder or files.
2. Replace these drivers with compiled indi drivers, which I don't even know if possible, as I'm not that familiar with indilib, can it even compile to a dynamic library?
INDI drivers depend on shared INDI libraries, so you will have to remove the existing INDI stack and then install a new one in case if some of the required drivers are missing.
Can you see what kind of Linux ASIAir is running?
If it is based on Ubuntu, then it should be a fairly straightforward process, considering that you can use INDI PPA for getting the INDI stack.
Hopefully, they did not make any proprietary enhancements to INDI which would prevent their apps from talking to mainstream INDI drivers.
I already looked at it a bit, it looks like getting INDI drivers on ubuntu is super easy, but for raspbian it's slightly more difficult and you need to compile it yourself, I tried that, but it looks like there are some currently installed packages that doesn't match the required packages that I need, and it's giving me some trouble.
As for what you said in the beginning about removing the existing INDI stack and then install a new one, I wonder if that would really solve this issue, I don't know if some files might be missing and that's the reason these drivers are not showing up, or maybe it's something else. These are all the files I have in /usr/share/indi:
-rwxr--r-- 1 pi pi 22465 Mar 11 2020 drivers.xml
-rw-r--r-- 1 pi pi 2995 Feb 3 2020 indi_align_sk.xml
-rw-r--r-- 1 pi pi 274 Feb 3 2020 indi_avalon.xml
-rw-r--r-- 1 pi pi 2773 Feb 3 2020 indi_eqmod_scope_limits_sk.xml
-rw-r--r-- 1 pi pi 2682 Feb 3 2020 indi_eqmod_simulator_sk.xml
-rw-r--r-- 1 pi pi 12218 Feb 3 2020 indi_eqmod_sk.xml
-rw-r--r-- 1 pi pi 282 Feb 3 2020 indi_eqmod.xml
-rw-r--r-- 1 pi pi 486 Feb 3 2020 indi_starbook_telescope.xml
-rw-r--r-- 1 pi pi 1385 Feb 3 2020 indi_tcfs_sk.xml
So clearly all(or most) of the non ZWO drivers are there, the question is how do they filter which drivers they want to use, do I possibly need a dedicated xml file for the focusers?
I'll try to further read and look up on how to INDI library is working, maybe I'll even set it up on an ubuntu VM to try and see.
So for being ignorant, but could you try to share a bit more about this? I'm currently setting up an ubuntu vm to try and learn more about that, but if you could pinpoint about how to add that and if there's anything specific I need to set there besides the driver name?
Here is what I normally do when I need to figure out names of INDI drivers, present on the system: just type indi in the command prompt and press tab a couple of times.
You will get the list of available drivers as a completion.
You can try to figure out how to get INDI drivers from Astroberry, which is also Raspbian based.
I believe Astroberry has some kind of repository for the packages, but I have no idea where it is because I am using Ubuntu.
Here is a script for setting up Ubuntu with all astro software: github.com/avarakin/AstroPiMaker4
I am curious, why do you want to keep ASI software and not switch to Ubuntu or Astroberry?
Oh nice, I didn't knew it works throughout the whole system....
I installed the INDI drivers on my ubuntu VM, I tried to copy them from the ubuntu machine to the ASIAIR matching folders /usr/share, /usr/bin, it looks like I'm still not able to see any other drivers, but I think I can no longer connect to other devices as well(detected, but gives me some connection error), maybe it's because the ubuntu drivers are not supposed to match a raspbian ones?
I'll try to look at the astroberry repo to see if they have any.
As for your question, I'm trying to use it for a secondary rig, I'm very familiar with windows, and I tried ubutnu/astroberry in the past, and they work just fine for certain people, but for my needs the ASIAIR currently really gives a huge value because you really don't need to do much, and it's quite dummy proof, I sometimes struggle enough with my main gear, so having my secondary gear running as fast as possible without much to worry about is really valuable for me, and once again the ease of simply using the app on my phone/tablet is very comfortable.
I'm not trying to say the ASIAIR is better than other solutions, there are pros and cons for everything.
And once again, I love to learn, and I already learned more than I knew yesterday about INDI, so I think I'll continue tinkering with it until I reach a point where I see no hope ahead, maybe I'll even decide to ditch the ASIAIR, who knows