The software looks great, but I am having trouble connecting. Have installed the software on Windows 7 x64 SP1. Program starts OK, but it freezes anytime the camera is turned on. If I turn the camera off again, the program resumes normal operation.
Steps:
1) connect camera, turn OFF
2) start software (everything works normal)
3) turn camera ON
4) windows recognizes camera, software freezes (not responding in task manager)
5) turn camera OFF, software becomes useable.
I've attached the logfile. Looks like a few MTP error codes are causing the program to hang?
Thanks for all the hard work, the software looks great otherwise!
Nikon D3000 Testing
-
- Posts: 2
- Joined: Mon May 13, 2013 4:11 am
Logfile
Looks like the logfile wouldn't upload for come reason, so here's the code:
2013-05-12 20:08:03,344 [1]DEBUG DCC [(null)] - --------------------------------===========================Application starting===========================--------------------------------
2013-05-12 20:08:03,375 [1]DEBUG DCC [(null)] - Application version : 1.0.0.0
2013-05-12 20:08:03,953 [1]DEBUG DCC [(null)] - LoadPlugins from:C:\Program Files (x86)\digiCamControl\Plugins\CameraControl.Plugins.dll
2013-05-12 20:08:54,106 [1]DEBUG DCC [(null)] - Connection device \\?\usb#vid_04b0&pid_0424#000003404135#{6ac27878-a6fa-4155-ba85-f98f491d4f33}
2013-05-12 20:08:54,418 [1]DEBUG DCC [(null)] - Error set property :500D
CameraControl.Devices.Classes.DeviceException: Device MTP error code: A005
at CameraControl.Devices.Classes.ErrorCodes.GetException(UInt32 code)
at CameraControl.Devices.BaseMTPCamera.SetProperty(Int32 code, Byte[] data, Int32 param1, Int32 param2)
2013-05-12 20:08:55,229 [1]DEBUG DCC [(null)] - Error set property 10B
CameraControl.Devices.Classes.DeviceException: Device MTP error code: 200A
at CameraControl.Devices.Classes.ErrorCodes.GetException(UInt32 code)
at CameraControl.Devices.BaseMTPCamera.SetProperty(Int32 code, Byte[] data, Int32 param1, Int32 param2)
2013-05-12 20:09:21,375 [1]DEBUG DCC [(null)] - ===========Camera is connected==============
2013-05-12 20:09:21,375 [1]DEBUG DCC [(null)] - Driver :NikonD300
2013-05-12 20:09:21,375 [1]DEBUG DCC [(null)] - Name 3000
2013-05-12 20:09:21,375 [1]DEBUG DCC [(null)] - Manufacturer :Nikon Corporation
2013-05-12 20:09:21,375 [1]DEBUG DCC [(null)] - Error set property 10B
CameraControl.Devices.Classes.DeviceException: Device MTP error code: 80070002
at CameraControl.Devices.Classes.ErrorCodes.GetException(UInt32 code)
at CameraControl.Devices.BaseMTPCamera.SetProperty(Int32 code, Byte[] data, Int32 param1, Int32 param2)
2013-05-12 20:09:21,437 [1]DEBUG DCC [(null)] - Error set property 10B
CameraControl.Devices.Classes.DeviceException: Device MTP error code: 80070002
at CameraControl.Devices.Classes.ErrorCodes.GetException(UInt32 code)
at CameraControl.Devices.BaseMTPCamera.SetProperty(Int32 code, Byte[] data, Int32 param1, Int32 param2)
2013-05-12 20:09:21,640 [5]DEBUG DCC [(null)] - Get event error :80070002
2013-05-12 20:09:21,764 [11]DEBUG DCC [(null)] - ===========Camera disconnected==============
2013-05-12 20:09:21,764 [11]DEBUG DCC [(null)] - Name 3000
2013-05-12 20:09:21,787 [1]DEBUG DCC [(null)] - No translation for:|
2013-05-12 20:09:21,788 [1]DEBUG DCC [(null)] - No translation for:|
2013-05-12 20:09:21,789 [1]DEBUG DCC [(null)] - No translation for:|
2013-05-12 20:10:56,307 [1]DEBUG DCC [(null)] - Window command received :All_Close
2013-05-12 20:08:03,344 [1]DEBUG DCC [(null)] - --------------------------------===========================Application starting===========================--------------------------------
2013-05-12 20:08:03,375 [1]DEBUG DCC [(null)] - Application version : 1.0.0.0
2013-05-12 20:08:03,953 [1]DEBUG DCC [(null)] - LoadPlugins from:C:\Program Files (x86)\digiCamControl\Plugins\CameraControl.Plugins.dll
2013-05-12 20:08:54,106 [1]DEBUG DCC [(null)] - Connection device \\?\usb#vid_04b0&pid_0424#000003404135#{6ac27878-a6fa-4155-ba85-f98f491d4f33}
2013-05-12 20:08:54,418 [1]DEBUG DCC [(null)] - Error set property :500D
CameraControl.Devices.Classes.DeviceException: Device MTP error code: A005
at CameraControl.Devices.Classes.ErrorCodes.GetException(UInt32 code)
at CameraControl.Devices.BaseMTPCamera.SetProperty(Int32 code, Byte[] data, Int32 param1, Int32 param2)
2013-05-12 20:08:55,229 [1]DEBUG DCC [(null)] - Error set property 10B
CameraControl.Devices.Classes.DeviceException: Device MTP error code: 200A
at CameraControl.Devices.Classes.ErrorCodes.GetException(UInt32 code)
at CameraControl.Devices.BaseMTPCamera.SetProperty(Int32 code, Byte[] data, Int32 param1, Int32 param2)
2013-05-12 20:09:21,375 [1]DEBUG DCC [(null)] - ===========Camera is connected==============
2013-05-12 20:09:21,375 [1]DEBUG DCC [(null)] - Driver :NikonD300
2013-05-12 20:09:21,375 [1]DEBUG DCC [(null)] - Name 3000
2013-05-12 20:09:21,375 [1]DEBUG DCC [(null)] - Manufacturer :Nikon Corporation
2013-05-12 20:09:21,375 [1]DEBUG DCC [(null)] - Error set property 10B
CameraControl.Devices.Classes.DeviceException: Device MTP error code: 80070002
at CameraControl.Devices.Classes.ErrorCodes.GetException(UInt32 code)
at CameraControl.Devices.BaseMTPCamera.SetProperty(Int32 code, Byte[] data, Int32 param1, Int32 param2)
2013-05-12 20:09:21,437 [1]DEBUG DCC [(null)] - Error set property 10B
CameraControl.Devices.Classes.DeviceException: Device MTP error code: 80070002
at CameraControl.Devices.Classes.ErrorCodes.GetException(UInt32 code)
at CameraControl.Devices.BaseMTPCamera.SetProperty(Int32 code, Byte[] data, Int32 param1, Int32 param2)
2013-05-12 20:09:21,640 [5]DEBUG DCC [(null)] - Get event error :80070002
2013-05-12 20:09:21,764 [11]DEBUG DCC [(null)] - ===========Camera disconnected==============
2013-05-12 20:09:21,764 [11]DEBUG DCC [(null)] - Name 3000
2013-05-12 20:09:21,787 [1]DEBUG DCC [(null)] - No translation for:|
2013-05-12 20:09:21,788 [1]DEBUG DCC [(null)] - No translation for:|
2013-05-12 20:09:21,789 [1]DEBUG DCC [(null)] - No translation for:|
2013-05-12 20:10:56,307 [1]DEBUG DCC [(null)] - Window command received :All_Close
I'm on the same boat, have
I'm on the same boat, have you found any solution to this?
Thanks.
Thanks.
D3000
I have the same problem using Nikon d3000; any news about this issue? I'm using a Windows 7 Service pack 1.
Here is the log :
2013-07-03 16:47:40,047 [1]DEBUG DCC [(null)] - ===========Camera is connected==============
2013-07-03 16:47:40,047 [1]DEBUG DCC [(null)] - Driver :NikonD300
2013-07-03 16:47:40,047 [1]DEBUG DCC [(null)] - Name 3000
2013-07-03 16:47:40,047 [1]DEBUG DCC [(null)] - Manufacturer :Nikon Corporation
2013-07-03 16:47:40,048 [1]DEBUG DCC [(null)] - Error set property 10B
CameraControl.Devices.Classes.DeviceException: Device MTP error code: 80070002
en CameraControl.Devices.Classes.ErrorCodes.GetException(UInt32 code)
en CameraControl.Devices.BaseMTPCamera.SetProperty(Int32 code, Byte[] data, Int32 param1, Int32 param2)
2013-07-03 16:47:40,063 [1]DEBUG DCC [(null)] - Error set property 10B
CameraControl.Devices.Classes.DeviceException: Device MTP error code: 80070002
en CameraControl.Devices.Classes.ErrorCodes.GetException(UInt32 code)
en CameraControl.Devices.BaseMTPCamera.SetProperty(Int32 code, Byte[] data, Int32 param1, Int32 param2)
2013-07-03 16:47:40,178 [13]DEBUG DCC [(null)] - ===========Camera disconnected==============
2013-07-03 16:47:40,178 [13]DEBUG DCC [(null)] - Name 3000
2013-07-03 16:47:40,199 [1]DEBUG DCC [(null)] - No translation for:|
2013-07-03 16:47:40,200 [1]DEBUG DCC [(null)] - No translation for:|
2013-07-03 16:47:40,201 [1]DEBUG DCC [(null)] - No translation for:|
Here is the log :
2013-07-03 16:47:40,047 [1]DEBUG DCC [(null)] - ===========Camera is connected==============
2013-07-03 16:47:40,047 [1]DEBUG DCC [(null)] - Driver :NikonD300
2013-07-03 16:47:40,047 [1]DEBUG DCC [(null)] - Name 3000
2013-07-03 16:47:40,047 [1]DEBUG DCC [(null)] - Manufacturer :Nikon Corporation
2013-07-03 16:47:40,048 [1]DEBUG DCC [(null)] - Error set property 10B
CameraControl.Devices.Classes.DeviceException: Device MTP error code: 80070002
en CameraControl.Devices.Classes.ErrorCodes.GetException(UInt32 code)
en CameraControl.Devices.BaseMTPCamera.SetProperty(Int32 code, Byte[] data, Int32 param1, Int32 param2)
2013-07-03 16:47:40,063 [1]DEBUG DCC [(null)] - Error set property 10B
CameraControl.Devices.Classes.DeviceException: Device MTP error code: 80070002
en CameraControl.Devices.Classes.ErrorCodes.GetException(UInt32 code)
en CameraControl.Devices.BaseMTPCamera.SetProperty(Int32 code, Byte[] data, Int32 param1, Int32 param2)
2013-07-03 16:47:40,178 [13]DEBUG DCC [(null)] - ===========Camera disconnected==============
2013-07-03 16:47:40,178 [13]DEBUG DCC [(null)] - Name 3000
2013-07-03 16:47:40,199 [1]DEBUG DCC [(null)] - No translation for:|
2013-07-03 16:47:40,200 [1]DEBUG DCC [(null)] - No translation for:|
2013-07-03 16:47:40,201 [1]DEBUG DCC [(null)] - No translation for:|
-
- Posts: 6
- Joined: Thu Jan 02, 2014 1:28 am
D3000 Bug Fix
The bug with the D3000 apears to be that in getEvent ExecuteReadDataEx(CONST_CMD_GetEvent); returns a response.Data.Length = 0 instead of response.Data == null so the call to BitConverter.ToInt16 failes adding || response.Data.Length == 0 to the if fixes the issue. private void getEvent(object state) { try { if (_eventIsbusy) return; _eventIsbusy = true; //DeviceReady(); MTPDataResponse response = ExecuteReadDataEx(CONST_CMD_GetEvent); if (response.Data == null || response.Data.Length == 0) { Log.Debug("Get event error :" + response.ErrorCode.ToString("X")); return; } int eventCount = BitConverter.ToInt16(response.Data, 0);
-
- Posts: 867
- Joined: Tue Mar 26, 2013 9:52 pm
Thanks for the fix, i updated
Thanks for the fix, i updated the code.
-
- Posts: 6
- Joined: Thu Jan 02, 2014 1:28 am
D3000 Fixes
I had to make other changes as well to Get the D3000 to work. It doesn't support CaptureInSDRam So I had to Create a Camera Class D3000 and add it to the Dictionary for the Class Types so it created Correctly. public class NikonD3000: NikonBase { public override bool Init(DeviceDescriptor deviceDescriptor) { base.SetDefaultOnInit = false; base.SupportsCaptureInSdRam = false; bool res = base.Init(deviceDescriptor); Capabilities.Clear(); //Capabilities.Add(CapabilityEnum.CaptureNoAf); //Capabilities.Add(CapabilityEnum.CaptureInRam); HaveLiveView = false; CaptureInSdRam = false; PropertyChanged -= NikonBase_PropertyChanged; return res; }It also throws error in initIso when you call IsoNumber.SetValue(defval); with error code of Access Is Denined you handle the error but I added a varable to disable the calles with a varable was set in D3000 Also in the d3000 when I set CaptureInSdRam = false it called protected void NikonBase_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e) { if (e.PropertyName == "CaptureInSdRam") { if (SupportsCaptureInSdRam) { SetProperty(CONST_CMD_SetDevicePropValue, CaptureInSdRam ? new[] { (byte)1 } : new[] { (byte)0 }, CONST_PROP_RecordingMedia, -1); } ReadDeviceProperties(CONST_PROP_RecordingMedia); } } It exceptioned on SetProperty with a not supported as well. After those chnages I was able to call Capture and it takes a picture. Thanks Andy
-
- Posts: 867
- Joined: Tue Mar 26, 2013 9:52 pm
Please upload your .cs file,
Please upload your .cs file, to include in source ....