Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

offset/alignment issue on frames (FireFly MV USB) #38

Open
protobits opened this issue Jul 7, 2014 · 9 comments
Open

offset/alignment issue on frames (FireFly MV USB) #38

protobits opened this issue Jul 7, 2014 · 9 comments

Comments

@protobits
Copy link

Hi,
I have this problem where sometimes, after pluggin the camera, the image seems to be being read with an offset, and is therefore broken (see attached image).

bug

I dont have this problem with coriander, so I'm not sure if this is a libdc1394 problem or not.
Any ideas? This behaviour is completely annoying and difficult to deal with.

@jack-oquin
Copy link
Member

Some cameras can get their firmware into a bad state for whatever reasons.

What recovery actions have you tried?

Some of these suggestions may help: http://wiki.ros.org/camera1394/Troubleshooting

@protobits
Copy link
Author

If I stop and start the camera nodelet several times, it may be fixed.
However, there are sometimes that I can't and the only way is to unplug and
re-plug the camera. This also may need to be done several times, since the
camera can start with this problem again.

If this problem is happening, I've tried opening coriander, where I see the
same effect. However, If I stop and start reception from coriander, the
problem seems to be fixed there. So, I guess there is some resetting that
is being done there and not on camera1394, maybe.

The reset_on_open flag does not seem to alter this either. I will try the
bus resetting next time (as per the troubleshooting section).

As a side note, it would be nice if I could actually reset the camera on
demand, since the embedded frame counter does not seem to be resettable
without unplugging.

On Wed, Jul 9, 2014 at 12:55 PM, jack-oquin [email protected]
wrote:

Some cameras can get their firmware into a bad state for whatever reasons.

What recovery actions have you tried?

Some of these suggestions may help:
http://wiki.ros.org/camera1394/Troubleshooting


Reply to this email directly or view it on GitHub
#38 (comment)
.

@jack-oquin
Copy link
Member

If this problem is happening, I've tried opening coriander, where I see the
same effect. However, If I stop and start reception from coriander, the
problem seems to be fixed there. So, I guess there is some resetting that
is being done there and not on camera1394, maybe.

That is certainly possible. If we can figure out what it is, we can introduce some additional resets.

This driver has been working for many years, with no-telling-how-many different cameras. Lots of them differ in their expectations for initialization and reset.

Since your device is USB rather than firewire, some of the resets may work differently.

@protobits
Copy link
Author

I just tried to run the bus reset program and it does not seem to affect this.
If I just stop and start the driver several times, eventually it reads images correctly, but if I continue it can happen again.

By the way, I've found this old message: http://permalink.gmane.org/gmane.comp.multimedia.libdc1394.devel/267
Although I'm not sure if it is the same problem here since coriander does not seem to be affected. Also, there are mentions of patches already integrated.

Also, if I open coriander I can fix the problem by pressing "restart iso". I imagine this could be included during initialization on the ros driver. I'm not sure how to avoid the problem altogether.

@jack-oquin
Copy link
Member

Also, if I open coriander I can fix the problem by pressing "restart iso". I imagine this could be included during initialization on the ros driver. I'm not sure how to avoid the problem altogether.

That sounds promising.

If you can figure out exactly which dc1394 commands that generates, we can experiment with adding them to the driver. I am willing to help, but don't have time to dig through the coriander sources myself right now. Too many other projects.

@protobits
Copy link
Author

Now that I'm using the system installed camera1394 I can't seem to trigger
this problem anymore. Hopefully it was fixed using the latest stable
version.
I will keep this open for now and see if it still works correctly.

On Fri, Jul 11, 2014 at 4:13 PM, jack-oquin [email protected]
wrote:

Also, if I open coriander I can fix the problem by pressing "restart iso".
I imagine this could be included during initialization on the ros driver.
I'm not sure how to avoid the problem altogether.

That sounds promising.

If you can figure out exactly which dc1394 commands that generates, we can
experiment with adding them to the driver. I am willing to help, but don't
have time to dig through the coriander sources myself right now. Too many
other projects.


Reply to this email directly or view it on GitHub
#38 (comment)
.

@jack-oquin
Copy link
Member

Yes, please keep it open. What you did should have worked.

The version you built has several significant changes from the current Hydo release, 1.9.5. I am planning to release it to Indigo as soon as I find time to give it a good regression test. It is compatible with Hydro. Although I don't plan to release it there, I would expect it to work.

So, there are (at least) two possible causes of the trouble you saw:

  • the latest version of the driver doesn't work properly with your device
  • there was some build problem with your system or your workspace

Since you have access to this camera and I do not, I would be grateful if you would try building it again in your workspace, but using the hydro-devel branch instead of master. That should match exactly the sources for the Ubuntu package, so we can distinguish the code base differences from any quirks due to building it on your system. OK?

@protobits
Copy link
Author

Hi,
I tried hydro-devel and I can't seem to trigger this issue. I've tried
master again, and it happened once. On my system installed camera1394 it
wasn't triggered either.

On Sat, Jul 12, 2014 at 8:35 PM, jack-oquin [email protected]
wrote:

Yes, please keep it open. What you did should have worked.

The version you built has several significant changes from the current
Hydo release, 1.9.5. I am planning to release it to Indigo as soon as I
find time to give it a good regression test. It is compatible with Hydro.
Although I don't plan to release it there, I would expect it to work.

So, there are (at least) two possible causes of the trouble you saw:

  • the latest version of the driver doesn't work properly with your
    device
  • there was some build problem with your system or your workspace

Since you have access to this camera and I do not, I would be grateful if
you would try building it again in your workspace, but using the
hydro-devel branch instead of master. That should match exactly the
sources for the Ubuntu package, so we can distinguish the code base
differences from any quirks due to building it on your system. OK?


Reply to this email directly or view it on GitHub
#38 (comment)
.

@jack-oquin
Copy link
Member

Thanks for checking. Sounds like the problem is somewhere in the relatively recent changes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants