Closed DamianSepczuk closed 4 years ago
Would love a PR if you have a fully drafted solution. It would make this go in faster.
Fixed by #623
You should also add FW version 000137a8. Just spent half a day struggling to figure it out only to find that I had that version out the box and it suffers from the same issue. In any case I'm using a PS3eye which does not support mjpg and has to encode on the fly so I changed over to ustreamer which uses 9% CPU instead of 35% with mjpg. Still suffered with the same issue though. PCIe fix works.
What were you doing?
Trying to watch the webcam stream on Raspberry Pi 4 with VL805 firmware 0x000137ab. Webcam: "ID 1871:0141 Aveo Technology Corp. Camera" It worked before. Now it doesn't work (I can see only "webcam stream loading") (for a possible solution see below)
What did you expect to happen?
Webcam stream displayed.
What happened instead?
No webcam stream displayed. I can see only "webcam stream loading"
Did the same happen when running OctoPrint in safe mode?
yes
Version of OctoPi
OctoPrint 1.3.12 running on OctoPi 0.17.0
Printer model & used firmware incl. version
n/a
Screenshot(s)/video(s) showing the problem:
n/a
Investigation
The problem seems to be connected to a bug in
0x000137ab
firmware ofVL805
.First enable
uvcvideo
debugging and show the log:Streaming very low resolutions seems to work fine:
But trying to stream even in
640x480
(VGA) doesn't work:you can see a lot of
uvcvideo: USB isochronous frame lost (-18).
lines in thedmesg
logs andi: select() timeout
in themjpg_streamer
's output.Now run (as root):
(see: https://www.raspberrypi.org/forums/viewtopic.php?f=28&t=244421 for details)
Problem solved, the stream works fine!
Possible solution
You have to run the
setpci
command after each boot, so I've modified/root/bin/webcamd
to do it for me:I'm not an expert on Linux. The real cause and/or solution may be completely different.