Menu

#462 Sony A7S Bulb

2.5.7
pending-fixed
A7S bulb (1)
5
2015-11-19
2015-11-11
No

I'd like get bulb exposures working on a Sony A7S. I've tried as follows.

Camera - Set to M mode with PC Remote mode enabled under USB settings. I've found that I need to run the following for the camera to "connect":

M1$ gphoto2 --auto-detect --summary

Once the camera is connected, I can capture images up to 30 seconds as follows with no apparent issues:

M1$ gphoto2 --auto-detect --capture-image-and-download

Moving to Bulb mode from the camera interface (not via gphoto2), I try a bulb capture with the following results:

M1$ gphoto2 --auto-detect -B 22 --capture-image-and-download
Model                          Port                                            
----------------------------------------------------------
Sony Alpha-A7S (Control)       usb:029,007     
Bulb mode enabled (exposure time: 22s).

*** Error ***              
The bulb widget is not configurable.
ERROR: Could not set bulb capture, result -2.
*** Error (-2: 'Bad parameters') ***

What I find interesting is when I simply run the following with the camera in M mode and set to Bulb exposre length directly from the camera:

M1$ gphoto2 --capture-image-and-download

I managed to gather a handful of random length images, none longer than 18 seconds. However, I am unable to recreate this now since a powercycle of the camera. What I get now is an apparent attempt to expose, which runs about 30 seconds (counting in my head), then the camera resets itself.

I've tried the Sony Remote Camera Control application. When in bulb mode, I am able to hold the capture button for arbitrary lengths of time and get what I want. This indicates to me that there is an ability to either start/complete the exposure as separate commands or at least start and hold the exposure until something else happens. I'm wondering if there is a way to "sniff" this at the USB level to determine the commands being used to do this and exploit the findings.

Help is appreciated!!
-gs

1 Attachments

Related

Feature Requests: #462

Discussion

  • Greg Schwimer

    Greg Schwimer - 2015-11-11

    Version info. This is installed on OSX 10.9.5 via Homebrew.

    M1$ gphoto2 --version
    gphoto2 2.5.8
    
    Copyright (c) 2000-2015 Lutz Mueller and others
    
    gphoto2 comes with NO WARRANTY, to the extent permitted by law. You may
    redistribute copies of gphoto2 under the terms of the GNU General Public
    License. For more information about these matters, see the files named COPYING.
    
    This version of gphoto2 is using the following software versions and options:
    gphoto2         2.5.8          clang, popt(m), no exif, no cdk, no aa, jpeg, readline
    libgphoto2      2.5.8          all camlibs, clang, ltdl, no EXIF
    libgphoto2_port 0.12.0         clang, ltdl, USB, serial without locking
    
     
  • Marcus Meissner

    Marcus Meissner - 2015-11-11

    there are windows usb sniffers (SnoopyPro for instance), not sure if they work with newer windows.

    libgphoto2 has a timeout of 35 seconds on capture, so you could just extend this waiting time as local workaround.

    camlibs/ptp2/library.c::camera_sony_capture

    while (time_since(event_start) < 35000);

    is 35 seconds, you can extend it as you see fit.

    We have a bit unreliable delivery of USB interrupts, so we have this timeout.

     
    • Greg Schwimer

      Greg Schwimer - 2015-11-11

      OK. So I should be able to take a bulb capture up to 35 seconds without the workaround? If so, how do I do that, given the info below? What gphoto2 commands? I'd like to try that before I start making changes to the code.

      I'll check into the USB sniffers when I get a chance to get to a Windows machine. Hopefully this can help with extending the feature.

      Thanks!
      Greg

      ----- Original Message -----

      From: "Marcus Meissner" marcusmeissner@users.sf.net
      To: "[gphoto:feature-requests]" 462@feature-requests.gphoto.p.re.sf.net
      Sent: Wednesday, November 11, 2015 5:57:55 AM
      Subject: [gphoto:feature-requests] #462 Sony A7S Bulb

      there are windows usb sniffers (SnoopyPro for instance), not sure if they work with newer windows.

      libgphoto2 has a timeout of 35 seconds on capture, so you could just extend this waiting time as local workaround.

      camlibs/ptp2/library.c::camera_sony_capture

      while (time_since(event_start) < 35000);

      is 35 seconds, you can extend it as you see fit.

      We have a bit unreliable delivery of USB interrupts, so we have this timeout.

      [feature-requests:#462] Sony A7S Bulb

      Status: open
      Group: 2.5.7
      Labels: A7S bulb
      Created: Wed Nov 11, 2015 12:25 AM UTC by Greg Schwimer
      Last Updated: Wed Nov 11, 2015 12:50 AM UTC
      Owner: nobody
      Attachments:

      * gphoto2.bulb.log (295.3 kB; application/octet-stream)
      

      I'd like get bulb exposures working on a Sony A7S. I've tried as follows.

      Camera - Set to M mode with PC Remote mode enabled under USB settings. I've found that I need to run the following for the camera to "connect":
      M1$ gphoto2 --auto-detect --summary

      Once the camera is connected, I can capture images up to 30 seconds as follows with no apparent issues:
      M1$ gphoto2 --auto-detect --capture-image-and-download

      Moving to Bulb mode from the camera interface (not via gphoto2), I try a bulb capture with the following results:
      M1$ gphoto2 --auto-detect -B 22 --capture-image-and-download
      Model Port


      Sony Alpha-A7S (Control) usb:029,007
      Bulb mode enabled (exposure time: 22s).

      *** Error ***
      The bulb widget is not configurable.
      ERROR: Could not set bulb capture, result -2.
      *** Error (-2: 'Bad parameters') ***

      What I find interesting is when I simply run the following with the camera in M mode and set to Bulb exposre length directly from the camera:
      M1$ gphoto2 --capture-image-and-download

      I managed to gather a handful of random length images, none longer than 18 seconds. However, I am unable to recreate this now since a powercycle of the camera. What I get now is an apparent attempt to expose, which runs about 30 seconds (counting in my head), then the camera resets itself.

      I've tried the Sony Remote Camera Control application. When in bulb mode, I am able to hold the capture button for arbitrary lengths of time and get what I want. This indicates to me that there is an ability to either start/complete the exposure as separate commands or at least start and hold the exposure until something else happens. I'm wondering if there is a way to "sniff" this at the USB level to determine the commands being used to do this and exploit the findings.

      Help is appreciated!!
      -gs

      Sent from sourceforge.net because you indicated interest in https://sourceforge.net/p/gphoto/feature-requests/462/

      To unsubscribe from further messages, please visit https://sourceforge.net/auth/subscriptions/

       

      Related

      Feature Requests: #462

  • Marcus Meissner

    Marcus Meissner - 2015-11-11

    i actually do not know how to set Bulb mode right now. I have to find out.

     
  • Greg Schwimer

    Greg Schwimer - 2015-11-11

    I'm pretty good at the CLI and reverse engineering things in general so if there is something you need me to capture from the camera or otherwise try to help just say the word.

    I was looking into the camera config items and found this:

    M1$ gphoto2 --auto-detect --get-config /main/other/d20d
    Model                          Port                                            
    ----------------------------------------------------------
    Sony Alpha-A7S (Control)       usb:029,007     
    Label: Shutter speed
    Type: RANGE
    Current: 0
    Bottom: 0
    Top: 4.29497e+09
    Step: 1
    

    I pulled apart the range values and came to an estimation that a value of 655370 is set when the camera is set to 1 second. With the camera set to 30 seconds (at the camera) the value is 1.96608e+07. When you divide that value by 655370 you get ~29.999 seconds. That said, I think the values scale exposure time linearly.

    Assuming this is the case and given the stated top of the range (above output), that would allow the camera to capture at up to 6553.5 seconds (~109 minutes). That's well above the range of capture I think I'd ever need.

    I put the camera in Bulb mode by adjusting the camera and tried to set arbitrary range values but it didn't take. Maybe there is possibility in this being a way to make it happen? Is there another way to write to this config element?

    M1$ gphoto2 --auto-detect --set-config=/main/other/d20d=6553700
    Model                          Port                                            
    ----------------------------------------------------------
    Sony Alpha-A7S (Control)       usb:029,007     
    M1$ gphoto2 --auto-detect --get-config /main/other/d20d
    Model                          Port                                            
    ----------------------------------------------------------
    Sony Alpha-A7S (Control)       usb:029,007     
    Label: Shutter speed
    Type: RANGE
    Current: 0
    Bottom: 0
    Top: 4.29497e+09
    Step: 1
    
     
  • Marcus Meissner

    Marcus Meissner - 2015-11-11

    step 1 ... shutterspeed == 0 means buib on my system at least

     
  • Marcus Meissner

    Marcus Meissner - 2015-11-11

    i added a bulb option to current libgphoto2 git for Sony and it ... somehow seems to work.

    current git.

    gphoto2 --set-config shutterspeed=Bulb

    (verify on the display or via --get-config shutterspeed)

    then:
    gphoto2 --set-config bulb=1 --wait-event=40s --set-config bulb=0 --wait-event-and-download=100s

    (the after bulb=0 wait is very very long for unknown reasions, as long as the exposure itself or longer. The camera displays "Processing" all the time.)

     
  • Marcus Meissner

    Marcus Meissner - 2015-11-11
    • assigned_to: Marcus Meissner
     
  • Greg Schwimer

    Greg Schwimer - 2015-11-13

    Thank you! I'm working through getting it to compile on OSX but am running into issues with libtools/libltdl. I'll let you know how this works once I get past that.

     
  • Marcus Meissner

    Marcus Meissner - 2015-11-18
    • status: open --> pending-fixed
     
  • Greg Schwimer

    Greg Schwimer - 2015-11-19

    It works! Some notes:

    • See if you have Long Exposure Noise Reduction (LENR) on. This will cause the camera to take a second "dark" exposure of the same length for noise reduction. I have it disabled.
    • I am able to use --wait-event-and-download=5s, however...
    • If you quit gphoto2 mid-capture, the file will not download but the camera seems to cache it until the next capture. It will download it at the next capture, but not the image taken at the next capture so the files pulled from the camera seem to get out of sync. I can reproduce this. I've seen it get behind on downloads up to 2 files, e.g. the file downloaded appears to be from 2 captures prior. Maybe a way to flush the cache at capture start just to be sure?

    Thanks!

     
  • Greg Schwimer

    Greg Schwimer - 2015-11-19

    Another find after a test run of 20 captures back to back: The exposure time is consistently 1 second less than what was set in the command. For example, if I set --wait-event=20s I get a 19 second exposure. I can live with this I think.

     

Log in to post a comment.

MongoDB Logo MongoDB