Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   Python (http://www.chiefdelphi.com/forums/forumdisplay.php?f=187)
-   -   Urgent- Python USB Camera not working (http://www.chiefdelphi.com/forums/showthread.php?t=144563)

onenerdyguy 23-02-2016 18:22

Urgent- Python USB Camera not working
 
I'm having difficulty getting the MS Lifecam to show up on our robot. We have an axis camera currently, that's working great, but I can't get a second USB cam setup. We want a rear-view camera to help with intake, but we're having issues.

Current code:

camera = wpilib.USBCamera()
camera.startCapture()
server = wpilib.CameraServer()
server.startAutomaticCapture(camera)

When I go onto the Roborio, I can see the lifecam plugged in and recognized on it's web interface. However, even by going to the default dashboard, I can't get any image on the DS. Am I missing something?

razar51 23-02-2016 19:30

Re: Urgent- Python USB Camera not working
 
You might check that the roborio didn't give your camera a different name. The default name for the camera that the code you have there assumes is 'cam0'.

Last year we had an issue where, when testing different cameras, the roborio would increment the number of the name given to the camera (cam1, cam2, etc.)

We solved this by doing something similar to the following and then using the default dashboard set to HW capture:

Code:

      camera = wpilib.USBCamera(b'cam1')
      server = wpilib.CameraServer.getInstance()
      server.startAutomaticCapture(camera)

You can find the name the roborio gave to your camera by having it plugged in and then using the USB interface to connect to the roborio in a web browser (172.22.11.2). It should list the names of the devices connected to it,

Arhowk 23-02-2016 23:20

Re: Urgent- Python USB Camera not working
 
Quote:

Originally Posted by razar51 (Post 1545427)
roborio in a web browser (172.22.11.2)

use roborio-team-frc.local if at all possible. 172.22.11.2 is only valid over a USB connection. the mDNS address is accessible via wireless, ethernet, and probably USB (I've never actually tested using mDNS over USB now that I think of it...)

virtuald 23-02-2016 23:35

Re: Urgent- Python USB Camera not working
 
If you're using the LabVIEW dashboard, you have to have the beta version of pynetworktables installed, or it will not connect. See https://github.com/robotpy/robotpy-wpilib/issues/172

WubbaDuck 24-02-2016 07:48

Re: Urgent- Python USB Camera not working
 
We spent a bunch of time trying to get the USB camera to work correctly. The result was a very laggy robot. No joke, it was around 1-2 seconds of delay with the camera enabled. Then one of our guys discovered a post in the forum about using mjpg-streamer instead. It was super easy to install and works like a champ! There is also a smart dashboard plugin that allows you to have direct dashboard output. You can find more info here: https://robotpy.github.io/2016/01/14...r-for-roborio/

onenerdyguy 24-02-2016 09:02

Re: Urgent- Python USB Camera not working
 
Quote:

Originally Posted by WubbaDuck (Post 1545783)
We spent a bunch of time trying to get the USB camera to work correctly. The result was a very laggy robot. No joke, it was around 1-2 seconds of delay with the camera enabled. Then one of our guys discovered a post in the forum about using mjpg-streamer instead. It was super easy to install and works like a champ! There is also a smart dashboard plugin that allows you to have direct dashboard output. You can find more info here: https://robotpy.github.io/2016/01/14...r-for-roborio/


This is exactly what we found last night, at 11:30 pm. We got the camera working, but lag was horrendous. By dropping the quality, we got the lag down to about half a second, but still not usuable.

I pulled the camera off, and will be working on getting mjpg-streamer setup.

Are you running yours off the RoboRio, or off like a raspberry pi? I do have a spare roboRio we ordered I can practice the setup on, so that when we get to competition I can quickly deploy it.

onenerdyguy 24-02-2016 09:06

Re: Urgent- Python USB Camera not working
 
Quote:

Originally Posted by razar51 (Post 1545427)
You might check that the roborio didn't give your camera a different name. The default name for the camera that the code you have there assumes is 'cam0'.

Last year we had an issue where, when testing different cameras, the roborio would increment the number of the name given to the camera (cam1, cam2, etc.)

We solved this by doing something similar to the following and then using the default dashboard set to HW capture:

Code:

      camera = wpilib.USBCamera(b'cam1')
      server = wpilib.CameraServer.getInstance()
      server.startAutomaticCapture(camera)

You can find the name the roborio gave to your camera by having it plugged in and then using the USB interface to connect to the roborio in a web browser (172.22.11.2). It should list the names of the devices connected to it,

Also, this fixed our issue with getting it to work, but then the lag came in. We'll figure it out!

virtuald 24-02-2016 09:40

Re: Urgent- Python USB Camera not working
 
In 2017, I'll be removing the CameraServer class in python and throw an exception telling the user to use mjpg-streamer instead. As you've seen, it's very low performance, and is just a lot of trouble in general.

WubbaDuck 24-02-2016 10:52

Re: Urgent- Python USB Camera not working
 
Quote:

Originally Posted by onenerdyguy (Post 1545818)
This is exactly what we found last night, at 11:30 pm. We got the camera working, but lag was horrendous. By dropping the quality, we got the lag down to about half a second, but still not usuable.

I pulled the camera off, and will be working on getting mjpg-streamer setup.

Are you running yours off the RoboRio, or off like a raspberry pi? I do have a spare roboRio we ordered I can practice the setup on, so that when we get to competition I can quickly deploy it.

We installed it directly on the RoboRio and saw no noticeable slowdown.

onenerdyguy 25-02-2016 16:21

Re: Urgent- Python USB Camera not working
 
Quote:

Originally Posted by WubbaDuck (Post 1545783)
We spent a bunch of time trying to get the USB camera to work correctly. The result was a very laggy robot. No joke, it was around 1-2 seconds of delay with the camera enabled. Then one of our guys discovered a post in the forum about using mjpg-streamer instead. It was super easy to install and works like a champ! There is also a smart dashboard plugin that allows you to have direct dashboard output. You can find more info here: https://robotpy.github.io/2016/01/14...r-for-roborio/


I'm having some trouble installing this. I'm using our backup roborio, and made sure it's all up to date.

I download the opkg file using the installer.py and then attempt to install it on the RoboRio via the installer as well. However, I get the error that libjpeg8 packages are found, but are not the right arch. However, they are listing as cortexa9.

Is there a trick to this? or should I try the online install?

virtuald 25-02-2016 16:29

Re: Urgent- Python USB Camera not working
 
Quote:

Originally Posted by onenerdyguy (Post 1546981)
I'm having some trouble installing this. I'm using our backup roborio, and made sure it's all up to date.

I download the opkg file using the installer.py and then attempt to install it on the RoboRio via the installer as well. However, I get the error that libjpeg8 packages are found, but are not the right arch. However, they are listing as cortexa9.

Is there a trick to this? or should I try the online install?

You should upgrade your roborio to the 2016 image.

onenerdyguy 25-02-2016 16:41

Re: Urgent- Python USB Camera not working
 
Bah, I did the firmware, but missed the image. I am dumb.


All times are GMT -5. The time now is 19:50.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi