Thethered bracketing with EOS Utility and Papywizard  

Everything you need to motorize your head
User avatar
fma38
Moderator
 
Posts: 5850
Likes: 2 posts
Liked in: 2 posts
Joined: Wed Dec 07, 2005 6:21 pm
Location: Grenoble, France
Info

by fma38 » Sat Oct 10, 2009 8:55 am

tarnis, are you using a 50D, or a 20D? I'm lost...

What version of Papywizard are you using? I made some changes in the plugin in the last release (mainly renamed parameters), so I may have introduced a bug...

Could you post the log when it works, and when it fails (turn on 'trace' debug level)?
Frédéric

no avatar
tarnis
Member
 
Posts: 179
Likes: 0 post
Liked in: 0 post
Joined: Wed Feb 18, 2009 8:54 pm
Location: Orlando, FL, US
Info

by tarnis » Fri Oct 16, 2009 10:58 pm

Iv always used it with the 20D, trying the 50D I just got.

Need to shoot another to get a log but I think it's the script...I get the same error just clicking the executable generated by autohotkey.

User avatar
fma38
Moderator
 
Posts: 5850
Likes: 2 posts
Liked in: 2 posts
Joined: Wed Dec 07, 2005 6:21 pm
Location: Grenoble, France
Info

by fma38 » Sat Oct 17, 2009 5:00 pm

Ok.
Frédéric

no avatar
sjhenry
Member
 
Topic author
Posts: 146
Likes: 0 post
Liked in: 0 post
Joined: Tue Mar 10, 2009 1:43 am
Location: Colorado, USA
Info

by sjhenry » Wed Oct 21, 2009 3:46 am

Matt,

i got your email. Did you install the camera driver for your 50D? What version of EOS utility you have installed in your machine? What is the error message you recieve when you run the script via PW? Let me know these details. I don't have 50D but I can see what the difference in EOS Utility version makes the error.

Jones

no avatar
tarnis
Member
 
Posts: 179
Likes: 0 post
Liked in: 0 post
Joined: Wed Feb 18, 2009 8:54 pm
Location: Orlando, FL, US
Info

by tarnis » Wed Oct 21, 2009 12:53 pm

I installed the driver...

I get the same error wherer I run it in papywizard or just running the executable.
"unable to find main window button for eos utility"

Eos utility works fine on its own with the camera.

no avatar
plagarto
New member
 
Posts: 9
Likes: 0 post
Liked in: 0 post
Joined: Tue Oct 27, 2009 12:15 pm
Location: Lisboa
Info

by plagarto » Mon Nov 23, 2009 4:07 pm

Hi guys,
I'm using PW 2.1.13 in Windows 7 x64 but I'm having some trouble with the EOS plugin.
I've compiled EOSbracket posted in 1st page and created bracket.ini like posted, but every time I try to shoot from PW the result is failed and the log looks like this:
2009-11-23 15:08:31,227::Shooting::INFO::Start shooting process...
2009-11-23 15:08:31,227::Shooting::DEBUG::Shooting.start(): create mosaic data object
2009-11-23 15:08:31,227::Shooting::DEBUG::Data.__init__(): create xml tree
2009-11-23 15:08:31,227::Shooting::DEBUG::Data.createHeader(): values={'comment': u'Generated by Papywizard 2.1.13', 'cameraOrientation': u'portrait', 'yawNbPicts': '1', 'pitchNbPicts': '1', 'title': u'Here goes the title', 'bracketingNbPicts': '1', 'timeValue': '-1.0', 'stabilizationDelay': '0.5', 'overlap': '0.25', 'headOrientation': 'up', 'lensType': u'rectilinear', 'yawRealOverlap': '1.00', 'pitchRealOverlap': '1.00', 'sensorCoef': '1.6', 'sensorRatio': u'3:2', 'roll': '90.0', 'focal': '17.0', 'gps': u'Here goes the location'}
2009-11-23 15:08:31,227::Shooting::DEBUG::Data._addNode(): parent=header, tag=general, value=None, attr={}
2009-11-23 15:08:31,227::Shooting::DEBUG::Data._addNode(): parent=general, tag=title, value=Here goes the title, attr={}
2009-11-23 15:08:31,227::Shooting::DEBUG::Data._addNode(): parent=general, tag=gps, value=Here goes the location, attr={}
2009-11-23 15:08:31,227::Shooting::DEBUG::Data._addNode(): parent=general, tag=comment, value=Generated by Papywizard 2.1.13, attr={}
2009-11-23 15:08:31,227::Shooting::DEBUG::Data._addNode(): parent=header, tag=shooting, value=None, attr={'mode': 'mosaic'}
2009-11-23 15:08:31,227::Shooting::DEBUG::Data._addNode(): parent=shooting, tag=headOrientation, value=up, attr={}
2009-11-23 15:08:31,227::Shooting::DEBUG::Data._addNode(): parent=shooting, tag=cameraOrientation, value=portrait, attr={}
2009-11-23 15:08:31,243::Shooting::DEBUG::Data._addNode(): parent=shooting, tag=stabilizationDelay, value=0.5, attr={}
2009-11-23 15:08:31,243::Shooting::DEBUG::Data._addNode(): parent=shooting, tag=startTime, value=2009-11-23_15h08m31s, attr={}
2009-11-23 15:08:31,243::Shooting::DEBUG::Data._addNode(): parent=shooting, tag=endTime, value=2009-11-23_15h08m31s, attr={}
2009-11-23 15:08:31,243::Shooting::DEBUG::Data._addNode(): parent=header, tag=camera, value=None, attr={}
2009-11-23 15:08:31,243::Shooting::DEBUG::Data._addNode(): parent=camera, tag=timeValue, value=-1.0, attr={}
2009-11-23 15:08:31,243::Shooting::DEBUG::Data._addNode(): parent=camera, tag=bracketing, value=None, attr={'nbPicts': '1'}
2009-11-23 15:08:31,243::Shooting::DEBUG::Data._addNode(): parent=camera, tag=sensor, value=None, attr={'ratio': u'3:2', 'coef': '1.6'}
2009-11-23 15:08:31,243::Shooting::DEBUG::Data._addNode(): parent=header, tag=lens, value=None, attr={'type': u'rectilinear'}
2009-11-23 15:08:31,243::Shooting::DEBUG::Data._addNode(): parent=lens, tag=focal, value=17.0, attr={}
2009-11-23 15:08:31,243::Shooting::DEBUG::Data._addNode(): parent=header, tag=mosaic, value=None, attr={}
2009-11-23 15:08:31,243::Shooting::DEBUG::Data._addNode(): parent=mosaic, tag=nbPicts, value=None, attr={'yaw': '1', 'pitch': '1'}
2009-11-23 15:08:31,243::Shooting::DEBUG::Data._addNode(): parent=mosaic, tag=overlap, value=None, attr={'yaw': '1.00', 'minimum': '0.25', 'pitch': '1.00'}
2009-11-23 15:08:31,243::Shooting::DEBUG::Shooting.start(): repeat 1/1
2009-11-23 15:08:31,259::Shooting::DEBUG::Shooting.start(): pict #1 of 1, index=(1, 1, 1), yaw=0.0, pitch=0.0
2009-11-23 15:08:31,259::Main::DEBUG::ShootController.__onShootingUpdate(): index=(1, 1, 1), yaw=0.0, pitch=0.0, state=None, next=True
2009-11-23 15:08:31,259::Shooting::INFO::Moving
2009-11-23 15:08:31,259::Main::DEBUG::ShootController.__onShootingSequence(): sequence=moving
2009-11-23 15:08:31,259::Shooting::DEBUG::SimulationAxis.drive(): 'yawAxis' drive to 0.0
2009-11-23 15:08:31,259::Shooting::DEBUG::SimulationAxis.drive(): 'pitchAxis' drive to 0.0
2009-11-23 15:08:31,259::Shooting::INFO::Stabilization
2009-11-23 15:08:31,259::Main::DEBUG::ShootController.__onShootingSequence(): sequence=stabilization
2009-11-23 15:08:31,773::Shooting::INFO::Shutter cycle
2009-11-23 15:08:31,773::Shooting::DEBUG::Shooting.start(): bracket #1 of 1
2009-11-23 15:08:31,773::Main::DEBUG::ShootController.__onShootingSequence(): sequence=shutter
2009-11-23 15:08:31,773::Shooting::DEBUG::EOSUtilityShutter.shoot(): bracketNumber=1
2009-11-23 15:08:31,773::Shooting::DEBUG::EOSUtilityShutter.shoot(): Program Path=C:/Program Files (x86)/Papywizard/EOSBracket.exe
2009-11-23 15:08:31,773::Shooting::DEBUG::EOSUtilityShutter.shoot(): EOS Utility version=new
2009-11-23 15:08:31,773::Shooting::DEBUG::EOSUtilityShutter.shoot(): Bracketing stops=1
2009-11-23 15:08:31,773::Shooting::DEBUG::EOSUtilityShutter.shoot(): Bracketing type=0-+
2009-11-23 15:08:31,773::Shooting::DEBUG::EOSUtilityShutter.shoot(): Bracketing nb pict=1
2009-11-23 15:08:31,773::Shooting::DEBUG::EOSUtilityShutter.shoot(): Dry run=False
2009-11-23 15:08:31,773::Shooting::DEBUG::EOSUtilityShutter.shoot(): Bulb enable=False
2009-11-23 15:08:31,773::Shooting::DEBUG::EOSUtilityShutter.shoot(): Bulb base exposure 1 s
2009-11-23 15:08:31,773::Shooting::DEBUG::EOSUtilityShutter.shoot(): Focus enable=False
2009-11-23 15:08:31,773::Shooting::DEBUG::EOSUtilityShutter.shoot(): Focus direction=far
2009-11-23 15:08:31,773::Shooting::DEBUG::EOSUtilityShutter.shoot(): Focus step=medium
2009-11-23 15:08:31,773::Shooting::DEBUG::EOSUtilityShutter.shoot(): Focus step count=1
2009-11-23 15:08:31,773::Shooting::DEBUG::EOSUtilityShutter.shoot(): Focus nb picts=1
2009-11-23 15:08:31,773::Shooting::EXCEPTION::Shooting.start()
Traceback (most recent call last):
File "papywizard\model\shooting.pyo", line 562, in start
File "papywizard\plugins\eosUtilityPlugins.pyo", line 181, in shoot
TypeError: sequence item 10: expected string or Unicode, QString found
2009-11-23 15:08:31,773::Shooting::ERROR::Shoot process failed
2009-11-23 15:08:31,773::Main::DEBUG::ShootController.__onShootingStopped(): status=fail

am I doing something wrong?

no avatar
mediavets
Moderator
 
Posts: 16415
Likes: 2 posts
Liked in: 130 posts
Joined: Wed Nov 14, 2007 2:12 pm
Location: Isleham, Cambridgeshire, UK.
Info

by mediavets » Mon Nov 23, 2009 4:30 pm

plagarto wrote:Hi guys,
I'm using PW 2.1.13 in Windows 7 x64 but I'm having some trouble with the EOS plugin.

Perhaps it's not compatible with Windows 7 x64?:
http://www.usa.canon.com/app/pdf/Windows7_compatibility.pdf
Last edited by mediavets on Mon Nov 23, 2009 4:30 pm, edited 1 time in total.
Andrew Stephens
Many different Nodal Ninja and Agnos pano heads. Merlin/Panogear mount with Papywizard on Nokia Internet tablets.
Nikon D5100 and D40, Sigma 8mm f3.5 FE, Nikon 10.5mm FE, 35mm, 50mm, 18-55mm, 70-210mm. Promote control.

no avatar
plagarto
New member
 
Posts: 9
Likes: 0 post
Liked in: 0 post
Joined: Tue Oct 27, 2009 12:15 pm
Location: Lisboa
Info

by plagarto » Mon Nov 23, 2009 5:31 pm

mediavets wrote:Perhaps it's not compatible with Windows 7 x64?:
http://www.usa.canon.com/app/pdf/Windows7_compatibility.pdf

It all works fine when I use PW and shoot with Merlin plugin.
Also if I run the autokey script (not in PW) I'm able to shoot with EOS.
By the way the PW log only returns error in the last few lines.

User avatar
fma38
Moderator
 
Posts: 5850
Likes: 2 posts
Liked in: 2 posts
Joined: Wed Dec 07, 2005 6:21 pm
Location: Grenoble, France
Info

by fma38 » Mon Nov 23, 2009 6:56 pm

Ok, there is a bug in the i18n support in this plugin (and maybe in others). I'll try to fix this quickly.
Frédéric

User avatar
fma38
Moderator
 
Posts: 5850
Likes: 2 posts
Liked in: 2 posts
Joined: Wed Dec 07, 2005 6:21 pm
Location: Grenoble, France
Info

by fma38 » Mon Nov 23, 2009 10:15 pm

Ok, I think I found and fixed the bug.

Before I release a new version, could you try this new plugin version? Just copy/paste the following code, and save it in your plugins config directory (C:\Documents and settings\<user>\Application Data\papywizard2\plugins) under the name you want (something like newEOSplugin.py). Then restart Papywizard. The name of the plugin in the config dialog will be 'EOS Utility 2'... Let me know if it works.

BTW, which language are you using?

Code: Select all
# -*- coding: utf-8 -*-

""" Panohead remote control.

License
=======

 - B{Papywizard} (U{http://www.papywizard.org}) is Copyright:
  - (C) 2007-2009 Frédéric Mantegazza

This software is governed by the B{CeCILL} license under French law and
abiding by the rules of distribution of free software.  You can  use,
modify and/or redistribute the software under the terms of the CeCILL
license as circulated by CEA, CNRS and INRIA at the following URL
U{http://www.cecill.info}.

As a counterpart to the access to the source code and  rights to copy,
modify and redistribute granted by the license, users are provided only
with a limited warranty  and the software's author,  the holder of the
economic rights,  and the successive licensors  have only  limited
liability.

In this respect, the user's attention is drawn to the risks associated
with loading,  using,  modifying and/or developing or reproducing the
software by the user in light of its specific status of free software,
that may mean  that it is complicated to manipulate,  and  that  also
therefore means  that it is reserved for developers  and  experienced
professionals having in-depth computer knowledge. Users are therefore
encouraged to load and test the software's suitability as regards their
requirements in conditions enabling the security of their systems and/or
data to be ensured and,  more generally, to use and operate it in the
same conditions as regards security.

The fact that you are presently reading this means that you have had
knowledge of the CeCILL license and that you accept its terms.

Module purpose
==============

Plugins

Implements
==========

- EOSUtilityShutter
- EOSUtilityShutterController

@author: Jones Henry Subbiah
@author: Frédéric Mantegazza
@copyright: (C) 2009 Jones Henry Subbiah
@copyright: (C) 2007-2009 Frédéric Mantegazza
@license: CeCILL
"""

__revision__ = "$Id: eosUtilityPlugins.py 2197 2009-11-23 18:19:30Z fma $"

import time
import subprocess

from PyQt4 import QtCore, QtGui

from papywizard.common.loggingServices import Logger
from papywizard.plugins.pluginsManager import PluginsManager
from papywizard.plugins.abstractShutterPlugin import AbstractShutterPlugin
from papywizard.plugins.shutterPluginController import ShutterPluginController
from papywizard.view.pluginFields import ComboBoxField, LineEditField, SpinBoxField, CheckBoxField, FileSelectorField

NAME = "EOS Utility 2"

DEFAULT_PROGRAM_PATH = "C:\\Program Files\\Papywizard\\EOSBracket.exe"
DEFAULT_EOS_UTILITY_VERSION = unicode(QtGui.QApplication.translate("eosUtilityPlugins", 'new'))
DEFAULT_BRACKETING_STOPS = '1'
DEFAULT_BRACKETING_TYPE = '0-+'
DEFAULT_BRACKETING_NB_PICTS = 1
DEFAULT_DRY_RUN = True
DEFAULT_BULB_ENABLE = False
DEFAULT_BULB_BASE_EXPOSURE = 1
DEFAULT_FOCUS_ENABLE = False
DEFAULT_FOCUS_DIRECTION = unicode(QtGui.QApplication.translate("eosUtilityPlugins", 'far'))
DEFAULT_FOCUS_STEP = unicode(QtGui.QApplication.translate("eosUtilityPlugins", 'medium'))
DEFAULT_FOCUS_STEP_COUNT = 1
DEFAULT_FOCUS_NB_PICTS = 1
BRACKETING_TYPE_INDEX = {'0--': '1',
                         '0++': '2',
                         '0-+': '3'}
EOS_UTILITY_VERSION_TABLE = {'old': unicode(QtGui.QApplication.translate("eosUtilityPlugins", 'old')),
                             'new': unicode(QtGui.QApplication.translate("eosUtilityPlugins", 'new')),
                             unicode(QtGui.QApplication.translate("eosUtilityPlugins", 'old')): 'old',
                             unicode(QtGui.QApplication.translate("eosUtilityPlugins", 'new')): 'new'}
FOCUS_DIRECTION_TABLE = {'far': unicode(QtGui.QApplication.translate("eosUtilityPlugins", 'far')),
                         'near': unicode(QtGui.QApplication.translate("eosUtilityPlugins", 'near')),
                         unicode(QtGui.QApplication.translate("eosUtilityPlugins", 'far')): 'far',
                         unicode(QtGui.QApplication.translate("eosUtilityPlugins", 'near')): 'near'}
FOCUS_STEP_MODE_TABLE = {'small': unicode(QtGui.QApplication.translate("eosUtilityPlugins", 'small')),
                         'medium': unicode(QtGui.QApplication.translate("eosUtilityPlugins", 'medium')),
                         'large': unicode(QtGui.QApplication.translate("eosUtilityPlugins", 'large')),
                         unicode(QtGui.QApplication.translate("eosUtilityPlugins", 'small')): 'small',
                         unicode(QtGui.QApplication.translate("eosUtilityPlugins", 'medium')): 'medium',
                         unicode(QtGui.QApplication.translate("eosUtilityPlugins", 'large')): 'large'}


class EOSUtilityShutter(AbstractShutterPlugin):
    """ Plugin for the EOS Utility triggering program.
    """
    def _init(self):
        pass

    def _getTimeValue(self):
        return -1

    def _getMirrorLockup(self):
        return False

    def _getBracketingNbPicts(self):
        return 1

    def _getBracketingIntent(self):
        return 'exposure'

    def _defineConfig(self):
        Logger().trace("EOSUtilityShutter._defineConfig()")
        #AbstractShutterPlugin._defineConfig(self)
        self._addConfigKey('_programPath', 'PROGRAM_PATH', default=DEFAULT_PROGRAM_PATH)
        self._addConfigKey('_eosUtilityVersion', 'EOS_UTILITY_VERSION', default=DEFAULT_EOS_UTILITY_VERSION)
        self._addConfigKey('_bracketingStops', 'BRACKETING_STOPS', default=DEFAULT_BRACKETING_STOPS)
        self._addConfigKey('_bracketingType', 'BRACKETING_TYPE', default=DEFAULT_BRACKETING_TYPE)
        self._addConfigKey('_bracketingNbPicts', 'BRACKETING_NB_PICTS', default=DEFAULT_BRACKETING_NB_PICTS)
        self._addConfigKey('_dryRun', 'DRY_RUN', default=DEFAULT_DRY_RUN)
        self._addConfigKey('_bulbEnable', 'BULB_ENABLE', default=DEFAULT_BULB_ENABLE)
        self._addConfigKey('_bulbBseExposure', 'BULB_BASE_EXPOSURE', default=DEFAULT_BULB_BASE_EXPOSURE)
        self._addConfigKey('_focusEnable', 'FOCUS_ENABLE', default=DEFAULT_FOCUS_ENABLE)
        self._addConfigKey('_focusDirection', 'FOCUS_DIRECTION', default=DEFAULT_FOCUS_DIRECTION)
        self._addConfigKey('_focusStep', 'FOCUS_STEP', default=DEFAULT_FOCUS_STEP)
        self._addConfigKey('_focusStepCount', 'FOCUS_STEP_COUNT', default=DEFAULT_FOCUS_STEP_COUNT)
        self._addConfigKey('_focusNbPicts', 'FOCUS_NB_PICTS', default=DEFAULT_FOCUS_NB_PICTS)

    def lockupMirror(self):
        Logger().warning("EOSUtilityShutter.lockupMirror(): Not possible with EOS Utility")
        return 0

    def shoot(self, bracketNumber):
        Logger().debug("EOSUtilityShutter.shoot(): bracketNumber=%d" % bracketNumber)
        Logger().debug("EOSUtilityShutter.shoot(): Program Path=%s" % self._config['PROGRAM_PATH'])
        Logger().debug("EOSUtilityShutter.shoot(): EOS Utility version=%s" % self._config['EOS_UTILITY_VERSION'])
        Logger().debug("EOSUtilityShutter.shoot(): Bracketing stops=%s" % self._config['BRACKETING_STOPS'])
        Logger().debug("EOSUtilityShutter.shoot(): Bracketing type=%s" % self._config['BRACKETING_TYPE'])
        Logger().debug("EOSUtilityShutter.shoot(): Bracketing nb pict=%d" % self._config['BRACKETING_NB_PICTS'])
        Logger().debug("EOSUtilityShutter.shoot(): Dry run=%s" % self._config['DRY_RUN'])
        Logger().debug("EOSUtilityShutter.shoot(): Bulb enable=%s" % self._config['BULB_ENABLE'])
        Logger().debug("EOSUtilityShutter.shoot(): Bulb base exposure %d s" % self._config['BULB_BASE_EXPOSURE'])
        Logger().debug("EOSUtilityShutter.shoot(): Focus enable=%s" % self._config['FOCUS_ENABLE'])
        Logger().debug("EOSUtilityShutter.shoot(): Focus direction=%s" % self._config['FOCUS_DIRECTION'])
        Logger().debug("EOSUtilityShutter.shoot(): Focus step=%s" % self._config['FOCUS_STEP'])
        Logger().debug("EOSUtilityShutter.shoot(): Focus step count=%d" % self._config['FOCUS_STEP_COUNT'])
        Logger().debug("EOSUtilityShutter.shoot(): Focus nb picts=%d" % self._config['FOCUS_NB_PICTS'])

        args = []
        args.append(self._config['PROGRAM_PATH'])
        args.append("CL")
        args.append(EOS_UTILITY_VERSION_TABLE[self._config['EOS_UTILITY_VERSION']])
        args.append(self._config['BRACKETING_STOPS'])
        args.append(BRACKETING_TYPE_INDEX[self._config['BRACKETING_TYPE']])
        args.append(str(self._config['BRACKETING_NB_PICTS']))
        if self._config['DRY_RUN']:
            args.append("n")
        else:
            args.append("y")
        if self._config['BULB_ENABLE']:
            args.append("y")
        else:
            args.append("n")
        args.append(str(self._config['BULB_BASE_EXPOSURE']))
        if self._config['FOCUS_ENABLE']:
            args.append("y")
        else:
            args.append("n")
        args.append(FOCUS_DIRECTION_TABLE[self._config['FOCUS_DIRECTION']])
        args.append(FOCUS_STEP_MODE_TABLE[self._config['FOCUS_STEP']])
        args.append(str(self._config['FOCUS_STEP_COUNT']))
        args.append(str(self._config['FOCUS_NB_PICTS']))
        Logger().debug("EOSUtilityShutter.shoot(): cmdLineArgs '%s'..." % ' '.join(args))

        # Launch external command
        p = subprocess.Popen(args, stdout=subprocess.PIPE, stderr=subprocess.PIPE)

        # Wait end of execution
        stdout, stderr = p.communicate()
        if stderr:
            Logger().debug("EOSUtilityShutter.shoot(): stderr:\n%s" % stderr)
        Logger().debug("EOSUtilityShutter.shoot(): stdout:\n%s" % stdout)

        return p.returncode


class EOSUtilityShutterController(ShutterPluginController):
    def _defineGui(self):
        Logger().trace("EOSUtilityShutterController._defineGui()")
        ShutterPluginController._defineGui(self)
        self._addWidget('Main', QtGui.QApplication.translate("eosUtilityPlugins", "Program path"),
                        FileSelectorField, (QtGui.QApplication.translate("TimelordShutterController", "Choose program path..."),
                                            QtGui.QApplication.translate("TimelordShutterController", "EXE files (*.exe);;All files (*)")),
                        'PROGRAM_PATH')
        types = [EOS_UTILITY_VERSION_TABLE['old'], EOS_UTILITY_VERSION_TABLE['new']]
        self._addWidget('Main', QtGui.QApplication.translate("eosUtilityPlugins", "EOS Utility version"),
                        ComboBoxField, (types,), 'EOS_UTILITY_VERSION')
        self._addWidget('Main', QtGui.QApplication.translate("eosUtilityPlugins", "Bracketing nb picts"),
                        SpinBoxField, (1, 99), 'BRACKETING_NB_PICTS')
        stops = ['1/3', '2/3', '1', '1 1/3', '1 2/3', '2', '2 1/3', '2 2/3','3',
                 '3 1/3', '3 2/3', '4', '4 1/3', '4 2/3', '5', '5 1/3', '5 2/3', '6']
        self._addWidget('Main', QtGui.QApplication.translate("eosUtilityPlugins", "Bracketing stops"),
                        ComboBoxField, (stops,), 'BRACKETING_STOPS')
        self._addWidget('Main', QtGui.QApplication.translate("eosUtilityPlugins", "Bracketing type"),
                        ComboBoxField, (BRACKETING_TYPE_INDEX.keys(),), 'BRACKETING_TYPE')
        self._addWidget('Main', QtGui.QApplication.translate("eosUtilityPlugins", "Dry run"),
                        CheckBoxField, (), 'DRY_RUN')
        self._addTab('Bulb', QtGui.QApplication.translate("eosUtilityPlugins", 'Bulb'))
        self._addWidget('Bulb', QtGui.QApplication.translate("eosUtilityPlugins", "Enable"),
                        CheckBoxField, (), 'BULB_ENABLE')
        self._addWidget('Bulb', QtGui.QApplication.translate("eosUtilityPlugins", "Base exposure"),
                        SpinBoxField, (1, 99, "", " s"), 'BULB_BASE_EXPOSURE')
        self._addTab('Focus', QtGui.QApplication.translate("eosUtilityPlugins", 'Focus'))
        self._addWidget('Focus',  QtGui.QApplication.translate("eosUtilityPlugins", "Enable"),
                        CheckBoxField, (), 'FOCUS_ENABLE')
        focusDir = [FOCUS_DIRECTION_TABLE['far'], FOCUS_DIRECTION_TABLE['near']]
        self._addWidget('Focus', QtGui.QApplication.translate("eosUtilityPlugins", "Direction"),
                        ComboBoxField, (focusDir,), 'FOCUS_DIRECTION')
        stepMode = [FOCUS_STEP_MODE_TABLE['small'], FOCUS_STEP_MODE_TABLE['medium'], FOCUS_STEP_MODE_TABLE['large']]
        self._addWidget('Focus',  QtGui.QApplication.translate("eosUtilityPlugins", "Step"),
                        ComboBoxField, (stepMode,), 'FOCUS_STEP')
        self._addWidget('Focus', QtGui.QApplication.translate("eosUtilityPlugins", "Step count"),
                        SpinBoxField, (1, 99), 'FOCUS_STEP_COUNT')
        self._addWidget('Focus', QtGui.QApplication.translate("eosUtilityPlugins", "Nb picts"),
                        SpinBoxField, (1, 99), 'FOCUS_NB_PICTS')

def register():
    """ Register plugins.
    """
    PluginsManager().register(EOSUtilityShutter, EOSUtilityShutterController, capacity='shutter', name=NAME)
Frédéric

no avatar
tarnis
Member
 
Posts: 179
Likes: 0 post
Liked in: 0 post
Joined: Wed Feb 18, 2009 8:54 pm
Location: Orlando, FL, US
Info

by tarnis » Mon Nov 23, 2009 10:24 pm

Has anyone tried this plugin with a 50D yet?

no avatar
plagarto
New member
 
Posts: 9
Likes: 0 post
Liked in: 0 post
Joined: Tue Oct 27, 2009 12:15 pm
Location: Lisboa
Info

by plagarto » Tue Nov 24, 2009 4:21 am

fma38 wrote:Ok, I think I found and fixed the bug.

Thanks Frederic,

I just did a quick test and it seems the problem is solved, no more errors on PW, the camera is not shooting but I think the problem now is on the autokey script.
I will do some more tests later on and give you some feedback.

Offtopic: if I use the Merlin plugin and activate mirror lockup the PW will take 2 shots, is this normal (Canon 5D MarkII)

User avatar
fma38
Moderator
 
Posts: 5850
Likes: 2 posts
Liked in: 2 posts
Joined: Wed Dec 07, 2005 6:21 pm
Location: Grenoble, France
Info

by fma38 » Tue Nov 24, 2009 10:30 am

Yes, mirror lockup just triggers the shutter before teh shooting process, that's the way most cameras work, It think...
Frédéric

no avatar
Dain Bramage
New member
 
Posts: 1
Likes: 0 post
Liked in: 0 post
Joined: Sat Jan 09, 2010 3:26 am
Info

by Dain Bramage » Sat Jan 09, 2010 3:35 am

hello,
I had the same problem as plagarto but then i put the code in for the EOS plugin 2 (newEOSplugin.py) that you posted above and i can confirm that the eos utility now works for the canon t1i !!!
Thanks a million for all your work this project it's really awesome!

no avatar
sjhenry
Member
 
Topic author
Posts: 146
Likes: 0 post
Liked in: 0 post
Joined: Tue Mar 10, 2009 1:43 am
Location: Colorado, USA
Info

by sjhenry » Sat Apr 10, 2010 5:13 pm

tarnis,

I am using this plugin with 50D now. The reason you get this error message "unable to find main window button for eos utility" is that the EOS utility pops up a preview window on the very first shot. What you need to do is to
1. connect the 50D
2. Once you are seeing the EOS Utility camera screen, press the shutter button on the screen.
3. The preview pop up window will come. Close that window.
4. Now the plugin will work. You have to close the window manually each time you start the EOS Utility. I could not find a way not to make that window pop up. It happens only with my 50D.

Jones

PS: I use the EOS Utility when I ran out of space in the memory card. I also use the Hahnel remote to trigger it directly from the mount.

no avatar
tarnis
Member
 
Posts: 179
Likes: 0 post
Liked in: 0 post
Joined: Wed Feb 18, 2009 8:54 pm
Location: Orlando, FL, US
Info

by tarnis » Sun Apr 11, 2010 12:07 pm

Can try again, but pretty sure I have. The good news is I don't seem to have to tether to use the 50D, it doesn't skip pictures with the built in port like the 20D does. My merlin is a fickel beast.

no avatar
mediavets
Moderator
 
Posts: 16415
Likes: 2 posts
Liked in: 130 posts
Joined: Wed Nov 14, 2007 2:12 pm
Location: Isleham, Cambridgeshire, UK.
Info

by mediavets » Sun Apr 11, 2010 12:35 pm

tarnis wrote:The good news is I don't seem to have to tether to use the 50D, it doesn't skip pictures with the built in port like the 20D does. My merlin is a fickel beast.

I guess you tried adjusting the Pulse width high parameter?:


Last edited by mediavets on Sun Apr 11, 2010 12:36 pm, edited 1 time in total.
Andrew Stephens
Many different Nodal Ninja and Agnos pano heads. Merlin/Panogear mount with Papywizard on Nokia Internet tablets.
Nikon D5100 and D40, Sigma 8mm f3.5 FE, Nikon 10.5mm FE, 35mm, 50mm, 18-55mm, 70-210mm. Promote control.

no avatar
tarnis
Member
 
Posts: 179
Likes: 0 post
Liked in: 0 post
Joined: Wed Feb 18, 2009 8:54 pm
Location: Orlando, FL, US
Info

by tarnis » Sun Apr 11, 2010 12:56 pm

Yip...wondering if it's a camera issue or not. Managed to find work arounds for most of my issues at least.

User avatar
martinlbb
Member
 
Posts: 57
Likes: 0 post
Liked in: 0 post
Joined: Thu Apr 15, 2010 12:41 pm
Location: Lyon
Info

by martinlbb » Thu Apr 15, 2010 12:48 pm

Hi everybody.

I have the same trouble with EOSBracket.exe: Unable to find the main window button for EOS utility.

EOS utility (2.8.1.0) is working fine on is own (with a 5D Mark II), but EOSBraket.exe always give me the same error.

While trying to find a way, I notice that I can't 'tab' on shutter button on EOSUtility.

Is that linked to newest version of EOS Utility (2.8.1.0)? Does anyone got this error?

PS: I'm using Vista 64, and already tested "newEOSplugin.py" without results.

PS2: I'm French, that's the reason why EOS Utility is in French :)


Last edited by martinlbb on Thu Apr 15, 2010 12:52 pm, edited 1 time in total.
Révéler les beautés cachées ou hors de portée : http://www.martinloyer.fr

no avatar
sjhenry
Member
 
Topic author
Posts: 146
Likes: 0 post
Liked in: 0 post
Joined: Tue Mar 10, 2009 1:43 am
Location: Colorado, USA
Info

by sjhenry » Tue Apr 20, 2010 3:15 am

It is working fine with EOS Utility version 2.8.1.0 on my netbook with Win XP. I have not tested it in 64-bit OS. I'll update once I test it.

Jones

no avatar
sjhenry
Member
 
Topic author
Posts: 146
Likes: 0 post
Liked in: 0 post
Joined: Tue Mar 10, 2009 1:43 am
Location: Colorado, USA
Info

by sjhenry » Wed Apr 21, 2010 2:54 am

I tested it in my Vista 64 desktop today with Papywizard and the EOS Utility 2.8.1.0. It worked fine as well. Did you notice any pop up window when the shutter is fired? You have to close that preview window.

1. connect the 5D MII
2. Once you are seeing the EOS Utility camera screen, press the shutter button on the screen.
3. The preview pop up window will come. Close that window.
4. Now the plugin will work. You have to close the window manually each time you start the EOS Utility.

Jones

User avatar
Tipjip
Member
 
Posts: 58
Likes: 0 post
Liked in: 0 post
Joined: Sat Apr 12, 2008 11:25 am
Location: Bonn, Germany
Info

by Tipjip » Sun Apr 25, 2010 9:33 pm

I'm having a problem with the EosBracket script when using longer exposure times. I get the error message that EOS utility is "still busy". Well that's true, because the script waits for one second between shots which is a little short when the exposure time is three seconds. :)

The easy way for the codingly challenged is to make that timestretch longer. Thanks to extensively commented code that is quite easy:

Code: Select all
    ; Wait for a second
    Sleep, 1000

When I set the value to three seconds the script works fine with exposure times of three seconds, as would be expected.

So fine so good, but that makes me wait three seconds for each photo, even if exposure time is significantly shorter than one second. Is there a way to make the script check the exposure time and set the waiting times accordingly?

Regards,

Christian

no avatar
sjhenry
Member
 
Topic author
Posts: 146
Likes: 0 post
Liked in: 0 post
Joined: Tue Mar 10, 2009 1:43 am
Location: Colorado, USA
Info

by sjhenry » Mon Apr 26, 2010 4:37 am

The current script does not even know what the exposure time is. It is simply assuming the base exposure is selected on the EOS Utility and changes it up and down. It also assumes the exposure step is in 1/3 steps.

But it is possible to change the script to know the absolute value of the exposure. This needs some more additional parameters like minimum exposure (1/4000 or 1/8000) and the maximum exposure (30 secs or 60 secs) before going to the bulb exposure and the exposure step 1/2 or 1/3 set up on the camera. Once it is known, the absolute value of the value like 1/320 secs can be passed to the script and the script calculates and sets the exposure correctly.In that case, the last wait time can be set to exposure time + 0.5 secs.

One more advantage to have these additional parameters is that the script can go from the regular exposure to the bulb mode if one of the plus/minus exposure falls in the bulb exposure side automatically. This is another short coming of the current script.

Jones

no avatar
mark_anderson_us
Member
 
Posts: 190
Likes: 0 post
Liked in: 0 post
Joined: Sun Nov 30, 2008 5:37 pm
Location: Chicago
Info

by mark_anderson_us » Mon May 10, 2010 1:48 pm

Castillonis wrote:sjhenry, thanks for posting the concise directions along with the screenshots. I appreciate it. I purchased a Merlin and I am reviewing different netbooks. I am glad that you mentioned the minimum screen resolution of 1024 x 768 for the Canon utility to install / or work. I have noticed that almost all of the netbooks have a screen resolution of 1024 x 600 and that some of the netbooks with 1024 x 768 or 800 have glossy screens. Which netbook are you using?

Hi Guys

i did this on my Samsung NC1q0. Shoudl work on ANY netbook

You can use scrollable 1024x768,

Open properties on desktop > settings tab > advanced > monitor tab> clear box "hide modes this monitor cannot display" > click intel tab > graphics properties > display settings > select 1024x768

You have to be logged in as admin

Works great
Canon EOS 30D with BG-E2 grip
50mm f1.4, 16-35mm f2.8L, 28-70mm f2.8L, 70-200mm f2.8L, 100mm f2.8 Macro
Gitzo 2531, Merlin/Orion

no avatar
mark_anderson_us
Member
 
Posts: 190
Likes: 0 post
Liked in: 0 post
Joined: Sun Nov 30, 2008 5:37 pm
Location: Chicago
Info

by mark_anderson_us » Mon May 10, 2010 2:17 pm

Hi Guys

I'll be trying this, sometime this week with my netbook; however, forgive my ignorance, but I think I'm missing something. If I don't want to use focus blending, besides saving directly to the computer, what's the benefit compared to just using papywizard with the Merlin head. (I know the tethering is simpler too.)

It seems to me the big problem is that no solution that exists today knows when the camera has finished the exposure and is ready to take the next shot. This means you have to try and figure out the longest exposure you're likely to have during the entire seqeunce (a pain at dusk) and then enter that as the time between shots with a safe error margin. So if I'm bracketing +1, 0, -1 and my -1 exposure is 3 secs, my total exposure should time should be 5.25 secs (assuming no delay for writing to disk, as most modern cameras can buffer 7-9 frames). For this example, I would probably enter about 10 secs as my time per shot (huge error margin, but when shooting several hundred frames, missing the last one or two is a killer). This would be wasting at least 4 secs per shot, so if I'm shooting 400 images that's 1600 secs and a lot of light change ast dusk/dawn.

What would it take for paywizard to be able to recognize that the camera is no longer busy and them move immediately instead of waiting for a pre-determined interval? Is this a limitiation of papywizard or the plug-in controlling the camera? Canon and BreezeSys both have SDK's so if someone could write a plug-in that communicates directly with one of these products would it solve the problem. (If it will, I may consider having a go at developing it.)

Regards

Mark
Last edited by mark_anderson_us on Mon May 10, 2010 2:18 pm, edited 1 time in total.
Canon EOS 30D with BG-E2 grip
50mm f1.4, 16-35mm f2.8L, 28-70mm f2.8L, 70-200mm f2.8L, 100mm f2.8 Macro
Gitzo 2531, Merlin/Orion

PreviousNext

Who is online

Users browsing this forum: No registered users and 2 guests

cron