×

INDI Library v2.0.6 is Released (02 Feb 2024)

Bi-monthly release with minor bug fixes and improvements

Canon 7D/7D mkII bulb exposure with mirror lock

  • Posts: 18
  • Thank you received: 3
Hello,

I recently dig into INDI with a Raspberry PI3.
I got 2 Canon camera and try to get it work with the indi_gphoto_ccd driver.

In ekos, i get into a lot of trouble for bulb exposure with the Canon 7D Astrodon
my Canon 7D mkII work pretty out of the box but i cannot manage the mirror lock funtion and this one is not modded.

For investigation, i switch to gphoto2 command line trying to find a solution.
After a lots of testing, i find the "fiat lux" incantation for gphoto !

Both camera with the rotary dial set to B

gphoto2 --set-config imageformat=RAW --set-config autoexposuremode=Bulb --set-config capturetarget=0 --set-config eosremoterelease=2 --set-config eosremoterelease=4 --wait-event=10s --set-config eosremoterelease=2 --wait-event=65s --set-config eosremoterelease=4 --set-config eosremoterelease=0 --capture-tethered=2s --wait-event-and-download=2s

I think that it's pretty generic for Canon device,
Is it possible to leverage this into indi_gphoto_ccd driver and ekos ?
7 years 11 months ago #7759

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

So what exactly needs to be changed in the INDI GPhoto driver? Here is a link to the code
7 years 11 months ago #7766

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

  • Posts: 27
  • Thank you received: 32
Hi,
The mirror lock currently implemented should work only if you have a serial port trigger.
I already implemented a library in c++ handling other shooting methods, but I am having hard times in replacing the legacy driver... mostly because I simply lack the time :(

I hope to be able to finish it soon enough.. In the meantime, if you can, you can test the library itself in here:
github.com/GuLinux/libgphoto-cpp

There is a small readme for compilation, and a few binaries in "examples"
7 years 11 months ago #7781

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

  • Posts: 18
  • Thank you received: 3
I jump into code reading but i've not implemented C code since a very long time, as i use ruby/go on daily basis.
So i m out of my confort zone, and i doubt that i can imlement something that is not ugly :sick: ...

Anyway, i will try to make something work just for testing.

Note regarding indi_gphoto_ccd
Since the implementation of the serial mirror lock the prototype definition of gphoto_start_exposure evolve but the call to the fonction in the standalone gphoto_driver was not updated...

I'm not sure to find where the int mirror_lock value came from.
Ekos serial mirror lock configuration ?
If it's the case, we must maybe provide a switch to use it when we control the shutter via the main USB cable.

Another of my concern is that there is no settings to read if the mirror lock is active on the camera. I need also to check that...
Last edit: 7 years 11 months ago by hugues obolonsky.
7 years 11 months ago #7782

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

  • Posts: 18
  • Thank you received: 3
Some progress today.
Compile and install the 2719 trunk snapshot on my raspberry + 3rdparty indi_gphoto

I found why the bulb exposure doesn't work with my Canon 7D Astrodon.
The test "if (!(gphoto->bulb_widget = find_widget (gphoto, "bulb")))" is not reliable and the camera did not switch to eosremoterelease
So i switch this test to a more convenient find_widget(gphoto, "autoexposuremode") and test if it's set to Manual or Bulb.
The both camera 7D and 7D mkII can now use bulb long exposure via ekos :).

For the next step i will look to the mirror lock implementation.
I have learned today how to get a proper int mirror_lock by putting a /dev/null device on the serial settings.
...
The following user(s) said Thank You: Jasem Mutlaq
7 years 11 months ago #7785

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

Would appreciate a patch so that others users benefit as well!
7 years 11 months ago #7786

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

  • Posts: 18
  • Thank you received: 3
opensource rules !
for sure i will share with the world :)
I just need time and more tests.
7 years 11 months ago #7790

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

  • Posts: 18
  • Thank you received: 3
Hello Jasem,

The mirror lock is now a working feature here :)
So i will prepare a patch and submit it to you. => maybe need more large testing.

Question:
Is there a conduct regarding code indentation or a linter for indi devs ?
Is there somewhere an indent command argument list that i can use for conformity ?
7 years 11 months ago #7794

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

  • Posts: 18
  • Thank you received: 3

File Attachment:

File Name: autoexposu...atch.tgz
File Size:1 KB


File Attachment:

File Name: mirrorlock.patch.tgz
File Size:2 KB

Hello,

Here is 2 patch
The first one is for using autoexposure only in place of bulb for rotatory dial detection
The second one merge autoexposure and mirrorlock functionnality.
( Definilty need a linter as i used to enforce consistently 2 spaces for tabs. I did not want to push it on the patch files to be conservative this time )

Usage:
You must have your rotatory dial set to B on camera
You must put /dev/null as device in the serial mirror lock combo box before launching the driver in ekos
After intitialisation of the gphoto_ccd driver you must set the mirror lock timer.

It work on my both camera 7D and 7D mkII.
Hope it will help other users !

It would be great to have a user with a Canon 6D to test it, as it's also very used device for astrophotography
Maybe we should fire a test with a non Canon camera to be sure i did not break anything,
as far as ther is no tests code and i did not have alla the available cams, i'm pretty blind...

I'm fighting with the rooting renaming files after download on the client with native format, but it's another story, so i will open another thread...
--
Regards
Hoxca
7 years 11 months ago #7821
Attachments:

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

  • Posts: 18
  • Thank you received: 3
Hello Jasem,

If you test it, could you tell me what is your model camera ?
I think that a test on 6D should be a good thing to do, but i've no opportunity to do,
i will try asap, but i did not manage to get someone with a 6D so far...
7 years 11 months ago #7857

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

Hi Hoxca,

I applied both patches. But it seems your patch causes a crash in 350D. Here is the driver output:
2016-05-04T08:57:43: Driver indi_gphoto_ccd: pid=6008 rfd=3 wfd=6 efd=7
2016-05-04T08:57:43: listening to port 7624 on fd 4
2016-05-04T08:57:43: Driver indi_gphoto_ccd: snooping on Telescope Simulator.EQUATORIAL_EOD_COORD
2016-05-04T08:57:43: Driver indi_gphoto_ccd: snooping on Telescope Simulator.TELESCOPE_INFO
2016-05-04T08:57:43: Driver indi_gphoto_ccd: snooping on CCD Simulator.FILTER_SLOT
2016-05-04T08:57:43: Driver indi_gphoto_ccd: snooping on CCD Simulator.FILTER_NAME
2016-05-04T08:57:49: Client 0: new arrival from 37.231.84.212:45524 - welcome!
2016-05-04T08:57:56: Driver indi_gphoto_ccd: Mirror lock value: 0,000000
2016-05-04T08:57:56: Driver indi_gphoto_ccd: Opening gphoto
2016-05-04T08:57:56: Driver indi_gphoto_ccd: Camera init.  Takes about 10 seconds.
2016-05-04T08:57:56: Driver indi_gphoto_ccd: Error during assembling of port list: 'Unspecified error' (-1).
2016-05-04T08:57:57: Driver indi_gphoto_ccd: using shutterspeed as capture widget
2016-05-04T08:57:57: Driver indi_gphoto_ccd: Using external shutter-release cable
2016-05-04T08:57:57: Driver indi_gphoto_ccd: Gphoto initialized
2016-05-04T08:57:57: Driver indi_gphoto_ccd: Blub-stop thread enabled
2016-05-04T08:58:23: Driver indi_gphoto_ccd: Starting exposure (exptime: 1 secs, mirror lock: 0)
2016-05-04T08:58:23: Driver indi_gphoto_ccd:   Mutex locked
2016-05-04T08:58:26: Driver indi_gphoto_ccd: stderr EOF
2016-05-04T08:58:26: Driver indi_gphoto_ccd: restart #1
2016-05-04T08:58:26: Driver indi_gphoto_ccd: pid=6092 rfd=3 wfd=7 efd=8
2016-05-04T08:58:26: Driver indi_gphoto_ccd: snooping on Telescope Simulator.EQUATORIAL_EOD_COORD
2016-05-04T08:58:26: Driver indi_gphoto_ccd: snooping on Telescope Simulator.TELESCOPE_INFO
2016-05-04T08:58:26: Driver indi_gphoto_ccd: snooping on CCD Simulator.FILTER_SLOT
2016-05-04T08:58:26: Driver indi_gphoto_ccd: snooping on CCD Simulator.FILTER_NAME

Here is the backtrace:
Last edit: 7 years 10 months ago by Jasem Mutlaq.
7 years 10 months ago #8048

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

I will test with my DSLR today and report any issues.
7 years 10 months ago #8049

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

Time to create page: 0.307 seconds