I am working with a CM5 and running BlueOS 1.5.0-beta.12.
I have a Raspberry Pi v2 connected to CS0 and an HDMI to CSI connected to CS1. Both of these cameras functioning and able to view the live image from the pi.
My question is how to get these into BlueOS’s video streams page to create streams and be able to switch between them with a GCS.
In the Video Streams page I can see a lot of /dev/video nodes but when I click on the correct one, I only get YUYV for encoding and no option under the size dropdown. Also, these are all only under rp1-cfe, where my Raspberry Pi cam is under pispbe.
Can you explain a bit better what video streams you’re trying to get playing? Only H264 is well supported…
Your CM5 is a compute module, and, CS0 and CS1 are GPIO lines configured by default as SPI chip-select signals. They’re logic-level control pins (3.3 V), meant to go low/high to enable or disable SPI peripherals. They carry no pixel data themselves….You may be talking of the MIPI-CSI (camera) interfaces, of which there are two?
These are not likely currently supported as inputs, but perhaps enabling legacy pi camera support on the Video Streams page (via gear in lower right) would help some things.
It’s also worth noting that 1.5 beta versions are more experimental than 1.4.3 betas, and generally 1.4.2 stable is all most users should use!
My apologies, I was just short handing the CSI ports. They are both connected to the MIPI ports. CAM0 and CAM1.
I have tried the legacy pi camera support with multiple blueOS versions and could never get it to work.
So, if the video node (/dev/videoX) can’t be pulled in, could I create an extension that created these streams. Could these streams be used under the redirect source so that GCS’s could swap between them with the mavlink manager? This route is also interesting to me because I could use this to put an on-screen display over the video streams.
Or what is the best route to get these to videos to the blueOS mavlink manager?
The Blue Robotics team isn’t currently prioritizing support for those types of cameras, but theoretically it should be possible to implement. The issue is that those cameras require different versions of various drivers and libraries, and the latest Raspian (bookworm.) So as @joaoantoniocardoso advised on Discord, your best bet is to take the red-pill at the terminal, and see what things you need to install to get the camera packages intended for those units working. If you’re able to, packaging things up as an extension from there should do the trick! You’ll want that extension to publish an RTSP stream from the cameras, Mavlink Camera manager should be able to handle it from there….
I understand the difficulty.
João was very helpful and this is exactly what I did to get them working.
There isn’t much documentation on the redirect, so I just wanted to confirm if that path was viable.
I really appreciate the help and will work on setting up that extension.