I have spent the last few days trying to set up an AAG Cloud Watcher (AAG_CW) unit on Ubuntu 20.04 for my remote autonomous observatory.
I have hit a few brick walls and I am currently uncertain as to how to proceed. From what I have seen on this forum, there are some very knowledgeable here. I therefore thought that it would be sensible to make a post describing what I am trying to do, just in case anyone is easily able to point to what I am doing wrong and save me days/weeks of pain!
The observatory that I am building is designed to be fully autonomous. It therefore requires a way of sensing the local weather to determine when to collect observations. I bought the AAG_CW to perform this task, mostly because they indicated on their website that Linux drivers were available. All I need it to do is continually update a local .txt file with the latest sensor data which can then be read by the code that handles the system automation.
I have tested the hardware in Windows 10, using the manufacturer-provided software, and with the weather sensor connected to an RS232 serial port. Everything works as expected and the weather sensor data is read and saved locally.
This may be where I have made my first mistake. I was expecting that this would be some kind of command line interface with the AAG_CW, that would allow me to query the current sensor data.
As an aside, I also tried running the "aagcloudwatcher_test" command from the terminal. I receive a "Cloudwatcher NOT present" response. Looking at the code on GitHub (my experience with c++ is extremely limited) it appears that it is hard-coded to only look at port /dev/ttyUSB0, whereas my sensor is plugged into port /dev/ttyS4 (an actual RS232 port).
This leads to my first question: Can the drivers available on this site be ran purely from the command line? Or are all of the drivers on this website only for facilitating communication between the hardware and some front-end GUI such as KStars? Additionally, is it a problem that is isnt plugged into the /dev/ttyUSB0 port?
(If the answer to this question is no, skip forward to the conclusion as I have failed at the first hurdle)
I decided to park this first issue and first see if I can get the AAG_CW to function in Ubuntu at all. I downloaded KStars and the required INDI libraries. In KStars I tried to load the AAG Cloud Watcher drivers from the Device Manager window but it immediately crashes with the following error message:
Driver indi_aagcloudwatcher: indi_aagcloudwatcher: symbol lookup error: indi_aagcloudwatcher: undefined symbol: _ZN4INDI10BaseDevice9getSwitchEPKc
Some googling of this error doesnt turn up many results, but there was some indication that it may be due to something being out-of-date. As was suggested for a similar problem, I uninstalled everything, fully updated Ubuntu, then reinstalled everything, but this didnt help.
This leads to my second question: Assuming that the answer to question 1 is yes, is this an error that anyone can suggest how to fix?
I next tried using the AAG Cloud Watcher NG drivers (I dont know what the "NG" means, or how it is different from the first drivers i tried). This driver successfully added. I was then able to open the AAG Cloud Watcher NG tab in the INDI Control Panel window. After changing the port to from the default of ttyUSB0 to the RS232 port that the sensor is connected to (ttyS4), I was able to connect the sensor. However I am never able to get any data from the sensor, all i get is the following errors:
Hence my third question is: is anyone familiar with these errors and can suggest how to fix it?
My main objective in making this post is just to determine if I have fundamentally misunderstood what the drivers on this site are designed to do. If they are not and cannot be used as a simple command line utility to query the current sensor data, then I will have to find a different solution (any suggestions more than welcome!). This may require me to write some code to achieve this myself. Although this will be a challenge (in case it isnt already obvious I am already pushing the current limits of my understanding in this area) I am happy to try once I can confirm it is the only remaining option.
I can't answer all your questions but I can tell you that you need the "AAG Cloudwatcher NG" driver, not the plain "AAG Cloudwatcher". I have no idea what the plain one without "NG" is for, bit it doesn't work with my Cloudwatcher. but the "NG" one does.
Second, there is a new bug in the INDI Cloudwatcher NG that has been resolved, but the driver has not yet been updated. This new bug only occurred within the last month - so if you are just now downloading the driver, you have the buggy version.
iOptron CEM120 EC2 and CEM25P
Celestron C11 EdgeHD
William Optics Star71
ASI 1600Mm Pro, ASI 462MC
Moonlight motorfocus & Esatto focuser
LodeStar X2 and ZWO OAG