Welcome, Guest
Username: Password: Remember me
20 Aug 2017
INDI development team is happy to announce the release of INDI Library v1.5.0. This new exciting release builds on the maturity of INDI Library and comes with many new supported devices and fixes for existing drivers.
Read More...
  • Page:
  • 1
  • 2

TOPIC: Custom driver for unidimensional fluxes (radio/photons)

Custom driver for unidimensional fluxes (radio/photons) 2 months 4 days ago #17910

  • Platone
  • Platone's Avatar Topic Author
  • Offline
  • Senior Boarder
  • Senior Boarder
  • Posts: 43
  • Thank you received: 12
I was wondering if I could create a driver for a radio telescope or PMT/Photon detectors, something for reading one-dimesional fluxes like radio detection or photon counts.
I pointed to the CCD API of indi, but since CCDs and Videos are "framed" it could cause some difficulty.
Is there any way to read a constant flux or can I use 1px-height frames from CCD?
could be anyone interested on this argument?
Ilias.
The following user(s) said Thank You: knro, Kaczorek

Please Log in or Create an account to join the conversation.

If something has worked, it will work again.
Last Edit: by Platone.

Custom driver for unidimensional fluxes (radio/photons) 2 months 4 days ago #17911

I actually wrote several INDI drivers for a small 5 meter radio dish that operates at 1420Mhz with Spectracyber receiver (continuum and spectral). This was a few years ago, even before INDI::CCD was developed. I'm open to adding another class for radio or photon detectors. Find out what common properties & functionalities are required and start from here by creating a subclass of INDI::BaseDevice.

Please Log in or Create an account to join the conversation.

Jasem Mutlaq
Support INDI & Ekos; Get StellarMate Astrophotography Gadget.
How to Submit Logs when you have problems?

Custom driver for unidimensional fluxes (radio/photons) 2 months 4 days ago #17914

  • Platone
  • Platone's Avatar Topic Author
  • Offline
  • Senior Boarder
  • Senior Boarder
  • Posts: 43
  • Thank you received: 12
One should take care of the timing resolution of these fluxes, for example I'd use a periodic frame reading (blob), its period should be determined by the resolution of the readings and timeouts for re-assembling the flux (number).
A spectrum blob also may be desirable.

One may decide to do interferometry, so there are some variables, like the dishes' distance, the object's position and current time and location.
For an interferometry application there is the need of a system to assemble the observations and to draw the uv-plane.
Even if one decides to use a single radio dish, and draw some image, these drivers should be linked with the mounting, to do scans around the object observed.
I'd leave to the hardware configuration issues regarding baseline delays and things similar (about interferometry).

If one instead decides to do photometry/radiometry, the only datasets needed may be flux continuum and spectrum.

Essentially there are these properties:
- flux (blob)
- spectrum (blob)
- resolution (number)
- timer (number)
- coords (scanning to mount, 4 numbers - x, y, w, h)
- plot/image (blob)

If anything else comes in mind I'll reply on a new message.

Please Log in or Create an account to join the conversation.

If something has worked, it will work again.

Custom driver for unidimensional fluxes (radio/photons) 2 months 3 days ago #17919

I think the overall goal for now is to create a base class that can be subclassed by concrete implementations later on. Perhaps it is best to create base and then implement your detector as a child class. Like Telescope and CCD classes, you can switch capabilities by setCapabilities(..) function. Maybe I'll also migrate Spectracyber to this base class later.
The following user(s) said Thank You: Platone

Please Log in or Create an account to join the conversation.

Jasem Mutlaq
Support INDI & Ekos; Get StellarMate Astrophotography Gadget.
How to Submit Logs when you have problems?

Custom driver for unidimensional fluxes (radio/photons) 2 months 3 days ago #17921

  • Platone
  • Platone's Avatar Topic Author
  • Offline
  • Senior Boarder
  • Senior Boarder
  • Posts: 43
  • Thank you received: 12
I'll do happily this work, please allow some day because I'm full of work in this moment.
I'll add the minimum required in a base class for monodimensional detectors (like Detectors class), then some sub-class could be "Analog Detectors" and "Pulse Detectors" (general, because one could use PMTs or APDs, or else Radio receivers).
Ilias.

Please Log in or Create an account to join the conversation.

If something has worked, it will work again.
Last Edit: by Platone.

Custom driver for unidimensional fluxes (radio/photons) 2 months 3 days ago #17936

  • Platone
  • Platone's Avatar Topic Author
  • Offline
  • Senior Boarder
  • Senior Boarder
  • Posts: 43
  • Thank you received: 12
I quickly created a new class named Detectors. I modified commit 4e1d1584181245471912d4059f630f39f65863ba from git, I added a new driver interface and enlarged the size of get/setDriverInterface type to uint32_t.
Added also two files: indidetector.cpp and indidetector.h.
All is provvisory, I successfully compiled it, but it misses many things, still incomplete, but it is a start.

Ilias.
Attachments:
The following user(s) said Thank You: knro

Please Log in or Create an account to join the conversation.

If something has worked, it will work again.

Custom driver for unidimensional fluxes (radio/photons) 2 months 2 days ago #17940

Great progress!! Please submit a PR to INDI whenever you are ready!

Please Log in or Create an account to join the conversation.

Jasem Mutlaq
Support INDI & Ekos; Get StellarMate Astrophotography Gadget.
How to Submit Logs when you have problems?

Custom driver for unidimensional fluxes (radio/photons) 2 months 1 day ago #17978

  • Platone
  • Platone's Avatar Topic Author
  • Offline
  • Senior Boarder
  • Senior Boarder
  • Posts: 43
  • Thank you received: 12
Jasem, As far as you know, do you think these properties suffice?

-Bandwidth (Hz, number)
-Observed Frequency (Hz, number)
-Sample Frequency (Hz, number)
-Bits per Sample (8, 16, 32, Number)
-Capture Duration (Sec, Number)
-Capture (blob, captured data, length=CaptureDuration*SampleFrequency[*Bpp])
---
I personally would add these ones, since the receiver I'm about to buy seems to reads very slowly (Radioastrolab RAL10):
-BufferSize/Heartbeat (Number, for framed input)
-Raw wave/Intensity (Switch - maybe unnecessary as it can be done in hardware)
-Spectrum1 (Blob)
-Small library* for FFT, Graphs, imaging and statistics into:
-Render1 (Blob)
[edit]
*: this library would be useful also for photometry using CCDs on variable objects.

Let me know your opinion,
Ilias.

Please Log in or Create an account to join the conversation.

If something has worked, it will work again.
Last Edit: by Platone. Reason: little clarification about the device

Custom driver for unidimensional fluxes (radio/photons) 2 months 22 hours ago #17981

These look good. Bear in mind I plan also to migrate INDI SpectraCyber driver to this class, so take a look there and see if there are any other things to consider. The base class should work like others in terms of setting capabilities so that it can be customized depending on what is provided by the child class.

What small library do you have on mind?

Please Log in or Create an account to join the conversation.

Jasem Mutlaq
Support INDI & Ekos; Get StellarMate Astrophotography Gadget.
How to Submit Logs when you have problems?

Custom driver for unidimensional fluxes (radio/photons) 2 months 11 hours ago #17984

  • Platone
  • Platone's Avatar Topic Author
  • Offline
  • Senior Boarder
  • Senior Boarder
  • Posts: 43
  • Thank you received: 12
I'd like to add a library with some functionalities and math operations used in Astronomy, like signal processing operations:
-Fourier transforms.
-Wavelets.
-Autocorrelation.
-Convolution/Deconvolution.
-Here the guiding algorithm could find place.
-Notch/Band pass filters.
-Others.
I collected most of these function into a C# library called ADPASDK (not well documented), which is part of my software, but I'd be happy to port them to INDI.

Ilias.

Please Log in or Create an account to join the conversation.

If something has worked, it will work again.

Custom driver for unidimensional fluxes (radio/photons) 2 months 11 hours ago #17985

That would be great. Drivers that need such library can depend on it. You can create a Github project for it, and I can make an Ubuntu package for it.

Please Log in or Create an account to join the conversation.

Jasem Mutlaq
Support INDI & Ekos; Get StellarMate Astrophotography Gadget.
How to Submit Logs when you have problems?

Custom driver for unidimensional fluxes (radio/photons) 1 month 4 weeks ago #18014

  • Platone
  • Platone's Avatar Topic Author
  • Offline
  • Senior Boarder
  • Senior Boarder
  • Posts: 43
  • Thank you received: 12
Hi Jasem, I think I'm ready. I'd prefer to submit a patch here instead of a pull-request, since I don't have enough knowledge of github.
Ilias.

Please Log in or Create an account to join the conversation.

If something has worked, it will work again.
Last Edit: by Platone.
  • Page:
  • 1
  • 2
Time to create page: 0.433 seconds

Login

3rd Party

Choose from the numerous 3rd party INDI drivers to suit your needs!

Got Problem?

Check out the FAQ, the forum, and the bug tracking system to resolve any issues you might have!
You can also subscribe to INDI newsletter and development mailing lists to get the latest updates on INDI!


Gallery

Replica

Why INDI

Replica