Jump to content

SkySurveyBanner.jpg.21855908fce40597655603b6c9af720d.jpg

oaCapture 0.2.0 released


JamesF

Recommended Posts

This has been my "difficult third album" :)

I've actually had the majority of the coding done for some time (and in fact started on 0.3.0 several weeks ago), but getting the necessary testing done somewhat overwhelmed me.  Work and family stuff have got in the way fairly badly and building the brewery has taken a fair bit of time too, so all in all it's been something of a struggle and what I was hoping would take about six weeks has taken more like two and a half months.

I've also come to the conclusion that my architecture for the camera interface library is wrong.  I'm not really worried about that as I think I understand how to go about correcting it and doing so will improve the application performance generally.  Given that when I started this project I wasn't really entirely sure where I was headed I think it was at some point pretty much inevitable.  I had to build it to properly understand the problems I was going to encounter.  That's probably going to wait for at least the release after next though, as I want to get some work done on the Skyris cameras next and I've agreed to a couple of other enhancement requests too.

Downloads are at: http://www.openastroproject.org/downloads/

Brief highlights other than bugfixes...

No more script to mess about with the VID/PID for TIS cameras on Linux

Support for the QHY6, Lodestar and Atik ATK-16 (ish),. though probably none of these are particularly useful at the moment

Improved support for the Xagyl and SX filter wheels

Enabled configuring the VID/PID for Xagyl filter wheels where they don't match my defaults

James

Link to comment
Share on other sites

  • Replies 30
  • Created
  • Last Reply

Well done :)

Updated the Arch Linux package, you can put this link too. Updated the free-astro page that presents it too.

I'm a bit curious about the new Atik camera support, you seem to have an open source implementation, did you make it yourself? Will it support other Atik cameras someday?

Cheers,

Vincent

Link to comment
Share on other sites

Well done :)

Updated the Arch Linux package, you can put this link too. Updated the free-astro page that presents it too.

I'm a bit curious about the new Atik camera support, you seem to have an open source implementation, did you make it yourself? Will it support other Atik cameras someday?

As I understand it the Atik ATK-16 cameras were the offspring of an open-ish project to build some new cameras based on a chipset that was convenient at the time and code for drivers was in the public domain.  I'm sure there are people here who know more about the history of it than me.  I don't know exactly how, but I suspect that code was subsequently used to write the open source driver that forms part of wxAstroCapture.  The driver in wxAstroCapture was no use to me as is, but I used it to "reverse-engineer" an understanding of how the camera works and write my own driver.

At the moment the "modern" Atik cameras aren't even on my radar as I probably have at least three months worth of work already lined up (and probably nearer six).  With the exception of doing some more work to tidy up and improve existing camera support it makes no sense to add more until I've restructured the code and got it all working again.

James

Link to comment
Share on other sites

Hi James,

I tried this on my 16IC and 10.10.1 mini :)

Quicktime couldn't open the saved AVI and the size of the AVI was 6KB and the txt file shows zero frames.

I can suggest the coding for adding the ATIK drivers in if you want. It should be relatively quick - I'll have a look.

Nick

Link to comment
Share on other sites

Edit: On first look the following should be simple:

* providing full management of capture devices - either automatic or providing a list passively with connection - this is simply "give me all the camera models on the system" which the drivers can do for you.

* connect / initialise and get everything working - again this is simple with a claim of the camera.

* image capture - I see you have a start, read and an end.. I see some threading there - the driver could use that thread or it's own active thread.

* Filterwheels - identical.. you can ask what filter wheels there are, it will provide a list.. the only oddity is the ATIK One.. as it has both in a device so understanding your threading between camera and filter wheel classes would be good as I'd suggest using the active proxy here - it's statemachine would cope with any camera/filterwheel requests.

Nick

Link to comment
Share on other sites

Edit: On first look the following should be simple:

* providing full management of capture devices - either automatic or providing a list passively with connection - this is simply "give me all the camera models on the system" which the drivers can do for you.

* connect / initialise and get everything working - again this is simple with a claim of the camera.

* image capture - I see you have a start, read and an end.. I see some threading there - the driver could use that thread or it's own active thread.

* Filterwheels - identical.. you can ask what filter wheels there are, it will provide a list.. the only oddity is the ATIK One.. as it has both in a device so understanding your threading between camera and filter wheel classes would be good as I'd suggest using the active proxy here - it's statemachine would cope with any camera/filterwheel requests.

Nick

I'm going to completely change the threading soon.  The numerous different ways that cameras work has convinced me that I made the wrong decisions initially, so I've come up with a different plan.  As I said earlier, that I have to do this doesn't really bother me.  My initial goal was not to produce something efficient or elegant, but to get code out there, to understand the "problem space" a little better, and to try to establish some sort of workable UI.  When I started I didn't really know where I was going nor understand how many of the different camera models work.  Now I have a much better idea of how to go about it.

James

Link to comment
Share on other sites

Hi James,

I tried this on my 16IC and 10.10.1 mini :)

Quicktime couldn't open the saved AVI and the size of the AVI was 6KB and the txt file shows zero frames.

Doesn't entirely surprise me that quicktime doesn't recognise it.  I've struggled to find much that quicktime can use that's actually suitable for imaging.  If it's possible to persuade it to use the UtVideo codec then it should work.  I have been asked to add support for writing quicktime videos directly, but I think that's going to be restricted to mono cameras.

I think I'm going to need to repartition my MBP so I can dual boot it into 10.10.1.  I tried installing it on a late non-unibody mac mini and it was unusably slow.

James

Link to comment
Share on other sites

I'm going to completely change the threading soon.  The numerous different ways that cameras work has convinced me that I made the wrong decisions initially, so I've come up with a different plan.  As I said earlier, that I have to do this doesn't really bother me.  My initial goal was not to produce something efficient or elegant, but to get code out there, to understand the "problem space" a little better, and to try to establish some sort of workable UI.  When I started I didn't really know where I was going nor understand how many of the different camera models work.  Now I have a much better idea of how to go about it.

James

No worries - not poking at the coding :D  just to say given the same but from the opposite way around - the driver tends to cope with different models.

Link to comment
Share on other sites

No worries - not poking at the coding :D  just to say given the same but from the opposite way around - the driver tends to cope with different models.

I'd actually quite like people to start poking at the code at some point :D  Doing it shortly before I throw a chunk away is probably sub-optimal though :)

Once I have something I consider acceptably stable (at which point I'll probably call it v1.0.0) I'll stick it on github or somewhere similar.

James

Link to comment
Share on other sites

I now understand why the Skyris 132C doesn't work.  The UVC support library doesn't recognise the GUID returned by the camera.  That's a relatively easy fix.

Unfortunately the UVC drivers in the Linux kernel also don't recognise the GUID either, so unless I can persuade the UVC driver maintainers to update their code it's never going to work natively on Linux.  That may not be the biggest problem ever as TIS have implemented a number of extensions to the UVC protocol that I could only really support through the userspace library anyhow.  It's just a bit more of a faff to get everything working with the UVC library on Linux.

James

Link to comment
Share on other sites

Hi James

Just installed 0.2.0 tonight and keep getting this in a terminal-

steve@steve-VGN-NW26M:~/OaCapture/oacapture-0.2.0-recent-64bit$ sudo ./install-binaries.sh
[sudo] password for steve:
install complete
For QHY cameras, remember to add yourself to the 'users' group and log in again
steve@steve-VGN-NW26M:~/OaCapture/oacapture-0.2.0-recent-64bit$ oacapture
oacapture: error while loading shared libraries: libcfitsio.so.0: cannot open shared object file: No such file or directory.

Now I still have 0.1.0 installed so not sure if a conflict occurring?. I`m running the latest Kubuntu 14.10 with plasma 5 KDE5 desktop which I gather is a little buggy at the moment so could also be that?. 0.1.0 is running fine though!

cheers

Steve
 

Link to comment
Share on other sites

Ah, that's a bit of a pig.  Looks like there are different versions of libcfitsio on different machines.  Perhaps I can't ship binaries with FITS support :(

A quick workaround might be to do something like

# ln -s /usr/lib/x86_64-linux-gnu/libcfitsio.so /usr/lib/x86_64-linux-gnu/libcfitsio.so.0

as root.  If you don't already have libcfitsio installed you'll need to do that first.

I'll fix the binaries not to use the library for the time being, too.

James

Link to comment
Share on other sites

Nah it doesn`t like it James. Seems I have libcfitsio3.so on my machine. 0.1.0 running fine.  I`ve just bit the bullet and installed Kubuntu 15.04 and everything else seems to be running fine albeit on an alpha2 release!!

cheers

Steve

Link to comment
Share on other sites

Nah it doesn`t like it James. Seems I have libcfitsio3.so on my machine. 0.1.0 running fine.  I`ve just bit the bullet and installed Kubuntu 15.04 and everything else seems to be running fine albeit on an alpha2 release!!

cheers

Steve

Ah, this is the problem.  The different distributions have given the library different names.  Really helpful when you're trying to distribute a single binary.  At some point soon I'm going to have to bite the bullet and start building .deb and .rpm files for the common distributions.

However, you may find that

 # ln -s /usr/lib/x86_64-linux-gnu/libcfitsio3.so /usr/lib/x86_64-linux-gnu/libcfitsio.so.0

will do the job as a temporary measure.

James

Link to comment
Share on other sites

  • 3 weeks later...

Hi James

Hows the 0.2 development coming along?. I`m trying to install oacapture 0.2 on a new Kubuntu 14.10 build and still getting the libcfitsio.so.0 errors when I try and run it despite trying your fix above?. I`ve reinstalled 0.1 for now which runs fine but not tried it with my Lodestar so not sure if it will/won`t work with that yet as I don`t know if you got round to getting a Lodestar to work with 0.1 before you did 0.2?

cheers

Steve

Link to comment
Share on other sites

Oddly enough I was just thinking about your problem earlier this evening.  I'm pulling together the 0.3.0 release at the moment.  I may well try to get it sorted tonight if I can as it'll probably be at least the weekend before I get another chance if I don't.

James

Link to comment
Share on other sites

I got it to work, but I'd not describe it as brilliant.  It's not really the ideal camera to work with oacapture I don't think.  That may perhaps improve with 0.4.0 as I'm going to completely re-write the camera API in the light of what I've learned from adding support for the Lodestar and Atk-16.  At some point I'm also going to add code or create a new application that's more tailored towards using cameras that really are more "single exposure" type cameras rather than high frame rate streaming cameras.

James

Link to comment
Share on other sites

I see!!. My setup is not straightforward as I have a ZWO ASI120 camera on my ED80 which I want to use for guiding/solving with Kstars/Ekos. My main scope has a spectroscope attached with a guide module on it to which is attached my Lodestar the sole purpose of which is to monitor where a star is in relation to a 25micron slit in its field of view and my main Atik ccd takes a spectrum  from light going through the slit so I don`t want to image with the Lodestar more visual use to tweak the star onto the slit if that makes sense :tongue: . OaCapture would just run alongsid e Ekos/Indi, at least thats the plan!! I did try the ZWO and Lodestar swapped around but the slit just disappeared in the ZWO.

regards

Steve

Link to comment
Share on other sites

It may well work well enough for you in that case.  It's just not particularly outstanding at the moment.  It's possible that binning doesn't work if I recall correctly.  I couldn't get my head around how the frames get transferred when you get into binning.

James

Link to comment
Share on other sites

I think I may have been beaten by circumstances this evening :(  I need to install a new virtual machine to build a binary that will work for you, but at the moment I'm struggling to get 60kB/s on downloads to install the stuff I need :(

James

Link to comment
Share on other sites

Ah, this is the problem.  The different distributions have given the library different names.  Really helpful when you're trying to distribute a single binary.  At some point soon I'm going to have to bite the bullet and start building .deb and .rpm files for the common distributions.

However, you may find that

 # ln -s /usr/lib/x86_64-linux-gnu/libcfitsio3.so /usr/lib/x86_64-linux-gnu/libcfitsio.so.0

will do the job as a temporary measure.

James

This didn't work for me on Ubuntu 14.10, but the following did:

 sudo  ln -s /usr/lib/x86_64-linux-gnu/libcfitsio.so.3 /usr/lib/x86_64-linux-gnu/libcfitsio.so.0

Now oacapture 0.2.0 runs flawlessly.

Thank you so much for this brilliant bit of software.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. By using this site, you agree to our Terms of Use.