Starling 2 Thermal Camera Suggestions
-
@Eric-Katzfey and @modaltb Thanks for your help!
Unfortunately, I still couldn't get the camera to work.
To make sure it wasn't an SDK issue, I updated it to voxl-suite 1.4.1 and ran the drone's wifi in station mode.
Both the drone and the Linux laptop are connected to my smartphone's hotspot.As suggested, I first stopped the voxl-uvc-server and the voxl-streamer.
Then I started the voxl-uvc-server with the correct Lepton camera configuration and got this error:"uvc_get_stream_ctrl_format_size failed
width, height, and or framerate likely not supported
run voxl-uvc-server -l to list supported resolutions for your camera"To do what you suggested, I opened a new terminal window and opened the /etc/modalai/voxl-streamer.conf file.
I then started the streamer with verbose output and saw that, as expected, the configuration had not been updated:
To check if there was an actual stream available, I ran nmap on the laptop and saw that port 8900 was still not open:
As expected I also didn't see any RTSP stream using VLC.
Is there anything else I can try?
-
@wifa799 Did you see the error message that was printed when voxl-uvc-server exited? It says to try
voxl-uvc-server -l
to see what formats your camera advertises since the one you tried isn't supported. Can you try that? And voxl-streamer configuration file specifies the small encoded hires stream which it appears to connect with and start streaming. You would need to modify the configuration file if you want it to use a different stream. But if you want it to use the voxl-uvc-stream then you need to get that working before you can try streaming it. -
@Eric-Katzfey Thanks again!
First, we stop any running uvc-server and streamer. Then we define the voxl-uvc-server settings usingvoxl-uvc-server -r 160x120 -f 9
.
Next we opened a new terminal and started the voxl-streamer with the default settingsvoxl-streamer -v 0
.
In the terminal it shows that it took some default options (w: 1024, h:768, fps: 30), which are not the settings we defined voxl-uvc-server.
As expected, the stream failed to open in VLC.We now found that when overriding the input pipe specified in the config file to uvc with
voxl-streamer -i uvc -v 0
, it takes the correct values as defined in voxl-uvc-server -r 160x120 -f9.After attempting to open the stream in VLC it crashes after a few frames.
The error messages vary every time we re-start the stream.No. 1:
No. 2:
Do you know how we can solve this issue? -
@wifa799 I think we're going to have to set this up and run some tests to see if we can recreate the issue. Probably won't happen until next week though.
-
Thanks @Eric-Katzfey!
Let me know if I can provide anything from my side. -
@Eric-Katzfey Have you had any chance looking into the issue?
-
@wifa799 Yes, I was finally able to gather some hardware together this morning and it all works as expected, but I have a Pure Thermal 2, not Pure Thermal mini. I know I have a Pure Thermal mini somewhere since that is what I originally tested with so I'll have to try to find it and test that. But it's possible that it isn't the hardware that's the issue. I am using SDK 1.4.0. Which one are you using? What is the output of
voxl-version
? I stopped voxl-uvc-server from running automatically withsystemctl disable voxl-uvc-server
and voxl-streamer withsystemctl disable voxl-streamer
and then rebooted. Then, from the command line, I started voxl-uvc-server withvoxl-uvc-server -d -r 160x120 -f 9
and in another terminal started voxl-streamer withvoxl-streamer -v 0 -i uvc
. I then looked at the stream with both QGroundControl 4.3.0 and VLC 3.0.20. What is the output when you usevoxl-uvc-server -d -l
? -
-
@wifa799 Are you still having troubles? I got a new PureThermal mini and it also works fine.
-
Hi @Eric-Katzfey, I'm a new student helping out in @wifa799 's project which is why it took a few days for me to respond, sorry for that.
I'll try it out today in the afternoon to be able to also send you the errors I get. So far we haven't gotten it to work. -
Alright I got it running through QGroundControl now. Thank you very much for your help. I still have some open questions though.
In VLC I still cannot connect to it through the rtsp link and also in the VOXL portal I cannot follow the stream (in fact i don't even receive any of the other channels anymore). Do you have any ideas why this might occur and/or how to fix it?Also if I open a third terminal window to check voxl-inspect-services it doesn't show the voxl-uvc-server and the voxl-streamer to be running, even though I can see them working in the other windows and the video also arrives at the QGroundControl. Could this still be an issue?
And lastly I'm curious if it's possible to postprocess the video stream in QGroundControl in real-time for e.g. upscaling or object detection or if you would recommend doing this via gstreamer or something different?
-
@buem799 Glad to hear it is working now. voxl-portal has custom support for various cameras coming through our voxl-camera-server. It does not yet have any support for UVC cameras. Not sure why VLC cannot connect. What version of VLC are you using? voxl-inspect-services only shows the status of services started via systemd. It doesn't show you things that you start on the command line. QGC just shows the video so I don't think you can add those features there. Would you rather do upscaling / object detection directly on VOXL 2 or on a connected computer?
-
@buem799 I had some RTSP VLC struggles a while back. Check out the link I posted at the bottom of this post here
-
@Eric-Katzfey
I'm using VLC 3.0.16.
Okay, thanks for the clarification.
Not 100% sure but ideally we would do the upscaling/object detection on VOXL2 because I would assume we cannot guarantee constant connection to a connected computer. -
@groupo
Thanks for the advice. Not sure if I'm missing something but I cannot find the setting mentioned in the post.
Additionally, i don't really understand the ffplay part, is that still in VLC or would that be in the terminal or something else still?
Sorry, if this doesn't make too much sense I'm still quite new to linux and drones. -
@buem799 Hi, no worries, I am also very new to this space. ffplay is separate thing, part of the ffmpeg program, not something inside VLC. This is the reddit link that I posted in the thread I listed above
If you read through it, the fix was for a windows machine, which I was using at the time. It states further down in the reddit post that live555 support was removed in newer versions of ubuntu (linux operating system). From your screenshots, it looks like you are using ubuntu, so it could make sense that VLC may not work. I believe it is more a ubuntu issue rather than VLC. Don't try to dig into that, especially if you are new to linux. I would install ffmpeg on your system and try to access the RTSP stream using that. I just asked ChatGPT for the commands to do that and will paste below:
sudo apt install ffmpeg
Id recommend asking Chat how to access an RTSP stream using ffplay, or read the documentation
The other thing you could do, if you had a windows laptop, you could connect the windows laptop to the drone wifi and try to access the RTSP stream via VLC on windows and do the fix included in the reddit link